一种气动肌肉无模型高阶迭代学习控制方法与流程

文档序号:15978917发布日期:2018-11-17 00:05阅读:114来源:国知局

本发明属于非线性时变系统控制领域,具体涉及一种气动肌肉无模型高阶迭代学习控制方法。

背景技术

气动肌肉是一种新型拉伸型驱动器件,近年来得到了广泛的研究。相较于传统的驱动器,气动肌肉具有低成本、安全性好、高功率/质量比等优点,被广泛应用于仿生及康复医疗领域。在仿生及医疗设备的工作过程中,通常都需要进行重复性的运动,如康复机器人辅助患者进行某个特定动作的重复训练时,气动肌肉作为驱动器,其伸缩运动行为是重复的,这个过程要求气动肌肉的位置控制尽量精确。然而,气动肌肉具有非线性强、参数时变等特点,这使得对它的精确控制较为困难。同时,由于气动肌肉的数学模型较难建立,传统的基于模型的控制方法难以取得较好的控制效果。

中国专利cn200610053005.6公开了一种气动肌肉运动模拟控制平台装置及位姿控制方法,通过实施采集气动肌肉的伸缩长度和压力,通过控制算法调节相应的气动肌肉的压力,最终达到平台的预期位姿,实现各种运动的模拟要求。此发明采用的控制方法需要设计复杂的非线性函数,同时需要辨识较多与平台模型相关的未知参数,因此控制方法较为局限,无法适用于其他气动肌肉驱动的装置。中国专利cn201510472613.x公开了一种并联踝关节康复机器人及其控制方法,该机器人由气动肌肉驱动,能够调节运动范围,覆盖踝关节三个自由度的运动训练。此发明建立了气动肌肉气压与收缩量的数学模型,根据期望长度解算气动肌肉的期望气压,并通过pid控制器将跟踪误差转换成修正量对理想气压进行补偿。该控制方法需要建立气动肌肉的数学模型,计算量较大,建模过程中存在误差,同时该模型只适用于此发明中的气动肌肉型号,不具备普适性。中国专利cn201710366243.0公开了一种气动肌肉的自适应控制方法和系统,能够使气动肌肉主动适应时变性和不确定性,改善控制效果,提高控制精度。该发明采用的自适应控制方法需要建立气动肌肉的三元素模型,并对模型中的参数进行辨识以得到控制器参数,该控制方法同样是基于模型的,且参数辨识过程和控制器增益计算过程较为复杂,实施起来较为困难。

通过上述分析比较可知,目前气动肌肉的控制方法主要是基于模型的,这类控制方法的局限性在于,气动肌肉的模型较难建立,且不同类型的气动肌肉数学模型不同,使得控制方法不具备普适性。模型参数辨识过程和控制器增益参数选取过程较为复杂,计算量较大,在实际的控制中难以实现。同时,这些方法都是沿着时间轴进行,并不适用于重复运动过程中的气动肌肉控制。因此,针对重复运动的气动肌肉,采用无模型方法,仅利用系统气压和位移数据驱动,对控制器结构、增益参数等进行设计,具有十分重要的意义。



技术实现要素:

为了解决上述技术问题,本发明提供了一种气动肌肉无模型高阶迭代学习控制方法,利用气动肌肉在重复运动过程中的气压和位移数据,建立气动肌肉沿迭代轴的动态线性化数据模型,利用高阶形式改进传统的估计算法,充分利用过往迭代轮次的气压和位移信息对该模型中的“拟伪偏导数”进行在线估计,加速估计算法的收敛。基于“拟伪偏导数”的估计值设计无模型的迭代学习控制器对气动肌肉进行重复运动控制,可实现其对期望轨迹快速、精确的渐进跟踪。

本发明所采用的技术方案是:一种气动肌肉无模型高阶迭代学习控制方法,其特征在于,包括以下步骤:

步骤1:对气动肌肉进行数学抽象;

步骤2:建立气动肌肉数据模型;

基于前两次迭代周期的气压值和位移值,建立相邻两个迭代周期的迭代轴紧格式动态数据模型,并定义该模型中的未知参数为“拟伪偏导数”;

步骤3:“拟伪偏导数”估计;

步骤4:考察“拟伪偏导数”估计值的取值情况和气压值增量的取值情况,若“拟伪偏导数”或控制量在当前时刻相较于前一次迭代的增量小于一个给定的值,则采用“重置算法”对它的值进行重置;

步骤5:根据“拟伪偏导数”的估计值和前两次迭代周期中的气压值和位移值,构建无模型迭代学习控制器,计算出当前迭代周期每个时刻的气压值,传输给气动肌肉;

步骤6:判断气动肌肉的跟踪误差是否满足精度要求,若满足,则停止迭代;若不满足,则重复步骤2~步骤5。

本发明与现有技术相比,具有以下优点:

本发明提供了一种气动肌肉无模型高阶迭代学习控制方法,克服了气动肌肉非线性强、参数时变、建模困难等特点造成的难以精确控制的问题,建立了一类可重复的非线性系统迭代轴动态数据化模型,利用气动肌肉重复运行过程中的气压和位移数据估计该模型中的未知参数,其中2≤k<m时采用一阶估计算法,k≥m时采用高阶估计算法。基于参数的估计值,构建由数据驱动的迭代学习控制器,控制气动肌肉渐进跟踪期望轨迹。该方法是一种无模型的迭代学习控制方法,不依赖气动肌肉的任何模型参数信息,适用于重复运动的气动肌肉及其驱动设备的控制,能够实现快速、精确的位置控制。

附图说明

图1是本发明实施例的数据驱动的气动肌肉迭代学习控制方法运行原理图;

图2是本发明实施例的数据驱动的气动肌肉迭代学习控制方法实施流程图;

图3是本发明实施例的气动肌肉轨迹跟踪曲线图;

图4是本发明实施例的最大轨迹误差收敛曲线对比图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

请见图1和图2,本发明提供的一种气动肌肉无模型高阶迭代学习控制方法,其特征在于,包括以下步骤:

步骤1:对气动肌肉进行数学抽象;

首先对气动肌肉进行数学抽象。由于气动肌肉是一种具有耦合关系、高阶的非线性系统,因此对于重复运行的气动肌肉,可将其描述为:

yk(t+1)=f[yk(t),yk(t-1),…,yk(t-ny),uk(t),uk(t-1),…,uk(t-nu)](1);

其中,uk(t)和yk(t)分别表示在第k次迭代t时刻的气压和位移,t∈{0,1,…t-1},k=0,1,2…,t表示采样时刻,k表示迭代次数,k的取值没有上限,nu表示气动肌肉输入端阶数,ny表示气动肌肉输出端阶数;对于公式(1),控制目标为寻找一个合适的有界的气压信号序列uk(t)作用于系统,使得系统位移序列yk(t)等于给定的期望轨迹yd(t)。

步骤2:建立气动肌肉数据模型;

考虑气动肌肉经过多次迭代运行最终跟踪期望轨迹这一控制过程,初始化气动肌肉的期望轨迹和最初两次迭代周期的气压值,将气压的初始值传输给气动肌肉,采集气动肌肉在最初两次迭代周期的位移,并根据位移和期望轨迹计算跟踪误差;

基于前两次迭代周期的气压值和位移值,建立相邻两个迭代周期的迭代轴紧格式动态数据模型,并定义该模型中的未知参数为“拟伪偏导数”;

由于公式(1)是一个较为复杂的非线性系统,其精确的数学方程描述难以得到。本发明采用一种数据驱动的方式,利用公式(1)在任意两次相邻迭代轮次的气压和位移数据建立如下气动肌肉迭代轴数据模型:

δyk(t+1)=φk(t)δuk(t)(2);

其中,φk(t)被称为“拟伪偏导数”,φk(t)是未知参数,需要在线估计;δyk(t+1)=yk(t+1)-yk-1(t+1)为气动肌肉在相邻两次迭代周期同一时刻的位移增量,δuk(t)=uk(t)-uk-1(t)为气动肌肉在相邻两次迭代周期同一时刻气压值的增量。

步骤3:“拟伪偏导数”估计;

表示φk(t)的估计值;在最初两次迭代中,即迭代次数k=0,1时,的值是采用人为设定初值;从k=2开始,采用前两次迭代过程中的气压和位移数据,以及前若干次迭代过程中的进行估计,其中,一阶估计算法只利用前一次迭代的值,高阶估计算法利用了前m次迭代的值;当2≤k<m时,采用“一阶估计算法”对“拟伪偏导数”进行估计;当k≥m时,采用“高阶估计算法”对“拟伪偏导数”进行估计;其中,阶数m由人为设定。

采用高阶估计算法,是因为一阶估计算法只包含前一次迭代的信息,这样会导致数据未被充分利用,估计速度较慢,算法收敛时间较长。高阶方法可以充分利用过去迭代轮次的数据,提升算法收敛速度,将其应用于气动肌肉,可以减少气动肌肉跟踪期望轨迹所需要的迭代次数。对于一些由气动肌肉驱动的仿生和康复设备,快速精确地跟踪期望轨迹能够降低时间成本和意外风险,为使用者提供更安全可靠的运动辅助。

一阶估计算法通过最小化如下一阶准则函数得到:

一阶估计算法为:

其中,μ为一个正的权重系数,ηk,t为步长因子。

高阶估计算法通过最小化入如下高阶准则函数得到:

高阶估计算法为:

其中,μ为一个正的权重系数,ηk,t为步长因子,m为阶数,αi为权重系数。

步骤4:考察“拟伪偏导数”估计值的取值情况和气压值增量的取值情况,若“拟伪偏导数”或控制量在当前时刻相较于前一次迭代的增量小于一个给定的值,则采用“重置算法”对它的值进行重置;

为了保证气动肌肉迭代轴动态数据模型始终成立,并且对于自身的时变参数具有更好的跟踪能力,需要引入如下重置算法:

其中,ε为一个充分小的正数,为“拟伪偏导数”的初值,由人为给定。

步骤5:根据“拟伪偏导数”的估计值和前两次迭代周期中的气压值和位移值,构建无模型迭代学习控制器,计算出当前迭代周期每个时刻的气压值,传输给气动肌肉;

在得到了之后,需利用前两次迭代过程中的气压和位移数据对迭代学习控制器进行设计,以计算出当前迭代周期气动肌肉的气压值。控制器的设计需满足如下准则函数:

j(uk(t))=|yd(t+1)-yk(t+1)|2+λ|uk(t)-uk-1(t)|2(8);

其中λ是权重系数。将公式(2)代入公式(8),并令得到如下数据驱动的迭代学习控制器:

其中;ρk,t为步长因子,它的存在使控制器(9)更具一般性。φk(t)采用步骤(3)中的估计值替代;ek-1(t+1)第k-1次迭代在t+1时刻的跟踪误差,λ为权重系数。

步骤6:判断气动肌肉的跟踪误差是否满足精度要求,若满足,则停止迭代;若不满足,则重复步骤2~步骤5。

根据上述步骤,本发明提供的一种气动肌肉无模型高阶迭代学习控制方法在气动肌肉的重复运动过程中按如下时序工作:

第一步,设定期望轨迹yd=2.3+2sin(πt)、控制量初值u0(t)=2和u1(t)=3、“拟伪偏导数”初值φ0(t)=40和φ1(t)=40。将u0(t)和u1(t)输入到气动肌肉(型号:festomas-20-400n),使其做两次运动,采集运动过程中的输出和轨迹误差;

第二步,根据前两次迭代的数据,建立气动肌肉迭代轴动态数据模型:

δyk(t+1)=φk(t)δuk(t)

其中δyk(t+1)=yk(t+1)-yk-1(t+1)为前后两次迭代在同一时刻的位移增量,δuk(t)=uk(t)-uk-1(t)为气压增量。定义模型中的φk(t)为“拟偏导数”,需要在线估计,估计值用表示。

第三步,将公式(1)代入的一阶准则函数,最小化该准则函数得到一阶估计算法:

将公式(1)代入的高阶准则函数,最小化该准则函数得到高阶估计算法:

本实施例选取μ=1、ηk,t=0.6,设定阶数m=3。因此,在第三次迭代时,采用一阶估计算法对φk(t)进行估计。从第四次迭代开始,采用高阶估计算法对φk(t)进行估计。

第四步:考察的取值情况和气压值增量|δuk(t)|的取值情况,若或|δuk(t)|≤ε,本实施例取ε=0.00001,则对进行重置:

第五步:将估计算法得到的和前两次迭代的气压和位移数据输入到如下迭代学习控制器中:

本实施例选取ρk,t=1,λ=1。将控制器即算得到的当前迭代轮次的气压序列输入给气动肌肉,完成一个迭代轮次的运动。

第六步:采集气动肌肉位移数据,计算最大跟踪误差emax(k),若emax(k)满足精度要求,就停止迭代,运行结束,若不满足,则重复第二步至第五步。

图3展示了气动肌肉在不同迭代周期对期望轨迹的跟踪效果,控制器参数均按照上述步骤设置。其中yd曲线表示期望轨迹,其他曲线表示气动肌肉的实际轨迹。可以看出,随着迭代次数的增加,实际轨迹逐渐逼近期望轨迹,并在第8次迭代时几乎达到期望轨迹,误差较小。

图4展示了本发明方法与传统无模型迭代学习控制方法的横向对比实验结果及本发明方法的纵向对比实验结果。图中曲线为最大跟踪误差的收敛曲线,其中yd曲线为传统的无模型迭代学习控制方法,8th曲线为本发明提出的方法。横向对比这两种方法,可以看出本发明的方法比传统方法具有更快的收敛速度,并且最大跟踪误差可以更快的达到一个较低水平。8th曲线、5th曲线和5th曲线为本发明方法从不同迭代次数开始采用高阶估计算法的结果,纵向对比这三条曲线可以看出,越早采用本发明提出的高阶估计算法(即k0越小),最大误差收敛越快,这也进一步说明了高阶估计算法对于提高算法收敛速度上的有效性。

本发明利用数据驱动的方式,仅依赖气动肌肉在重复运动过程中的气压和位移数据,沿迭代轴建立气动肌肉动态线性化数据模型;采用改进的高阶估计算法,对数据模型中未知的“拟伪偏导数”进行在线估计,该估计算法充分利用了过往迭代轮次的数据信息,具有更快的估计速度,提升了算法的收敛性;根据“拟伪偏导数”的估计值设计了数据驱动的迭代学习控制器,使气动肌肉能够快速、精确的跟踪期望轨迹。

本发明利用气动肌肉重复运动过程中的气压和位移信息在线估计气动肌肉动态数据模型中的“拟伪偏导数”,从而应用于控制器的设计,使气动肌肉经过较少的迭代周期就能实现对期望轨迹的精确跟踪。本发明方法适用于气动肌肉及非线性驱动器重复运动控制领域。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1