双足机器人相比于一般的移动机器人在非结构化环境中具有更好的移动能力,因而受到研究者的广泛关注。控制机器人获得快速的行走速度以及实现跑动步态仍然是双足机器人领域中具有挑战性的问题之一。机器人快速行走或跑动时,摆动脚在落地的瞬间会产生一个较大的冲击力,此力使落地脚反弹或使零力矩点(zeromoment point)产生较大跳变,从而造成机器人稳定裕度降低和跌倒。这种现象被称为冲击效应,它是制约双足机器人提高步行速度和跑步的因素。
气动人工肌肉是近年来发展起来的一种新型的驱动器,McKibben型气动肌肉是其中应用最为广泛的一种。它具有柔顺、功率/质量比大、在力,长度特性上与人类肌肉类似等优点。由于其具有柔顺性可控的优点,应用气动人工肌肉作为驱动器可以有效地解决双足机器人的落地脚冲击问题。因此,将气动人工肌肉作为双足机器人的驱动器具有良好的前景。但是,人工肌肉具有高度非线性的特点。并伴随有迟滞现象,使得对其建攘和控制困难。目前,基于气动人工肌肉的双足机器人的研究刚刚起步,只有少数几个双足机器人项目对此进行了研究。本文利用MeKibben气动人工肌肉搭建了类似生物颉颃关节的单自由度人工关节。此系统的硬件部分包括气压驱动子系统、传感器子系统和控制子系统。在此硬件系统上构建了软件系统,实现了对此人工关节轨迹的跟踪控制。基于本文的工作可以进一步研究和解决气动人工肌肉及关节的建模和控制问题,为设计和搭建基于气动人工肌肉驱动器的双足机器人打下基础。
1 气动人工肌肉关节系统软硬件设计
1.1 气动人工肌肉
McKibben气动人工肌肉是由美国医生Joseph.L.MeKibben发明并以其名字命名的一种柔性气动驱动器。McKibben气动人工肌肉的主体主要由外层编织网和内层弹性橡胶管组成。其结构如图1所示。
图l为肌肉结构图,其中,Pi为输入气压,其大小由控制器根据实际工作情况进行控制。当输入端气压只增大时,内层橡胶管膨胀,由于外层编织网刚度很大,几乎不能伸长,限制肌肉只能径向变形(直径变大,长度缩短),产生轴向收缩力;而当输入端气压Pi降低时,导致人工肌肉伸长(松驰),肌肉的刚度及驱动力也就随之降低。肌肉的刚度可通过控制橡胶管内的气压实现,这种肌自具有变刚度特性,可等效为一只变刚度的弹簧。
1.2 单自由度关节系统
由于气动人工肌肉只能提供单向驱动力,故需由两条肌肉以类似生物颉颃肌的方式构成对抗性回转关节以实现操作臂的力闭合。本文利用McKibben气动人工肌肉作为驱动器搭建了单自由度颉颃关节系统。此系统的硬件部分由气压驱动子系统、传感器子系统和控制子系统组成。系统结构图如图2所示。
1.2.1 气压驱动子系统
气压驱动子系统由气源、压力伺服比例阀、McKibben气动人工肌肉及机构部分组成。由气源提供压力为0.6~0.9MPa的压缩气体.压缩气体由导管经过伺服比例阀送人气动人工肌肉中。每条肌肉均与一伺服比例阀相连并有一出气阀门和一进气阀门。通过控制伺服比例阀上所加的电压即可控制肌肉中的气体压力。加压后的气动肌肉输出收缩张力并驱动机构部分的关节转动,因此通过对肌肉压力的控制即可达到轨迹跟踪所需的关节力矩。本系统中采用的McKibben气动人工肌肉为FESTO公司的MAS-20-300N型,其工作压力范围为0~O.6MPa,最大工作频率为3Hz,最大收缩为肌肉长度的25%,O.6MPa时理论作用力为300N,重复精度小于1%。压力伺服比例阀接受控制端传入的电压输入并通过调节充气阀门和进气阀门控制肌肉内气压。本系统采用了SMC公司的丌ITVOO5C-2ML型压力比例阀。此阀的输入范围为0~5VDC,输出为0.001~0.9MPa之间的压力。
1.2.2 传感器子系统
传感器子系统由力传感器和直线位移传感器构成。通过直线位移传感器可以测量出肌肉的收缩量,根据此收缩量可以利用肌肉和关节模型进行轨迹跟踪控制。力传感器测量肌肉拉力,根据此拉力与关节力矩的线性关系可以计算出关节力矩,从而完成关节的伺服闭环控制。本系统中采用的力传感器是航天科技集团公司7Ol所的BK-2F型高精度S形测力/称重传感器。其测量作用力的最大范围可达80kg,精度为0.05%。输出经过TS-2型放大器放大后,输出电压范围为-5V~+5V。直线位移传感器采用了WDL型直滑式导电塑料电位计。
1.2.3 控制子系统
控制子系统由工业控制计算机(IPC)、A/D采集卡、D/A转换卡组成。软件控制系统运行于工业控制计算机上,并通过D/A转换器将数字控制量转换为模拟量。此模拟量用以控制压力伺服比例阀的输出气压。A/D转换器采集拉力传感器和直线位移传感器的数据,并提供给工业控制计算机可由软件处理的数字信号。本系统中采用的D/A转换器为PCL-726型6通道模拟量输出卡。它提供了6个12位双缓冲的模拟量输出通道,可满足肌肉伺服控制的需要。MD采集卡采用了PCL-813B型12位32通道A/D卡,它提供了32通道带隔离的直流电压测量,精度可以满足系统要求。
1.3 软件系统
气动人工肌肉驱动的颉颃关节中有2条肌肉的压力为系统的控制变量。由于系统通过2个自由变量控制一个自由度的运动,所以构成了冗余驱动系统。可以证明,此系统可对关节力矩与关节刚度进行独立控制。其中,前者与2条肌肉压力差有关,后者与肌肉压力和有关。通过对关节力矩的控制可以实现精确的关节轨迹跟踪,而通过对关节刚度的控制可以降低落地脚冲击及系统能耗。
本文在工控计算机中编写了气动人工肌肉关节系统的控制软件及操作界面。通过此软件系统可以实现肌肉模型的参数设定、稳定的闭环控制及传感器返回值的实时显示和记录等功能。软件的主体部分包括轨迹规划模块和压力控制模块。轨迹规划模块实现了上层的关节轨迹规划,并根据关节模型计算实现期望关节轨迹所需的关节力矩。压力控制模块执行底层计算,它的输入量为上层规划得到的期望关节力矩。压力计算模块根据气动人工肌肉的实际模型计算控制肌肉运动所需压力,其辕出为期望肌肉压力值。智能PID控制算法模块根据此期望压力值和A/D采集得到的实际肌肉压力数据进行智能PID控制,从而实现闭环控制。其输出经数值和D/A环节转换为输出到硬件系统的实际控制电压。软件系统的框图如图3所示。
2 实验及系统应用
2.1 气动关节系统模型
为了实现对本文所搭建的气动人工肌肉驱动颉颃关节的准确伺服控制.首先要对气动人工肌肉进行建模。MeKibben气动人工肌肉由于具有非线性、时变特性,并且在工作时伴随有迟滞现象,因而难于对其进行建模和控制。大多数已有研究中对于McKibben气动人工肌肉的建模都采用Chou和Hannaford基于虚功原理给出的理论模型。此模型给出了肌肉出力的理想估计,然而此理论模型直接应用于实际控制并不能得到良好的效果。本研究中采用了Reynolds等提出的三元肌肉动力学模型,将气动肌肉近似为由非线性阻尼因子、非线性弹簧因子和非线性收缩力因子并联构成的动力学系统,则模型方程为:
其中,x为肌肉收缩长度,当肌肉完全伸张时x=0。K0、K1为弹簧因子系数,B0、B1为阻尼因子系数,F0、F1为收缩力因子。对于本文采用的气动人工肌肉,通过在本系统上的实验,可对式(1)中的三元肌肉模型参数进行准确估计。当肌肉压力p取值在200kPa~650kPa之间时,通过实验得到的模型系数可得到满意的近似效果。应用此三元肌肉模型,本文所介绍的软件系统对关节进行了闭环轨迹跟踪控制,其控制精度优于传统的理论模型。
2.2 系统应用
在本文构建的采用柔性驱动器McKibben气动人工肌肉作为驱动源的机器人单自由度颉颃关节系统上,可对McKibben型气动人工肌肉的建模和控制进行进一步的研究。通过在本系统上的实验,在对三元肌肉模型参数进行准确估计的基础上,利用本文实现的控制软件系统可实现了闭环的关节轨迹跟踪控制。
在进一步工作中,将基于已有的平台和闭环控制方法重点研究两个问题。首先研究关节刚度可控的轨迹跟踪控制。利用此冗余系统的关节刚度量实现优化的目的,使机器人通过更好地利用自身关节的被动动力学特性来降低能量损耗。其次研究在有冲击情况下通过控制关节刚度降低冲击影响,进而为搭建由气动肌肉驱动的双足机器人提供理论准备。