Bipedal Walker

Sim to Real: designing, training, and controlling a two legged robot

In one of my graduate classes, I designed a bipedal robot capable of gaiting. The robot consists of seven bus servo motors, giving the robot a total of six degrees of freedom. Three servos are allocated for each leg, and the final seventh servo runs on a rack and pinion system in the robot's body, which allows it to adjust its center of mass. Additionally, the robot poses a passive second linkage in each leg constraining the foot to be parallel to the body so that there is no need for ankle control. The robot was designed in solid works, and the parts were all fabricated using different methods of digital manufacturing such as FDM Printing and Laser Cutting. The robot is successfully manipulated by modeling its inverse kinematics, and designing its gait based off of its foot position.

After manually designing a gaiting pattern to validate the robot's integrity, I modeled the robot in Mujoco (a popular physics engine, image above) so that I can train an optimal gaiting policy for the robot. I am currently in the process of training this gaiting policy using Stable Baseline3's SAC algorithm (a popular off-policy RL algorithm for locomotion tasks), as well as a modified Gym environment.

The robot assembled without the 7th motor and outer shell