Hexapod Robot
Hexapod Robot
My goal is to build a hexapod robot from ground up. This project is a great opportunity for me to learn more about electronics and coding. I am going to update this webpage as I make more progress.
Mechanical Design
I designed the chassis of the hexapod in SolidWorks. To keep cost low, I decided to fabricate the parts using 3D printing(I might give resin print a shot as well).
I finished making the first prototype leg on May 5th, 2023. Everything works as intended. I plan to test the servos first, calibrate them to correct positions and then eventually use inverse kinematics to code a trajectory in Arduino IDE.
MOTOR TORQUE CALCULATION
Electronics
The brain of this robot will be an Arduino Uno. I will be using two 16 channel I2C servo driver to drive 18 total MG996R servo motors.
The servo motor is a hobbyist servo(gotta keep the cost low) and is rated for 4.8V-6V and 0.5mA-0.9mA.
I plant to use a 7.4V 6200mAh battery to run the motors. Assuming each motor pulls 0.9mA at full load, 6200mAh theoretically should give the robot almost 23 mins of run time.
However, the servo is rated for 6V max so I will need to step down the voltage from 7.4V to 6V. I will be using a buck converter to achieve this. The plan is to set input voltage to the buck converter as battery pack's 7.4V and output voltage to be 6V. Buck converters I looked at usually have about 88% efficiency so I expect output voltage to be between 5.5V-6V.
Coding
I plan to use Arduino IDE to code the robot. Goal to apply knowledge I gained in my robotics class in this project.
Start with DH parameters of the hexapod leg.
Calculate the forward kinematics of the leg.
Using the DH params and FK, find the inverse kinematics for the robot. Since each leg is a 3R robot, IK should not be too difficult.
Once IK is found, generate a trajectory for each robot leg. Trajectory basically consists of two "individual" paths. One is a straight line and other is a semi circle. Each leg needs to start with a semi circular trajectory and then pull back in a straight line.