发明内容
本发明实施例的目的在于提供一种执行器动态的飞行器姿态分散式容错控制系统,旨在解决现有的故障检测和识别技术存在的未考虑执行器动态时,在Hard-In-Loop上会造成故障或参数的估计存在误差的问题。
本发明实施例是这样实现的,一种执行器动态的飞行器姿态分散式容错控制系统,该执行器动态的飞行器姿态分散式容错控制系统包括:能快速地检测出故障和识别故障发生的类型的作动器故障检测和辨识单元,基于观测器的辅助系统和基于指令滤波的反演容错控制算法。
进一步,作动器故障检测和识别单元:
故障检测观测器方法如下:
其中为估计的操纵面偏转,λi>0;定义残差信号设计阈值则得到故障检测时间Td当即表示为:
看出当时,表示无故障发生,反之,即有故障发生。
作动器故障识别方法如下:
观测器如下所示:
其中: 为一设计的常数;当执行器未发生故障时,会出现ui=uci,这得到的因此会造成错误的辨识结果,故障检测将执行器未发生的情况检测出来,当检测出执行器发生故障,则启动故障识别单元,如果确认当前执行器未发生故障,则故障识别单元不予工作,即默认
进一步,下面给出定理来说明(4.10)-(4.11)的观测器组能正确的识别作动器不同的类型故障:
定理:如果第i个作动器发生卡死故障,则得到:
如果第i个作动器发生失效故障,则得到:
其中:
证明:证明过程分为两个部分,第一部分证明观测器组在卡死故障下的响应,第二部分证明观测器组在失效下的响应;
第一部分证明:如果第i个作动器发生卡死故障,由和(4.10),得到误差动态方程:
选择如下Lyapunov方程:
对(4.15)求导,并代入(4.14)和(4.10)的卡死故障估计算法:
由(4.16)得到由于可以得到必然得到估计值另一方面,得到卡死故障下的针对失效故障设计的观测器(4.11)和当前的执行器动态(4.4)之间的误差方程为:
因为存在激励信号,uci不为0,且由(4.11)第二项得失效估计算法,很容易得到 结论。
第二部分证明:如果第i个作动器发生失效故障,得到针对卡死故障设计的观测器(4.10)和当前执行器动态(4.4)之间的误差动态方程为:
由于失效故障ki<1,且uci不为0,而只能输出0或±1,所以得到另一方面,得到作动器失效故障下的针对失效故障设计的观测器(4.11)和当前的执行器动态(4.4)之间的误差方程为:
选取如下Lyapunov方程:
其中对(4.20)求导,并代入误差动态方程(4.19)和自适应估计项(4.11),可得到:
由(4.21)可以得到有界,但是如果则由(4.19)看出于是可以得到于是可以得到
进一步,区分当前的作动器故障为卡死还是失效类型采用决策机制,具体方法如下:
通过观测器和作动器实际之间的误差来判断当前的故障类型;决策机制为:
其中c1>0,c2>0,λ1>0;最合适的观测器根据性能指标(4.22)来确定;如果得到哪个观测器下使得此时性能指标(4.22)具有最小值,则判断此刻发生了何种故障类型;于是由故障判断的结果得到当前的故障参数值如下:
当第i个作动器发生卡死故障,最小,此时辨识出的结果为而此时第i个作动器对应实际故障参数即σi=0,ki=1,得到在卡死发生后当第i个作动器发生失效时,最小,此时得到的故障辨识结果为而此时第i个作动器对应实际故障参数,即σi=1和ki,并由定理得到在失效故障发生后所以无论第i个作动器无论发生何种类型故障均可以保证
进一步,基于自适应滑模观测器的辅助系统:
利用自适应滑模观测器来实现此功能,为方便下面的表达,方程:
表示为:
其中U=diag[u1,…,u8],d=[d1,…,d8]T,定义观测误差e=z-x2,于是针对(4.24)角速率回路设计一个观测器如下结构:
其中表示操纵面损伤因子的估计值,并由如下的自适应律得出:
其中γ1>0,P=PT>0且P是ATP+PA=-Q的解,其中Q=QT>0,即A为一个Hurwitz矩阵;确保估计值处于设定的最小值d i和最大值之间;滑模项设计如下:
时变参数m(t)由如下自适应律更新得到:
定义损伤因子估计误差为由观测器方程(4.25)和方程(4.24),得到观测误差动态方程为:
定理:由观测器(4.25)、自适应更新律(4.26)和滑模项(4.27),观测误差动态方程(4.29)全局渐近稳定,即对任意初始值e(0),确保limt→∞e(t)=0,损伤故障估计误差有界;
连续化滑模项如下:
其中:ρ=ρ0+ρ1||e||,且ρ0和ρ1为大于0的常数;
于是基于观测器(4.25)和(4.24)的第一个方程联立一个方程组如下:
其中 定义 和由方程(4.6)和命题1得:
由(4.28)得到作动器失效和卡死,操纵面损伤联立的故障模型为:
进一步,指令滤波反演容错控制器:
定义两个跟踪误差向量E1,E2∈R3为:
为滤波器的输出;由(4.33)、(4.34)和(4.35),得:
第一步:首先考虑(4.33)第一个方程,将作为x1姿态角度环的理想控制输入,同时选择Lyapunov函数姿态角度环的控制器选择为:
其中K1为待设计的正定常矩阵;对V3求导并将(4.38)代入可得:
重新定义跟踪误差并将虚拟控制量通过一个二阶约束滤波器得到和设计如下一个补偿器来补偿滤波器输出和输入之间造成的残差:
第二步:选择如下Lyapunov函数:
V2对时间的导数为:
设计角速度回路控制器:
其中K2为待设计的正定常矩阵;将(4.43)代入(4.42)得:
由定理和推论可得到limt→∞e(t)=0,limt→∞V2(t)=0,于是进一步得到和E2有界;
定义可以得到因为E2有界和所以得到有界。
进一步,该执行器动态的飞行器姿态分散式容错控制系统还包括:外环控制器、指令滤波器、内环控制器、作动器、辅助系统;
外环控制器连接指令滤波器,指令滤波器连接内环控制器,内环控制器连接作动器,外环控制器和内环控制器连接辅助系统。
本发明提供的执行器动态的飞行器姿态分散式容错控制系统,通过作动器故障检测和辨识单元,基于观测器的辅助系统和基于指令滤波的反演容错控制算法,基于分散式容错控制系统,作动器故障检测和辨识单元,用于系统实时得到作动器的故障信息,针对姿态角速度环获取了自适应滑模观测器,观测器具有很强的鲁棒性,且无需知道不确定或者干扰的上界,将操纵面损伤故障的信息和干扰信息全隐含在其中;并基于观测器模型得到了容错控制器。本发明的容错控制系统实现了多种不同类型故障和多故障情况下的鲁棒容错控制,将容错控制系统应用于作动器和操纵面故障情况的近空间飞行器姿态稳定控制和跟踪控制中,实现了飞行姿态鲁棒容错控制,并达到了良好的控制性能和效果。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图及具体实施例对本发明的应用原理作进一步描述。
如图1所示,本发明实施例的执行器动态的飞行器姿态分散式容错控制系统主要由:外环控制器1、指令滤波器2、内环控制器3、作动器4、辅助系统5组成;
外环控制器1连接指令滤波器2,指令滤波器2连接内环控制器3,内环控制器3连接作动器4,外环控制器1和内环控制器3连接辅助系统5;
本发明的具体实施例:
1、故障建模:
考虑NSV存在参数不确定和外部干扰,其可以表示为如下非线性形式:
其中:x1=Ω=[α,β,μ]T∈R3,x2=ω=[p,q,r]T∈R3,u=δ=[δ1,…,δ8]T∈R8,f1(x1)=fΩ,f2(x1,x2)=-J-1ω×Jω,g2(x1,x2)=J-1ψ。η(x1,x2,t)定义为复合干扰项,假设系统的复合干扰η(x1,x2,t)有界为但界未知。
首先由得到操纵面损伤下的故障模型为:
其中D=diag(d1,d2,…,d8),di表示第i个操纵面上的损伤因子,为未知的常数。
其次考虑作动器动态为一阶传递函数,可以写成如下状态方程形式:
其中ui为作动器的实际输出,uci为作动器的输出指令。实际上每个作动器可以满足如下假设。
假设1:参数ai>>0,即表示作动器控制回路的响应速度远远快于系统本身,其自身的自然频率远远大于阻尼。
第一章已经讨论作动器的四种典型故障形式,卡死,失效,松浮和饱和。松浮和饱和故障可以看成是卡死故障的特殊情况,所以基于执行器动态,故障可以建立为如下形式:
其中ki∈[o,1]且o<<1,定义为作动器失效因子。当tfi时刻σi=0,表示为第i个作动器卡死,反之σi=1表示作动器没有发生卡死故障。特别指出的是,同一个作动器上不可能卡死和失效同时发生,所以σi=0时,默认ki=1。当ki<1,默认σi=1。(4.4)又可以表示为如下:
所以可以利用奇异摄动理论对(4.4)进行降阶,失效(LOE)和卡死(Stuck)故障可以联合表示为:
利用第三章给出命题1;(4.1)可以得作动器失效和卡死,操纵面损伤联立的故障模型为:
其中Σ=diag(σ1,σ2,…,σ8),K=diag(k1,k2,…,k8)。这里u实际上是可以通过位移传感器计算得到或者通过光电码盘获取,容错控制的目的就是为了计算得到各个作动器位移指令uc。
2、容错控制系统:
主要分为三部分的设计,作动器故障检测和辨识单元,基于观测器的辅助系统的设计(隐含操纵面损伤和复合干扰信息)和基于指令滤波的反演容错控制算法。为方便读者理解,这里给出本发明所提方案的框图,见图1。
2.1、作动器故障检测和识别单元:
本发明所设计的作动器故障检测和识别单元要能快速地检测出故障和识别故障发生的类型,这里设计一种基于多观测器的故障识别器;首先先给出一个故障检测机制。
作动器故障检测(FD):
正常飞行时,飞机可能是很长一段静稳定飞行,操纵面的偏转角会处于一个静止状态,如果不存在连续的激发信号Δuc,会影响故障识别的结果。因此,需要在得到的指令uc上设计一个叠加的激励信号。使得每个偏转角不断变化,从而充分调动气动特性。当然所施加的激励信号确保不影响飞行器正常完成任务,Δuc应该远远小于正常操纵面的偏转量。施加的激励信号和第三章所用的激励信号一样。为了检测作动器故障,故障检测观测器设计如下:
其中为估计的操纵面偏转,λi>0。定义残差信号设计阈值则可以得到故障检测时间Td当即表示为:
可以看出当时,表示无故障发生,反之,即有故障发生。
基于多观测器的作动器故障识别:
基于自适应技术,设计两组观测器用于作动器卡死和失效故障辨识。所设计的观测器如下所示:
其中:γl为一设计的常数。下面给出定理1来说明所设计的(4.10)-(4.11)的观测器组能正确的识别作动器不同的类型故障:
定理:如果第i个作动器发生卡死故障,则可以得到:
如果第i个作动器发生失效故障,则可以得到:
其中:
证明:证明过程分为两个部分,第一部分证明观测器组在卡死故障下的响应,第二部分证明观测器组在失效下的响应。
第一部分证明:如果第i个作动器发生卡死故障,由(4.4)和(4.10),得到误差动态方程:
选择如下Lyapunov方程:
对(4.15)求导,并代入(4.14)和(4.10)的卡死故障估计算法:
由(4.16)可以得到由于可以得到必然可以得到估计值另一方面,可以得到卡死故障下的针对失效故障设计的观测器(4.11)和当前的执行器动态(4.4)之间的误差方程为:
因为存在激励信号,uci不为0,且由(4.11)第二项得失效估计算法,很容易得到 结论。
第二部分证明:如果第i个作动器发生失效故障,得到针对卡死故障设计的观测器(4.10)和当前执行器动态(4.4)之间的误差动态方程为:
由于失效故障ki<1,且uci不为0,而只能输出0或±1,所以可以很容易得到另一方面,可以得到作动器失效故障下的针对失效故障设计的观测器(4.11)和当前的执行器动态(4.4)之间的误差方程为:
选取如下Lyapunov方程:
其中对(4.20)求导,并代入误差动态方程(4.19)和自适应估计项(4.11),可得到:
由(4.21)可以得到 有界,但是如果则由(4.19)可以看出于是可以得到于是可以得到
当执行器未发生故障时,会出现ui=uci,这得到的因此会造成错误的辨识结果。但是幸运的是,故障检测将执行器未发生的情况检测出来,当检测出执行器发生故障,则启动故障识别单元,如果确认当前执行器未发生故障,则故障识别单元不予工作,即默认
决策机制:
设计决策机制的目的是来区分当前的作动器故障为卡死还是失效类型。通过观测器和作动器实际之间的误差来判断当前的故障类型。设计的决策机制为:
其中c1>0,c2>0,λ1>0。最合适的观测器可以根据性能指标(4.22)来确定。如果得到哪个观测器下可以使得此时性能指标(4.22)具有最小值,则可以判断此刻发生了何种故障类型。于是由故障判断的结果可以得到当前的故障参数值如下:
当第i个作动器发生卡死故障,最小,此时辨识出的结果为和而此时第i个作动器对应实际故障参数即σi=0,ki=1,可以得到在卡死发生后当第i个作动器发生失效时,最小,此时得到的故障辨识结果为和而此时第i个作动器对应实际故障参数,即σi=1和ki,并由定理可以得到在失效故障发生后所以无论第i个作动器无论发生何种类型故障均可以保证
证明:该结果可以由以上的分析得出。
2.2、基于自适应滑模观测器的辅助系统:
由于操纵面损伤故障和复合干扰存在耦合,并都在姿态控制系统中有影响,而且系统是典型的过驱动系统,所以本发明设计一个辅助系统将操纵面损伤故障信息和外部干扰信息都隐含其中,本发明利用自适应滑模观测器来实现此功能。为此设计观测器如下:
为方便下面的表达,方程(4.2)又可以表示为:
其中U=diag[u1,…,u8],d=[d1,…,d8]T,定义观测误差e=z-x2,于是针对(4.24)角速率回路设计一个观测器如下结构:
其中表示操纵面损伤因子的估计值,并由如下的自适应律得出
其中γ1>0,P=PT>0且P是ATP+PA=-Q的解,其中Q=QT>0,即A为一个Hurwitz矩阵。其可以确保估计值处于设定的最小值d i和最大值之间。滑模项设计如下:
时变参数m(t)由如下自适应律更新得到:
定义损伤因子估计误差为由观测器方程(4.25)和方程(4.24),可以得到观测误差动态方程为:
定理:由观测器(4.25)、自适应更新律(4.26)和滑模项(4.27),可以观测误差动态方程(4.29)全局渐近稳定,即对任意初始值e(0),确保limt→∞e(t)=0,损伤故障估计误差有界。
证明:证明过程类似上面的定理。
连续化滑模项如下:
其中:ρ=ρ0+ρ1‖e‖,且ρ0和ρ1为大于0的常数。
于是可以基于观测器(4.25)和(4.24)的第一个方程联立一个方程组如下
其中 定义 和由方程(4.6)和命题1可得:
由(4.28)可以得到作动器失效和卡死,操纵面损伤联立的故障模型为:
2.3、指令滤波反演容错控制器的设计:
本发明的控制器采用第二章的基于指令滤波的反演控制器设计方法。定义两个跟踪误差向量E1,E2∈R3为:
为滤波器的输出。由(4.33)、(4.34)和(4.35),可得:
第一步:首先考虑(4.33)第一个方程,将作为x1姿态角度环的理想控制输入,同时选择Lyapunov函数姿态角度环的控制器可以选择为:
其中K1为待设计的正定常矩阵。对V3求导并将(4.38)代入可得:
重新定义跟踪误差并将虚拟控制量通过一个二阶约束滤波器得到和设计如下一个补偿器来补偿滤波器输出和输入之间造成的残差:
第二步:选择如下Lyapunov函数:
V2对时间的导数为:
设计角速度回路控制器:
其中K2为待设计的正定常矩阵。将(4.43)代入(4.42)可得:
由定理和推论可得到limt→∞e(t)=0,limt→∞V2(t)=0,于是进一步得到和E2有界。
定义可以得到因为E2有界和所以得到有界。
通过以下的仿真验证对本发明的原理和应用效果做进一步的说明:
利用仿真验证来证明所提方法的有效性,仍然采用第二章的X-33飞行器,这里进行简单的叙述。X-33的四对操纵面记为u=δ=[δrei,δlei,δtfl,δlfl,δrvr,δlvr,δreo,δleo]T,其中:δrei,δlei表示右边和左边的内侧副翼,δrfl,δlfl表示右边和左边的襟翼。δrvr,δlvr表示右边和左边的方向舵。
δreo,δleo表示右边和左边的外侧副翼。每个操纵面通道上的舵回路动态仍然取为第三章的给出的传递函数。X-33的飞行环境为V=5.16马赫,高度h=20千米。攻角的跟踪值设定为3deg,航迹滚转角跟踪设定值为4deg,侧滑角设定值为0deg。可以通过设定的姿态角跟踪值xd,其计算公式为(3.29),控制增益K1=diag(1,1,1)。考虑转动惯量存在1%的参数摄动,即ΔJ∈[(1-1%)J,(1+1%)J],角速率环的外部扰动为[sin(r),1.5sin(0.1t),1.5cos(0.1t)]T,角速率的初始值为x∈[0,0,0]Tdeg/s。
角速率回路控制律的控制增益矩阵K2=diag(1,1,1),自适应滑模观测器增益矩阵A=diag(-2,-2,-2),P=diag(10,10,10),m(0)=0.001,指令滤波参数同第二章。假设右外侧升降副翼在t=1s发生卡死故障,左边的内侧副翼作动器在t=2s失效40%,左边的内侧副翼t=3s操纵面损伤60%。未进行容错控制的姿态角和角速率响应曲线如图2所示,可以看出当故障发生后,系统在5s之后已经不能保持稳定。容错控制系统的姿态角和角速率响应曲线如图3所示,各个操纵面的偏转角度如图4所示,图5显示各个操纵面等效损伤估计曲线。图6为响应的作动器卡死、失效的辨识结果。
由仿真结果可以看出本发明所提的容错控制方法有很好的容错控制能力。图5可以看出,由于干扰的存在和系统本身是过驱动系统,没有足够多的激励信号,所以无法真实地估计出操纵面的损伤因子,但是由于基于第二章的框架充分地利用了自适应滑模观测器,所以可以利用隐含的信息同样实现容错控制。图6显示了本发明所提的基于多观测器的作动器故障检测和辨识单元可以快速的检测故障,并识别和估计出故障值大小。
本发明针对存在干扰以及参数不确定的近空间飞行器,考虑了其在发生作动器和操纵面故障后的鲁棒容错控制问题,本发明基于分散式容错控制框架,设计了一种基于多观测器的作动器故障检测和辨识单元,用于系统实时得到作动器的故障信息,针对姿态角速度环设计了自适应滑模观测器,所设计的观测器具有很强的鲁棒性,且无需知道不确定或者干扰的上界,将操纵面损伤故障的信息和干扰信息全隐含在其中。并基于观测器模型设计容错控制器,所设计的容错控制系统实现了多种不同类型故障和多故障情况下的鲁棒容错控制。最后将所设计的方法分别应用于作动器和操纵面故障情况的近空间飞行器姿态稳定控制和跟踪控制中,实现了飞行姿态鲁棒容错控制,并达到了良好的控制性能和效果。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。