一、概述

受袋鼠跳跃运动理论的启发,1982 年,Raibert 教授研制出世界上第一个平面单足跳跃机器人[1](Planar One-Leg Hopper),1983年,教授在平面跳跃机器人的基础上研制出可以空间跳跃的三维单足机器人。单足机器人的运动是研究机器人平衡控制策略的起点和基础,

单足机器人的运动依靠跳跃这唯一的步态以满足动态平衡,可以把整体假想为一个跳跃的球体,球体在重力加速度作用下下落,直到碰到地面后改变方向,碰撞过程中球通过变形吸收动能然后恢复初始状态时释放动能,从而实现往复弹跳。对于单足机器人也是同样,依靠弹性变形吸收弹跳能,在短时间内恢复形变以提供下次弹跳的能量。由于不可避免会出现能量损失,可以使用腿部驱动器补充损耗的能量。

除了像球体一样实现弹跳外,单足机器人的运动状态类似于“倒立摆”一样,需要控制系统保持本体的平衡状态下改变运动方向和运动速度,满足一定的运动功能。

本文将分析一个单腿弹跳机构,实现像球体一样弹跳,像倒立摆一样控制,核心问题就是动态平衡的控制。

二、单足机器人的机械结构本体

1.本体结构

本文分析的本体结构借鉴的是《legged robots that balance》第2章内容,主体结构如图1所示。

图1 单足机器人本体结构

本体结构由一个平衡梁提供惯性力矩,腿部由气缸驱动,机体集成了传感器、伺服阀、界面操作电子等。机体和腿靠一个铰链连接,组成了臀关节,依靠一对气缸提供臀关节扭矩,4个电磁阀控制供给气缸的压缩空气。

整个机械本体的尺寸参数如表1

表1 单腿机器人的结构参数

参数 数值
整体的 高度 × 宽度 0.69m × 0.97m
臀关节高度 0.5m
整体质量 8.6Kg
腿部质量 0.45Kg
机体的转动惯量 0.52 Kg·m2
腿部的转动惯量 0.037 Kg·m2
足部与底板摩擦系数 0.6

2. 本体结构简化模型

本体结构模型需要考虑三个部分,第一部分是腿部机构如何简化为弹簧结构,相应的刚度和压缩长度的计算;第二部分是腿部与本体角度的确立;第三部分是足部与地面的接触模型。

本体的腿部是由四个电磁阀控制腔体的压力,如图2所示,上/下腔室分别由四个电磁阀控制通断,两个供高压,两个通大气压。当所有电磁阀关闭后,随着机体的负载腿部缩短,空气被压缩,提供类似于弹簧的弹力,刚度由腔室内的剩余压力决定;

图2 腿部驱动示意图

电位差计用于测量身体和腿部的角度,用 γ 表示。

脚底在腿部末端加了垫子,在满载下尺寸大约只有20mm,提供了良好的支撑点。足部与地面的摩擦系数大致为0.6,不会产生过多的滑动。

最后,将整体结构建模为弹簧倒立摆模型,即腿部模拟成一个弹簧,整体机体视为一个倒立摆,如图3所示

图3 倒立摆-弹簧模型示意图

三、单足机器人的平衡控制

单足机器人只有一个支撑点,本体结构的重心如果垂直于支撑点,那么机体是平衡状态;如果本体结构的重心偏离了支撑点,就会对机体产生力矩,机体失去平衡,控制系统需要在下次弹跳时提供反向支撑点,从而平衡上一次运动产生的力矩。

其中,定义落地时刻水平加速度为0的点为中位点,则当落地点落在离中位点远的位置,一部分动能转换为势能,系统在支撑相阶段减速至水平加速度<0;当落地点落在离中位点的位置,一部分动能转换为势能,水平加速度为0;当落地点落在离中位点近的位置,一部分势能转换为动能,水平加速度>0,如图4所示。

图4 落位点与中位点关系

为了准确控制前行速度,控制系统需要根据机器人当前状态及期望的运动方向计算出落足点,可以采用三种方式:

1)动力学求解:求解系统的动力学方程,得到系统状态变量关于时间的函数,根据这些解反推足部位置与预期行为的函数关系。

2).数值拟合:对各种情况进行实验,将数据采集后进行数据你和得到近似解

3).封闭形式的近似解:控制系统测量前行速度来估计支撑中位点的位置,使用前行速度的误差计算落地点与中位点的位置偏差。

采用第三种方式求解落地点,通过水平速度来估计中位点的位置,

[公式]

 [公式] 为水平速度的状态估计, [公式] 为上一个支撑相的持续时间,即足底传感器触地到足底传感器离地的时间。

然后将水平速度的误差用于计算水平加速度,使机器人从一个水平速度改变到另一个水平速度,以应对外界干扰和硬件误差。

[公式]

其中, [公式]是水平速度的状态估计, [公式] 是可调的反馈增益, [公式] 是期望速度
最后,可以得到落地点的位置公式:

将落地点的数值转换为臀部关节的转角,几何关系如图5所示

图5 中位点与转角的关系图

根据图中的几何关系,可以推算臀部关节的转角为

由于臀部关节采用简单的线性伺服控制系统,因此伺服驱动臀部转角可由该公式决定:

上式中, [公式] 是关节电机的扭矩, [公式] 是传感器测得的关节位置和速度,[公式] 是期望关节角。

[公式] 分别是伺服系统的弹簧和阻尼

控制系统在支撑相时,通过臀部关节施加扭矩提供身体姿态的平衡,由线性伺服系统完成,添加的扭矩值如下

最后,使用状态机跟踪跳行运动以同步上述的控制分析,每个阶段的状态如下表2

表2  状态机

状态 事件 动作
1.加载 足触地 停止排出腿部的气压 零髋关节扭矩
2.缩腿 腿部缩短 腿部上腔室密封 用髋关节调整身体姿态
3.伸腿 腿部变长 腿部增加压力用髋关节调整身体姿态
4.卸载 腿部接近最大长度 停止伸展 零髋关节扭矩
5.腾空 足端没有接触地面 将腿部气压排放至低压 将足端调整至适当的位 置以便于着陆

参考文献

[1]M. H. Raibert and E. R. Tello, "Legged Robots That Balance," in IEEE Expert, vol. 1, no. 4, pp. 89-89, Nov. 1986, doi: 10.1109/MEX.1986.4307016.