朱 安,陈 力
(福州大学机械工程及自动化学院,福建福州 350116)
经过近70年的太空探索,世界各国向太空发射了大量的卫星.目前太空中卫星的数量高达6000多颗,但能正常工作的卫星数量占比却不到一半,失效卫星极大的占用了有限的空间轨道资源.另外,卫星失效的主要原因通常是其携带的燃料耗尽而不是出现故障,如果可以对其进行燃料补给,卫星的寿命可以被极大的延长.因此,为了有效的利用空间轨道资源和节约太空探索成本,对失效卫星的回收已受到国内外学者的广泛关注.使用空间机器人完成上述任务在技术和方案上都是可行的,是空间探索的热点之一[1—5].
相较于单臂空间机器人,双臂空间机器人由于具有更高的灵活性,更大的负载能力,能执行更加复杂的任务,已逐渐成为空间机器人的研究重点[6—10].但由于双臂空间机器人捕获卫星操作过程存在非完整动力学约束,动量、动量矩与能量传递变化,捕获前后结构开闭环变拓扑,闭环接触几何、运动学约束等问题,对双臂空间机器人进行研究相对困难.Takahashi等[11]研究了被捕获目标与双臂空间机器人发生碰撞后对机器人产生的影响;董楸煌等[12]研究了空间机器人捕获卫星过程的碰撞动力学及镇定控制问题;程靖等[13]研究了双臂空间机器人捕获卫星的力学分析与镇定控制;Jia 等[14]研究了闭链双臂空间机器人控制问题,并提出了一种自适应控制方法.
一般情况下,空间机器人捕获卫星的过程可分为4个阶段:1)对被捕获卫星进行观测;2)捕获操作前的准备;3)空间机器人与被捕获卫星接触、碰撞;4)对闭链混合体系统进行镇定控制.其中第3—4阶段是最具风险和最难控制的阶段,许多学者都致力于此阶段的研究.针对捕获的第3阶段,Uyama等[15]对空间机器人与自由漂浮卫星的接触效应进行了实验的评估;Dimitrov等[16]详细建立了空间机器人捕获卫星过程的接触动力学模型,并分析了捕获过程的动量交换问题;Gangapersaud等[17]对抓捕不合作、翻滚目标时末端执行器的力/力矩进行了分析;陈钢等[18]针对碰撞问题,利用碰撞过程中产生冲量的原理建立了碰撞动力学模型,且提出了一种碰撞运动分析算法.然而上述学者均忽略了对空间机器人的关节的保护,实际上若在捕获过程中未对关节进行保护,关节很可能因所受冲击力矩过大而造成破坏,导致捕获操作的失败,甚至造成空间机器人损坏.
地面机器人中,在关节电机与机械臂之间加入串联弹性执行器(series elastic actuator,SEA),可以在机器人与外界环境发生碰撞时很好的保护关节不受冲击损坏[19—21].但SEA的引入也极大地增加了关节的柔性,柔性的存在会使机械臂在运动过程中发生弹性振动,严重时可能造成系统失稳.为了抑制弹性振动,最常见的方法是基于奇异摄动理论,将机器人系统分为快、慢变子系统,然后分别设计力矩进行控制[22].但该方法将导致在实际的控制过程中,电机除了需提供机械臂按轨迹运动的力矩外,还需额外提供抑制柔性振动的力矩,极大的增加了电机的负担.考虑到现阶段空间机器人电机功率与能耗的问题,配置SEA的可行性不高.因此,本文针对空间机器人,尝试设计一种弹簧阻尼装置(spring damper device,SDD).相较于SEA,SDD不仅能够实现对冲击载荷的快速缓冲、卸载,而且无需设计抑振力矩就能使柔性振动快速衰减,实现对柔性振动的抑制.
针对捕获的第4阶段,Liu等[23]采用阻抗控制对双臂空间机器人捕获卫星后的混合体系统进行了镇定控制;Huang等[24]针对空间机器人捕获卫星后质量特性与反作用轮结构发生变化的问题,提出了一种改进的状态依赖Riccati方程最优控制器;Luo等[25]考虑了混合体系统的不可测状态、未知惯性特性和外部干扰,提出了一种基于有限时间收敛的鲁棒无惯性预定性能控制方案.然而,上述控制方案均未考虑冲击效应,冲击效应较大时空间机器人将处于严重失稳的状态,此时常规的控制策略将难以对其进行镇定控制.强化学习控制器能够利用执行—惩罚的学习机制,通过试错与环境交互不断地进行自我优化,具有极强的环境适应力[26—28].因此,针对混合体系统的缓冲柔顺控制问题,提出了一种基于模糊小波神经网络的强化学习控制策略.其控制器由性能评测单元、关联搜索单元(associative search element,ASE)、自适应惩罚单元(adaptive critic element,ACE)组成.控制器通过性能评测单元获得原始强化信号,然后利用ACE将原始强化信号升级成二次强化信号,以增强控制器的环境适应能力,最后利用二次强化信号调节ASE控制策略函数实现混合体系统的镇定控制.
本文设计了一种SDD避免双臂空间机器人捕获卫星操作过程中关节受冲击破坏.利用含耗散力Lagrange方程法与Newton—Euler法导出了分体系统动力学模型;结合Newton第三定律、动量守恒定理、捕获点速度约束、闭链几何约束,导出了闭链混合体系统动力学模型;提出了一种缓冲柔顺模糊小波神经网络强化学习策略实现对失稳混合体系统的镇定控制;通过对捕获操作过程的仿真分析,验证了所提策略的有效性.
SDD结构如图1所示.
图1 SDD结构Fig.1 Structural of the SDD
图1主要由旋转阻尼器与扭转弹簧组成.扭转弹簧主要起传动与吸收冲击能量作用,旋转阻尼器则实时提供阻尼力抑制柔性振动.扭转弹簧与旋转阻尼器两端分别与电机端、机械臂端固连,为了让阻尼器实时同步提供阻尼力抑制柔性振动,将其嵌套在弹簧内部实现同步运动.将电机端、机械臂端的阻尼力等效为由阻尼器提供,以便更加真实的描述空间机器人系统.图中ksi,Dti(i=1,2)分别为扭转弹簧的刚度、旋转阻尼器的阻尼系数;Dmi,DLi(i=1,2)分别为电机、机械臂端等效阻尼器的阻尼系数.
在捕获的第3阶段,空间机器人机械臂末端与被捕获卫星发生碰撞,此时机械臂端将受到很大的冲击力矩.在传导至电机转子的过程中,该力矩会被弹簧和阻尼器快速卸载,从而实现对关节的保护.在捕获的第4阶段,由于冲击效应的存在,电机开启时会产生瞬时冲击力矩,若该力矩超过关节所能承受的极限而未关停电机,关节很可能会发生损坏.因此,需要根据关节所能承受的极限力矩值来设置一个关机力矩阈值,当检测到冲击力矩超过所设阈值后电机关停,此时SDD中的弹簧将会提供弹力来减小关节所受冲击力矩,阻尼器将会快速耗能抑制柔性振动.然而,在实际操作中,如果只设定一个关机力矩阈值,将导致电机频繁的开关机,很容易造成电机的损坏.由此,本文所提的避撞策略同时设置了开、关机阈值.当检测到关节所受冲击力矩超过关机力矩阈值时电机关停;当SDD将冲击力矩降低到开机阈值时电机再次开启.
配置SDD的双臂空间机器人系统与被捕获卫星系统如图2所示.其中:O0,Oi(i=1,2,···,6),Os分别为载体质心、各关节铰中心、卫星质心;bL,bR分别为左、右机械臂末端;分别为卫星左、右把手末端;XOY为系统随轨道平动的惯性参考坐标系;x0O0y0,xsOsys分别为固定在载体质心、被捕获卫星质心上的坐标系;xiOiyi(i=1,2,···,6)是固定在关节铰中心的连杆坐标系.文中所用符号定义如下:m0,I0,L0分别为载体质量、转动惯量和质心O0到O1或O4的距离;ms,Is,Ls分别为卫星的质量、转动惯量和质心Os到两端末端把手的距离;mi,Ii,Li(i=1,2,···,6)分别为第i个机械臂的质量、转动惯量、长度;Imi(i=1,2,···,6)为第i个电机转子的转动惯量;di(i=1,2,···,6)为第i个关节铰中心到机械臂i质心的距离;θ0,θi,θs,θmi(i=1,2,···,6)别为载体姿态角、机械臂转角、卫星姿态角和电机转子转角;ψ1,ψ2分别为载体质心O0与O1,O4连线相对x0轴的夹角.
图2所示双臂空间机器人系统动能为
图2 配置SDD的双臂空间机器人系统及被捕获卫星系统Fig.2 Dual-arm space robot with SDD and satellite systems
式中:ri(i=1,2,···,6)为各机械臂质心位置矢径,ωi(i=1,2,···,6),ωmj(j=1,2,···,6)分别为机械臂、电机转子角速度.
若忽略太空的微重力影响,双臂空间机器人系统的势能来源于SDD中的弹簧,故其势能表达式为
由于SDD的引入,双臂空间机器人系统存在非有势力,因此需补充耗散函数:
含耗散力的Lagrange方程为
结合式(1)—(4)可得捕获操作前双臂空间机器人系统动力学模型为
式中:Mr∈R9×9为双臂空间机器人对称、正定的惯量矩阵,为包含科氏力、离心力矩阵,DL∈R9×9为增广的机械臂等效阻尼系数矩阵,Dmg∈R6×6为电机等效阻尼系数矩阵,Dtg∈R6×6为缓冲机构中阻尼器的阻尼系数矩阵;
表示载体位置不受控,τ0为载体控制力矩,τg=[τ1τ2··· τ6]T为关节输入力矩列向量,τs为弹簧阻尼运动过程中产生的力矩,τm=[τm1τm2··· τm6]T为电机输出力矩列向量;Im∈R6×6为电机转子转动惯量矩阵;Ks∈R6×6为缓冲机构中弹簧的刚度矩阵;Jr∈R6×9为末端抓手捕获点的运动雅克比矩阵;Fp∈R6×1为捕获点所受作用力.
采用Newton-Euler法可获得捕获前卫星系统的动力学模型为
式中:Ms∈R3×3为卫星系统对称、正定的惯量矩阵;qs=[xsysθs]T为广义坐标,xs,ys为卫星质心坐标,Js∈R3×6为卫星把手被捕获点的运动雅克比矩阵;∈R6×1为被捕获点所受作用力.
捕获操作过程中,双臂空间机器人与被捕获卫星发生碰撞,由于相互作用力的存在,各自的运动状态会发生变化.卫星把手上的力可分解为
捕获操作完成后,双臂空间机器人与被捕获卫星锁紧固连形成闭链混合体系统.在该系统内,机械臂末端与卫星把手满足位置、速度约束
式中:rpL,rp′L分别为机械臂左末端矢径与卫星左把手矢径.
由式(9)可得左、右臂广义坐标与广义速度存在如下关系:
由六边形内角和定理可计算出k=-1.
式(9)第2式可写为
式中:JOL1,JOR1∈R2×3分别为基座连体坐标系下两个运动相关点对应的运动Jacobian矩阵.可把式(10)—(11)合并为
式中:
捕获操作完成后,捕获点的速度满足
对式(16)求导可得
将式(13)—(14)(16)—(17)代入式(8)可得
式中:
对式(19)进行如下分块:
式中:τc=[τ0τTb]T,τb=[τ1τ2τ3]T为左臂关节输出力矩列向量.由式(20)可解出回代入式(20)可得完全能控形式的闭链混合体系统动力学模型为
式中:
双臂空间机器人捕获卫星操作的过程中未受到外力,因此整个系统满足动量守恒.假设碰撞时间为Δt,对式(5)第1式、式(6)在碰撞时间内积分得
式中t0为碰撞时刻.由于碰撞时间Δt很短,在这一时段可以认为系统的广义坐标未发生突变,仅有广义速度和广义加速度发生突变;为了保护关节电机,在捕获碰撞阶段电机处于关机状态,故式(23)可近似写为
结合式(13)(16)(24)可解得冲击效应
将式(25)代入式(24)可解得碰撞冲量
由于碰撞时间很短,碰撞力Fp可近似为
由于本文考虑的控制对象为失稳严重的闭链混合体系统,若直接利用原始强化信号设计控制力矩,很容易导致镇定控制失败.因此,利用性能评测单元、关联搜索单元(associative search element,ASE)、自适应惩罚单元(adaptive critic element,ACE)组成控制器.其中控制器通过性能评测单元获得原始强化信号,然后利用自适应惩罚网络收集原始强化信号来生成二次强化信号,最后利用该信号调节关联搜索网络控制策略函数实现混合体系统稳定控制.
具有N个规则的n输入m输出模糊小波神经网络系统,可以表达为如下形式:
其中:xi为输入变量,fi为输出变量.
利用单变量模糊发生器、乘积推理和加权平均解模糊器,可将模糊小波神经网络系统的输出写为
第j条模糊规则可定义为
式中:
基于式(30)可得多维模糊小波神经网络为
式中:
式(31)的矢量形式为
假设1Mc与Hc有界:
定义轨迹跟踪误差与误差评测信号为
式中Λ=diag{Λ1,Λ2,Λ3,Λ4}为对角矩阵.
由式(33)—(34)可设计如下原始强化信号为
对式(35)求导可得
结合式(21)(36)可得
式中:
为系统的不确定项.为了尽量消除系统不确定项对控制精度的影响,因此采用ASE对小波神经网络控制器进行估计.假设小波神经网络对不确定项的估计值为
将式(39)代入式(37)可得
假设离散时间ACE输出为P(t)=VCψ,根据文献[29—30]设计二次强化信号为rs(t)=r(t)+rC(t),其中r(t)为原始强化信号,
离散时间VC的更新值为
为了从离散时间转换到连续时间,进行如下处理:
将VCk(t)的更新率代入式(41)可得
为了实现本文的控制目标,即当原始强化信号为零时二次强化信号也要为零,因此γp=1.故式(42)重写为
由于从离散时间转换到连续时间后,理想回归向量ψ*(t)及其记忆值未可知,因此理想的二次强化信号可被写为如下形式:
图3 系统控制框图Fig.3 The system control block diagram
结合式(46),ACE的输出可表示为
式中:
由此可得
将式(48)代入式(40)可得
设计如下形式的ASE与ACE的更新率:
定理1若假设1—3均成立,采用式(34)所示的误差测评信号,式(39)所示的控制信号,式(35)(43)所示的强化信号,式(50)—(53)所示的模糊小波神经网络更新率,则可保证闭环系统中的信号有界.
证取如下形式的Lyapunov函数:
对式(58)求导得
将式(49)—(51)代入式(59),结合特性1可得
式中KDLr=Kr+DLc.将式(52)—(53)代入式(60)得
基于假设2—3与式(54)—(57)可知
因此,式(61)可化简为
式中:
式(62)可配凑为
对式(63)两边积分可得
由于V是正定函数,结合文献[31—32],式(64)可写为
通过假设1—2可知υ有界,故进一步当系统初始状态均为零时可得
根据式(63)中Q的定义,只需kd=2γ2即可根据H∞控制理论说明系统稳定,且可知随着γ的减小,‖r‖也会不断减小.
由于式(39)设计的是τc,并非整个双臂空间机器人系统的控制输入,因此需结合速度约束、位置约束,采用加权最小范数法,解约束得出右臂的3个关节输出力矩,最终得出如下形式的控制输入:
式中:Ξ ∈R6×6为对称正定的权值矩阵,
证毕.
采用图2的双臂空间机器人系统及卫星系统进行数值仿真.双臂空间机器人系统参数为
卫星参数如下:
空间机器人初始位置为
为了验证SDD在双臂空间机器人捕获卫星操撞击过程中的抗冲击性能,在多组卫星速度下,对关节所受冲击力矩进行力学模拟,结果如表1所示.
表1 不同卫星速度下SDD抗冲击性能对比Table 1 Comparison of impact resistance of SDD at different satellite velocities
从表1可以看出,在碰撞过程中,对于给定的不同卫星速度,SDD均能显著的降低关节所受冲击力矩,且最大可以降低53.10%,因此可以认为其能在碰撞过程对关节起到较好的保护作用.
为了保护空间机器人,在捕获第3阶段电机未开启,混合体系统处于自由漂浮状态,假设在碰撞1 s 后电机开启,此时混合体系统位置为
系统的控制参数如下:
假设在电机负载情况下,关节能承受的冲击力矩为140 Nm.第1组仿真将关机力矩阈值设置为FC1=120 Nm,开机力矩阈值设置为FO1=50 Nm.考虑到随着双臂空间机器人使用年数的增加,关节所能承受冲击力矩将会下降,因此第2组仿真将关机力矩阈值设置为FC2=100 Nm,开机力矩阈值设置为FO2=50 Nm.
通过图4—8与图9—13的对比可以看出,对于不同的开机力矩阈值,所设计的缓冲柔顺策略均能在保证闭链混合体系统镇定控制的前提下,将瞬时冲击力矩限定在期望范围内.但随着关机力矩阈值的减小,电机的开关机次数增加,系统超调量也会增加.因此,接下来将对开、关机力矩阈值设置所涉及的系统稳定性与关节保护效果进行探究.
图4 强化信号(FC1=120 Nm,FO1=50 Nm)Fig.4 Reinforcement signal(FC1=120 Nm,FO1=50 Nm)
1)保持开机力矩阈值不变,将关机力矩阈值设置的接近关节能承受的冲击力矩,即第3组仿真将关机力矩阈值设置为FC3=135 Nm,开机力矩阈值设置为FO3=50 Nm,其仿真结果如图14所示.从图14可知,由于SDD的缓冲需要一定的时间,关节3的最大冲击力矩会超过140 Nm,未达到保护关节的目的.
图5 电机切换信号(FC1=120 Nm,FO1=50 Nm)Fig.5 Switch signal of motor(FC1=120 Nm,FO1=50 Nm)
图6 关节冲击力矩(FC1=120 Nm,FO1=50 Nm)Fig.6 Joint impact force(FC1=120 Nm,FO1=50 Nm)
图7 载体姿态角轨迹(FC1=120 Nm,FO1=50 Nm)Fig.7 Trajectory of attitude(FC1=120 Nm,FO1=50 Nm)
图8 关节角轨迹(FC1=120 Nm,FO1=50 Nm)Fig.8 Trajectory of joint(FC1=120 Nm,FO1=50 Nm)
图9 强化信号(FC2=100 Nm,FO2=50 Nm)Fig.9 Reinforcement signal(FC2=100 Nm,FO2=50 Nm)
图10 电机切换信号(FC2=100 Nm,FO2=50 Nm)Fig.10 Switch signal of motor(FC2=100 Nm,FO2=50 Nm)
图11 关节冲击力矩(FC2=100 Nm,FO2=50 Nm)Fig.11 Joint impact force(FC2=100 Nm,FO2=50 Nm)
图12 载体姿态角轨迹(FC2=100 Nm,FO2=50 Nm)Fig.12 Trajectory of attitude(FC2=100 Nm,FO2=50 Nm)
图13 关节角轨迹(FC2=100 Nm,FO2=50 Nm)Fig.13 Trajectory of joint(FC2=100 Nm,FO2=50 Nm)
1)保持开机力矩阈值不变,将关机力矩阈值设置的接近关节能承受的冲击力矩,即第3组仿真将关机力矩阈值设置为FC3=135 Nm,开机力矩阈值设置为FO3=50 Nm,其仿真结果如图14所示.从图14可知,由于SDD的缓冲需要一定的时间,关节3的最大冲击力矩会超过140 Nm,未达到保护关节的目的.
图14 关节冲击力矩(FC3=135 Nm,FO3=50 Nm)Fig.14 Joint impact force(FC3=135 Nm,FO3=50 Nm)
2)保持开机力矩阈值不变,将关机力矩阈值设置的远离关节能承受的冲击力矩,即第4组仿真将关机力矩阈值设置为FC4=75 Nm,开机力矩阈值设置为FO4=50 Nm,其仿真结果如图15—16所示.且可知,在3.22 s时超调量过大,导致镇定控制失败.
图15 载体姿态角轨迹(FC4=75 Nm,FO4=50 Nm)Fig.15 Trajectory of attitude(FC4=75 Nm,FO4=50 Nm)
图16 关节角轨迹(FC4=75 Nm,FO4=50 Nm)Fig.16 Trajectory of joint(FC4=75 Nm,FO4=50 Nm)
3)保持关机力矩阈值不变,将开机力矩阈值设置的接近关机力矩阈值,即第5组仿真将关机力矩阈值设置为FC5=120 Nm,开机力矩阈值设置为FO5=80 Nm,其仿真结果如图17所示.从图17可知,电机的开、关机次数为9次,是将开机力矩阈值设置为50 Nm的3倍.
图17 电机切换信号(FC5=120 Nm,FO5=80 Nm)Fig.17 Switch signal of motor(FC5=120 Nm,FO5=80 Nm)
4)保持关机力矩阈值不变,将开机力矩阈值设置的远离关机力矩阈值,即第6组仿真将关机力矩阈值设置为FC6=120 Nm,开机力矩阈值设置为FO6=10 Nm,其仿真结果如图18—19所示.从图18—19可知,在5.17 s时超调量过大,镇定控制失败.
图18 载体姿态角轨迹(FC6=120 Nm,FO6=10 Nm)Fig.18 Trajectory of attitude(FC6=120 Nm,FO6=10 Nm)
通过第3组至第6组仿真可知,对于开、关机阈值的设置,若关机阈值设置的太大,则起不到保护关节的效果;若设置的太小,则系统容易失稳.若开机力矩阈值设置的太大,则电机的开关机次数会显著增加,降低其使用寿命;若设置的太小,则系统容易失稳.
图19 关节角轨迹(FC6=120 Nm,FO6=10 Nm)Fig.19 Trajectory of joint(FC6=120 Nm,FO6=10 Nm)
本文为了在双臂空间机器人捕获卫星操作过程中保护其关节不受冲击破坏,在关节电机与机械臂之间设计了一种SDD,并给出了一种配合该装置的缓冲、柔顺策略;计算了捕获过程的碰撞冲击效应、冲击力,导出了失稳的闭链混合体系统动力学方程,并针对该系统的镇定控制,提出一种基于模糊小波神经网络的强化学习控制策略.通过分析可以得出以下结论:
1)捕获操作的碰撞过程中,电机关节处会产生很大的冲击力矩,在电机与机械臂之间添加SDD可以实现冲击载荷的快速卸载.
2)捕获操作的镇定控制过程中,配合SDD所设计的缓冲、柔顺策略可以将关节所受冲击力矩限制在安全范围内.但如何设计开机力矩阈值,需兼顾考虑电机关节的保护效果与系统的稳定性.