Intelligent Quadruped Robot Pet
by starsthatshine56 in Circuits > Electronics
203 Views, 5 Favorites, 0 Comments
Intelligent Quadruped Robot Pet
This project designs and implements a portable intelligent quadruped robot pet based on the ESP32 microcontroller. The robot features a self-designed 3D-printed shell and linkage mechanism, a customized PCB baseboard, and integrates ESP-NOW wireless communication remote control with the MaixCAM AI vision module. It can not only perform omnidirectional movement and lid opening/closing control via a DIY joystick, but also recognizes human face/body visual tracking using the YOLO algorithm. This is a comprehensive project integrating mechanics, electronics, programming, and artificial intelligence.
Downloads
Supplies
- 3D printed structural parts
- ESP32-S3 Main Controller (ESP32-S3 + custom PCB)
- MG90s Servo Motors
- DC motors
- MaixCAM Vision Module
- ESP32 Joystick controller (ESP32, dual joysticks, capacitive buttons)
- 2S Li-po Buck Module
- Lithium Battery
Principles
There are two main principles behind this design:
Mechanical Structure: Parallelogram Linkage Mechanism
The robot legs adopt a parallelogram linkage design. Based on the geometric closed-loop relationship, when the upper servo rotates, the lower leg and foot components can maintain a fixed vertical posture for translation. This greatly simplifies the calculation complexity of inverse kinematics and ensures stable body posture.
Motion Control:
The type of movement used here is a T-type Diagonal Gait (Trot Gait), and the locomotion algorithm is based on an alternating diagonal gait. The four legs are divided into two diagonal pairs. For straight movement: one pair of legs swings forward , while the other pair pushes off the ground, alternating every half cycle. For turning: the lifting and lowering logic remains unchanged, and precise turning is achieved through differential speed by increasing the difference in forward rotation angles of the left and right "hip" joints.
Chassis and Structure
I used Fusion360 for modelling of the chassis and drawing of the leg parallelogram mechanism, then printed them out in black and white. The CAD file has been attached, and the colours can be changed based on preference.
Downloads
Hardware Circuit Design and PCB Prototyping
I designed and drew the robot's mainboard using EasyEDA. The design integrates the ESP32 minimal system circuitry, an auto-download circuit, a power buck (step-down) converter circuit, and 10-channel 3-pin servo interfaces
Downloads
Servos Into Chassis
Install the zeroed servo motors into the chassis.
Body & Lid
The robot's body and head should be assembled, followed by two servos installed internally to control the opening and closing of the head box. Lastly, the servo arms should be added to allow the servo control over the lid .
Legs
Assemble the four legs of the robot and lock all the connecting rods in place in the shape of a parallelogram using self-tapping screws.
Wiring
Insert the 10 servo lines into the corresponding pins on the PCB according to their numbers.
Assemble Robot
Install the upper base plate and attach the robot's limbs to the base plate, then connect the robot's body to the base and legs.
Camera
Install the MaixCAM module (camera) inside the torso, activate the YOLOv5 face recognition, and then install a 2S lithium battery and organize the wires.
Downloads
Joystick Controller
Cut the shell from a wooden board, and use a hot glue gun to fix two dual-axis joysticks, two capacitive touch buttons, and an ESP32 control board. Attach a battery to the back