# Zero moment point

Zero moment point is a concept related with dynamics and control of legged locomotion, e.g., for humanoid robots. It specifies the point with respect to which dynamic reaction force at the contact of the foot with the ground does not produce any moment in the horizontal direction, i.e. the point where the total of horizontal inertia and gravity forces equals 0 (zero). The concept assumes the contact area is planar and has sufficiently high friction to keep the feet from sliding.

## Introduction

This concept was introduced in January 1968 by Miomir Vukobratović at The Third All-Union Congress of Theoretical and Applied Mechanics in Moscow. In the following works and papers that were produced between 1970 and 1972 it would then be called zero moment point and would be spread around the world.

The zero moment point is a very important concept in the motion planning for biped robots. Since they have only two points of contact with the floor and they are supposed to walk, “run” or “jump” (in the motion context), their motion has to be planned concerning the dynamical stability of their whole body. This is not an easy task, especially because the upper body of the robot (torso) has larger mass and inertia than the legs which are supposed to support and move the robot. This can be compared to the problem of balancing an inverted pendulum.

The trajectory of a walking robot is planned using the angular momentum equation to ensure that the generated joint trajectories guarantee the dynamical postural stability of the robot, which usually is quantified by the distance of the zero moment point in the boundaries of a predefined stability region. The position of the zero moment point is affected by the referred mass and inertia of the robot's torso, since its motion generally requires large angle torques to maintain a satisfactory dynamical postural stability.

One approach to solve this problem consists in using small trunk motions to stabilize the posture of the robot. However, some new planning methods are being developed to define the trajectories of the legs’ links in such a way that the torso of the robot is naturally steered in order to reduce the ankle torque needed to compensate its motion. If the trajectory planning for the leg links is well succeeded, then the zero moment point won't move out of the predefined stability region and the motion of the robot will become smoother, mimicking a natural trajectory.

## ZMP computation

The resultant force of the inertia and gravity forces acting on a biped robot is expressed by the formula:

${\displaystyle F_{}^{gi}=mg-ma_{G}}$

where ${\displaystyle m}$ is the total mass of the robot, ${\displaystyle g}$ is the acceleration of the gravity, ${\displaystyle G}$ is the center of mass and ${\displaystyle a_{G}}$ is the acceleration of the center of mass.

The moment in any point ${\displaystyle X}$ can be defined as:

${\displaystyle M_{X}^{gi}={\overrightarrow {XG}}\times mg-{\overrightarrow {XG}}\times ma_{G}-{\dot {H}}_{G}}$

where ${\displaystyle {\dot {H}}_{G}}$ is the rate of angular momentum at the center of mass.

The Newton–Euler equations of the global motion of the biped robot can be written as:

${\displaystyle F_{}^{c}+mg=ma_{G}}$
${\displaystyle M_{X}^{c}+{\overrightarrow {XG}}\times mg={\dot {H}}_{G}+{\overrightarrow {XG}}\times ma_{G}}$

where ${\displaystyle F_{}^{c}}$ is the resultant of the contact forces at X and ${\displaystyle M_{X}^{c}}$ is the moment related with contact forces about any point X.

The Newton–Euler equations can be rewritten as:

${\displaystyle F_{}^{c}+(mg-ma_{G})=0}$
${\displaystyle M_{X}^{c}+({\overrightarrow {XG}}\times mg-{\overrightarrow {XG}}\times ma_{G}-{\dot {H}}_{G})=0}$

so it's easier to see that we have:

${\displaystyle F_{}^{c}+F^{gi}=0}$
${\displaystyle M_{X}^{c}+M_{X}^{gi}=0}$

These equations show that the biped robot is dynamically balanced if the contact forces and the inertia and gravity forces are strictly opposite.

If an axis ${\displaystyle \Delta ^{gi}}$ is defined, where the moment is parallel to the normal vector ${\displaystyle n}$ from the surface about every point of the axis, then the Zero Moment Point (ZMP) necessarily belongs to this axis, since it is by definition directed along the vector ${\displaystyle n}$. The ZMP will then be the intersection between the axis ${\displaystyle \Delta ^{gi}}$ and the ground surface such that:

${\displaystyle M_{Z}^{gi}={\overrightarrow {ZG}}\times mg-{\overrightarrow {ZG}}\times ma_{G}-{\dot {H}}_{G}}$

with

${\displaystyle M_{Z}^{gi}\times n=0}$

where ${\displaystyle Z}$ represents the ZMP.

Because of the opposition between the gravity and inertia forces and the contact forces mentioned before, the ${\displaystyle Z}$ point (ZMP) can be defined by:

${\displaystyle {\overrightarrow {PZ}}={\frac {n\times M_{P}^{gi}}{F^{gi}\cdot n}}}$

where ${\displaystyle P}$ is a point on the contact plane, e.g. the normal projection of the center of mass.

## Applications

Zero moment point has been proposed as a metric that can be used to assess stability against tipping over of robots like the iRobot PackBot when navigating ramps and obstacles.[1]