This project is a robotic dog controlled via a microcontroller. It integrates servo motors, sensors, and a display module to simulate walking, balance control, and movement dynamics.
- Arduino Board: Main controller.
- Adafruit PWM Servo Driver: Controls multiple servo motors.
- MPU6050 Accelerometer/Gyroscope: Measures orientation and balance.
- TFLI2C Distance Sensor: Detects obstacles.
- Adafruit PCD8544 LCD Display: Displays basic graphics and information.
- Servo Motors (12x): Controls leg joints for movement.
Wire.h
Servo.h
Adafruit_PWMServoDriver.h
MPU6050.h
TFLI2C.h
SPI.h
Adafruit_GFX.h
Adafruit_PCD8544.h
- Connect servo motors to the Adafruit PWM Servo Driver.
- Attach the MPU6050 and TFLI2C sensors to the I2C bus.
- Connect the PCD8544 LCD display to the specified SPI pins.
- Upload the firmware using Arduino IDE.
- Power the Arduino and initialize the robot via
setup()
. - The robot begins walking using
loop()
with predefined step patterns. - Monitor balance and adjust dynamically with sensor data.
fakestep()
/fakestep_2()
– Simulates walking steps.dinamik()
– Balances robot dynamically.kinematik()
– Calculates kinematic parameters for leg movement.swrite()
– Controls individual servos.calculate_func()
– Calculates step-related parameters.
- Ensure all servo motors are properly connected and calibrated.
- Avoid exceeding servo motor angle limits.
- Secure power connections to prevent sudden shutdowns.
Feel free to contribute by improving code, fixing bugs, or suggesting new features. Open an issue or pull request on GitHub.
This project is licensed under the MIT License. See the LICENSE file for more details.