APP下载

柔性双足机器人的吸引域计算及行走控制

2023-03-11周亚丽张奇志

计算机仿真 2023年1期
关键词:双足不动点初值

刘 铖,周亚丽,张奇志

(北京信息科技大学自动化学院,北京100192)

1 引言

建立机器人的动力学模型是研究双足机器人行走步态的首要步骤。Blickhan[1]在1989年首次提出了弹簧负载倒立摆模型(Spring-Loaded Inverted Pendulum,SLIP),SLIP模型可以很好地模拟人类的行走步态。本文对具有SLIP模型和腿长度可变的欠驱动双足机器人进行研究。

对于双足机器人来说,吸引域是其非常重要的特性之一。当选取的步态初值位于吸引域之外时,机器人就不能形成稳定的周期行走步态。因此吸引域的求解对于双足机器人形成稳定的周期步态具有至关重要的意义。由于欠驱动机器人的动力学模型具有非线性和强耦合性,是一个高维的、变结构模型。通过传统的数值计算方法不但难以对机器人运动过程中的步态进行有效分析,更难以对其吸引域进行计算。而采用胞映射算法则可以对欠驱动机器人的动力学模型的全局性态进行有效的分析。

自从Hsu C.S.[2]于1987年首次将胞映射用于非线性系统的全局性态分析以来,胞映射方法在各个领域得到了广泛应用。柳宁等[3]利用胞映射研究直腿和有膝关节的被动机器人,得到了直腿模型的吸引域。刘丽梅[4]提出变胞胞映射-点映射法对欠驱动机器人极限环的吸引域进行计算。郭闻昊等[5]通过用简单胞映射方法计算不同摩擦系数对应的直腿被动行走器的吸引域,得到了模型的吸引域会随着髋关节含库伦摩擦系数的变化而改变的结论。熊夫睿[6]通过对胞映射算法的改进,大大提高了运用胞映射计算系统全局性态的速度。Yue X等[7]提出一种改进算法,改善图胞映射分析动力学系统的局限性。郭丽玲[8]通过运用胞映射算法对一类工业复杂生产进行分析,得出了最优胞映射搜索路径方法。Yue等[9]综合简单胞映射和广义胞映射算法的优势,使得对泊松噪声的概率响应求解效率大大提高。由于传统胞映射算法往往会产生巨大的运算量,而采用类庞加莱简单胞映射(Poincare-like Simple Cell Mapping,PLSCM)算法[10]能有效地解决这个问题。PLSCM算法能使胞空间维数降一维,计算量大大降低,且更容易求得周期解及分辨周期轨道。

在上述文献中,PLSCM算法主要是应用到广义非线性系统中,来分析系统的全局特性。或者是应用到双足机器人领域,对纯被动刚性腿机器人进行吸引域的分析。本文采用PLSCM算法求解欠驱动柔性双足机器人步态参数的吸引域,并对不同参数情况下的吸引域大小进行分析。并运用反馈线性化及PI/PD算法设计控制器实现变长度控制,使机器人具有良好的抗干扰性能。

2 建立模型

2.1 模型描述

图1为所要研究的双足机器人模型。由一个髋关节和两条长度可变的柔性腿组成。两腿各有一个弹性系数为k0的弹簧,腿的原始长度为L0,L1为支撑腿长度,L2为摆动腿长度,腿的长度变化量为u1和u2。髋关节的质量为M,腿无质量。以q=[x,y]T为系统的广义坐标,其中x是髋部运动的水平位移,y是髋部运动的竖直位移。图2为机器人一个完整的步态周期。其初始状态是支撑腿垂直站立,摆动腿不与地面接触,即单支撑阶段。当髋关节下降到高度H时,此时的H=L0sinα称为切换高度,摆动腿以原始长度L0和角度α接触地面,然后机器人进入双支撑阶段。当髋关节升高到高度H时,系统再次进入单支撑阶段,如此循环反复。

图1 双足机器人结构图

图2 双足机器人完整的步态周期

2.2 动力学建模

基于拉格朗日方程建立动力学方程。拉格朗日函数定义为

(1)

(2)

式中:n为自由度数,n=2;qi为广义坐标;Qi为作用在系统上的广义力。

由于髋关节没有力矩,则作用在广义坐标[x,y]T的广义力Qi为0。以地面为势能零点,计算总动能和总势能,可得拉格朗日函数的表达式为

(3)

将式(2)代入式(3),可得单支撑阶段的动力学方程为

(4)

(5)

将式(4)、(5)写成如下的形式

单支撑阶段

双支撑阶段

(6)

式中

(7)

同理,双支撑阶段可以表示为

(8)

可以简化为

单支撑阶段

双支撑阶段

(9)

3 不动点和吸引域

以不动点作为初值能使机器人直接进入稳定的步态周期,因此找到系统的不动点至关重要。将每一次完整的周期步态看做一次Poincare映射F,Poincare截面取机器人单双支撑切换瞬间。设一个状态zi(i=1,2,3,…,n),有zi+1=F(zi)。若有F(z*)=z*,则z*称为不动点。偏离不动点多大范围的状态变量依然能产生稳定步态,这个范围便是该不动点的吸引域。在实际的系统中,每次都能从精确的不动点出发是难以达到的,因此需要对不动点的吸引域进行研究。

3.1 求取不动点及吸引域

首先给出机器人的各部分参数:M=15kg,L0=1m,α=62°,k0=1500N/m,g=9.8m/s2。根据给定机器人实际物理参数,经过仿真测试,确定有效的状态空间范围为:x1∈[0.6,1.8],x2∈[-2,0]。每个方向离散100份,加上陷胞共计10001个胞。对所有胞进行编号,并按顺序将所有正规胞依次进行一次PLSCM计算。

通过计算发现,第3901号胞映射回自身,且有330个胞映射到3901号胞,可知3901号胞为周期胞,部分结果如表1所示。用该胞对应的状态变量组合带入机器人的动力学模型进行迭代计算,得到不动点[1.062,-0.035]。再运用PLSCM算法对不动点的吸引域进行计算,得出的吸引域如图3所示,不动点用“*”标出。

图3 用PLSCM算法得到的机器人吸引域

表1 一次PLSCM计算部分结果

3.2 改变模型的参数获得最大吸引域

模型参数的改变会对双足机器人的吸引域产生影响,通过改变机器人的各项参数,能得到不同大小的吸引域。

3.2.1 模型腿长变化下的吸引域

令机器人腿长L0为0.9m至1.05m,在这一变化区间进行多次仿真,其它参数不变。得出不同腿长时吸引域如表2。

表2 改变腿长对吸引域大小的计算结果

可见,在模型的腿长为1.01m时,机器人的吸引域为最大,在此基础之上,继续改变模型髋关节的质量以观察吸引域的变化。

3.2.2 模型髋关节质量变化下的吸引域

使机器人髋关节质量在14kg至16kg这一变化区间进行多次仿真,L0=1.01m,其它参数不变。得出吸引域内胞的个数情况如表3所示:

表3 改变髋关节质量对吸引域大小的计算结果

可见,在模型的腿长为1.01m,髋关节质量为14.9kg时,机器人的吸引域为最大,在此基础之上,继续改变腿的刚度获得最大的吸引域。

3.2.3 模型腿部刚度变化下的吸引域

保持机器人腿长为1.01m,髋关节质量为14.9kg,令机器人腿部刚度为1300N/m至1700N/m这一变化区间进行多次仿真,其它参数不变,得出不同腿长时不动点的吸引域如表4所示。

表4 改变腿部刚度对吸引域大小的计算结果

通过以上仿真可见,在模型的腿长为1.01m,髋关节质量为14.9kg,腿部刚度为1500N/m时,机器人周期参数的吸引域为最大。

4 控制器的设计

对于图1所示的柔性双足机器人来说,在没有干扰的理想情况下,即便没有控制也能产生稳定的行走步态。但为了使双足机器人具有良好的抗干扰性能,本文采用反馈线性化及PI/PD算法通过改变两腿的长度,使机器人形成稳定的周期步态,且能对外界干扰具有良好的抵抗能力。

(10)

将期望步态表示为

(11)

因此可以将系统的状态变量表示为

(12)

基于给定的动力学方程和非线性系统状态反馈精确线性化理论,定义位置误差函数为h1和速度误差函数为h2,表示为

(13)

(14)

在单支撑阶段,由于摆动腿悬空,只对支撑腿进行控制,因此u2≡0,但仍需对u1进行求解,位置误差函数可以表示为

(15)

通过对误差函数求导,可得

(16)

(17)

单支撑阶段的控制目标为u2=0,则有

(18)

在双支撑阶段,位置误差函数表达式同式(15),考虑到双腿触地,重新求导可得

(19)

(20)

髋关节速度误差方程为

(21)

对其加入积分控制环节,首先对位置误差函数h1进行导数运算,可得

(22)

最后,将式(19)、(20)、(22)得到的关系式整理后,计算可得控制量ui(i=1,2)的表达式为

(23)

其中矩阵A的表达式为

(24)

5 仿真分析

5.1 不同初值情况下系统的运行分析

通过PLSCM算法得到系统的吸引域和不动点之后,对比不同初值下双足机器人行走步态的区别。首先,选取不动点[1.062,-0.035]作为初值,仿真结果如图4所示。可以看出,双足机器人没有经过过渡过程,直接进入稳定的步态周期,形成稳定的极限环。

选取不动点附近的胞[1.11,-0.515]作为初值进行步态仿真,仿真结果如图5所示。可以看出,机器人在经历几个周期之后进入稳定的步态。可知,在不动点附近选取的初值能使机器人映射一定步数后进入稳定的步态。

图4 不动点为初值产生的步态周期

最后,选取陷胞[0.822,-1.595]作为系统的初值,所得的步态周期如图6所示。可以看出,无论是髋关节的水平速度还是竖直速度,随着水平位移的增加都是一片混乱,机器人一直不能形成稳定的步态,可见机器人在吸引域之外不能进入稳定的步态周期。

图5 不动点附近的初值产生的步态周期

图6 吸引域之外的初值产生的步态周期

5.2 不同初值的抗扰动性分析

通过对吸引域中离不动点不同距离的初值加入一定的扰动,研究距不动点不同距离初值的机器人的抗扰动性能。双足机器人的各项参数同上,kp=60,kI=4.2,kd=150,kv=20。龙格库塔法求解动力学方程的步长为0.001,仿真20步。当双足机器人运行到第4个行走周期时,突然加入F=(60,-80)TN的大幅值扰动力。

分别距不动点不同距离的胞作为初值进行仿真。首先选取不动点[1.062,-0.035]作为初值,进行仿真,如图7所示,通过3步之后,机器人重新进入稳定的步态周期。可见,选取不动点作为初值能使机器人具有较强的抗干扰性能。

其次选取不动点附近的胞[1.11,-0.515]作为初值,进行仿真,如图8所示,通过11步之后,机器人也能重新进入较为稳定的步态周期。

图7 不动点作为初值的扰动影响情况

最后选取远离不动点附近的胞[1.302,-1.385]作为初值进行仿真,如图9所示,双足机器人需要更长的过渡时间才能进入稳定的周期步态。

图8 不动点附近初值的扰动影响情况

图9 不动点附近初值的扰动影响情况

6 结论

本文采用PLSCM算法对双足机器人的吸引域进行计算,较传统胞映射大大降低了计算量。并通过改变机器人模型参数获得更大的吸引域。为使机器人具有良好的稳定行走及抗扰性能,本文通过采用反馈线性化及PI/PD算法设计控制器,从而实现双足机器人的变腿长控制。仿真结果表明:使用不动点作为初值,机器人可以快速进入稳定状态并具有良好的抗干扰性能。当选取吸引域内的非不动点作为初值,离不动点越近,过渡过程越短,抗扰性越好。但是只要位于吸引域内,最终均能进入稳定状态,这进一步说明求取系统不动点及吸引域的重要性。

猜你喜欢

双足不动点初值
Riech型Edelstein不动点定理
具非定常数初值的全变差方程解的渐近性
一种适用于平动点周期轨道初值计算的简化路径搜索修正法
Anti-N-methyl-D-aspartate-receptor antibody encephalitis combined with syphilis:A case report
一类抽象二元非线性算子的不动点的存在性与唯一性
活用“不动点”解决几类数学问题
三维拟线性波方程的小初值光滑解
冰冻的梦
不动点集HP1(2m)∪HP2(2m)∪HP(2n+1) 的对合
冰冻的梦