《武汉工程大学学报》  2021年05期 567-572   出版日期:2021-10-31   ISSN:1674-2869   CN:42-1779/TQ
二阶非完整平面欠驱动机械系统的位置控制


非完整系统是指一类具有非完整约束的非线性系统[1],非完整约束可分为一阶非完整系统和二阶非完整系统[2]。欠驱动连杆机械系统是一类驱动关节个数少于系统自由度个数的非线性系统[3-4],即系统的控制输入维数少于系统位形空间的维数[5]。其中,主要研究对象为垂直欠驱动连杆系统(含重力)[6]和平面欠驱动连杆系统(不含重力)[7-8]。近年来,国内外学者针对垂直欠驱动机械系统进行了广泛的研究。与垂直欠驱动系统相比,平面欠驱动机械系统的任意可达位置均为系统的平衡点,且该类系统的近似模型不满足线性可控条件[9],无法采用垂直欠驱动系统的控制方法实现其稳定控制。其中,针对平面三连杆欠驱动机械系统,主要依据欠驱动关节的位置进行分类研究。首关节为欠驱动的平面三连杆系统是一阶非完整系统,文献[10]提出一种基于模型降阶的位置控制方法,将原系统分段降阶为两个平面虚拟Acrobot系统,并依据平面Acrobot系统的角度约束关系进行有效控制。末关节为欠驱动的平面三连杆系统是二阶非完整系统,文献[11]将系统转换为链式规范型,设计控制器进行控制。而对中间关节为欠驱动的平面三连杆系统,文献[12]提出一种末端滑模控制的方法,当欠驱动关节的速度小于设置阈值时被锁住,将系统控制到目标位置,该方法使被控对象不再具有欠驱动特性。基于上述分析,针对中间关节为欠驱动的平面三连杆系统的位置控制是一个开放的问题。本文针对中间关节为欠驱动的平面三连杆系统(简称平面APA系统),提出一种模型降阶的分段控制策略,实现系统位置控制目标。首先,控制第一连杆到达目标位置,并控制第三连杆角度和角速度为零,使系统降阶为平面虚拟Pendubot。其次,基于平面Pendubot幂零近似特性,设计一个周期性开环迭代控制器,使平面虚拟Pendubot两连杆的角速度为0的同时,第一连杆回到目标位置,使原系统降阶为所有连杆初始角速度为零的平面虚拟Acrobot。根据平面Acrobot的运动状态约束关系,以及系统末端点坐标位置和连杆之间的约束关系,利用粒子群优化算法计算第二连杆和第三连杆目标角度。最后,针对第三连杆控制目标设计控制器,实现平面虚拟Acrobot的控制目标,从而实现平面APA系统的控制目标。1 系统建模平面APA系统的模型如图1所示。图中,[mi]为第[ii=1,2,3]杆的质量,[Li]为[i]杆的长度,[Lci]为[i]杆的质心到前一关节的长度,[Ji]是[i]杆的转动惯量。根据欧拉-拉格朗日法建立系统的动力学方程为:[Mqq+Hq,q=τ] (1)其中,[q=[q1 q2 q3]T]是系统的角度向量, [τ=[τ1????0????τ3]T]是控制力矩,[Mq∈R3×3]是惯性矩阵,具有正定性和对称性。[Hq, q∈R3×1]是科式力和离心力的结合矩阵。它们的具体表达式可参考文献[10]。如图1所示,设欠驱动关节的位置为[XP,YP],则欠驱动关节与系统末端点的几何约束关系为:[X=XP-sinθPL2-sinθP+q3L3Y=YP+cosθPL2+cosθP+q3L3](2)其中,[XP=-sinq1L1],[YP=cosq1L1],[θP=q1+q2]。[主动关切质心被动关节末端点][Y][O][q1][τ1][θP][q2][(XP,YP)][τ1][τ3][q3][P(X,Y)][L1][Lc1][L2][J2][m2][Lc2][J1][m1][Lc3][L3][J3][m3][X]图1 平面APA系统Fig. 1 Planar APA system2 平面虚拟Pendubot控制将平面APA系统降阶为平面虚拟Pendubot,并实现欠驱动关节位置控制目标。2.1 第一连杆目标角度求解根据系统的目标位置来求解系统第一连杆的目标角度。以平面APA系统目标位置为圆心[xd,yd],平面虚拟Acrobot两连杆杆长之和为半径,构建一个圆[C1];以平面APA系统首关节为圆心,平面虚拟Pendubot驱动连杆杆长为半径,构建另一个圆[C2];可得:[C1:(x-xd)2+y-yd2=L2+L32C2:x2+y2=L21] (3)圆[C1]与圆[C2]的交点[Ax1,y1]、[Bx2,y2]为欠驱动关节目标范围的极限位置。欠驱动连杆目标角度的范围在[qd1∈[arctan(y1/x1),arctan][(y2/x2)]]内就能保证平面APA系统末端点目标位置在几何可达范围内。2.2 原系统降阶为平面虚拟Pendubot控制第一连杆达到目标角度,同时控制第三连杆的角度和角速度为零。根据控制目标和平面APA系统的状态空间方程[10],构造Lyapunov函数[V1x]:[V1x=0.5P1x1-xd12+0.5x24+0.5P2x23+0.5x26] (4)其中,[P1],[P2]是正常数,且[xd1=qd1]。为保证[V1x≤0],设计控制律为:[τ1=P1-x1+xd1-f1-D1x4-g13τ3g-111τ3=P2-x3-f3-D2x6-g31τ1g-133] (5)其中,[D1]和[D2]为正常数。定义条件S1为:[ q1-qd1≤e1,q1≤e2 q3≤e1,q3≤e2] (6)其中,[e1]和[e2]为正数。当连杆状态满足条件S1时,平面APA系统被降阶为一个欠驱动关节速度不为零的平面虚拟Pendubot。因此,需要对平面虚拟Penduobt进行稳定控制。2.3 平面虚拟Pendubot稳定控制设平面APA系统满足条件S1的时刻为t1;此时,平面虚拟Pendubot的状态为[x1=q11????q12????q11????q12T],其中,[q11=qd1]。平面虚拟Pendubot的动力学方程为:[Mqq+Hq, q=τ] (7)式中,[Mq]和[Hq, q]具体表达式参见文献[13]。平面虚拟Pendubot的约束方程为:[M21q11+M22q12+H2=0] (8)令[q11=u]为辅助输入量,可得:[q11=uq12=-M-122H2-M-122M21u] (9)将式(9)代入式(7),可得[τ1=M11-M12M-122M21u+H1-M12M-122H2] (10)为维持第二连杆与第三连杆为一根虚拟连杆,[τ3]持续保持式(10)对第三连杆持续进行控制作用。基于以上分析,可得平面虚拟Pednubot的部分反馈线性化形式为:[x1=q11q120-Nsinq12q112+001-1+Ncosq12u??????????=fx+gxu] (11)式中,[N=(m2+m3)L1Lc1/(J2+(m2+m3)(Lc2+][Lc3)2)]。根据控制目标计算式(11)中的开环镇定控制律[u],设迭代周期为[T],设平面虚拟Pendubot在每一个周期[0,T]的[T]时刻状态为[x2=q21???q22???q21???q22T]。因此,每经过一个周期,第二连杆的角速度需满足[q220:q12∈Q2????q12∈Q4] (26)式中,[Qii=1,2,3,4]为平面坐标系的第[i]象限。若平面虚拟Pendubot状态满足S1但不满足条件S2时,则无法使欠驱动连杆的角速度收敛为0。因此,需要保持欠驱动连杆自由旋转,直到[q12,q12]满足条件S2,才能将原系统降阶为速度为0的平面虚拟Pendubot。由于每个迭代周期内的收敛系数[η]是变化的,则选择模糊控制器[14]进行动态迭代调节收敛系数[η]。将[e=q12],[ec=e=q12]作为控制器的两个输入,分别乘以量化因子转为控制器的模糊输入[E=k1?e],[EC=k2?ec],应用饱和器防止输入变量的值超过模糊系统的输入范围,[η]为控制器的输出,模糊输出为[Γ]。模糊规则如表1所示。表1 模糊控制规则Tab. 1 Rules of fuzzy control[[Γ] [EC] NB NS ZR PS PB [E] NB PB PM PM PS ZR NS PM PM PS ZR NS ZR PM PS ZR NS NM PS PS ZR NS NM NM PB ZR NM NM NB NB ]设[χE],[χEC]和[χΓ]分别为[FmE]、[FmEC]和[FmΓ]的隶属度函数,and运算采用求交法,则进行模糊控制前提的条件为:[ωm=χFmE×FmEC=minχE,χEC] (27)结合第[m]条规则,可得其运算结果为[χΓ=minωm,χΓ] (28)综合整个模糊规则可以得到模糊控制输出的隶属度为:[χΓ=∨m=125χΓ] (29)式中,[∨]为或运算,解模糊方法使用重心法:[η=ΓχΓdΓχΓdΓ] (30)将系统总输出乘以比例因子[Γ=kout?η]代入开环迭代镇定控制器中。经过镇定控制的平面虚拟Pendubot达到控制目标时可以进行切换。定义切换条件S3为: [ q21-qd1≤e1,q21≤e2 q22≤e2 q3≤e1,q3≤e2] (31)当平面APA系统连杆的状态满足切换条件S3时,就可以被降阶为初始速度为零的平面虚拟Acrobot。3 平面虚拟Acrobot控制根据平面虚拟Acrobot驱动连杆与欠驱动连杆的角度约束关系设计稳定控制器。根据平面虚拟Acrobot的位置控制目标和几何约束关系,利用粒子群优化算法获得对应两杆的目标角度。3.1 平面虚拟Acrobot模型设平面虚拟Acrobot状态为[x1=q22????q23????0????0T],其中,[q230=0]。平面虚拟Acrobot的动力学方程为:[Mq+Hq, q=τ] (32)式中,[Mq]和[Hq, q]具体表达式参见文献[14]。平面虚拟Acrobot的约束方程为:[M22θP+M23q3+H1=0] (33)当所有连杆的初始角速度均为零时,对式(33)进行积分运算,可得系统的角速度约束关系:[M22θP+M23q3=0] (34)式(34)表明,当[q3=0]时,[θP=0]。平面虚拟Acrobot驱动杆角速度为零时,则欠驱动杆角速度也为零。因此,可以通过控制驱动连杆可以实现欠驱动连杆控制。3.2 基于粒子群算法的目标角度求解根据平面虚拟Acrobot的位置控制目标,用粒子群算法[15]进行计算其目标角度。目标函数可以定义为:[h=X-xd+Y-yd] (35)式中,[xd,yd]为平面虚拟Acrobot的末端点目标位置,[PX,Y]为系统末端点位置,由式(2)计算可得。求解目标角度的算法步骤如下:Step1:初始化粒子的初始位置与初始速度;Step2:根据式(2)和式(35)计算适应度函数[h];Step3:当[h?≤e3]时,可得第三杆目标角度,否则,转到第二步;Step4:将第三杆目标角度代入根据角速度约束关系,求出欠驱动连杆的目标角度。3.3 平面虚拟Acrobot系统控制器设计根据控制目标,构造Lyapunov函数[V2x]:[V2x=0.5P1x1-xd12+0.5x24+0.5P2x3-xd32+0.5x26]  (36)式中,[xd1=qd1],[xd3=qd3]。为保证[V2x≤0],设计控制律为:[τ1=P1-x1+xd1-f1-D1x4-g13τ3g-111τ3=P2-x3+xd3-f3-D2x6-g31τ1g-133] (37)控制律保证如下收敛条件成立:[V2x=-D1x24-D2x26≤0] (38)依据LaSalle不变原理,可得[xi→qid],[xi+3→0]。则式(37)能实现平面虚拟Acrobot的控制目标。4 仿真实验研究利用MATLAB数值计算工具验证提出的控制策略的有效性,平面APA系统的模型参数如表2所示。表2 平面APA系统模型参数Tab. 2 Model parameters of planar APA system[i mi / kg Li / m li / m Ji / (kg·m2) 1 0.7 0.7 0.35 0.028 6 2 0.6 0.6 0.3 0.018 0 3 0.5 0.5 0.25 0.010 4 ]系统的初始状态为:[q01???q02???q03??q01???q02???q03T=1????-0.2????0.4????0????0????0T] (39)仿真步长为0.001 s,PSO算法参数为[w=0.8], [c1=c2=1.5], [n=15], [Kmax=1 00 0]和[vmax=15]。令[xd,yd=0.2,-0.8]和[qd1=7π8],由粒子群算法求得目标角度为:[qd2???qd3T=-5.5796???-4.0573T] (40)控制器参数为[P1=P2=1], [D1=D2=1.8]。在式(20)中[T=1 s]。令[e1=0.001 rads],[e2=0.001 rads],[e3=0.001 m]。如图2所示,角度、角速度都收敛到目标状态,末端点也稳定到目标位置。系统驱动杆的驱动力矩始终保持在20 N·m以内,力矩较小。在13.17 s时,系统从第一阶段切换到第二阶段;在23.67 s时,系统从第二阶段切换到第三阶段;在33.79 s时,系统各连杆均到达目标角度,从而平面APA系统末端点也到达目标位置。5 结 论针对平面APA系统末端点位置控制问题,本文提出了一种基于模型降阶的控制策略。将平面APA系统末端点位置控制问题转化为平面虚拟Pendubot的稳定控制问题和平面虚拟Acrobot的位置控制问题。首先,基于开环迭代控制实现平面虚拟Pendubot的稳定控制。其次,针对平面虚拟Acrobot,借助角度约束关系,采用粒子群算法计算各连杆角度,直接控制驱动连杆到达目标角度,并间接实现欠驱动连杆的控制角度目标,并最终实现平面APA系统末端点位置控制。