发明内容
本发明的目的是提供一种有向通信多航天器分布式容错姿态协同控制方法,该方法针对由一个领航航天器和多个跟随航天器构成的多航天器系统,设计姿态协同算法,使得每个跟随航天器的姿态能够跟踪领航航天器的姿态。
本发明的目的是通过以下技术方案实现的:
一种有向通信多航天器分布式容错姿态协同控制方法,包括如下步骤:
步骤1、利用四元数建立航天器姿态运动学和动力学,基于有向图描述多航天器系统的通信网络,具体步骤如下:
步骤1.1、基于图的多航天器系统通信网络描述
所述多航天器系统由一个领航航天器和N个跟随航天器构成,将N个跟随航天器编号:{1,2,…,N},并将每个航天器其视为图中的一个节点,则用一个有向图表示N个跟随者航天器之间的通信关系;在有向图/>中,ν={1,2,…,N}为节点集合,/>是边集合;(j,i)∈ε表示有一条边由节点j指向i,即节点i接收节点j的信息;有向图/>的邻接矩阵定义为A=[aij],其中,如果(j,i)∈ε,则aij=aji>0;反之则aij=aji=0;有向图/>的Laplacian矩阵定义为L=D-A,其中D=diag(d1,d2,…,dN),/>
将领航航天器视为节点0,用有向图描述N+1个编队航天器系统的通信网络,其中/>为/>的节点集合,/>是图/>的边集合;当节点i与节点0有连接时,ai0>0;反之则ai0=0;在有向图/>中,定义第i个节点的邻居集合为:有向图/>的Laplacian矩阵/>与有向图/>的Laplacian矩阵L的关系为:
上式中:
b=[a10,a20,…,aN0]T,B=diag(b)
步骤1.2、基于四元数的航天器姿态动力学和运动学建立
根据理论力学中的欧拉旋转定理:刚体绕固定点的任意位移,可以由绕通过该点的某个固定轴旋转一定角度得到;将此固定轴的单位矢量记作e,将转动的角度记作γ,则刚体的旋转运动用单位四元数表示为:
基于单位四元数,建立N个跟随航天器的姿态运动学方程和动力学方程为:
上式中,qi表示第i个跟随航天器的本体坐标系相对于惯性坐标系的姿态;ωi表示第i个跟随航天器的本体坐标系相对于惯性坐标系的角速度;Ji是第i个跟随航天器的转动惯量;ui表示第i个跟随航天器的控制输入;Fi表示执行器的故障程度,di是外界扰动;是姿态四元数qi的导数;/>是角速度ωi的导数,即为第i个跟随航天器的角加速度;v(ωi)是一个纯四元数;⊙为四元数乘法符号;
领航航天器的姿态运动学方程为:
上式中,q0表示领导者航天器的本体坐标系相对于惯性坐标系的姿态;ω0表示领航者航天器的本体坐标系相对于惯性坐标系的角速度;是姿态四元数q0的导数;v(ω0)是一个纯四元数;
多航天器系统满足以下两点假设:
假设1:多航天器系统中跟随航天器的转动惯量矩阵满足其2-范数||Ji||2和其导数的2-范数/>都是有界的;此外多航天器受到的外界扰动是有界的,即其2-范数||di||2满足||di||2≤dimax,/>其中dimax是未知常数;
假设2:描述多航天器系统通信网络的有向图具有一棵有向生成树,且代表领航航天器的节点0是根;
多航天器姿态协同控制目标描述为:
在假设1和2成立的情况下,设计分布式姿态协同控制协议使得每个跟随航天器的姿态和角速度跟踪领航航天器的姿态和角速度,即使得:
上式中,qi,v是第i个航天器姿态四元数qi的矢量,q0,v是领航航天器姿态四元数q0的矢量;
步骤2、设计分布式高阶滑模观测器,对领航航天器的姿态四元数、角速度以及角加速度进行估计,具体步骤如下:
步骤21、针对第i个跟随者航天器,将领航者航天器姿态四元数q0、角速度ω0和角加速度的估计分别记作ηi,ξi,ζi,并且令/>
步骤22、定义第i个跟随者航天器的局部姿态四元估计误差eηi、局部角速度估计误差eξi、局部角加速度估计误差eζi分别为:
则分布式高阶滑模观测器为:
上式中,δω0是正的常数,矩阵H=L+B,矩阵P=diag((HT)-11N)为正定的对角矩阵,矩阵Q=PH+HTP;在分布式高阶滑模观测器作用下,分布式高阶滑模观测器的输出值将指数收敛至领航航天器的姿态四元数、角速度以及角加速度即有:
步骤3、利用分布式高阶滑模观测器输出的估计值,建立姿态跟踪误差模型,具体步骤如下:
步骤31、定义第i个跟随航天器的姿态四元数qi和角速度ωi与估计信号ηi和ξi之间的误差定义为:
上式中,是ηi的共轭,/>是姿态跟踪误差,/>是角速度跟踪误差,/>是旋转矩阵;
步骤32、对姿态跟踪误差和角速度跟踪误差/>求导,推导姿态跟踪误差方程为:
上式中,和/>分别为/>和/>的导数,αi和βi是观测器的估计误差导致的非线性项,其表达式为:
上式中是局部姿态四元估计误差eηi的共轭,αi,0和αi,v分别为非线性项αi的标量和矢量;
步骤4、基于建立的姿态跟踪误差模型,设计自适应容错姿态跟踪控制律,具体步骤如下:
步骤41、为了设计自适应容错姿态跟踪控制律ui使得姿态跟踪误差和角速度跟踪误差/>收敛至0,引入如下辅助变量si:
上式中,κi是大于0的可调参数;
步骤42、借助于引入的辅助变量si,设计中间控制律νi:
上式中,k1i和k2i是大于0的可调参数;和/>分别是对θ1i,θ2i和θ3i的估计,θ1i,θ2i,θ3i代表系统未知参数和外界扰动等因素对航天器姿态控制系统的影响;
更新的自适应律设计为:
上式中,分别是/>的导数;l1i、l2i和l3i是大于0的可调参数;
步骤43、利用引入的辅助变量si和中间控制律νi,设计的自适应容错姿态跟踪控制律为:
上式中,ε(t)=ae-bt,a和b均为大于0的可调参数;是对/>的估计;νi是中间控制律;
更新的自适应律设计为:
上式中,是/>的导数/>是大于0的可调参数。
相比于现有技术,本发明具有如下优点:
1、本发明针对多航天器姿态协同控制,提出了一种基于分布式观测器-姿态跟踪控制律的分布式协同控制算法框架,将复杂的多航天器姿态协同控制问题转化为独立的单航天器的姿态跟踪控制,如此,现有的姿态跟踪算法可以较好地移植到姿态协同控制算法中,大大减少了算法设计的难度。
2、本发明设计的分布式观测器可以保证在有向通信网络下的指数收敛性质。需要指出的是,无向通信网络是有向通信网络的一种特例,因此本发明设计的分布式观测器也可以适用于无向通信网络的情况;因此本发明设计的分布式观测器具有更加广泛的应用场景。此外,本发明的分布式观测器避免了过分使用符号函数,提高了估计精度,并降低了对测量噪声的灵敏度。
3、本发明设计的自适应容错姿态跟踪控制律不需要模型的精确参数,对执行机构故障、外界扰动具有较强的鲁棒性,并且保证跟踪误差渐近收敛至0。因此本发明设计的自适应容错姿态跟踪控制律同时兼顾了算法的较强的鲁棒性和较高的控制精度。
具体实施方式
下面结合附图对本发明的技术方案作进一步的说明,但并不局限于此,凡是对本发明技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的保护范围中。
本发明提供了一种有向通信多航天器分布式容错姿态协同控制方法,所述方法考虑由一个领航航天器和多个跟随航天器构成的多航天器系统,该多航天器系统的通信链路是有向的,且仅有部分跟随航天器可以获得领航航天器信息。此外,跟随航天器的执行单元存在部分失效故障的情况。本发明针对上述多航天器系统,设计姿态协同算法,使得每个跟随航天器的姿态能够跟踪领航航天器的姿态。本发明采用分布式观测器-姿态跟踪控制律的算法设计框架,在该算法设计框架下,本发明需要解决的技术问题可以拆分为以下四点:
(1)航天器姿态运动学和动力学的建立以及多航天器系统通信网络基于图的数学描述;
(2)考虑仅部分跟随航天器可以获得领航航天器信息的情况,为跟随航天器设计分布式观测器,对领航航天器的姿态、角速度和角加速度进行估计,并实现估计误差指数收敛到0;
(3)利用分布式观测器获得的领航航天器的姿态、角速度和角加速度的估计值,建立姿态跟踪误差模型;
(4)针对建立的姿态跟踪误差模型,考虑执行单元故障的情况,设计姿态容错跟踪控制律。使的每个跟随航天器姿态能够跟踪分布式观测器输出的领航航天器姿态和角速度的估计值,并实现跟踪误差渐近收敛至0。
根据第(2)点可知观测器输出的估计值将以指数收敛至领航航天器的姿态、角速度和角加速度;根据第(4)点可知跟随航天的姿态将渐近收敛至观测器输出的姿态估计值和角速度估计值;因此可以得出每个跟随航天器的姿态和角速度将渐近跟踪领航航天器的姿态和角速度。
本发明中,各符号的定义如下:
1、对于任意向量x=[x1 x2xn]T,diag(x)和diag(x1,x2,…,xn)均表示以x1,x2,…,xn为对角元素的对角矩阵;||x||2表示向量x的2-范数。
2、In是n×n的单位矩阵;是元素全为1的n维向量;[xi,j]m×n是一个m×n的矩阵,其中,/>是该矩阵第i行第j列的元素。
3、对任意定义:
4、对于任意的整数a≤b,表示集合{a,a+1…b}。
5、对任意的矩阵σmax(A)是矩阵A的最大奇异值,λmin(A)和λmax(A)分别是矩阵A的最小和最大特征值。
6、一个四元数q定义为:
q=q0+q1i+q2j+q3k
其中,i,j,k为复数单位,且满足运算:
i2=j2=k2=-1,i=jk,j=ki,k=ij
四元数可以采用向量的形式表示为:其中q0为四元数q的标量,qv=[q1 q2 q3]T为四元数q的矢量。全体四元数集合记作/>
7、若一个四元数的标量等于0,则称该四元数为纯四元数。对任意的向量定义映射/>可以将任意一个三维向量映射为一个纯四元数。
8、对任意四元数定义四元数乘法:
其中,符号“⊙”为四元数乘法符号。
9、若四元数q的欧几里德范数等于1,即此时,称q为单位四元数。将全体单位四元数集合记作/>
如图1所示,所述方法包括如下步骤:
步骤1、利用四元数建立航天器姿态运动学和动力学,基于有向图描述多航天器系统的通信网络。
步骤1.1、基于图的多航天器通信网络描述
本发明考虑由一个领航航天器和N个跟随航天器构成的多航天器系统,该系统的通信网络可以利用图论进行描述。将N个跟随航天器编号:{1,2,…,N},并将每个航天器其视为图中的一个节点,则可以用一个有向图表示N个跟随者航天器之间的通信关系。在有向图/>中,ν={1,2,…,N}为节点集合,/>是边集合。(j,i)∈ε表示有一条边由节点j指向i,即节点i接收节点j的信息。有向图/>的邻接矩阵定义为/>其中,如果(j,i)∈ε,则aij=aji>0;反之则aij=aji=0。有向图/>的Laplacian矩阵定义为L=D-A,其中D=diag(d1,d2,…,dN),/>
此外,将领航航天器视为节点0,那么,可以用有向图描述N+1个编队航天器系统的通信网络。其中/>为/>的节点集合,/>是图/>的边集合。当节点i与节点0有连接时,ai0>0;反之则ai0=0。在有向图/>中,定义第i个节点的邻居集合为:/>有向图/>的Laplacian矩阵/>与有向图/>的Laplacian矩阵L的关系为:
上式中:
b=[a10,a20,…,aN0]T,B=diag(b)
步骤1.2、基于四元数的航天器姿态动力学和运动学建立
根据理论力学中的欧拉旋转定理可知:刚体绕固定点的任意位移,可以由绕通过该点的某个固定轴旋转一定角度得到。将此固定轴的单位矢量记作e,将转动的角度记作γ,则刚体的旋转运动可以用单位四元数表示:
基于单位四元数,建立N个跟随航天器的姿态运动学方程和动力学方程为:
上式中,为单位四元数,表示第i个跟随航天器的本体坐标系相对于惯性坐标系的姿态;/>表示单位四元数集合。/>表示第i个跟随航天器的本体坐标系相对于惯性坐标系的角速度,并且表示在本体坐标系下;/>
是第i个跟随航天器的转动惯量;表示第i个跟随航天器的控制输入。其中Fi=diag{f1,f2,f3}表示执行器的故障程度,di是外界扰动;/>是姿态四元数qi的导数;/>是角速度ωi的导数,即为第i个跟随航天器的角加速度;v(ωi)=[0 ωi T]T是一个纯四元数,⊙为四元数乘法符号。
领航航天器的姿态运动学方程为:
上式中,为单位四元数,表示领导者航天器的本体坐标系相对于惯性坐标系的姿态;/>表示领航者航天器的本体坐标系相对于惯性坐标系的角速度,并且表示在本体坐标系下;v(ω0)=[0 ω0 T]T是一个纯四元数。
多航天器系统满足以下两点假设:
假设1:多航天器系统中跟随航天器的转动惯量矩阵满足其2-范数||Ji||2和其导数的2-范数/>都是有界的;此外多航天器受到的外界扰动是有界的,即其2-范数||di||2满足||di||2≤dimax,/>其中dimax是未知常数。
假设2:描述多航天器系统通信网络的有向图具有一棵有向生成树,且代表领航航天器的节点0是根。
多航天器姿态协同控制目标描述为:
控制目标:在假设1和假设2成立的情况下,设计分布式姿态协同控制协议使得每个跟随航天器的姿态和角速度跟踪领航航天器的姿态和角速度,即使得:
上式中,qi,v是第i个航天器姿态四元数qi的矢量,q0,v是领航航天器姿态四元数q0的矢量。
步骤2、设计分布式高阶滑模观测器,对领航航天器的姿态四元数、角速度以及角加速度进行估计。
由于通信网络的限制,不是每个跟随者航天器都有可以获得领航者航天器的状态信息。因此,需用利用每个跟随者的邻居信息,建立分布式观测器,实现对领航航天器的姿态四元数、角速度以及角加速度的估计。
针对第i个跟随者航天器,将领航者航天器的姿态四元数q0的估计值记作ηi,角速度ω0的估计值记作ξi,角加速度的估计值记作ζi,并且令/>将第i个跟随者航天器的局部姿态四元估计误差记作eηi,局部角速度估计误差记作eξi,局部角加速度估计误差记作eζi,它们分别定义为:
则本发明设计的分布式高阶滑模观测器为:
上式中,μ1,μ2,μ3和μ4满足:
上式中,δω0是正的常数,其取值大于领航航天器角速度二阶导数的无穷范数;矩阵H=L+B;矩阵P=diag((HT)-11N)为正定的对角矩阵,矩阵Q=PH+HTP。
根据设计的分布式高阶滑模观测器,可以看出在N+1个航天器之间传输的信号是和{ηi,ξi,ζi},/>此外,对于第i个跟随者航天器,所设计的分布式高阶滑模观测器仅利用了其自身的信息{ηi,ξi,ζi}和其邻居的信息/>所以本发明设计的分布式高阶滑模观测器是分布式的。在设计的分布式高阶滑模观测器作用下,观测器的输出值/>将指数收敛至领航航天器的姿态四元数、角速度以及角加速度/>即有:
步骤3、利用分布式高阶滑模观测器输出的估计值,建立姿态跟踪误差模型。
由于领航者的状态信息q0和ω0对于部分跟随航天器是未知的,这部分航天器无法利用信号q0和ω0设计控制律跟踪领航者姿态轨迹。分布式观测器能够为每个跟随航天器提供q0和ω0的估计值ηi和ξi。因此可以利用q0和ω0的估计值ηi和ξi进行姿态跟踪控制律设计。
定义第i个跟随航天器的姿态四元数qi和角速度ωi与估计信号ηi和ξi之间的误差定义为:
上式中,是ηi的共轭转置,/>是姿态跟踪误差,/>是角速度跟踪误差,/>是旋转矩阵,其表达式为:
上式中,是姿态跟踪误差/>的标量,/>是姿态跟踪误差/>的矢量。
对姿态跟踪误差和角速度跟踪误差/>求导,可以推导姿态跟踪误差方程为:
上式中,和/>分别为/>和/>的导数;/>和βi是观测器的估计误差导致的非线性项,其表达式为:
上式中,是局部姿态四元估计误差eηi的共轭,αi,0和αi,v分别为非线性项αi的标量和矢量。
接下来需要针对建立的姿态跟踪误差方程,设计自适应容错姿态跟踪控制律ui使得姿态跟踪误差和角速度跟踪误差/>收敛至0。
步骤4、基于建立的姿态跟踪误差模型,设计自适应容错姿态跟踪控制律。
为了设计自适应容错姿态跟踪控制律ui使得姿态跟踪误差和角速度跟踪误差收敛至0,首先引入如下辅助变量si:
上式中,κi是大于0的可调参数。
借助于引入的辅助变量si,设计中间控制律νi:
上式中,k1i和k2i是大于0的可调参数;和/>分别是对θ1i,θ2i和θ3i的估计,θ1i,θ2i,θ3i代表系统未知参数和外界扰动等因素对航天器姿态控制系统的影响。
更新的自适应律设计为:/>
上式中,分别是/>的导数;l1i、l2i和l3i是大于0的可调参数。
利用引入的辅助变量si和中间控制律νi,本发明设计的自适应容错姿态跟踪控制律为:
上式中,ε(t)=ae-bt,a和b均为大于0的可调参数;是对/>的估计;νi是中间控制律。
更新的自适应律设计为:
上式中,是/>的导数/>是大于0的可调参数。
在该设计的自适应容错跟踪控制律作用下,跟随航天器的姿态能够渐近跟踪领航航天器的估计值,即有:
并且对执行机构故障、模型参数未知和外界扰动具有较强的鲁棒性。结合所提出的分布式观测器与自适应容错姿态跟踪控制律即可得到基于分布式观测器的自适应容错姿态协同控制算法。在该算法作用下,多航天器系统姿态能够全局渐近达到一致协同,即有:
实施例:
考虑一个由1个领航航天器和4个跟随航天器构成的多航天器系统,该系统的通信网络由图2所示。领航航天器的姿态运动学为:
姿态四元数的初始值设置为:
q0(0)=[0.2,-0.9381,0.2,0.2]T
角速度为:
ω0=[0.02sin(0.1t),0.01sin(0.1t),0.05cos(0.1t)]Trad/s
4个跟随航天器的运动学和动力学模型为:
跟随航天器的转动惯量矩阵为:
外界扰动设置为:
d1(t)=0.01[1,1,1]TN·m
d2(t)=0.03[1,1,1]TN·m
d3(t)=0.01[sin(0.1t),sin(0.1t),sin(0.1t)]TN·m
d4(t)=0.03[sin(0.1t),sin(0.1t),sin(0.1t)]TN·m
跟随航天器的姿态四元数初始值和角速度初始值为:
q1(0)=[0.5,-0.8602,0.1,-0.3]T
q2(0)=[0.4,-0.7211,-0.4,-0.4]T
q3(0)=[0.5,-0.7874,-0.3,0.2]T
q4(0)=[0.4,-0.5,-0.6,0.4796]T
针对4个跟随航天器,分别利用他们的邻居信息,设计分布式观测器为:
观测器的初始值选取为:
ηi(0)=[0.1,-0.9274,0.2,0.3]T
ξi(0)=[0.01,0.01,0.01]T
定义姿态跟踪误差和角速度跟踪误差:
辅助变量si设计为:
自适应容错姿态跟踪控制律为:
更新的自适应律设计为:
/>
中间控制律νi设计为:
更新的自适应律设计为:
仿真结果如图3和图4所示,根据图3和图4可知:在基于分布式观测器的自适应容错姿态协同协议作用下4个跟随航天器能够很好的跟踪领航航天器的姿态与角速度轨迹。