Thursday, August 11, 2016

An youtube Introduction to biped locomotion

This is a fast review of the basics and history of robotic locomotion.


So what is walking? According to Wikipedia:


Walking (also known as ambulation) is one of the main gaits of locomotion among legged animals, and is typically slower than running and other gaits. Walking is defined by an 'inverted pendulum' gait in which the body vaults over the stiff limb or limbs with each step. This applies regardless of the number of limbs - even arthropods, with six, eight or more limbs, walk.


The simplest type of walking is “the compass gait”. Imagine a cart wheel rolling down a slope, now remove the rim and make the wheel roll on the spokes. As long as the spokes are close enough to each other and the slope is steep enough the wheel will "walk" spoke to spoke down the slope.




Instead of using the slope (gravity) to drive the robot you can use a motor (an actuator):




Now we can remove all but two spokes and make them rotate around the axis and we got the compass gait.




Now to make this work in real life we need to tilt a bit side to side in order to avoid hitting the ground when we are trying to swing the leg forward. Here is an real life example:




Now we can replace the slope with actuators:




Back to the un-actuated (no motors)  robots, here is a better example (by McGeer) that have knees with gives a very natural walking.



Steve Collin later built a “Passive Dynamic Walker” with a torso and arms:



The work on passive dynamic walkers later inspired the Cornell Walker, the most energy efficient walking robot to date.


More info on the Cornell Ranger can be found here:


But this is sadly not how most robots work, most robots are pre-programmed to follow a specific pattern that do not follow a natural/dynamic flow. They tend to have stiff actuated joints and big feet to keep the balance. Here is a video that shows the most common type of small humanoid robots:




They have very stiff links and joints and are bunching a lot because the force when the foot impact the ground have no damping, this leads to a very power inefficient and unstable walking. They are also very bad at handling uneven terrain.


However it is possible to achieve amazing balance and handle uneven terrain with a stiff robot, here is an example by “Dr. Guero”:



And even more impressive:



Very little is know about the control system other than that it is some kind of learning system “AI” that handles the gait and balance.


So what are the big players doing? Lets first look a bit on some old videos.


One of the most famous biped robots is Honda's Asimo, let's review its history in short:




Lets analyze how Asimo walks (his gait) in this video:



Now i dare you to try to walk like that (imagine that you made no 2 in your pants while walking). Can you make it through a day walking like that? even an hour? your legs will probably start to complain after a few minutes. Its not a very energy efficient or natural gait. Why have Honda made Asimo walk like this?
Asimo and many other robots use a technique that is called Zero Moment Point or ZMP in short. What ZMP states is that if you keep the sum of all horizontal moment forces (vectors) within the area of your feet, you will be stable and won't fall over as easily. If you also keep the hip in the same level and the upper body upright, you will keep the center of gravity between your feet and  it will be simpler to balance the robot. This is not the same as saying that it is easy to achieve stable walking with a ZMP based approach.


Here is a video that very illustrates the concept very well.



Notice that the blue cross is in the middle of the robot at all time and that the red cross is within the bounds of the feet at all time. Real humans are tilted slightly forward while walking, We are not statically stable, we can say that while we are walking and running we are constantly avoiding to fall forwards. If we suddenly freeze during walking or running we will face plant the ground.


More info on ZMP can be seen here:


An more natural approach wast taken by “the Leg Laboratory” at MIT. some of the founders of Boston Dynamics have a history from the Leg Laboratory.



So what is the latest and greatest? Many of the older robots that looks awesome and give the impression of being very capable, are not very dynamic. They are often excellent at performing a given task within a specific environment. They walk well in stairs if they start at a given position and the stairs is a certain height and depth. If there is too much deviation from its pre-programmed assumptions it will fail. Today, the research is focused on energy efficiency and dynamic environments. How can we make robots walk on uneven ground? How do we handle unexpected external forces? How do we minimize the power required to walk?


Humanoid robotics have not been a big research subject until after the accident with the fukushima nuclear power plant in 2011. Some of the damage could have been minimized if it had been possible to access the manual valves inside the reactor building. The environment was to harish for a humans and teleoperated robots. An autonomous robot would prove very useful but none such robot existed at the time. In order to accelerate robotic research DARPA had a “Robotics Challange”:

The DARPA Robotics Challenge (DRC) was a prize competition funded by the US Defense Advanced Research Projects Agency. Held from 2012 to 2015, it aimed to develop semi-autonomous ground robots that could do "complex tasks in dangerous, degraded, human-engineered environments."[1] The DRC followed the DARPA Grand Challenge and DARPA Urban Challenge. It began in October 2012 and was to run for about 33 months with three competitions: a Virtual Robotics Challenge (VRC) that took place in June 2013; and two live hardware challenges, the DRC Trials in December 2013 and the DRC Finals in June 2015

Here is an video that shows what several teams of researchers and engineers can achieve with 3 years of work:




As you can see there are so many things that can go wrong, the sensors can give false information, actuators can break, control logic can contain bugs, the robot can draw and act on faulty assumptions. The list goes on.


Lets take a look at energy efficiency, energy efficiency is often measured in CoT (Cost of Transport)

CoT = Energy / (weight * distance).


DURUS

CoT ~1.33 (0.23m/s)




Graph from


ATRIAS





Graph from:


Atlas:



Boston Dynamics seldom release much details regarding their robots.. But here is some coverage:




Here is a table of COT for different machines:
Includes energy to run the motors and all electronics Comparisons:


Vehicle
Cost Of Transport
Ranger

0.28
Toyota Prius
0.15
Human

0.2
Asimo

1.8
BigDog
15
DURUS
1.33
ATRIAS
~1.5

The Walk Cycle



When we walk we repeat the same walk cycle over and over with slight deviations to keep our balance and adapt to uneven terrain. We do this without effort unless the terrain gets too uneven and unpredictable, then we have to look down and focus. So basically we have two modes of walking, one “default” that we do without thinking and another where we adapt to the environment and constantly have to focus to not fall over. Here is a image that shows how a “normal” walk cycle works for a human and how ATRIAS and AMBER2 have implemented it.
walkCycle.png
From:

Now to some notes.

Scientific papers are a valuable source of knowledge, you do not have to understand all the mathematical proofs. Many papers contains very informative graphs, tables and state diagrams. Some also link to good youtube videos and github repositories, so do not let a fancy language and a few mathematical formulas scare you away.
More and more publications are also available for everyone for free!


If you want to learn more in-depth course in dynamic walking i highly recommend this free course:


And if you want a introduction to robotics in general you can go through the lectures at http://shanghailectures.org/
They cover many aspects from philosophy, mechanical design to artificial intelligence.


If you, like most, do not use much math in your everyday life. Then you might consider to review your math skills by taking a look at https://www.khanacademy.org/


Here is a few longer lectures/presentations:

NASA Seminar on Bipedal Robots (Aaron Ames, 1h)

Learning to Walk by Actuating a Passive Dynamic Walker (Russ Tedrake) (1h)

Feedback Motion Planning via Sums-of-Squares Verification (Russ Tedrake) (47min)

Jessy Grizzle | Bipedal Walking Robots (37 min)


Sources for additional information:

Amber labs:

Boston Dynamics

Dynamic Robot Laboratory

UT Human Labs

MIT Robot Locomotion Group
https://github.com/RobotLocomotion/drake



Some names to keep track of:
Jessy Grizzle (University of Michigan)
Russ Tedrake ( MIT, Robot Locomotion Group)
Aaron Ames (Georgia Institute of Technology, AMBER labs)
Marc Raibert (MIT, Leg Labs -> Boston Dynamics)



Dictionary:


Actuator
Fancy name for thing that move stuff, motor, servo ...
Sensor
Something that perceives the environment, load cell, webcam, button, accelerometer ...
CoT
Cost of Transport
ZMP
Zero Moment Point
BipedTwo legged
Gaitwalk


Other Notes:

In real life you will have to deal with things such as mechanical asymmetry, uneven terrain, measurement errors, actuation errors, sensor noise and external forces. The world is a very noisy and chaotic place, and to make a good simulation is a real challenge. But building a walking biped and developing gait control without running any simulations is harder still. You will have to continuously improve both simulation and the real robot.


Please feel free to suggest corrections/ improvements / additions to this article.
// Anton Fosselius