1.一种基于鲁棒自适应的带有飞轮的航天器容错控制方法,其特征在于:该方法具体步骤如下:
涉及的坐标系有:惯性坐标系,这里取地心赤道惯性坐标系作为参考系,原点固联于地心oI,oIxI轴在赤道平面内,指向春分点,oIzI轴垂直于赤道平面,与地球自转角速度矢量一致,oIyI轴在赤道平面内按右手定则与oIxI,oIzI组成正交坐标系,表示为fI;对于航天器本身而言,定义一个本体坐标系,原点为航天器的质心;obxb、obyb和obzb三轴固定在航天器本体上,且构成右手坐标系;令obxb、obyb和obzb三轴为航天器的惯量主轴,表示为fb;期望的坐标系,定义为fd;
步骤一:航天器运动学方程的建立
采用四元数来描述航天器的姿态;定义航天器相对惯性坐标系的姿态四元数为其中q0为四元数的标部,为四元数的矢部,四元数的四个参数满足如下的约束方程
<mrow>
<msubsup>
<mi>q</mi>
<mn>0</mn>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>T</mi>
</msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>=</mo>
<mn>1</mn>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
系统姿态运动学方程写为如下的形式
<mrow>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mover>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mrow>
<mo>(</mo>
<msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>&times;</mo>
</msup>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>+</mo>
<msub>
<mi>q</mi>
<mn>0</mn>
</msub>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mover>
<mi>q</mi>
<mo>&CenterDot;</mo>
</mover>
<mn>0</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>T</mi>
</msup>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
定义期望四元数为期望坐标系相对于惯性系姿态四元数;本体四元数为本体坐标系相对于惯性系的姿态四元数;ωb=[ωbx ωby ωbz]T为航天器相对于惯性系的角速度在本体坐标系下的表示;姿态四元数误差定义为q和期望的姿态qd之间的误差,表达式为:
<mrow>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>q</mi>
<mrow>
<mi>e</mi>
<mn>0</mn>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>q</mi>
<mn>0</mn>
</msub>
<msub>
<mi>q</mi>
<mrow>
<mi>d</mi>
<mn>0</mn>
</mrow>
</msub>
<mo>+</mo>
<msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>T</mi>
</msup>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>d</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>=</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>d</mi>
<mn>0</mn>
</mrow>
</msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>-</mo>
<msub>
<mi>q</mi>
<mn>0</mn>
</msub>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>d</mi>
</msub>
<mo>+</mo>
<msup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>&times;</mo>
</msup>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>d</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
期望坐标系相对于惯性系的角速度在期望坐标系下表示为则在本体系下表示的角速度误差为:
<mrow>
<msub>
<mi>&omega;</mi>
<mi>e</mi>
</msub>
<mo>=</mo>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>-</mo>
<msub>
<mi>A</mi>
<mrow>
<mi>b</mi>
<mi>d</mi>
</mrow>
</msub>
<msubsup>
<mi>&omega;</mi>
<mi>d</mi>
<mi>D</mi>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
其中,转换矩阵Abd,将期望的坐标系Sd转换到本体坐标系Sb:
<mrow>
<msub>
<mi>A</mi>
<mrow>
<mi>b</mi>
<mi>d</mi>
</mrow>
</msub>
<mo>=</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>q</mi>
<mrow>
<mi>e</mi>
<mn>0</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mi>T</mi>
</msubsup>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>)</mo>
</mrow>
<msup>
<mi>E</mi>
<mn>3</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
<msub>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<msubsup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mi>T</mi>
</msubsup>
<mo>-</mo>
<mn>2</mn>
<msub>
<mi>q</mi>
<mrow>
<mi>e</mi>
<mn>0</mn>
</mrow>
</msub>
<msubsup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mo>&times;</mo>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
这里E3∈R3×3是单位矩阵,误差四元数满足以下形式的运动学等式:
<mrow>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mover>
<mi>q</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>e</mi>
<mn>0</mn>
</mrow>
</msub>
<mo>=</mo>
<mo>-</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msubsup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mi>T</mi>
</msubsup>
<msub>
<mi>&omega;</mi>
<mi>e</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mover>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>e</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mrow>
<mo>(</mo>
<msubsup>
<mover>
<mi>q</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mo>&times;</mo>
</msubsup>
<mo>+</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>e</mi>
<mn>0</mn>
</mrow>
</msub>
<msub>
<mi>E</mi>
<mn>3</mn>
</msub>
<mo>)</mo>
</mrow>
<msub>
<mi>&omega;</mi>
<mi>e</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
进一步获得以下等式:
<mrow>
<msub>
<mover>
<mi>&omega;</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>e</mi>
</msub>
<mo>-</mo>
<msubsup>
<mi>&omega;</mi>
<mrow>
<mi>b</mi>
<mi>d</mi>
</mrow>
<mo>&times;</mo>
</msubsup>
<msub>
<mi>A</mi>
<mrow>
<mi>b</mi>
<mi>d</mi>
</mrow>
</msub>
<msubsup>
<mi>&omega;</mi>
<mi>d</mi>
<mi>D</mi>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>7</mn>
<mo>)</mo>
</mrow>
</mrow>
步骤二:航天器动力学方程的建立
假设航天器是刚体航天器,不存在柔性附件,则其带有反作用飞轮的动力学模型表示如下:
<mrow>
<mi>M</mi>
<mo>=</mo>
<mo>-</mo>
<msubsup>
<mi>&omega;</mi>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>9</mn>
<mo>)</mo>
</mrow>
</mrow>
H=CIwΩ (10)
这里考虑刚体航天器的主惯量矩阵为Ib=diag[Ib1 Ib2 Ib3];外部干扰力矩为Td∈R3×1;通过反作用飞轮产生控制力矩Tw∈R3×1;i个飞轮的角速度组成的列向量表示为Ω=[Ω1Ω2 ... Ωi]T;i个飞轮的转子轴向惯量组成的惯量对角阵为Iw=diag[Iw1 Iw2 ... Iwn];故障系数矩阵表示为
E=diag[ebx eby ebz],0<εi≤ebi≤1,i=x,y,z (11)
这里,
ebi=1,(i=x,y,z)意味着相对于体坐标系的三轴方向没有力矩输出故障,ebi=0,(i=x,y,z)意味着在第i轴的方向上完全故障,没有力矩输出,εi>0意味着并不存在第i轴方向完全故障的情况;
步骤三:期望的角速度轨迹设计
由(2)式改写为:
<mrow>
<mover>
<mi>q</mi>
<mo>&CenterDot;</mo>
</mover>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mi>q</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>12</mn>
<mo>)</mo>
</mrow>
</mrow>
这里q为四元数,Crassidis&Markley提出角速度ωb是由输入力矩控制Tw的,与此同时ωb控制姿态q;令
<mrow>
<msub>
<mi>&omega;</mi>
<mi>b</mi>
</msub>
<mo>=</mo>
<mo>-</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>&lambda;</mi>
<mn>1</mn>
</msub>
</mfrac>
<msup>
<mi>F</mi>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mrow>
<mo>(</mo>
<mi>q</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>q</mi>
<mi>e</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>13</mn>
<mo>)</mo>
</mrow>
</mrow>
这里qe是(3)式的表达形式,结合(12)给出角度位置:
<mrow>
<msub>
<mi>&lambda;</mi>
<mn>1</mn>
</msub>
<mover>
<mi>q</mi>
<mo>&CenterDot;</mo>
</mover>
<mo>=</mo>
<msub>
<mi>q</mi>
<mi>e</mi>
</msub>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>14</mn>
<mo>)</mo>
</mrow>
</mrow>
由于(14)是一阶微分方程,式子中的λ1>0,因而,姿态四元数q收敛到期望的姿态四元数qd;这就意味着式子(13)作为航天器期望的角速度,表达式如下:
<mrow>
<msub>
<mi>A</mi>
<mrow>
<mi>b</mi>
<mi>d</mi>
</mrow>
</msub>
<msubsup>
<mi>&omega;</mi>
<mi>d</mi>
<mi>D</mi>
</msubsup>
<mo>=</mo>
<mo>-</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>&lambda;</mi>
<mn>1</mn>
</msub>
</mfrac>
<msup>
<mi>F</mi>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mrow>
<mo>(</mo>
<mi>q</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>q</mi>
<mi>e</mi>
</msub>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>15</mn>
<mo>)</mo>
</mrow>
</mrow>
步骤四:控制器输出力矩的设计
考虑当反作用飞轮的输出力矩存在部分损失,则通过控制器设计得到的指令力矩具有一定的容错能力;为了得到在线的故障信息,通过式子(8)中发生故障时的动力学表达式得到带有在线估计故障因子的动力学方程,由于干扰力矩Td相对于控制力矩而言是小量,这里进行忽略:
<mrow>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msub>
<mover>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<mover>
<mi>M</mi>
<mo>^</mo>
</mover>
<mo>-</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<mi>H</mi>
<mo>+</mo>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>16</mn>
<mo>)</mo>
</mrow>
</mrow>
2
这里是估计的航天器本体角速度,是三轴方向上的故障系数的估计矩阵,中含有估计量观测的故障动力学的输入Tv=[Tv1 Tv2 Tv3]T∈R3将会接下来给出;
定义观测误差向量这里为了进行角速度误差的补偿,选择力矩然后估计误差动力学方程表示如下:
<mrow>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msub>
<mover>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<mover>
<mi>E</mi>
<mo>~</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<mi>E</mi>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
</msub>
<mo>-</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<mi>H</mi>
<mo>+</mo>
<msubsup>
<mi>&omega;</mi>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mi>E</mi>
<mi>H</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>17</mn>
<mo>)</mo>
</mrow>
</mrow>
这里是故障系数的估计误差矩阵,其中ku是正常数;设计一个输入Tv,使得估计的航天器角速度ωb达到期望的角速度而观测的角速度和期望角速度之间的误差向量定义为:
其中使用式子(16),估计与期望的误差动力学方程写成:
<mrow>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msub>
<mover>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>e</mi>
</msub>
<mo>=</mo>
<mover>
<mi>M</mi>
<mo>^</mo>
</mover>
<mo>-</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<mi>H</mi>
<mo>+</mo>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>-</mo>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>d</mi>
<mi>D</mi>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>18</mn>
<mo>)</mo>
</mrow>
</mrow>
定理1:考虑等式(3)中带有故障因子的动力学,输出力矩设计为:
<mrow>
<msub>
<mi>T</mi>
<mi>w</mi>
</msub>
<mo>=</mo>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>+</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>19</mn>
<mo>)</mo>
</mrow>
</mrow>
这里是观测器方程的输入,kv是一个正常数,故障观测器为:
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mover>
<mover>
<mi>e</mi>
<mo>^</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mo>=</mo>
<msub>
<mi>Proj</mi>
<mrow>
<mo>&lsqb;</mo>
<msub>
<mi>&epsiv;</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<mn>1</mn>
<mo>&rsqb;</mo>
</mrow>
</msub>
<mo>{</mo>
<mo>-</mo>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>b</mi>
<mo>,</mo>
<mi>i</mi>
</mrow>
</msub>
<msub>
<mi>T</mi>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
</msub>
<mo>}</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mover>
<mi>e</mi>
<mo>^</mo>
</mover>
<mi>i</mi>
</msub>
<mo>=</mo>
<msub>
<mi>&epsiv;</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<mo>-</mo>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>b</mi>
<mo>,</mo>
<mi>i</mi>
</mrow>
</msub>
<msub>
<mi>T</mi>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
</msub>
<mo>&le;</mo>
<mn>0</mn>
<mi>o</mi>
<mi>r</mi>
<msub>
<mover>
<mi>e</mi>
<mo>^</mo>
</mover>
<mi>i</mi>
</msub>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>-</mo>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>b</mi>
<mo>,</mo>
<mi>i</mi>
</mrow>
</msub>
<msub>
<mi>T</mi>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
</msub>
<mo>&GreaterEqual;</mo>
<mn>0</mn>
</mrow>
</mtd>
</mtr>
</mtable>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>b</mi>
<mo>,</mo>
<mi>i</mi>
</mrow>
</msub>
<msub>
<mi>T</mi>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
</msub>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>o</mi>
<mi>t</mi>
<mi>h</mi>
<mi>e</mi>
<mi>r</mi>
<mi>w</mi>
<mi>i</mi>
<mi>s</mi>
<mi>e</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>20</mn>
<mo>)</mo>
</mrow>
</mrow>
这里的αi是正自适应增益,并且这个投影算子Proj{·}用来在参数边界内保持参数的估计;然后,每个角速度ωi都渐进地收敛到期望的角速度ωd,i,尽管有效性部分损失,但是期望的输出力矩能有效输出;
证明:如下构造李雅普诺夫方程
<mrow>
<mi>V</mi>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mi>T</mi>
</msubsup>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msub>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>+</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
<mi>T</mi>
</msubsup>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
<mi>T</mi>
</msubsup>
<mo>+</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>4</mn>
</munderover>
<mfrac>
<mrow>
<msubsup>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
<mn>2</mn>
</msubsup>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
</mfrac>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>21</mn>
<mo>)</mo>
</mrow>
</mrow>
从方程式(17)和(18)而言,李雅普诺夫方程的时间导数满足
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mover>
<mi>V</mi>
<mo>&CenterDot;</mo>
</mover>
<mo>=</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
<mi>T</mi>
</msubsup>
<mrow>
<mo>(</mo>
<mi>M</mi>
<mo>-</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<mi>H</mi>
<mo>+</mo>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>-</mo>
<msub>
<mi>I</mi>
<mi>b</mi>
</msub>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>d</mi>
<mi>D</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
<mi>T</mi>
</msubsup>
<mrow>
<mo>(</mo>
<mover>
<mi>E</mi>
<mo>~</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<mi>E</mi>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
</msub>
<mo>-</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mover>
<mi>E</mi>
<mo>^</mo>
</mover>
<mi>H</mi>
<mo>+</mo>
<msubsup>
<mi>&omega;</mi>
<mi>b</mi>
<mo>&times;</mo>
</msubsup>
<mi>E</mi>
<mi>H</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>4</mn>
</munderover>
<mfrac>
<mrow>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
</mfrac>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>&le;</mo>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>v</mi>
</msub>
<mo>|</mo>
<mo>|</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
<mi>T</mi>
</msubsup>
<mi>E</mi>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
</msub>
<mo>+</mo>
<msubsup>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
<mi>T</mi>
</msubsup>
<mover>
<mi>E</mi>
<mo>~</mo>
</mover>
<msub>
<mi>T</mi>
<mi>v</mi>
</msub>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>4</mn>
</munderover>
<mfrac>
<mrow>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
</mfrac>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>22</mn>
<mo>)</mo>
</mrow>
</mrow>
由于ei是未知的常数,基于投影算子,得到以下不等式
<mrow>
<mfrac>
<mrow>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
</mfrac>
<mo>&le;</mo>
<mo>-</mo>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>23</mn>
<mo>)</mo>
</mrow>
</mrow>
3
令θ=ζmin{E},这里ζmin{.}算子代表一个矩阵的最小特征值,因为ei满足0<εi≤ebi≤1,所以θ>0;通过采用自适应律式子(18)和(22)进一步得到
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mover>
<mi>V</mi>
<mo>&CenterDot;</mo>
</mover>
<mo>&le;</mo>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>v</mi>
</msub>
<mo>|</mo>
<mo>|</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<mi>&theta;</mi>
<mo>|</mo>
<mo>|</mo>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>3</mn>
</munderover>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
<mo>+</mo>
<mfrac>
<mrow>
<msub>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mover>
<mover>
<mi>e</mi>
<mo>~</mo>
</mover>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
<msub>
<mi>&alpha;</mi>
<mi>i</mi>
</msub>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>&le;</mo>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>v</mi>
</msub>
<mo>|</mo>
<mo>|</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mo>-</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<mi>&theta;</mi>
<mo>|</mo>
<mo>|</mo>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>24</mn>
<mo>)</mo>
</mrow>
</mrow>
因此,是负半定的,得到和将从0积分到∞,获得
<mrow>
<mi>V</mi>
<mrow>
<mo>(</mo>
<mn>0</mn>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>V</mi>
<mrow>
<mo>(</mo>
<mi>&infin;</mi>
<mo>)</mo>
</mrow>
<mo>&GreaterEqual;</mo>
<msub>
<mi>k</mi>
<mi>v</mi>
</msub>
<munderover>
<mo>&Integral;</mo>
<mn>0</mn>
<mi>&infin;</mi>
</munderover>
<mo>|</mo>
<mo>|</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>^</mo>
</mover>
<mi>e</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>&eta;</mi>
<mo>)</mo>
</mrow>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mi>d</mi>
<mi>&eta;</mi>
<mo>+</mo>
<msub>
<mi>k</mi>
<mi>u</mi>
</msub>
<munderover>
<mo>&Integral;</mo>
<mn>0</mn>
<mi>&infin;</mi>
</munderover>
<mo>|</mo>
<mo>|</mo>
<msub>
<mover>
<mi>&omega;</mi>
<mo>~</mo>
</mover>
<mi>b</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>&eta;</mi>
<mo>)</mo>
</mrow>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
<mi>d</mi>
<mi>&eta;</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>25</mn>
<mo>)</mo>
</mrow>
</mrow>
因为以上不等式左边的项是有界的,所以得到和除此而外,通过式子(18)和(19)容易证明和因此,通过Barbalat引理得到以下等式这个能推导出尽管存在三轴力矩的部分损失,但是设计的姿态控制力矩得以保持,并使得航天器的角速度渐进收敛到期望的值;总之,在出现三轴输出力矩损失的情况下,能获得以上设计的姿态控制力矩;
步骤五:数值仿真
为了证明上述方案的有效性,下面通过数值仿真,将上述容错控制方案与传统PD控制方案相比较,刚体航天器本体的惯量矩阵为Ib=diag(295 130 210)(kg.m2),,假设航天器上装有四个飞轮,飞轮组的惯量阵为:
Iw=diag(0.01044 0.01044 0.01044 0.01044)(kg·m2)
其安装采用四斜装构型,安装阵为
<mrow>
<mi>C</mi>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<msqrt>
<mn>2</mn>
</msqrt>
</mtd>
<mtd>
<msqrt>
<mn>2</mn>
</msqrt>
</mtd>
<mtd>
<msqrt>
<mn>2</mn>
</msqrt>
</mtd>
<mtd>
<msqrt>
<mn>2</mn>
</msqrt>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>26</mn>
<mo>)</mo>
</mrow>
</mrow>
初始时刻本体坐标系相对于惯性坐标系的姿态四元数为
<mrow>
<mi>q</mi>
<mrow>
<mo>(</mo>
<mn>0</mn>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>27</mn>
<mo>)</mo>
</mrow>
</mrow>
期望坐标系相对于惯性坐标系的四元数为
<mrow>
<msub>
<mi>q</mi>
<mi>d</mi>
</msub>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mn>0.93</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0.1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>-</mo>
<mn>0.2</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0.3</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>28</mn>
<mo>)</mo>
</mrow>
</mrow>
在控制器设计时,忽略了外部干扰力矩,为了更加符合实际的空间环境,这里加入外部干扰力矩Td,假设Td为周期变化形式
<mrow>
<msub>
<mi>T</mi>
<mi>d</mi>
</msub>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mn>0.3</mn>
<mi>c</mi>
<mi>o</mi>
<mi>s</mi>
<mo>(</mo>
<mn>0.01</mn>
<mi>t</mi>
<mo>)</mo>
<mo>+</mo>
<mn>0.1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0.15</mn>
<mi>sin</mi>
<mo>(</mo>
<mn>0.02</mn>
<mi>t</mi>
<mo>)</mo>
<mo>+</mo>
<mn>0.3</mn>
<mi>c</mi>
<mi>o</mi>
<mi>s</mi>
<mo>(</mo>
<mn>0.025</mn>
<mi>t</mi>
<mo>)</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0.3</mn>
<mi>sin</mi>
<mo>(</mo>
<mn>0.01</mn>
<mi>t</mi>
<mo>)</mo>
<mo>+</mo>
<mn>0.1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mi>N</mi>
<mi>m</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>29</mn>
<mo>)</mo>
</mrow>
</mrow>
4
a)无故障条件仿真:
在没有故障的条件下,采用传统的PD控制方法,控制参数设定如下:
k1=50,k2=50
其容错控制方法,控制参数设定如下:有效性故障因子的初始估计自适应律参数εi=0.4,{i=(1,2,3)},αi=0.5,{i=(1,2,3)},ku=30,kv=8;
b)故障条件的仿真:
在仿真中设定以下故障情况
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mi>y</mi>
</msub>
<mo>=</mo>
<mn>0.2</mn>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>t</mi>
<mo>&GreaterEqual;</mo>
<mn>10</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mi>z</mi>
</msub>
<mo>=</mo>
<mn>0.5</mn>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>t</mi>
<mo>&GreaterEqual;</mo>
<mn>20</mn>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
这个表明在y轴方向10s之后控制能力损失了80%,z轴方向在20s之后损失了50%,控制方法剩余的控制参数没有改变。