Walking Algorithm ProgressPosted on April 10th, 2009 No comments
Here is a short video of our IK solver producing a simple walking trajectory in MATLAB. The solver was made using AutoLev’s dynamic software, and will be run in realtime on the robot to convert high-level commands into actual joint angles. The purpose of an inverse kinematic solver is to convert a desired trajectory of points on the robot (such as the feet) to a series of joint angle commands that the motors can use. Using a basic walking trajectory developed by the Hubo lab (Park et. al), the resulting trajectory plot for a sconstant speed walk looks like this:
Making an effective open loop trajectory required significant trial and tuning. Despite the obstacles, however, the IK solver & walking pattern was a success. The first steps of the ATLAS robot are documented in this video.
During our experiments, howerver, we discovered critical complicating factors we found included:
- Joint compliance at each servo allowed position errors at the feet of up to 15 mm from the desired lcoation. The difference between the loaded leg and the swinging leg often meant that the feet landed crooked, interrupting the gait.
- Transmit-to Receive switching in the USB to dynamixel adapter was very slow, leading to a total motor communication speed of less than 500Hz. With 15 motors to command, the effective update speed was less than 30Hz, cause noticeable vibration as the servos repeatedly accelerated and decelerated.
- The grip of the feet was unpredictable on rubber and linoleum, requiring high-friction “shoes” to be added.
- The relatively wide hips cause the body to “sag” slightly to the inside during single support, requiring compensation in the hip trajectory to stabilize the walk.
Leave a Reply