Why bipedal robots? Because bipedal robots can handle more challenges than other wheeled mobile robots. Bipedal robots can climb stairs, step over obstacles, and even move freely in wilderness or hazardous environments for search and rescue operations.
My goal is to create a real-time path planner for bipedal robots, allowing them to travel from start to finish while safely avoiding obstacles.
Before managing a complex, three-dimensional bipedal robot, we need to understand walking robots and how to control them via a simpler model.
RABBIT is a five-link, planar bipedal robot which has point feet and four actuated joints. This configuration results in a five degree-of-freedom mechanism during the single support phase and four degrees of actuation.
I simulated the dynamics of RABBIT and improved the controller, making RABBIT walk fast without falling for more than 3.5m. Though RABBIT looks simple, I learned a lot of fundamental knowledge in robot dynamics control, including hybrid system, forward kinematics, guard functions and reset maps.
Digit and Cassie are the latest two versions of bipedal robot designed by Agility Robotics. Both have 20 degrees of freedom (DOF) and each leg has seven joints. They can perform sagittal walking, turning and also both at the same time once. Digit also has arms, torso and a LiDAR which can be used for localization.
To ensure robots walk without falling or colliding with obstacles, one approach is to update control commands in real-time while predicting the robots’ future location. However, there are two main difficulties in realizing this approach. During my time in ROAHM Lab, I have made contributions to address them.
"Template and Anchor" Model
The first difficulty is predicting the robots’ future positions from dynamics, since such bipedal robots usually have high degrees of freedom and are underactuated. Using the idea of “template and anchor,” I simplified the dynamics of the robots by approximating the full-order model (anchor) with a reduced-order model (template). The simpler model enabled me to use optimization techniques to compute the set of future states that the robot could reach within a certain time horizon, given its initial condition and control parameters. This forward reachable set (FRS) includes a buffer to conservatively account for the modeling error between the template and anchor dynamics.
Ensuring Safety in Real-time
The second difficulty lies in achieving real-time performance while ensuring safety. To address this difficulty, I first generated intermediate waypoints to the goal using Optimal Rapidly-exploring Random Tree (RRT*). Then, inspired by Model Predictive Control (MPC), I solved a nonlinear optimization problem to update control commands, allowing robots to walk safely towards waypoints. Localization is achieved by incorporating Motion Capture for Cassie and SLAM for Digit. Safety is guaranteed by imposing constraints that ensure no intersection between the FRS and obstacles.
With my contributions, our research team achieved real-time safe path planning for Cassie in a simulated warehouse environment, and for Digit in our lab and outside around the Michigan Robotics building. Our next goal is to enable Digit to navigate itself in more challenging scenarios, which necessities more accurate and robust low-level control. However, because Digit’s low-level controller is proprietary, I am currently developing our own controller to improve performance.