


一、定义
1.ZMP是Zero Moment Poin的缩写,是水平地面上机器人主动力和主动力矩合力矩水平分量为零的点。这里假定地面的摩擦力足够大。
考虑单脚支撑的情形。机器人腿对脚的作用力为,力矩为
。脚的中心为G,重力为
。假定为了保持平衡,地面需要给脚的作用力为
,力矩为
,作用在P点上。改变P的位置,当位置合适时
为零。该点即为ZMP。

单脚支撑
可以列出足部的静态平衡方程:
在水平面上投影即可求出ZMP的位置。
2. CoP是Center of Pressure的缩写,是指地面反力合力的作用点。CoP上的力矩在水平方向分量为零。
二、讨论

(a)两个脚底与地面接触的支撑多边形(b)一个脚底与地面接触,一个脚尖和地面接触的支撑多边形
1. ZMP是根据脚踝处受力计算出来的等效点。
(1)若该点在支撑多边形(见上图)以内,则该步态动态平衡,因为足底可以提供足够的作用力使其等效作用点为ZMP。
(2)若该点在在支撑多边形外,则更名为FZMP(fictitious ZMP),因为足底不能提供等效作用点在该点的力。这时,ZMP无意义。FZMP上的力等效在支撑多边形的边界上,会产生附加力偶,由于边界和地面无力矩,该力矩无法提供,因此有一个来自脚踝的力矩的水平分量无法平衡,机器人就会沿该边界翻转(倾覆)。

(a)计算的ZMP(P点)在支撑多边形外侧(b)结果会导致翻转
2. CoP和ZMP在机器人动态平衡时是同一个点,但不平衡时不相等。考虑下方三个图,(a)图中ZMP与CoP相等,因为都是同一个水平力矩为零的等效点。(b)图二者不相等,因为此时计算的ZMP在支撑多边形外侧,脚会沿着边界旋转,ZMP此时不存在。而CoP是脚上作用力的简化,因此CoP此时在边界上。(c)图是特殊情况,此时机器人是“踮脚尖”站立,保持平衡,与(a)中情况一样。

ZMP与CoP
3. ZMP检验是步态稳定的必要条件。检验的是步态的可行性而不是稳定性。根本上是在检验支撑多边形是否足够大。在下图中的两个机器人位姿相同,受力情况相同,但速度不同。可以构造条件使(a)图稳定而(b)图不稳定,而二者的ZMP条件是相同的。

ZMP并不是稳定性判据
4. ZMP在步态动态平衡时就是CoP,因此可以通过计算CoP来计算ZMP,并通过ZMP到支撑多边形边界的距离来表征摔倒的可能性。
参考资料:
Buschmann, Thomas. (2021). Simulation and Control of Biped Walking Robots.
Vukobratovic, Miomir & Borovac, Branislav. (2004). Zero-Moment Point - Thirty Five Years of its Life.. I. J. Humanoid Robotics. 1. 157-173. 10.1142/S0219843604000083.
林玎玎, 刘莉, 赵建东, & 陈恳. (2004). 双足步行机器人的zmp-cop检测及研究. 机器人(04), 368-372.
撰稿:吴奇