Center of pressure (terrestrial locomotion) (source code)

= Center of pressure
{disambiguate=terrestrial locomotion}
{wiki}

In terrestrial robot locomotion, the <center of pressure (terrestrial locomotion)> is the ground point summarizing the normal load shared by the active contacts. With contact positions $(x_i,y_i)$ and nonnegative normal reactions $N_i$, its coordinates are the weighted averages $x_P=\sum_iN_ix_i/\sum_iN_i$ and $y_P=\sum_iN_iy_i/\sum_iN_i$, provided the total <normal force> is positive. It lies in the current <support polygon>, but is a contact-force quantity rather than the robot's <center of mass> position.<Underactuated Robotics by Russ Tedrake>[Highly-articulated Legged Robots, Center of pressure (CoP) and Zero-moment point (ZMP), flat-terrain definition]{ref}

Force-sensor coordinates matter when reconstructing this point. Suppose a sensor origin lies height $h$ above a horizontal contact plane, with parallel coordinate axes. If it reports <force> $(F_x,F_y,F_z)$ and moment $(M_x,M_y,M_z)$, the plane point is located at $(x_P,y_P,-h)$ relative to that origin. Moment translation gives
$$
x_P=-\frac{M_y+hF_x}{F_z},\qquad
y_P=\frac{M_x-hF_y}{F_z},\qquad F_z>0.
$$
The <ground-plane transformation of a measured contact wrench> must therefore precede interpreting moment/<force> ratios as a contact location.

For an original sensor example, take $h=0.05\,\mathrm m$, <force> $(30,-20,600)\,\mathrm N$, and measured roll/pitch moments $(17,-49.5)\,\mathrm{N\,m}$. The reconstructed point is $(0.080,0.030)\,\mathrm m$. Ignoring the origin height would instead give $(0.0825,0.02833)\,\mathrm m$. Those millimetre differences are coordinate effects, not a change in the physical <pressure> distribution.

During motion, the contact point need not equal the horizontal projection of the <center of mass>. The source's constant-height, negligible-angular-momentum-rate model relates their difference to horizontal <acceleration>; those assumptions must be established before using that simplified relation.<Underactuated Robotics by Russ Tedrake>[Highly-articulated Legged Robots, equations cop and zmp]{ref} A robot-foot experiment can compare known applied loads with the sensor's translated <force>/moment measurements. When $F_z$ approaches zero, reconstruction becomes sensitive to moment error; at zero normal load the normal-pressure point is undefined. A residual yaw couple may remain, as explained in <residual contact torque at the center of pressure>.