机器人按照使用的场景不同,可以分为工业机器人、服务机器人、空间机器人[1]等。其中的双足机器人与人类具有相近的行走方式,可在复杂地面行走,可以替代人类在条件恶劣、危险的环境中工作[2];并且双足直立行走也更节省能量[3];此外,双足机器人的运动机理在生物医学工程等领域也具有广阔的应用前景,能为设计医疗康复设备提供思路和技术支持。因此,国内外的研究机构与学者对双足机器人的稳定行走都进行了持续的研究。
传统双足机器人即主动步行机器人以Honda公司的ASIMO[4]为代表,采用轨迹跟踪控制技术,将机器人的各关节运动强制控制到预先设计的轨迹上,该控制方法使得能量利用效率较低,且步态不自然。1990年,McGeer[5]首次提出了被动动态行走的概念,即双足机器人依靠自身的重力特性在具有一定坡度的斜坡上行走。该方法使得机器人能够高效行走,能量消耗是全驱动机器人行走能量消耗的1/10[6],且步态自然。郭闻昊、王琪等[7]研究了髋关节具有库伦摩擦的被动行走机器人,讨论该力对机器人步态的影响,得到了摩擦越大,被动行走越不稳定的结论。柳宁、李俊锋等[8]利用胞映射研究直腿和有膝关节的被动机器人,得到了直腿模型具有较大的吸引域的结论。虽然被动行走具有一定的优势,但是其抗干扰性能较差,随着斜坡的坡度增大,机器人会出现混沌步态,使得机器人不能稳定行走[9]。因此研究者们开始研究半被动双足机器人,即在机器人的部分关节增加驱动装置,使得机器人能够在平地上行走,同时提高机器人的稳定性和抗干扰能力。张奇志等[10]对半被动双足机器人的固定点进行稳定性分析,采用脉冲推力作为行走的动力源,使得机器人在水平面上稳定行走。这些研究成果不仅验证了采用被动行走原理设计半被动双足机器人的可行性,也对基于被动行走原理的双足机器人的研究起到了推动作用。
研究半被动双足行走机器人,模型的建立是重要的一个环节。由于人体肌肉骨骼复杂,研究机器人行走时经常将机器人的双腿简化为刚性腿,或者具有膝关节的刚性腿,在行走时将膝关节锁死。但是这些腿的模型太僵硬,不像人类的腿。1989年,Blickhan[11]首次提出用弹簧负载倒立摆模型SLIP(Spring-Loaded Inverted Pendulum),描述人类的奔跑和跳跃,虽然人类的腿在结构和神经控制上非常复杂,但在奔跑的阶段,双腿能够产生一种简单的弹簧状行为,可以用SLIP模型来描述。2010年,Rummel等[12]深入研究了弹簧-质点模型的各种步态,并得到柔性腿在行走中具有高效性和鲁棒性特征的结论。虽然SLIP模型表现出自稳定的行走步态,但是其抗干扰能力差。因此,2012年,Visser等[13]通过变刚度控制,扩大不动点的吸引域,增强了系统抗干扰能力。2013年,于海涛等[14]研究了带有非线性弹簧腿的SLIP跑步机器人的相关理论,得到刚体指数增大可以增加系统的稳定性并且扩大不动点处吸引域的结论。2016年,Shen等[15]提出了一个新的分段线性时变近似模型,以此研究机器人的跑步运动,通过设计合适的控制器实现了机器人的动态跑步运动。2018年,Bae等[16]在传统的SLIP模型的基础上增加一个虚拟弹簧和一个阻尼器[17-18],提出了一种新的双足机器人状态估计器,对现有的基于简单模型的双足状态估计器进行改进,从而进行运动学估计。此外,左国玉等[19]在跳跃机器人的研究中采用SLIP模型,将SLIP模型的运动控制分解为水平速度控制和跳跃高度控制,从而实现稳定的周期性跳跃,这个思想为本文的控制目标提供了思路。日本学者Taisuke等[20]采用阻尼器和弹簧质点模型,提出一种使得机器人在各种步态下切换的方法,实现了机器人步态的自然过渡和步态切换时的能量最小化。2019年,Christie等[21]采用R-SLIP (Rolling SLIP)模型,提出了MRF(Magnetorheological-Fluid-Centric)可变刚度腿,这种腿的优点是刚度变化范围更大(最大可增加257%),腿部重量更轻。Hao等[22]的研究表明了采用机器人髋关节施加力矩的方法可以降低系统的能耗,能够以较少的额外能量减少两腿的机械工作,且提高步行的稳定性。
本文在传统的弹簧-质点模型的基础上,对模型进行改进,构建具有躯干的弹簧-质点模型。相比于传统的弹簧-质点模型,该模型更能准确地描述实际的双足机器人系统。对具有该模型的半被动双足机器人水平面稳定行走控制展开研究。根据动力学模型,求解出系统稳定运行的周期解,即双足机器人行走的自然步态,将其作为期望步态。考虑到机器人模型具有强耦合、非线性特点,采用反馈线性化控制方法,运用非线性系统状态反馈精确线性化理论,同时控制双腿的刚度和髋关节施加力矩的大小,使得实际的运动轨迹逐渐收敛到期望步态轨迹。在外界施加干扰时,控制器可以使机器人的实际运动轨迹与期望步态轨迹的误差迅速减小,保证系统稳定。仿真实验表明:文中采用的控制方法可以实现机器人的稳定行走,且具有良好的抗干扰性和鲁棒性。
带躯干双足机器人的模型如图1所示。由髋关节连接两个弹簧腿构成。腿的原长为L0,弹性系数为k0,双腿的弹性系数变化量为u1和u2,髋关节质量为M,双腿无质量;在髋关节处加一根刚性杆作为机器人的躯干,躯干集中质量为m,躯干长度为l。此外整个系统在髋关节处施加驱动力矩τ。定义系统的广义坐标为q=[x,y,θ]T。其中x为髋关节运动的水平方向位移,y为髋关节运动的垂直方向位移,θ为躯干与地面法线方向夹角。机器人的周期步态由单腿支撑和双腿支撑两个阶段构成,运动过程如图2所示。初始状态为支撑腿垂直站立状态,摆动腿与地面无接触,随后机器人的支撑腿做倒立摆运动,此时系统处于单支撑状态,支撑腿被压缩,摆动腿无压缩;当髋关节运动到高度S时,摆动腿以原长度L0接触地面,与地面接触夹角为α,之后机器人进入双支撑阶段。当机器人髋关节再次运动到高度S时,系统进入单支撑阶段。所以,单支撑阶段与双支撑阶段的切换高度S=L0sin α。
图1 双足机器人模型
Fig.1 Biped robot model
图2 双足机器人交替运动过程
Fig.2 Alternate motion process of the biped robot
利用拉格朗日第2方程建立动力学方程,基于能量的拉格朗日原理方程如下[23]:
定义拉格朗日函数:
式中:K为系统的动能;P为系统的势能。
则系统的动力学方程为:
式中:n是系统的自由度数,本文中系统为3自由度;qi是描述系统位置的坐标;Qi是作用在系统上的力。
该机器人模型的假设条件为:双腿无质量,脚部也无质量,所以在脚与地面碰撞的过程中没有能量损失、地面冲击和滑动;刚性躯干与髋关节的转动过程中没有能量损失。
1.2.1 单腿支撑阶段的动力学方程
以支撑腿与地面接触点为原点,建立图1所示坐标系,选择[x,y,θ]T为广义坐标,是时间t的函数,取地面为势能零点。首先计算单支撑阶段的动能及势能,动能包括髋关节的动能和躯干的平动动能、转动动能;势能包括髋关节和躯干的重力势能以及单支撑腿的弹性势能。然后将动能及势能代入式(1)和式(2),得到单支撑阶段的动力学方程为:
式中:g是重力加速度;为左支撑腿在运动过程中的长度。
由于力矩τ作用在髋关节,使得系统在x方向和y方向产生位移偏量,在θ角产生角度偏量,因此作用在广义坐标[x,y,θ]T的广义力Qi (i=1,2,3)不为0。下面由变分法和虚位移计算该广义力。
由图1可知,驱动力矩作用的角度为(π-φ+θ),即躯干与前进时后腿的夹角,且有x=ytanφ。结合某一时刻τ作用后产生的虚位移δ(π-φ+θ)=-δφ+δθ得到:
由式(4)得到:
因此,力矩τ作用在虚位移上的虚功为:
所以,广义力为:
将式(7)代入式(3),并写成矩阵形式,可得单支撑阶段系统的动力学方程为:
1.2.2 双腿支撑阶段的动力学方程
在双支撑阶段,机器人的双腿都与地面接触,此时,双腿都处于压缩状态。对于髋关节M和躯干m,双支撑阶段的动能和重力势能与单支撑阶段的动能和重力势能的表达式是相同的,考虑到双支撑时机器人双腿均处于压缩状态,所以在弹性势能方面2个阶段略有不同。采用和1.2.1节单支撑阶段类似的推导方法,可得双支撑阶段系统的动力学方程为:
其中:
其中,为右支撑腿在运动过程中的长度。由式(8)和式(9)可见:在单支撑阶段双足机器人属于欠驱动模型,在双支撑阶段属于全驱动模型。所以,总体来看,该机器人系统为欠驱动系统。
为了系统分析的方便,定义状态变量由单支撑阶段的动力学方程式(8)可以求出
即为:
将式(10)的矩阵增加维度得:
由于所以根据式(11)得到:
将式(12)标准化,得到:
同样地,根据双支撑阶段的动力学方程式(9)可以得到:
值得注意的是,该系统的输入u1和u2有一定的约束条件,即0<k0+ui<∞,ui ∈R, i=1,2。因为k0+ui代表的是弹簧弹性系数,在物理意义上必须严格为正。
当躯干质量m为0且输入τ也为0时,系统在单支撑与双支撑的切换瞬间腿部作用力不可微,所以系统在无驱动(ui≡0)状态下具有连续2阶可导的理想轨迹,即收敛到一个自然步态[13]。本文以该自然步态作为期望步态,用力矩τ控制躯干的摆动,τ、u1和u2控制双腿的摆动,使得机器人髋关节的步态收敛到期望步态,躯干倾角收敛到期望角度。
本文控制器设计的目的是让双足机器人的步态逐渐逼近期望步态,躯干倾角收敛到期望角度。
将输出定义为跟踪参考轨迹的形式:h(z)=h0(z)-hd (β(z)),式中h0和hd分别表示机器人的控制目标及其参考轨迹。控制目标为髋关节运动的垂直方向位置z2,髋关节运动的水平方向速度z4以及躯干倾角z3。参考轨迹的自变量为β(z),这是针对虚拟约束原理[24]的设计。本文中采用髋关节运动水平方向位置z1作为时不变的变量,也称空间轨迹,即β(z)=cz,c是1×5的向量。那么误差函数可以表示为:
为了方便说明,以下将h1(z)、h2(z)、h3(z)简记为h1、h2、h3,将式(13)、式(14)中的f(z) 、gτ(z) 、g1(z)、g2(z)简记为f、gτ、g1、g2。
需要说明的是,由于系统在单支撑阶段系统属于欠驱动模型,所以水平方向速度误差h3仅在双支撑阶段控制。
单支撑阶段动力学方程和控制目标的误差分别为:
根据李导数确定系统的相对阶数,首先确定h1的相对阶数:
由于Lgτh1=0,所以系统输出h1的相对阶最少为2。因此计算2阶导数为:
此时因为LgτLfh1(q)≠0,所以h1的相对阶为2。同样的推导方法可得h2的相对阶也为2。那么根据反馈线性化可以将输出写为:
其中:因为A可逆,所以取反馈控制律为:
v1、v2为新的输入,本文中选择为:
那么整个系统的输入为:
根据式(20)和式(23)得到:
误差函数h1和h2由式(24)控制,选择极点在复平面的左半平面,就可以得到相应的kdτs、kpτs、kds和kps的值,可实现对参考信号的渐进跟踪控制。h1、h2均采用PD控制,从而能够控制单支撑阶段的身体姿态和步态。
双支撑阶段比单支撑阶段多控制一个h3,采用和单支撑阶段一样的方法得到h1、h2、h3的相对阶为{2,2,1},且有系统输入为:
其中:
控制函数为:
误差函数h1、h2和h3由式(26)控制,选择极点在复平面的左半平面,就可以得到相应的kdτd、kpτd、kdd、kpd和kvd的值,可实现对参考信号的渐进跟踪控制。h1和h2均采用PD控制,h3采用P控制,使得步态和躯干收敛到期望值。从而能够控制双支撑阶段的身体姿态和步态。
此外,为了说明本文控制方法的有效性,将上述基于空间轨迹的控制方法和基于时间轨迹的控制方法进行性能比较。设计基于时间轨迹的控制器时,将参考轨迹设置为时间t的函数。误差函数表示为:
根据李导数求解输入,是对时间t进行求导,此时理想轨迹不再是z1的函数,因此在求李导数的过程中会比基于空间轨迹的方法多和
这些项,但是h1、h2和h3的相对阶数是一样的。和设计基于空间轨迹控制器相似,最终得到基于时间轨迹控制器的单支撑阶段的系统输入为:
双支撑阶段的系统输入为:
其中,式(28)中的A1和式(20)中A的表达形式一样,式(29)中的A1和式(25)中A的表达形式一样,区别是A1中的误差表达式是式(27)。
综上步骤,基于空间轨迹控制方法的控制系统框图如图3所示。
图3 双足机器人控制系统框图
Fig.3 Block diagram of the biped robot control system
为了验证文中所设计的控制器对带躯干的双足机器人控制的有效性,在MATLAB环境下进行了仿真分析,并将文中采用的基于空间轨迹的控制方法与基于时间轨迹的控制方法进行比较,通过给系统施加扰动对比两种算法的抗干扰能力。并将带躯干模型和无躯干模型进行比较,分析躯干对系统的影响。
仿真中采用的双足机器人的参数取值[13]如表1所示。其中髋关节初始水平速度z4(0)>0即可保证机器人的行走;系统的初始状态为单腿垂直于地面时的状态,这时z5(0)=0,保证对称步态的形成。采用4阶龙格库塔法求解单支撑阶段和双支撑阶段的微分方程。对于基于空间轨迹的控制方法,根据式(23)和式(25)求得系统的输入。躯干角度的期望值为:髋关节运动垂直方向的位置期望
水平方向的速度期望
由无躯干模型的自然步态轨迹分别经过1阶和6阶傅里叶级数拟合得到。对于基于时间轨迹的控制方法,根据式(28)和式(29)求得系统的输入
的值由理想轨迹直接得到。控制方法的流程图如图4所示。
表1 仿真参数
Table 1 Simulation parameter values
变量 取值髋关节质量M/kg 15躯干质量m/kg 3弹簧腿原长L0/m 1躯干长l/m 0.5重力加速度g/(m/s) 9.8摆动腿触地脚α0/(°) 62.5躯干转动惯量I/(kg·m2) 0.25弹簧腿刚度k0/(N/m) 1.5×103弹簧腿刚度变化最小值kmin/(N/m) 0弹簧腿刚度变化最大值kmax/(N/m) 1×104髋关节初始水平位移z1(0)/m 0髋关节初始高度z2(0)/m 1躯干初始倾角z3(0)/(°) 0髋关节初始水平速度z4(0)/(m/s) 1.041髋关节初始垂直速度z5(0)/(m/s) 0躯干初始角速度z6(0)/(°/s) 0单、双支撑切换高度S/m 0.887步长 0.001仿真步数/步 200
图4 控制方法流程图
Fig.4 Flow chart of the control method
令系统控制器的输入为0,即系统属于无控状态,此时观察双足机器人的运行情况,如图5所示。
图5 无控制时系统运行情况
Fig.5 System motion when uncontrolled
系统总能量是系统的动能、势能之和。若机器人髋关节的高度y≤0,那么说明机器人已跌倒。由图5的髋关节的运动轨迹,可以看出机器人能够在6步以内行走(x=4 m),但是稳定性不好,当走到第8步时(x=5 m),机器人跌倒;机器人的速度也在第8步时发生突变;躯干在不被控制时向后逐渐倾斜,躯干倾角无规律减小;系统总能量发散,所以系统在不加控制时不能稳定行走,因此需要加入控制器进行控制。
为了使系统能够稳定运行,需要采用控制器进行控制。选择系统的初始状态仍为VLO,相应的初始变量的取值如表1所示。系统的运动是单支撑阶段和双支撑阶段交替进行的,取单支撑阶段的控制参数为kpτs=100、kdτs=100、kps=100、kds=50,双支撑阶段的控制参数为kpτd=50、kdτd=100、kpd=100、kdd=50、kvd=100、。系统仿真30步,运行情况如图6~图9所示。
图6 加控制时系统运动情况
Fig.6 System motion when controlled
图7 加控制时系统能量变化情况
Fig.7 Change of system energy when controlled
图8 髋关节水平速度误差
Fig.8 Velocity error
图9 系统的输入
Fig.9 System inputs
由图6的髋关节运动轨迹可以看出:加入控制后,系统能够维持稳定的步态,髋关节水平方向的速度也保持稳定;从躯干倾角的变化图可以看出,整个过程中,角度从初始状态从0°跃变,然后又迅速收敛到期望的角度值0°。由图7的系统能量变化图可以看到,系统的重力势能、弹性势能以及动能都有规律地变化,但总能量保持不变,由于期望轨迹及期望速度都采用傅里叶级数拟合,会有一定的偏差。加入控制器后,带躯干的双足机器人模型能够稳定行走,形成稳定的步态周期。
图8是髋关节水平速度误差图,为了清晰起见,图中只给出了前10步的运行结果。可以看出系统髋关节水平速度误差有一定的波动,这是由于机器人系统在单支撑阶段属于欠驱动模型,在双支撑阶段属于全驱动模型,水平方向速度误差仅在双支撑阶段控制。从图中可以看出,在双支撑阶段(b→c和d→e),水平方向速度误差很小,趋近于零。在单支撑阶段(a→b的右腿单支撑和c→d的左腿单支撑),由于不控制的缘故,有一定的误差。
图9给出了对应的输入力矩及刚度变化曲线。出于对实际情况的考虑,系统的刚度要在一定的范围之内,因此,对总刚度进行限幅,即表1中的kmin和kmax。从图中可以看出,由于系统在单支撑与双支撑切换时,系统动力学模型发生改变,同时为了快速调整误差,此时的力矩及刚度会有明显的跃变,以适应系统的变化。此外,当左腿单支撑时,髋关节运动到最高点时u1发生跃变;当右腿单支撑时,髋关节运动到最高点时u2发生跃变,以保证系统的稳定运行。
考虑到在实际系统模型辨识过程中,可能存在模型不确定性问题,本文考虑了模型的质量及刚度不准确对系统所带来的影响。本文标准模型髋关节的质量为M=15 kg,双腿弹簧的刚度为k0=1500 N,在鲁棒性测试阶段,将其分别设为M=20kg和k0=1300 N。仿真30步,运行情况如图10~图13所示。
图10 系统误差
Fig.10 Errors of the system
图11 标准模型的相平面
Fig.11 Phase portrait of the standard model
图12 质量不确定时相平面
Fig.12 Phase portrait when the quality of the model is uncertain
图13 刚度不确定时相平面
Fig.13 Phase portrait when the stiffness of the model is uncertain
图10是控制目标的误差图。取机器人走到10 m后的运行情况。一方面为了清晰可见,另一方面可以看出运行一段时间后系统的误差是否为0。在标准模型下,髋关节的高度误差和躯干倾角误差几乎都为0,速度误差在0周围波动(原因见图8分析)。当模型的质量及刚度与标准值有偏差时,控制目标的误差加大,且由于质量不准确比率(33%)比刚度不准确比率(13%)大,所以质量不准确时的误差比刚度不准确时的误差大,但是整体上误差值都在0附近。因此当模型的质量和刚度不准确时,控制器依然能够很好地控制机器人跟踪理想轨迹稳定行走。由相平面图11~图13可以看出,模型参数不准确时系统依然可以形成稳定的极限环。总的来说,该系统具有良好的鲁棒性。
为了说明基于空间轨迹控制方法的有效性,将其与基于时间轨迹的控制方法进行比较,主要对比两种控制方法的抗干扰性能。从机器人行走的第3步双支撑切换到单支撑的这一时刻开始,到第4步单支撑切换到双支撑这一时刻结束的整个过程中加入F1=(10,20,10)TN的小幅值扰动力,即从x=1.7663 m到x=2.1143 m这一阶段加入扰动。仿真20步,仿真结果如图14~图16所示。
图14 加入小幅值扰动时系统运行情况(空间轨迹)
Fig.14 Controlled small disturbance response(space trajectory method)
图15 加入扰动能量变化情况
Fig.15 Disturbance energy variation when controlled
图16 加入小幅值扰动时运行情况(时间轨迹)
Fig.16 Controlled small disturbance response(time trajectory method)
由图14可得,系统在加入小幅值扰动后,髋关节运动时的高度没有太大的波动,但是髋关节水平方向速度急剧增大,在扰动期间一直没有按照稳定的状态运行,这是合理的,当扰动结束时,速度逐渐恢复到稳定状态;对于躯干的倾角变化图,加入扰动后,倾角跃变到2.5°附近,在扰动结束后躯干倾角逐渐恢复到0°,收敛到期望角度。图15是加入扰动后能量变化图,由于扰动的加入,髋关节速度变化较大,因此系统的动能波动较大,系统的总动能在扰动期间的波动较大。扰动结束后,系统能量恢复到正常状态。说明系统具有良好的抗干扰性能。由图16可得,系统加入小幅值扰动时,采用基于时间轨迹的控制器可以控制双足机器人的行走,使得双足机器人能够稳定前进,加入扰动后,髋关节的水平速度突变为1.6 m/s,躯干的倾角也突变3°左右,但是扰动结束后,速度和倾角都恢复到稳定的状态运行。
加入F2=(10,200,10)TN的大幅值扰动力,仿真如图17~图18所示。图17是采用基于空间轨迹的控制方法的运行情况:在机器人行走过程中,加入扰动虽然使得机器人的髋关节的高度大于1,且速度突变到1.8 m/s,躯干倾角突变约5°,但是通过控制器的调节,机器人恢复到稳定行走的状态。图18是采用基于时间轨迹控制方法的运行情况。可以看出,当扰动力度加大时,机器人髋关节的高度y<0,即机器人跌倒,且髋关节的水平速度与躯干倾角都不在正常范围之内,说明扰动太大时采用基于时间轨迹控制方法不能使机器人行走。通过2种方法对比,可以看出:基于空间轨迹的控制器在抗干扰方面具有很大优势,即便加入较大幅值的扰动,控制器依然能够快速适应,使得系统稳定运行。
图17 加入大幅值扰动时运行情况(空间轨迹)
Fig.17 Controlled large disturbance response(space trajectory method)
图18 加入大幅值扰动时运行情况(时间轨迹)
Fig.18 Controlled large disturbance response (time trajectory method)
为了分析带躯干机器人系统的性能,将带躯干模型与无躯干模型进行比较,仿真20步,两者跟踪理想轨迹的误差曲线如图19所示。
图19 有无躯干误差对比
Fig.19 Error comparisons of the model with or without torso
从图19可以看出,在髋关节的高度误差方面,无躯干机器人的误差更平稳地缩小,有躯干的机器人的误差虽然有微小的波动,但整体上也是在0附近,且随着机器人的行走而逐渐减小;在髋关节水平速度误差方面,无躯干与有躯干的误差波动范围几乎一致,都在-0.02以内。说明带躯干的双足机器人在跟踪理想轨迹方面与无躯干机器人相当,当然,有躯干的机器人模型更能准确描述实际的机器人,所设计的仿真参数对于实际机器人的实验研究具有更好的参照意义。这也是本文研究带有躯干的机器人模型的一个重要原因。
此外,增加了躯干倾角不同对系统的影响分析,进行不同躯干倾角对比的仿真实验。通过加入同样大小的扰动,对不同倾角的系统进行控制指标的分析及对比。和本文控制的目标一样,主要从3个指标,即h1、h2和h3进行分析。加入和3.3节一样的扰动,躯干倾角分别为前倾30°、后倾30°。仿真20步,髋关节高度的误差h1、速度误差h2和躯干倾角误差h3的变化情况如图20所示。
图20 不同躯干倾角的髋关节高度误差、速度误差和躯干倾角误差
Fig.20 Errors with different torso angles
由图20可以看出,髋关节运动垂直方向高度误差在躯干前倾和后倾时都稳定收敛到0;由躯干倾角误差图可得,系统受到干扰时,躯干前倾时的角度误差突变将近0.1 rad,躯干后倾时的角度误差突变将近0.05 rad,随后迅速收敛到期望值0;由速度误差图可得,在系统加入干扰时,机器人速度误差都突变到0.5左右,最终速度误差收敛到0,由于傅里叶级数拟合得到期望步态,所以误差有微小的变化,但总体误差接近于0。因此,无论躯干前倾还是后倾,本文的控制方法都可以使系统稳定运行。
躯干的摆动由髋关节施加的力矩控制,力矩τ的大小与躯干控制的难易程度有很大关系。本文提出了躯干不同倾角所需不同大小控制力矩的仿真实验。图21是躯干具有不同倾角时,髋关节在整个仿真过程中施加的力矩绝对值之和的变化情况,即每一个角度仿真10步,大约共有6000个左右的力矩值,将这些绝对值之和作为控制该角度所需的力矩,一个角度对应一个力矩绝对值之和。观察到躯干的倾角从-30°~30°变化时,力矩的绝对值之和先减小后增大,在躯干与地面垂直时即倾角为0.2°左右时力矩和最小,此时躯干更容易控制。验证了一般机器人的躯干都控制为垂直或稍微前倾状态的结论。
图21 力矩和随倾角的变化情况
Fig.21 Variation of torque sum with angle of inclusion
本文改进了弹簧-质点模型,将带躯干的弹簧-质点模型作为双足机器人的动力学模型,通过控制施加在髋关节的力矩和改变双腿刚度,控制机器人的实际步态轨迹逐渐收敛到期步态轨迹。由于系统的高耦合和非线性特点,采用反馈线性化的方法将非线性系统转换为线性系统,然后采用PD和P反馈控制实现机器人的步态逐渐稳定。考虑到实际情况,系统的刚度输入加入限幅,但不影响系统的整体运行。
仿真结果表明:具有躯干的变刚度双足机器人能够稳定行走,在外力扰动及躯干倾角变化时,系统具有良好的抗扰动性能;与基于时间轨迹的控制方法相比,本文基于空间轨迹的控制方法具有更好的抗扰能力;在模型不准确时,控制器具有很好的鲁棒性;与无躯干的双足机器人相比,本文提出的带躯干模型在控制性能方面和无躯干的相当,但是带躯干的模型更接近实际的机器人;双足机器人的躯干与地面垂直或稍微前倾时更容易控制。
总的来说,文中采用的模型以及控制方法是有效可行的,具有较好的抗干扰性能和鲁棒性。在本文研究的基础上,躯干倾角对整个系统的稳定性以及能量的高效性影响是进一步研究的课题。
[1]程靖, 陈力.闭链双臂空间机器人动力学建模及力矩受限情况下载荷运动自适应控制 [J].工程力学, 2017,34(2): 235-241.Cheng Jing, Chen Li.Dynamics for dual-arm floating space robot with closed chain and adaptive control for object motion with limited torque [J].Engineering Mechanics, 2017, 34(2): 235-241.(in Chinese)
[2]刘丽梅, 田彦涛.动态行走双足机器人的稳定性分析与控制[M].北京: 科学出版社, 2017: 1-3.Liu Limei, Tian Yantao.Stability analysis and control of dynamic walking of the biped robot [M].Beijing:Science Press, 2017: 1-3.(in Chinese)
[3]陈启军, 刘成菊.双足机器人行走控制与优化[M].北京: 清华大学出版社, 2016: 1-3.Chen Qijun, Liu Chengju.Biped robot walking control and optimization [M].Beijing: Tsinghua University Press, 2016: 1-3.(in Chinese)
[4]Sakagami Y, Watanabe R, Aoyama C, et al.The intelligent asimo: system overview and integration [C].Lausanne, Switzerland: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2002: 2478-2483.
[5]McGeer T.Passive dynamic walking [J].International Journal of Robotics Research, 1990, 9(2): 62-82.
[6]Collins S, Ruina A, Tedrake R, et al.Efficient bipedal robots based on passive-dynamic walkers [J].Science,2005, 307(5712): 1082-1085.
[7]郭闻昊, 王琪, 王天舒.髋关节含库伦摩擦被动行走器动力学建模与仿真研究[J].工程力学, 2012, 29(1):214-220.Guo Wenhao, Wang Qi, Wang Tianshu.A study of the modeling and simulation of a passive dynamic walking with coulomb friction at the hip joint [J].Engineering Mechanics, 2012, 29(1): 214-220.(in Chinese)
[8]柳宁, 李俊峰, 王天舒.用胞胞映射计算被动行走模型不动点的吸引盆[J].工程力学, 2008, 25(10): 218-223.Liu Ning, Li Junfeng, Wang Tianshu.Study of the basin of attraction of passive models by the aid of cell-to-cell mapping method [J].Engineering Mechanics, 2008,25(10): 218-223.(in Chinese)
[9]Gritli H, Belghith S.Bifurcations and chaos in the semi-passive bipedal dynamic walking model under a modified OGY-based control approach [J].Nonlinear Dynamics, 2015, 83(4): 1955-1973.
[10]张奇志, 周亚丽.双足机器人半被动行走固定点全局稳定性分析[J].工程力学, 2013, 30(3): 431-436.Zhang Qizhi, Zhou Yali.Global stability analysis for the fixed point of semi-passive biped robot walking [J].Engineering Mechanics, 2013, 30(3): 431-436.(in Chinese)
[11]Blickhan R.The spring-mass model for running and hopping [J].Journal of Biomechanics, 1989, 22(11):1217-1227.
[12]Rummel J, Blum Y, Maus H M, et al.Stable and robust walking with compliant legs [C].Anchorage, Alaska:Proceedings of the IEEE International Conference on Robotics and Automation, 2010: 5250-5255.
[13]Visser L C, Stramigioli S, Carloni R.Robust bipedal walking with variable leg stiffness [C].Roma, Italy:Proceedings of the IEEE RAS/EMBS International Conference on Biomedical Robotics and Biomechatronics, 2012: 1626-1631.
[14]Yu H T, Li M T, Cai H G.Analysis on the performance of the SLIP runner with nonlinear spring leg [J].Chinese Journal of Mechanical Engineering, 2013, 26(5): 892-899.
[15]Shen Z, Seipel J.A Piecewise-linear approximation of the canonical spring-loaded-inverted-pendulum model of legged locomotion [J].Journal of Computational and Nonlinear Dynamics, 2016, 11(1): 011007-1-011007-9.
[16]Bae H, Oh J H.Biped robot state estimation using compliant inverted pendulum model [J].Robotics and Autonomous Systems, 2018, 108(2018): 38–50.
[17]刘明明, 李宏男, 付兴.一种新型自复位SMA-剪切型铅阻尼器的试验及其数值分析[J].工程力学, 2018,35(6): 52-67.Liu Mingming, Li Hongnan, Fu Xing.Experimental and numerical analysis of an innovative re-centering shape memory alloys-shearing lead damper [J].Engineering Mechanics, 2018, 35(6): 52-67.(in Chinese)
[18]周颖, 龚顺明.混合非线性黏弹性阻尼器非线性特征与力学模型研究 [J].工程力学, 2018, 35(6): 132-143.Zhou Ying, Gong Shunming.Study on nonlinear characteristics and mechanical model of hybrid nonlinear viscoelastic damper [J].Engineering Mechanics, 2018,35(6): 132-143.(in Chinese)
[19]左国玉, 刘旭.基于弹簧负载倒立摆模型的仿袋鼠机器人稳定跳跃控制[J].控制理论与应用, 2018, 35(8):1151-1158.Zuo Guoyu, Liu Xu.Stable jump control of kangaroo robot based on spring loaded inverted pendulum model[J].Journal of control theory and applications, 2018,35(8): 1151-1158.(in Chinese)
[20]Taisuke K, Kosuke S, Yasuhisa H, et al.Unified bipedal gait for autonomous transition between walking and running in pursuit of energy minimization [J].Robotics and Autonomous Systems, 2018, 103(2018): 27-41.
[21]Christie M D, Sun S, Ning D H.A highly stiffness-adjustable robot leg for enhancing locomotive performance[J].Mechanical Systems and Signal Processing, 2019, 126 (2019): 458-468.
[22]Hao M, Chen K, Fu C L.Effects of hip torque during step-to-step transition on center-of-mass dynamics during human walking examined with numerical simulation [J].Journal of Biomechanics, 2019, 90(2019): 33-39.
[23]张奇志, 周亚丽.机器人学简明教程[M].西安: 西安电子科技大学出版社, 2013: 58-59.Zhang Qizhi, Zhou Yali.A brief course in robotics [M].Xi’an: Xi’an University of Electronic Science and Technology Press, 2013: 58-59.(in Chinese)
[24]Westervelt E R, Buche G, Grizzle J W.Experimental Validation of a Framework for the Design of Controllers that Induce Stable Walking in Planar Bipeds [J].The International Journal of Robotics Research, 2004, 23(6):559-582.
PERIODIC WALKING CONTROL OF BIPED ROBOTS WITH TORSO USING VARIABLE STIFFNESS ACTUATION
周亚丽(1968―),女,辽宁沈阳人,教授,博士,主要从事机器人控制及信号处理研究(E-mail: zhouyali6807@163.com);
张奇志(1963―),男,辽宁阜新人,教授,博士,主要从事机器人控制研究(E-mail: zqzbim@163.com).