On four legs, the stability of locomotion is usually not the limiting factor, but due to irregular shape of the legs and strongly varying friction coefficients, motor constraints and difficulties in modeling ground contact, the choice of appropriate leg trajectories represents a complex optimization problem.
Very good results can be achieved here with machine learning using evolutionary algorithms. With these, the AIBO is enabled to run omnidirectionally with top speeds of 50cm/s.
Walking on two legs is not easy for robots even on flat ground. Servo motors are nowhere near as strong, fast and accurate as muscles. Much less sensor information is available than for humans. And as soon as the surface is no longer just flat and hard, but possibly contains unevenness or is even yielding, the robot very easily gets out of step.
The challenge now is to develop a walk that is both fast and stable, that can be used to fluidly change the direction of motion, and that dynamically takes into account sensor information to compensate for uneven ground and external disturbances such as shocks.
To achieve these goals, several approaches are being explored in more detail.
This is the most illustrative approach for developing walking motions and was originally implemented for the "Kondo KHR1" robot shown below, and later successfully used on the "Bender" developed at IRF. It can be used not only for bipedal robots, but for any number of legs. The idea is to periodically follow fixed paths (trajectories) with the feet, so that a stable run can be achieved with a suitable choice of parameters. The running speed, the duration of the step, the distance of the feet from each other etc. can be considered.
The following picture shows a possible trajectory for the left leg.
Even though this is one of the simplest methods, it has advantages that help it to be used frequently, e.g. at the RoboCup. Besides very easy adaptation possibilities and lack of dependence on sensor calibrations, this is the possibility to optimize the run to maximum speed by machine learning methods. Through this optimization, problems of the robot's mechanics and the subsurface are already implicitly considered in the parameters.
Static center of gravity trajectories
Another approach with static trajectories that is currently being researched does not specify the path of the feet, but rather the path of the robot's center of gravity. Here, the Zero Moment Point (ZMP) is used as a stability criterion for bipedal walking. This is the point on the ground at which the robot's overturning moments approach zero. If the point is within the standing area of the robot, e.g. within the area of the feet, the robot is stable. By a suitable choice of the course of the center of gravity, the course of the ZMP can be chosen in such a way that it is always within the standing area. In this case, the course of the center of gravity is basically only restricted by the ZMP, so that more natural, human walking movements can also result, in which the center of gravity also does not remain at the same height of the center of gravity.
The previous approaches do not easily allow the use of sensors to stabilize the walk, since the chosen parameters are optimized for the given conditions, and changes have consequences that are difficult to calculate. Therefore, a new approach is currently being pursued for the use of sensors, which uses a control loop to try to move the center of gravity of the robot so that the measured ZMP follows the target ZMP, where the target ZMP is chosen so that it is always within the planned foot positions.
Measuring the ZMP is already a difficult task in itself, as different sensors have advantages and disadvantages. In this approach, the most common form of measurement using foot pressure sensors is used, where the ZMP can then be calculated, in simplified terms, as the mean of the measured pressure of the sensors.
Originally developed on the "Bender", this approach is currently being tested on Aldebaran Robotics' "Nao", which is the robot for the Robocup standard platform league.
Another approach for dynamic running is the use of a so-called preview controller. From the given course of the ZMP, an optimal center of gravity course can be calculated by means of the preview controller, which leads to the desired ZMP. The difference in this approach is the use of the sensors. Here, the accelerometer is currently used to measure the ZMP. This is then fed into an "observer" which uses it to estimate the current state of the robot (position, and velocity and acceleration of the center of gravity). This state is then used by the preview controller to plan the further course of the center of gravity accordingly.
Another difference is the use of a preview of the ZMP planning. By using a preview of about 0.8 seconds, it is possible to pre-set the ZMP almost arbitrarily (within the mechanical capabilities of the robot), and thus freely plan the foot positions on the ground. This results in a fully omnidirectional walking engine (arbitrary combinations of speed in x, y direction and rotation).
The stability could be shown in simulations on the "Bioloid" and "Nao" using various tests. In reality, the method already proved itself on the "Bender" in tests and the "Nao" during the last Robocup World Championship, but also in tests like walking on uneven/unstable ground.