与轮式或履带式机器人相比, 四足机器人在越障、地形适应性和环境保护等方面具有突出的优势.斜坡地形是自然环境中最为常见的地形之一.四足机器人在斜面上运动时, 稳定性的控制比在平地上更加困难, 其中主要有两大难点:一是足端容易打滑; 二是机器人容易向后翻倒.能否成功克服这些问题直接决定了四足机器人在斜坡上运动时稳定性能的优劣.
近年来, 一些研究人员已经对四足机器人在坡面运动的稳定性进行了分析.针对机器人的稳定性, Vukobratovic等[1]提出了零力矩点(zero moment point, ZMP)理论, ZMP稳定性判据常用于足式机器人的步态稳定性分析; Lee等[2]提出一种四足机器人以trot步态通过平面和斜坡过渡区域的控制方法; Zhang等[3]讨论了四足机器人在斜坡上的全方位行走, 提出一种连续步态的过渡方法, 并通过稳定裕度的量度讨论了稳定性; Kalakrishnan[4]使用零力矩点稳定判据, 通过规划ZMP轨迹的方法生成四足机器人行走步态; Meek等[5]通过仿真分析了四足机器人的稳定性, 并提出机器人应具有适当的腿部配置, 通过减少机器人的俯仰运动来增加稳定性; Lei等[6]通过分析机器人的零力矩点位置对四足机器人坡面trot步态进行了稳定性分析.Zhang[7]使用NESM (normalized energy stability margin)稳定判据实时计算机器人的稳定裕度, 通过调整机器人质心高度来满足稳定性要求, 该方法通过仿真进行了验证.
本文基于ZMP理论分析, 提出了一种新的四足机器人质心调整方法, 通过调节四足机器人前后腿小腿腿长的方法来调节质心位置.这种调节腿长的方法比其他方法控制简单, 可以同时实现两个方面的调整:一方面是调整机器人质心前移, 使质心在地面的投影点落在支撑多边形内部; 另一方面是调整机器人机体姿态角度, 防止机器人向后翻倒.
1 四足机器人运动学 1.1 四足机器人腿结构设计为了实现四足机器人坡面的质心调整, 设计了一种可以调节腿长的四足机器人, 即采用以液压缸作为小腿结构的四足机器人, 如图 1所示.该机器人由机体和四条腿组成, 每条腿具有3个旋转关节, 分别是侧摆髋关节、前摆髋关节和膝关节.该机器人小腿由液压缸构成, 该液压缸可以通过调节液压杆长度来调节小腿腿长.当四足机器人以trot步态行走时, 对角线上的两条腿同时抬高、摆动、下降和支撑.腿机构在摆动相和支撑相之间交替转换.
![]() |
图 1 液压缸小腿机器人模型 Fig.1 Robot model with hydraulic cylinder shins |
四足机器人在斜面上行走, 斜面的倾角为α.建立四足机器人坐标系, 采用D-H法对四足机器人进行运动学分析, 推导足端和腿关节之间的空间位姿关系.如图 2所示, 以右前腿为例, 坐标系{B}为机体坐标系, 坐标系{0}和{1}位于关节1处, 其位置坐标在机体坐标系中描述为(a, b, c).
![]() |
图 2 D-H坐标系 Fig.2 D-H coordinates frame |
![]() |
表 1 前腿D-H参数 Table 1 D-H parameters of front legs |
![]() |
表 2 后腿D-H参数 Table 2 D-H parameters of hind legs |
足端坐标系{4}相对于机体坐标系{B}的位姿可用齐次变换矩阵来描述:
![]() |
式中:s1=sinθ1; s23=sin(θ2+θ3); c1=cosθ1; c23=cos(θ2+θ3).
2.3 机器人逆向运动学分析首先计算髋关节坐标系{0}下的逆运动学, 假设齐次变换矩阵为
![]() |
(1) |
其中, px, py, pz分别表示足端在髋关节坐标系{0}下的x, y和z的坐标值.
再根据逆运动学运算求得各关节角θ1, θ2, θ3的表达式为
![]() |
(2) |
其中:
![]() |
(3) |
将该逆运动学转换到机体坐标系{B}下, 设:
![]() |
(4) |
其中, bpx, bpy, bpz分别表示足端在机体坐标系{B}下的x, y和z的坐标值.则
![]() |
即
![]() |
(5) |
根据动态稳定性判据:ZMP偏移距离小于最大偏移距离时, 即ZMP在支撑多边形内部时, 就可以分析机器人在斜面上行走的稳定性[6].对trot步态而言, 支撑多边形指处于支撑相的足形成的区域.如图 3所示, 零点矩偏移距离d指从ZMP到支撑对角线的垂直距离; 最大偏移距离r指从对角线到支撑多边形边界的垂直距离.1, 2, 3和4表示4条腿足端, 黑色圆表示支撑腿足端, 白色圆表示摆动腿足端.
![]() |
图 3 支撑多边形与ZMP偏移距离 Fig.3 Support polygon and offset distance of ZMP (a)—前半个周期;(b)—后半个周期. |
ZMP位于支撑多边形内, 即ZMP的偏移距离d小于对角线到支撑边界的距离时, 机器人才能稳定运动.最大偏移距离r与足端与地面的接触面积有关, 可以根据足端面积计算, 或者取经验值.
4 机器人在坡面行走时的质心调整相比在平坦地形, 机器人在斜坡地形中行走更加困难, 主要表现在:质心在支撑面的投影与斜面上各腿的支撑点不在同一水平面上; 支撑面水平投影面积变小, 稳定裕度变低[8-9].基于上述ZMP稳定条件, 提出了一种调节机器人小腿腿长的方法, 以实现机器人质心的调整.
4.1 基于ZMP判据的机器人质心调整方法机器人在坡面上以trot步态运动时, 初始状态如图 4所示.机体平行于斜面, 以质心作为ZMP的稳定性参考, 假设机器人质心与机体坐标系原点重合, 此时机器人质心在水平面的投影落在支撑足对角线偏后方, 当坡面倾角较大时, 投影点落在支撑多边形外部, 导致机器人失稳翻倒.
![]() |
图 4 初始状态下机器人质心投影与投影区域 Fig.4 Projection of the robot mass center and the projection area in the initial state |
由于trot步态时, 两条对角支撑线交替变换, 若分别调整质心与两条支撑对角线的距离, 会造成机器人躯干不停地俯仰摇摆, 不利于机器人的稳定行走.以两条支撑对角线交点为原点作半径为R的稳定圆, 当机器人质心投影在稳定圆内时, 投影点与两条对角支撑线距离的最大值小于圆的半径R.取稳定圆的半径值R为质心投影点最大偏移距离r, 调整机器人质心, 使其投影点落在稳定圆内, 即可保证质心投影点同时位于两条支撑对角线的支撑多边形内.
将机器人前腿小腿缩短δ, 同时将后腿小腿伸长δ, 如图 5所示, 机器人质心前移, 质心投影点落在稳定圆内, 在运动过程中, 不管哪两条对角腿支撑, 都能保证质心投影点落在支撑多边形内部.
![]() |
图 5 腿长调整后机器人质心投影与投影区域 Fig.5 Projection of the robot mass center and the projection area after the shins length adjustment |
为了方便分析, 将小腿伸长(或缩短)的过程分解为两个阶段, 如图 6所示.第一阶段为腿长变化阶段, 前腿缩短后腿伸长, 图中机体坐标B′所示的状态; 第二阶段为机器人整体绕后足端O旋转β角, 直到前足端触地, 图中机体坐标系B″所示的状态.
![]() |
图 6 质心调整的分解 Fig.6 Decomposition of the mass center adjustment |
根据运动学分析, 足端在机体坐标系内的坐标值为
![]() |
(6) |
则腿长变化造成的足端坐标变化值为
![]() |
(7) |
由于初始状态时, 前后腿分布关于机体坐标系对称, 则旋转角度为
![]() |
(8) |
旋转前机器人质心与后腿足端连线OB′与斜面夹角γ和
![]() |
(9) |
式中, H为机器人初始状态时质心到斜面的垂直高度, 见图 4.
可以得到后腿足端在机体坐标系B″下的坐标值为
![]() |
(10) |
质心调整过程可以简化为图 7.质心与后腿足端连线绕足端O旋转角度β.
![]() |
图 7 质心调整示意图 Fig.7 Diagram of the mass center adjustment |
根据图 7, 可以求得质心位移量为
![]() |
(11) |
下面推导腿长变化量δ的取值.由图 4变化到图 5, 机器人质心垂直投影在斜坡上的投影点(称之为斜坡投影点)在平面投影区域的位置向前移动了s2, 即为机器人质心在水平方向向前移动的距离lx.机器人质心直接投影到平面投影区域内的位置到斜坡投影点投影位置的距离为s1, 根据图 5可以得出:
![]() |
(12) |
从图 5中可以看出, 只要满足
![]() |
(13) |
即可实现机器人质心投影点在稳定圆内, 即
![]() |
(14) |
解得
![]() |
(15) |
其中:
![]() |
(16) |
可以看出:斜面倾角α和最大偏移距离r确定后, 便可以根据式(16)推导出腿长变化量δ的取值范围.
5 仿真利用Adams和Matlab对四足机器人在坡面上的trot步态行走进行联合仿真.图 8为机器人坡面运动的仿真动画截图.
![]() |
图 8 机器人trot步态坡面运动仿真 Fig.8 Simulation of the robot moving on the slope with trot gait |
设定斜面倾角为10°, 取质心投影点最大偏移距离r为0.1 m, 取腿长调整量为0.04 m进行仿真.后腿和前腿的腿长变化与时间的关系曲线如图 9所示.可以看出, 第1 s为腿长调整时间, 腿长变化为匀速变化.腿长调整完毕后, 由于坡面倾角不变, 所以运动过程中腿长保持不变.
![]() |
图 9 后腿和前腿小腿腿长变化曲线 Fig.9 Change curves of the rear and front shin length |
机器人质心运动轨迹如图 10所示.图中实线表示机器人在前进方向的位移, 虚线表示机器人在竖直方向的位移.可以看出, 在第1 s腿长调整阶段, 机器人质心向前移动了大约0.08 m, 实现了质心前移.运动过程中, 两条曲线均连续平稳, 波动较小, 说明机器人在坡面上实现了稳定运动.
![]() |
图 10 机器人质心运动轨迹 Fig.10 Trajectory of the mass center of the robot |
机器人机体与水平面夹角变化如图 11所示.可以看出, 初始时机身与水平面夹角等于坡面倾角为10°, 调整阶段, 机身与水平面夹角迅速减小, 减小至2.5°左右, 减小了机器人向后翻倒的可能性.运动过程中, 该角度近似在1°到3°之间呈周期性震荡, 说明机器人俯仰角度波动较小.
![]() |
图 11 机体与水平面夹角 Fig.11 Angle between the body and the horizontal plane |
本文设计了一种小腿采用液压缸的四足机器人.根据四足机器人在坡面运动的ZMP稳定判据, 提出了通过调整机器人小腿腿长来调整机器人质心, 从而提高trot步态行走稳定性的控制方法.文中通过数学分析, 确定了腿长变化量δ取值范围与斜面倾角α的关系式.最后进行了仿真分析, 验证了通过调整机器人小腿腿长, 实现了机器人质心位置和机体姿态的调整, 增加了机器人在坡面运动的稳定性.
未来将进行机器人在斜面上行走的实验.通过实验来确定最佳姿态角, 评估斜面动态稳定行走的控制算法.
[1] |
王立鹏, 王军政.
基于零力矩点的四足机器人非平坦地形下步态规划与控制[J]. 北京理工大学学报, 2015, 35(6): 601–606.
( Wang Li-peng, Wang Jun-zheng. Foot trajectory generation and gait control method of a quadruped robot on uneven terrain based on zero moment point theory[J]. Transaction of Beijing Institute of Technology, 2015, 35(6): 601–606. ) |
[2] |
Lee J H, Park J H. Control for quadruped robots in trotting on horizontal and slanted surfaces[C]// Proceedings of the IEEE 9th Asian Control Conference (ASCC). Istanbul, 2013: 1-6.
|
[3] |
Zhang W Y, Zhang L. Quadruped robot omni-directional walking on a slope based on static balance[C]// International Conference on Manufacturing and Automation. Piscataway: IEEE, 2012: 1436-1440.
|
[4] |
Kalakrishnan M, Buchli J, Pastor P, et al. Fast, robust quadruped locomotion over challenging terrain[C]// IEEE International Conference on Robotics and Automation. Piscataway: IEEE, 2010: 2665-2670.
|
[5] |
Meek S, Kim J, Anderson M. Stability of a trotting quadruped robot with passive, under actuated legs[C]// IEEE International Conference on Robotics and Automation. Pasadena, 2008: 347-351.
|
[6] |
Lei J T, Ren M M.
Dynamic stability of quadruped robot walking on slope with trot gait[J]. High Technology Letters, 2016, 22(1): 1–9.
|
[7] |
Zhang W Y, Zhang L. Research of a static balance method for a quadruped robot walking on a slope[C]//IEEE International Conference on Information and Automation. Piscataway: IEEE, 2011: 261-266.
|
[8] |
张帅帅, 荣学文.
崎岖地形环境下四足机器人的静步态规划方法[J]. 吉林大学学报(工学版), 2016, 44(4): 1287–1296.
( Zhang Shuai-shuai, Rong Xue-wen. A static gait planning method for quadruped robots over rough terrains[J]. Journal of Jilin University(Engineering and Technology Edition), 2016, 44(4): 1287–1296. ) |
[9] |
韩宝玲, 贾燕.
四足机器人坡面运动时的姿态调整技术[J]. 北京理工大学学报, 2016, 36(3): 242–246.
( Han Bao-ling, Jia Yan. Posture adjustment for quadruped robot trotting on a slope[J]. Transaction of Beijing Institute of Technology, 2016, 36(3): 242–246. ) |
[10] |
Havoutis I, Ortiz J, Bazeille S, et al. Onboard perception-based trotting and crawling with the hydraulic quadruped robot[C]// Intelligent Robots and Systems (IROS). Tokyo, 2013: 6052-6057.
|