# ๐Ÿ• Robotic Dog โ€” 12-DOF Quadruped Robot A custom-built **12-DOF quadruped robot** designed, CAD-modeled, 3D-printed, assembled, and programmed as an ongoing robotics development platform. The current prototype uses an **ESP32** for low-level hardware control and subsystem validation. The robot has progressed from mechanical design and electronics bring-up to **initial physical locomotion testing**. Future development will focus on improving gait stability, balance, sensing, and autonomous behavior, with a planned migration to **STM32** for the next-generation low-level controller. > ๐Ÿšง **Project Status:** Active Development > **Degrees of Freedom:** 12 > **Current Controller:** ESP32 > **Actuators:** 12 Servo Motors > **Servo Driver:** PCA9685 > **Prototype:** 3D-Printed Quadruped --- ## ๐ŸŽฅ Walking Demonstration ### First Physical Locomotion Test The following GIF shows the first physical locomotion experiment of the 12-DOF quadruped prototype.

The current gait is experimental. The robot is being progressively developed toward more stable, repeatable, and controlled quadrupedal walking. > **Current locomotion stage:** Initial walking experiment --- ## ๐Ÿ“ธ Prototype

--- # ๐Ÿค– Project Overview This project focuses on the development of a custom **12-DOF quadruped robot**, covering the development process from mechanical design and 3D printing to embedded electronics, sensor integration, and locomotion. The robot is designed as a modular experimental platform for studying: - Quadrupedal locomotion - Embedded control - Servo actuation - Sensor integration - Balance and stability - Power monitoring - Mechanical design - 3D-printed robotics - Autonomous navigation The development follows an incremental hardware-first approach: ```text Mechanical Design โ†“ 3D Printed Prototype โ†“ Mechanical Assembly โ†“ Electronics Integration โ†“ Hardware Bring-up โ†“ Servo Calibration โ†“ Standing Posture โ†“ Initial Locomotion โ†“ Stable Walking โ†“ Balance Control โ†“ Sensor Fusion โ†“ Autonomous Navigation ``` --- # ๐Ÿ”ข Key Specifications | Parameter | Current Specification | |-----------|-----------------------| | Robot Type | Quadruped | | Degrees of Freedom | 12 | | Actuators | 12 Servo Motors | | Current Controller | ESP32 | | Planned Controller | STM32 | | Servo Driver | PCA9685 | | IMU | MPU6500 | | ToF Sensors | VL53L0X ร—2 | | Ultrasonic Sensors | HC-SR04 ร—2 | | Foot Contact Sensors | FSR ร—4 | | Current Sensors | ACS758 ร—3 | | Battery | 3S LiPo | | Manufacturing | 3D Printing | | Primary CAD | Autodesk Fusion 360 | > Specifications will be updated as the hardware is experimentally characterized. --- # โš™๏ธ System Architecture The robot is being developed using a modular hardware architecture. ```text โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ESP32 โ”‚ โ”‚ Low-Level Control โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ–ผ โ–ผ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ PCA9685 โ”‚ โ”‚ MPU6500 โ”‚ โ”‚ Sensors โ”‚ โ”‚ Servo โ”‚ โ”‚ IMU โ”‚ โ”‚ & Power โ”‚ โ”‚ Driver โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ 12 Servos โ”‚ โ”‚ 12-DOF Legs โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` The architecture is intended to evolve as higher-level sensing, control, and autonomy are integrated. --- # ๐Ÿฆฟ Mechanical Design & Analysis The mechanical system is designed as a **12-DOF quadruped platform**, with three actuated joints per leg. ## Leg Configuration Each leg is designed around three actuated joints: - Hip - Knee - Ankle ```text BODY โ”‚ โ”Œโ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ” โ”‚ โ”‚ HIP HIP โ”‚ โ”‚ KNEE KNEE โ”‚ โ”‚ ANKLE ANKLE โ”‚ โ”‚ FOOT FOOT ``` The mechanical design emphasizes: - Modular assembly - 3D-printable components - Servo accessibility - Compact mechanical packaging - Replaceable components - Ease of maintenance - Future design iteration --- ## ๐Ÿ“ CAD Design The complete mechanical assembly is available in: ```text CAD/ โ”œโ”€โ”€ ROBOTIC DOG.step โ”œโ”€โ”€ *.stl โ””โ”€โ”€ README.md ``` The STEP assembly provides the complete mechanical model, while the individual STL files provide printable components exported from the CAD design. The CAD files can be inspected and further modified using software such as: - Autodesk Fusion 360 - SolidWorks - FreeCAD --- ## ๐Ÿ–จ๏ธ 3D-Printable Parts Individual STL files are included in the repository so that the mechanical design can be reproduced and modified. The current CAD folder contains components including: - Structural plates - Leg components - Joint components - Servo mounting components - Sensor mounting components - Covers - Foot components The STL files represent the current prototype design and may change as mechanical testing and locomotion development continue. --- ## ๐Ÿ”ฉ Mechanical Design Considerations The mechanical design is being evaluated based on: - Joint loading - Servo torque requirements - Robot mass - Center of mass - Link geometry - Structural stiffness - Servo mounting strength - 3D-printing tolerances - Weight distribution --- # ๐Ÿ“Š Mechanical Analysis Mechanical characterization is an ongoing part of the project. ## Torque Budget The required joint torque will be calculated using: - Robot mass - Link lengths - Center of mass - Joint configuration - Static loading - Dynamic loading - Acceleration during locomotion The final torque budget will be compared against the actual servo specifications. | Joint | Required Torque | Servo Rated Torque | Safety Margin | |-------|-----------------|---------------------|---------------| | Hip | TBD | TBD | TBD | | Knee | TBD | TBD | TBD | | Ankle | TBD | TBD | TBD | > Torque values will be added after the robot geometry, mass distribution, and servo specifications are experimentally verified. --- ## โš–๏ธ Mass Analysis The complete robot mass will be experimentally measured. | Component | Mass | |-----------|------| | 3D-Printed Structure | TBD | | Servo Motors | TBD | | Electronics | TBD | | Battery | TBD | | Wiring & Hardware | TBD | | **Total Robot Mass** | **TBD** | The measured mass will later be used for torque calculations and locomotion analysis. --- ## ๐Ÿงช FEA Analysis Finite Element Analysis will be performed on mechanically critical components as the design is finalized. Planned analysis includes: - Static structural loading - Stress distribution - Deformation - Factor of safety - Identification of mechanically critical regions FEA results will be added to the repository after the corresponding simulations are completed. --- ## ๐Ÿ“ Manufacturing Tolerances Because the robot is manufactured using 3D printing, dimensional tolerances are important for: - Servo mounting holes - Joint alignment - Fastener holes - Bearing or shaft interfaces - Press-fit components - Interlocking components Printing orientation, layer height, infill, material, and printer settings can influence final dimensions and mechanical strength. Design tolerances will be documented as the prototype is iterated. --- # ๐Ÿ’ฐ Bill of Materials The current estimated component cost is based on the hardware currently documented in the project. | Component | Quantity | Cost (โ‚น) | |-----------|----------|----------:| | Servo Motors | 12 | 2,400 | | ESP32 | 1 | 300 | | PCA9685 | 1 | 250 | | MPU6500 | 2 | 270 | | VL53L0X | 2 | 130 | | HC-SR04 | 2 | 140 | | FSR | 4 | 1,000 | | ACS758 | 3 | 210 | | Battery | 1 | 2,100 | | Buck Converters | 3 | 700 | | 3D Printing Material | โ€” | 900 | | **Current Estimated Total** | โ€” | **8,400** | > **Note:** The total is calculated from the component costs listed above. Final project cost may change as additional hardware, fasteners, wiring, fabrication, and replacement components are accounted for. --- # ๐Ÿ’ป Firmware The current firmware development is based on the **ESP32**. The present software approach is to validate individual hardware subsystems before integrating them into the complete quadruped controller. ```text Code/ โ””โ”€โ”€ ESP32/ โ””โ”€โ”€ Hardware_Bringup/ โ”œโ”€โ”€ FSR/ โ”œโ”€โ”€ Hardware_Bringup/ โ”œโ”€โ”€ MPU6500/ โ”œโ”€โ”€ OLED/ โ”œโ”€โ”€ PCA9685/ โ”œโ”€โ”€ Power_System/ โ”œโ”€โ”€ Servo_Test/ โ””โ”€โ”€ Ultrasonic/ ``` --- # ๐Ÿ”Œ Hardware Bring-up The hardware bring-up stage focuses on independently validating the major electronic subsystems. Current validation areas include: - ESP32 - PCA9685 servo driver - Servo motors - MPU6500 IMU - OLED display - FSR sensors - HC-SR04 ultrasonic sensors - Battery voltage measurement - ACS758 current measurement - IยฒC communication Individual test programs are available inside: ```text Code/ESP32/Hardware_Bringup/ ``` The bring-up approach allows hardware problems to be isolated before integrating the complete locomotion system. --- # ๐Ÿง  Control Development The control system is being developed progressively. Current development focuses on: ```text Hardware Validation โ†“ Servo Calibration โ†“ Joint Position Control โ†“ Standing Pose โ†“ Leg Motion โ†“ Basic Gait โ†“ Stable Locomotion โ†“ Balance Control ``` Higher-level control algorithms will be added as the lower-level hardware and motion system becomes stable. --- # ๐Ÿ“Š Current Development Progress | Development Stage | Status | |--------------------|--------| | Mechanical CAD | โœ… Complete | | 3D Printed Prototype | โœ… Complete | | Mechanical Assembly | โœ… Complete | | Servo Installation | โœ… Complete | | ESP32 Hardware Bring-up | ๐Ÿšง In Progress | | Sensor Testing | ๐Ÿšง In Progress | | Servo Calibration | ๐Ÿšง In Progress | | Initial Locomotion Test | โœ… Demonstrated | | Stable Walking | โณ In Development | | Balance Controller | โณ Planned | | Sensor Fusion | โณ Planned | | STM32 Migration | โณ Planned | | Autonomous Navigation | โณ Planned | --- # ๐Ÿ—บ๏ธ Development Roadmap ## Phase 1 โ€” Mechanical Platform - โœ… CAD design - โœ… 3D printing - โœ… Mechanical assembly - ๐Ÿšง Mechanical optimization - โณ FEA validation ## Phase 2 โ€” Electronics - ๐Ÿšง ESP32 hardware bring-up - ๐Ÿšง Servo testing - ๐Ÿšง Sensor testing - ๐Ÿšง Power monitoring - โณ Full electronics integration ## Phase 3 โ€” Locomotion - ๐Ÿšง Servo calibration - โณ Standing posture - โณ Weight shifting - โœ… Initial locomotion experiment - โณ Stable forward walking - โณ Turning - โณ Repeatable gait ## Phase 4 โ€” Stability - โณ IMU integration - โณ Orientation estimation - โณ Balance controller - โณ Sensor fusion ## Phase 5 โ€” Controller Upgrade - โณ STM32 migration - โณ Real-time control optimization - โณ Low-level control architecture ## Phase 6 โ€” Autonomy - โณ Obstacle detection - โณ Terrain adaptation - โณ Perception - โณ LiDAR integration - โณ Autonomous navigation --- # ๐Ÿงช Experimental Validation Future testing will include: ### Mechanical Testing - Joint loading - Structural deformation - Servo torque margin - Mechanical failure testing ### Electrical Testing - Battery voltage - Current consumption - Servo power demand - Voltage regulation - Thermal behavior ### Locomotion Testing - Standing stability - Leg trajectory - Step repeatability - Forward walking speed - Turning - Balance recovery ### Sensor Testing - IMU measurements - Foot-contact detection - Ultrasonic distance measurement - ToF distance measurement - Power monitoring --- # ๐Ÿ“ Repository Structure ```text Robotic-Dog/ โ”‚ โ”œโ”€โ”€ CAD/ โ”‚ โ”œโ”€โ”€ ROBOTIC DOG.step โ”‚ โ”œโ”€โ”€ *.stl โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Circuit_Diagrams/ โ”‚ โ”œโ”€โ”€ Diagram.png โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Code/ โ”‚ โ”œโ”€โ”€ ESP32/ โ”‚ โ”‚ โ”œโ”€โ”€ Hardware_Bringup/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ FSR/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ Hardware_Bringup/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ MPU6500/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ OLED/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ PCA9685/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ Power_System/ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ Servo_Test/ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ Ultrasonic/ โ”‚ โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Datasheets/ โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Documentation/ โ”‚ โ”œโ”€โ”€ Basic Information.pdf โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Images/ โ”‚ โ”œโ”€โ”€ front.jpeg โ”‚ โ”œโ”€โ”€ side.jpeg โ”‚ โ”œโ”€โ”€ back.jpeg โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ Videos/ โ”‚ โ”œโ”€โ”€ Robotic_Dog_Walking_Test_1.gif โ”‚ โ””โ”€โ”€ README.md โ”‚ โ”œโ”€โ”€ LICENSE โ””โ”€โ”€ README.md ``` --- # ๐Ÿ“š Documentation Additional project documentation is available in: ```text Documentation/ ``` This section will contain: - Project information - Hardware documentation - Mechanical analysis - Testing results - Development notes - Future design revisions --- # ๐Ÿ”ฌ Engineering Development Philosophy This project follows an incremental hardware-first development approach. Each subsystem is tested independently before being integrated into the complete robotic platform. ```text Component Test โ†“ Subsystem Validation โ†“ Integration โ†“ Calibration โ†“ Motion Control โ†“ System Validation ``` This approach helps isolate hardware, electrical, and software problems before introducing higher-level locomotion algorithms. --- # ๐Ÿšง Current Limitations The robot is still under active development. At the current stage: - Initial physical locomotion has been demonstrated. - The walking gait is still experimental. - Stable and repeatable walking has not yet been finalized. - Walking speed has not yet been experimentally characterized. - Battery runtime has not yet been measured under a defined locomotion test. - Final torque margins are still being calculated. - FEA analysis is planned for mechanically critical components. - The STM32 controller migration has not yet been completed. - Autonomous navigation is not yet implemented. These features and measurements will be updated as they are experimentally validated. --- # ๐Ÿ”ฎ Future Work Future development will focus on: - Stable quadrupedal walking - Repeatable gait generation - Dynamic balance - IMU-based stabilization - Sensor fusion - Terrain adaptation - Computer vision - LiDAR integration - Autonomous navigation - STM32-based real-time control - Higher-level robotic intelligence --- # ๐Ÿ“œ License This project is licensed under the **MIT License**. See the [`LICENSE`](LICENSE) file for the complete license text. --- # ๐Ÿ‘จโ€๐Ÿ’ป Author **Gourav Jain** Electronics & Communication Engineering ### Areas of Interest - Robotics - Embedded Systems - Autonomous Systems - Robot Control - Computer Vision - 3D Printing - Mechanical Design --- โญ If you find this project interesting, consider starring the repository and following its development.