一种多机器人系统有限时间鲁棒协同跟踪控制方法
技术领域
本发明涉及多机器人系统的控制方法。
背景技术
机器人技术的不断发展,机器人的应用领域以及范围都不断随之扩展,人们对机器人的要求也越来越高,因此希望研制出功能更为复杂的机器人,但是机器人本身的系统结构就非常复杂,如果再增加其它更多的功能,那么它的系统可靠性和效率都有可能降低。此外还有很多任务仅凭单个机器人无法完成,需要多个机器人协调合作完成。
随着计算机技术和无线通信技术的发展,多机器人协调合作已经成为可能,且得到了越来越多的应用。从多机器人系统控制框架的角度来看,多机器人编队控制主要可以分为:集中控制式、分布式和监控式三种方式。根据多机器人系统中领航机器人个数分类,多机器人协调控制问题分为无领航机器人的一致性控制问题、单领航机器人的跟踪控制问题和多领航机器人的包含控制问题。
现有研究大多使用一阶或二阶线性积分系统描述机器人的动力学特性。然而多数实际物理系统中往往存在非线性特性,因此,用线性模型去刻画实际的物理系统明显具有一定的缺陷。相比之下,用Euler-Lagrange系统模型(一种二阶非线性模型)可以很好地描述众多实际系统(如机械人、航天器等),使得用Euler-Lagrange方程描述的多机器人系统的协调控制具有广阔的应用前景。
在多机器人系统协调控制领域,目前的许多工作都关注于无领航机器人的一致性问题,但在实际中,存在单个领航机器人的情况具有更广阔的应用价值。存在单领航机器人的协调跟踪控制问题中,通过对每一个跟随机器人设计分布式的控制算法使整个闭环系统的状态或输出渐近趋向于由领航机器人产生的轨迹。由于领航机器人独立于其他的所有跟随机器人,但领航机器人可以影响所有跟随机器人的运动,因此,通过控制领航机器人,就可以实现由领航机器人和跟随机器人组成的整个网络系统的控制目标,即达到规则有序的协调运动。这样的控制方法不但简化了系统设计还节省了系统的能源消耗。
《Decentralizedadaptiveleaderfollowercontrolofmulti-manipulatorsystemwithuncertaindynamics》对领航机器人为动态情况下的分布式协调跟踪控制问题进行了研究。考虑系统中存在参数不确定性,以Euler-Lagrange系统模型作为动力学模型,利用YI线性化方法,设计分布式自适应跟踪控制算法,使系统中所有跟随机器人渐近跟踪领航机器人的运动轨迹。
该方案中设计的分布式自适应跟踪控制算法,使系统中所有跟随机器人渐近跟踪领航机器人的运动轨迹。基于系统渐近收敛设计的控制器在实际应用时具有一定的局限性,因为渐近收敛未考虑到时间的限制;现实情况下,在时间趋于无穷大后才能得到误差趋于零的条件很难得到满足。
《Backstepping-basedsynchronisationofuncertainnetworkedLagrangiansystems》基于有向图研究了多机器人系统协调跟踪问题。文中分别针对标称Euler-Lagrange系统模型和带有参数不确定性的Euler-Lagrange系统模型,利用back-stepping方法设计分布式控制律,使跟随机器人可以渐近跟踪领航机器人轨迹。
本方案中每个跟随机器人均可以获得领航机器人速度和加速度信息,增加了传感器配置且加重了通讯负担。同样方案中设计的分布式自适应跟踪控制算法,是使系统中所有跟随机器人渐近跟踪领航机器人的运动轨迹。基于系统渐近收敛设计的控制器在实际应用时具有一定的局限性。
发明内容
本发明为了解决现有的多机器人控制系统控制方法的鲁棒性较差的问题和多机器人系统的整体通讯负担过重的问题。
一种多机器人系统有限时间鲁棒协同跟踪控制方法,包括以下步骤:
步骤1、建立含有1个领航机器人和n个跟随机器人的多机器人系统,领航机器人标记为0,跟随机器人记为vL={1,2,…n};忽略外界干扰的情况下,跟随机器人i∈vL的动力学模型可由如下Euler-Lagrange方程描述:
其中,qi∈Rn为广义坐标;为广义速度,为广义加速度;Mi(qi)∈Rn×n为惯量矩阵,是对称正定的;为Coriolis力/偏心力;gi(qi)∈Rn为广义有势力;τi∈Rn为作用于跟随机器人i的广义控制力矢量;n是多机器人系统中机器人的维数;其中,矩阵Mi(qi)、和矢量gi(qi)均为未知量,矩阵Mi(qi)、和矢量gi(qi)均有界;而且矩阵为反对称矩阵,即对于任意向量x∈Rn,
对于任意向量x∈Rn,y∈Rn,式(1)所示的动力学模型可线性化为:
其中,Yi为已知回归矩阵,Θi为包含跟随机器人i物理参数的未知常值向量;
步骤2、根据多机器人系统的通讯拓扑,计算多机器人系统的有向图图论中的加权邻接矩阵A和Laplacian矩阵;
步骤3、定义以下变量:
z1i=qi-qri(4)
其中,qri为辅助变量,z1i为跟踪误差,z2i为构造的误差,a为一正常数,为加权邻接矩阵A的元素,元素表示跟随机器人i和机器人j*之间信息传递关系;i和j表示参数针对的是跟随机器人,i和j分别属于vL={1,2,…n};i*和j*表示参数针对的是所有机器人(包括领航机器人和跟随机器人),i*和j*分别属于v={0,1,2,…,n};
α1i为虚拟控制器,其形式如式(6)所示:
其中,K1为参数矩阵,K1=diag(K11,K12,…,K1n);K11,K12,…,K1n为K1中的元素;α为一正常数,α∈(0,1);为qri的一阶导数;
对变量z1i求导后,再引入如公式(6)所示的虚拟控制器,可得
其中,函数Sig(·)α定义为
Sig(ξ)α=[|ξ1|αsgn(ξ1),…,|ξn|αsgn(ξn)]T
其中,ξ=[ξ1,ξ2,…,ξn]T∈Rn,sgn(·)为符号函数;
步骤4、设计分布式跟踪控制律和线性化参数自适应律,完成多机器人系统有限时间跟踪控制。
本发明具有以下有益效果:
1、本发明考虑多机器人系统模型采用非线性的Euler-Lagrange动力学方程,考虑了系统模型非线性不确定性的情况;同时本发明考虑系统存在的不确定性,通过参数线性化的方法进行处理,使得系统具有较好的鲁棒性。
2、本发明的多机器人系统间通讯拓扑为有向图,比一般的无向图更有实际应用价值,而且避免了信息全局可知带来的通讯负担。
3、本发明设计的控制律具有有限时间特性,具有更快的收敛速度。通过仿真分析,本发明的控制精度数值更低,收敛时间更短。
4、本发明有较高的精度,且在到达时间内所消耗的燃料消耗少,且干扰越大,其优势越明显。
附图说明
图1为领航机器人与跟随机器人之间的通讯拓扑图;
图2的运动轨迹图,i*=0,…,4;
图3的运动轨迹图,i*=0,…,4;
图4τi1的变化曲线图,i=1,…,4;
图5τi2的变化曲线图,i=1,…,4;
图6辅助变量z1i_1变化曲线图,i=1,…,4;
图7辅助变量z1i_2变化曲线图,i=1,…,4;
图8本发明的流程图。
具体实施方式
具体实施方式一:
一种多机器人系统有限时间鲁棒协同跟踪控制方法,包括以下步骤:
步骤1、建立含有1个领航机器人和n个跟随机器人的多机器人系统,领航机器人标记为0,跟随机器人记为vL={1,2,…n};忽略外界干扰的情况下,跟随机器人i∈vL的动力学模型可由如下Euler-Lagrange方程描述:
其中,qi∈Rn为广义坐标;为广义速度,为广义加速度;Mi(qi)∈Rn×n为惯量矩阵,是对称正定的;为Coriolis力/偏心力;gi(qi)∈Rn为广义有势力;τi∈Rn为作用于跟随机器人i的广义控制力矢量;n是多机器人系统中机器人的维数;其中,矩阵Mi(qi)、和矢量gi(qi)均为未知量,矩阵Mi(qi)、和矢量gi(qi)均有界;而且矩阵为反对称矩阵,即对于任意向量x∈Rn,
对于任意向量x∈Rn,y∈Rn,式(1)所示的动力学模型可线性化为:
其中,Yi为已知回归矩阵,Θi为包含跟随机器人i物理参数的未知常值向量;
步骤2、根据多机器人系统的通讯拓扑,计算多机器人系统的有向图图论中的加权邻接矩阵A和Laplacian矩阵;
步骤3、定义以下变量:
z1i=qi-qri(4)
其中,qri为辅助变量,z1i为跟踪误差,z2i为构造的误差,a为一正常数,为加权邻接矩阵A的元素,元素表示跟随机器人i和机器人j*之间信息传递关系;i和j表示参数针对的是跟随机器人,i和j分别属于vL={1,2,…n};i*和j*表示参数针对的是所有机器人(包括领航机器人和跟随机器人),i*和j*分别属于v={0,1,2,…,n};
α1i为虚拟控制器,其形式如式(6)所示:
其中,K1为参数矩阵,K1=diag(K11,K12,…,K1n);K11,K12,…,K1n为K1中的元素;α为一正常数,α∈(0,1);为qri的一阶导数;
对变量z1i求导后,再引入如公式(6)所示的虚拟控制器,可得
其中,函数Sig(·)α定义为
Sig(ξ)α=[|ξ1|αsgn(ξ1),…,|ξn|αsgn(ξn)]T
其中,ξ=[ξ1,ξ2,…,ξn]T∈Rn,sgn(·)为符号函数;
步骤4、设计分布式跟踪控制律和线性化参数自适应律,完成多机器人系统有限时间跟踪控制。
具体实施方式二:
本实施方式步骤4具体包括以下步骤:
根据公式(1)和公式(2),可得
针对由式(1)描述的含参数不确定性的跟随机器人i∈vL的动力学模型,并结合公式(8)、(9)和步骤3中定义的变量,设计分布式控制律和线性化参数自适应律,分别如下:
其中,为常值向量Θi的估计值,为常值向量Θi的估计值的一阶导数,Λi为一常数,可根据需要选取;K2为参数矩阵,K2=diag(K21,K22,…K2n);K21,K22,…K2n为K2中的元素;K3为参数矩阵,K3=diag(K31,K32,…K3n);K31,K32,…K3n为K3中的元素;||·||为欧式范数;
根据公式(10)和(11)实现每个跟随机器人在有限时间内追随具有动态时变轨迹的领航机器人,完成多机器人系统有限时间跟踪控制。
其他步骤和参数与具体实施方式一相同。
具体实施方式三:
本实施方式的步骤2具体包括以下步骤:
机器人之间的通讯拓扑用有向图G=(v,ε)表示,v={0,1,2,…,n}为所有节点组成的集合,为所有边组成的集合;用节点表示机器人i*,节点表示机器人j*,且i*≠j*;有向图G=(v,ε)中,每条边均有两个节点边表示机器人j*能够接收机器人i*的信息;有向路径定义为边集的有序序列,其中若至少有一个节点存在该节点到其他节点的有向路径,则称该有向图具有有向生成树;
矩阵 为邻接矩阵,若i*≠j*且 则 否则
定义矩阵D为对角阵D=diag(d1,d2,…dn),其中
有向图G=(v,ε)的Laplacian矩阵定义为
LA=D-A(12)
其他步骤和参数与具体实施方式一或二相同。
跟随机器人可以实现对领航机器人的有限时间跟踪控制的证明如下:
步骤a:首先,考虑如下Lyapunov函数
其中,为线性化参数自适应律误差,定义为
且有
对V1i关于时间求导可得
针对Euler-Lagrange方程,矩阵Mi(qi)、和矢量gi(qi)均有界,即对于任意qi∈Rn,有0<Mm,i≤||Mi(qi)||≤MM,i,||gi(qi)||≤gM,i;
可将式(16)简化为
根据式(14)和式(15),将设计的分布式控制律(10)和线性化参数自适应律(11)代入式(17)中,最终可化简为
取K3>0使即V1i(t)≤V1i(0),t≥0,此时如公式(1)所示的跟随机器人i∈vL的动力学模型渐进稳定。
由可得辅助变量z1i,z2i和均有界,根据矩阵Mi(qi)、和矢量gi(qi)均有界,由式(4)、式(5)可得,变量qi、α1i和均有界。
步骤b:另选取如下Lyapunov函数
对V2i求导后得
令矩阵K3满足
那么有
进一步放缩可得
其中, 且 k1min=min{K1i},
根据有限时间Lyapunov稳定性定理可知,跟随机器人i∈vL的动力学模型在分布式控制律(10)和线性化参数自适应律(11)的作用下有限时间稳定。
对式(21)关于时间求导,得
因为矩阵K1、K2、K3对称正定,且变量z1i、z2i、有界,那么式(23)有界。根据Barbalat引理可得,当t→∞时,
因此根据式(21)可推得
将式(3)代入式(4)得
定义矩阵B=diag(a10,…,an0),其中ai0为邻接矩阵A中元素, 根据相关图论知识,式(25)可以写为如式(26)所示形式。
式中为由跟随机器人构成的子图的Laplacian矩阵,In为n阶单位方阵,1n为n行1列的全1列向量,q0表示领航者机器人的广义坐标。
令那么式(26)可以表示为
引理1:如果有向图G=(v,ε)具有有向生成树,那么的所有特征值均具有正实部。其中为由跟随机器人构成的子图的Laplacian矩阵,B=diag(a10,…,an0)。
进一步,根据引理1可证明的所有特征值均具有正实部;那么NA为可逆矩阵。
基于式(24),对式(27)进一步处理可得
实际应用中,领航机器人的运动轨迹有界,不会无限大,因此领航机器人的广义坐标有界,即其中为领航机器人的广义坐标的最大值。因此有
其中,为矩阵NA的最小奇异值。
根据式(29)可知,如公式(1)所示的跟随机器人i∈vL的动力学模型在分布式控制律(10)和线性化参数自适应律(11)的作用下跟踪误差最终有界。
实施例
考虑一个由多个具有两自由度机械臂机器人系统构成的多智能体系统,包含1个领航机器人和4个跟随机器人。跟随机器人动力学模型由下式描述:
其中,
qi=[qi1,qi2]T为跟随机器人i的各机械臂转角,θij(j=1,…,5)跟随机器人i的位置参数,
其表达形式如下
θi3=0.5mi2li1li2,θi4=(0.5mi1+mi2)li1,
θi5=0.5mi2li2
其中,Ji1,Ji2表示跟随机器人i各机械臂转动惯量,mi1,mi2表示跟随机器人i的各机械臂质量,li1,li2表示跟随机器人i各个机械臂到质心的长度。跟随机器人机械臂的各项动力学参数如表1所示。
表1跟随机器人机械臂动力学参数
跟随机器人i的机械臂的初始转角如下:
q11(0)=π/5,q12(0)=-π/3;q21(0)=2π/5,q22(0)=-π/6;
q31(0)=3π/5,q32(0)=π/6;q41(0)=4π/5,q42(0)=π/3.
跟随机器人i的机械臂的初始角速度如下
领航机器人0的机械臂的各杆初始转角为
q01(t)=q01_ampsin(ωt)+q01_bias,
q02(t)=q02_ampsin(ωt)+q02_bias
其中q01_amp=0.75deg,q01_bias=1.8deg,q02_amp=3deg,q02_bias=0,ω=18deg/s。
跟随机器人和领航机器人间的通讯拓扑如图1,该有向图有向生成树,图中仅跟随机器人2可以直接获得领航机器人的信息。
控制器设计参数
a=1,K1=10I2,K2=40I2,K3=10I2,Λi=0.0002I5,α=0.8,△=0.1;输入力矩饱和值τmax=250。
仿真分析
图2和图3为领航机器人和跟随机器人的运动轨迹。从图2、图3中可以得到每个跟随机器人在1s内都可以追踪到领航机器人且跟踪误差均最终有界。由于跟随机器人2可以直接获得领航机器人的状态信息,因此跟随机器人2与领航机器人间的跟随误差最小且响应时间最短。根据图1可知,跟随机器人1、跟随机器人4获得领航机器人信息需要经过层层传递,因此在跟踪过程中跟随机器人1、跟随机器人4有相对较大的跟随误差且响应时间有所延长。图4和图5为每个跟随机器人的控制力矩。从图4和图5可以清晰的看到,考虑力矩饱和的情况,各跟随机器人控制力矩根据需求输出。在1s后,各跟随机器人跟踪到领航机器人,此时所需要的控制力矩则相应的减少。图6和图7表明辅助变量z1i在仿真时间内收敛到原点。
在以上的仿真实验基础上(和上述实验参数相同)进行对比实验,仿真时间为160s。考虑多机器人系统中包含参数不确定性和外界干扰,对本发明中和对比方案的分布式控制算法进行对比。其中对比方案中控制算法为
τi=YiΘi-z1i-K2z2i
对比方案中对比方案中虚拟控制器α1i取如下形式:
其它变量定义与本文相同。对比方案控制算法可以使领航者机器人和跟随机器人间的跟踪误差有界且使系统稳定。
本节中Euler-Lagrange动力学模型如下。
其中外界干扰ωi可取表2中某一种类型。
表2干扰类型
类型 |
表达式 |
干扰一 |
-[0.11sin(ωt)qi1+1.07,0.03sin(ωt)qi2+0.27] |
干扰二 |
-3×[0.11sin(ωt)qi1+1.07,0.03sin(ωt)qi2+0.27] |
干扰三 |
-6×[0.11sin(ωt)qi1+1.07,0.03sin(ωt)qi2+0.27] |
为对本发明中所提算法和对比方案中算法进行直观的对比,定义如下相关指标:
1、精度当跟随机器人跟踪领航机器人后,辅助变量z1i的欧几里得范数。
2、收敛时间tri:当跟随机器人跟踪到领航机器人后,不超过某精度所用最少时间。本节中,精度取为
3、平均能量消耗Ft:定义为
其中,Ttotal为仿真时间。
4、收敛时间内燃料消耗Fr:定义为
对比结果:
选取不同类型的外界干扰,将本发明所提算法和对比方案中算法就相关指标进行对比,如表3所示。
表3不同方案对比数据
从表3中可得:
1、就精度而言,无论选取哪种类型的干扰,本发明中所提算法的精度都比对比方案中的算法精度小。
2、就收敛时间tri而言,无论选取哪种类型的干扰,本发明中所提算法的收敛时间都比对比方案中的算法收敛时间短。
3、就平均能量消耗Ft而言,无论选取哪种类型的干扰,本发明中所提算法在仿真时间内所消耗的平均能量比对比方案中的算法小,且干扰越大,其优势越明显。
4、就到达时间内燃料消耗Fr而言,无论选取哪种类型的干扰,本发明所提算法在各跟随机器人收敛时间内消耗的燃料比对比方案中的算法小,且干扰越大,其优势越明显。
综上,考虑表2中所有外界干扰,与对比方案中的算法相比,本文所提算法有较高的精度,较短的到达时间,平均能量消耗少,在到达时间内所消耗的燃料消耗少,且干扰越大,其优势越明显。