通过分析2.2节中建立的三自由度双旋翼直升机的非线性模型可知,它是一个满足Lipschitz 条件的仿射非线性系统。本节研究一个满足 Lipschitz 条件的仿射非线性控制系统,针对该控制系统执行器发生时变故障的情况,设计一个基于自适应滑模观测器的故障重构方法。自适应滑模观测器有效融合了自适应观测器和滑模观测器各自的优点,越来越多的学者将自适应滑模观测器应用于故障诊断方向,目前的成果也已有很多 [55-56] ,但绝大部分故障诊断方法都要求故障大小不随时间变化或随时间变化缓慢,换言之即要求故障函数的一阶导数为零;而本节提出一种新型的基于自适应滑模观测的故障重构算法,该方法在故障为时变时依然适用。将该方法应用到三自由度双旋翼直升机的非线性模型上,仿真结果证明了该方法的有效性。
滑模观测器是在滑模变结构控制的基础上发展起来的,它不仅继承了滑模变结构控制方法具有很好的鲁棒性的特点,这使得它对系统精确数学模型的依赖大大降低;同样也继承了滑模变结构控制方法算法简单、易于实现的优点。目前有关滑模观测器的研究主要是基于以下两种设计方法设计的:一类是Walcott和Zak [57-58] 提出的一种基于李雅普诺夫方法来设计的带有不连续切换项的滑模观测器;另一类是滑模观测器的设计方法的基本思想是基于Edwards-Spurgeon [59-61] 提出的滑模观测器的设计方法。本节提出的自适应滑模观测器是基于Walcott-Zak观测器方法设计的,而传统的基于Walcott-Zak观测器方法的设计都需要已知系统外部干扰的上界,当实际控制系统干扰的上界未知时,设计时为了确保系统能满足滑动模态的条件,滑模观测器中不连续项的增益必须选择较大的值,如此一来,又会使系统产生较大的抖振。为解决这一问题,本节提出了一种自适应的方法来实时调整自适应滑模观测器中不连续项的增益值,在保证滑模条件成立的前提下尽可能地减少这一增益值,达到消减系统抖振的目的。
假设一个发生执行器加性故障的非线性控制系统,其故障系统的数学模型描述为:
式中,x(t)∈R n 是状态向量;u(t)∈R m 是输入向量;y(t)∈R p 是输出向量;d(t)∈R q 是系统未知的有界干扰向量;f(t)∈R r 是系统执行器故障;A、B、C、E d 、E f 是相应维数的已知矩阵。先给出以下几个假设条件:
(1)系统完全可观。
(2)假设存在矩阵L∈R n× p 、F 1 ∈R q× p 、F 2 ∈R r× p 和对称正定矩阵P∈R n×n 、Q∈R n×n 使得有如下等式成立:
(3)g(x,t)为一连续的非线性函数,且满足Lipschitz条件,即存在正的Lipschitz常数γ使得
。
(4)假设系统外部干扰范数有界,即存在常数M使得
,假设M未知。
引理2.1 [62] :存在对称正定矩阵Q∈R n×n 和n维向量x,y∈R n ,使得如下不等式成立:
引理2.2 [63] :如果g(x,t)为一连续的非线性函数,满足Lipschitz条件且Lipschitz常数为γ,则存在对称正定矩阵P使得如下不等式成立:
式中,e=x 1 -x 2 。
引理2.2的证明可很容易的从引理2.1推导出来,在这里略去。
针对故障系统式(2.49)~式(2.50)设计如下形式的自适应滑模观测器:
式中,
是观测器的状态向量;
是观测器的输出向量;
为故障 f(t)的估计值;v(t)为如下形式的不连续项:
式中,m(t)为滑模观测器不连续项增益,本节采用如下自适应律来实时更新m(t)的值以解决系统干扰上界未知的情况:
式中,∧为一正的常数,F 1 和e y (t)在后面定义。
为了讨论观测器的稳定性,定义状态估计误差向量、输出估计误差向量、故障估计误差向量和滑模观测器不连续项增益误差向量分别为如下形式:
则由式(2.49)~式(2.50)和式(2.56)~式(2.57)可得误差动态方程为:
本节考虑系统执行器发生时变故障,则故障估计误差的导数为
。且假设故障的导数范数有界,即
,0≤f
1
≤∞。
定理2.2: 将自适应滑模观测器式(2.56)~式(2.57)应用于系统式(2.49)~式(2.50),若存在对称正定矩阵P∈R n×n ,G∈R r×r 和矩阵Y∈R n×p ,F 1 ∈R q×p ,F 2 ∈R r×p 满足2.4.1节中假设(1)~(4)和以下不等式:
则采用如下形式的自适应故障估计算法:
可使得误差系统中的状态估计误差向量和故障估计误差向量有界。式中,L=P -1 Y;*是在对称矩阵中的对称位置的元素,Γ∈R r×r 为自适应学习率,满足Γ>0。
上面将本节提出的新型基于自适应滑模观测器的故障重构方法以定理2.2的形式给出了,在这一小节中将证明该定理的正确性,选取如下形式的李雅普诺夫函数:
对V(t)求关于时间的导数可得:
利用引理2.1,可得:
式中,λ
max
(·)是矩阵的最大特征根,令
。
由式(2.52)和式(2.67)可知
由式(2.53)可知
再根据引理2.2,可得如下不等式:
将式(2.70)~式(2.73)代入式(2.69),则可得:
令
,则式(2.74)可化简为:
式中,
。
根据矩阵的Schur补定理 [63] 可知,Ψ<0等价于Φ<0,再令σ=λ min (-Φ),则
当
时,
,即ξ(t)收敛到一个区间
,由此可得出系统状态估计误差向量和故障估计误差向量保持有界。定理证明完毕。
注释2.4: 2.4节中已经说明定理的存在条件中假设(2)与的2.3节中假设(2)和(3)是等价的。
注释2.5: 定理的求解方法可参考2.3节中的注释2.2。
注释 2.6: 本节为了解决干扰上界未知的问题,设计采用了一自适应律在线更新滑模观测器不连续项的增益,根据式(2.59)可知m(t)的算法为:
注释2.7:
在滑模观测器设计中,利用不连续开关项
令误差动态方程产生滑模运动,从而使观测器对扰动具有较好的鲁棒性,但不连续的开关项也给会系统带来了抖动以及因抖动而引起的高频干扰。为解决这一问题,在实际应用中,通常用一个具有如下形式的饱和函数来代替滑模观测器中的不连续开关项:
式中,δ是一个很小的正数。
2.4.2节中提出了一种基于自适应滑模观测器的故障诊断方法,并从理论上证明了该方法的正确性,本小节将通过仿真验证该方法的合理性。这里选取三自由度双旋翼直升机系统作为半物理仿真验证的平台,在2.2节中已建立了该直升机的非线性模型,考虑到系统可能存在外部的干扰,控制系统数学模型如下:
式中,
这里先进行数字仿真,系统发生执行器故障,故障分布矩阵可认为是输入矩阵E f =B,系统干扰选取为幅值在-1~+1变化的白噪声。通过计算验证,易知系统模型式(2.79)~式(2.80)中的非线性项g(x,t)满足Lipschitz条件且Lipschitz常数可选为γ=1.5。选定自适应学习率Γ=100I 2×2 ,∧=10,仿真步长设为0.001s。
利用 MATLAB 程序中的 LMI 工具箱可以求解式(2.52)、式(2.53)和式(2.66),从而得到如下设计参数值:
下面分别针对常值故障和时变故障两种情况对本节所提出的故障诊断方法进行仿真,设故障信号为 f(t)=[f 1 (t) f 2 (t)] T 。
1)常值故障
图2.23为前后执行器发生常值故障时的故障真实曲线与故障估计曲线的仿真图。假设前执行器故障发生在20s时,故障值从0跳变为1;后执行器故障发生在5s时,故障值从0跳变为2,此时故障的形式如下:
图2.23 执行器常值故障估计曲线
由图2.23可看出本节所设计的基于自适应滑模观测器的故障诊断方法可很好地估计系统执行器发生的常值故障,而与2.3节中提出的鲁棒快速自适应故障估计算法相比,由于本节故障估计算法中没有引入输出误差信号的导数项,所以即使选取的自适应学习率有所增大在故障的估计速度还是有所下降,但依旧具有良好的快速性,故障估计值在故障发生后的5s 左右就收敛到故障的真实值,且这次仿真中所加入的干扰信号相对于系统的状态信号来说已经很大,但由图2.23可看出自适应滑模观测器很好地抑制了扰动对系统的影响,故障的估计值只在真值附近有很小的波动。
2)时变故障
图2.24为系统后执行发生时变故障时,故障估计曲线和真实故障曲线。假设后执行器在10s时发生一个具有正弦函数形式的时变故障,故障形式如下:
图2.24 执行器时变故障估计曲线
由图2.24可看出设计的基于自适应滑模观测器的故障诊断方法对于系统执行器发生的时变故障也具有良好的效果,同样在系统具有较大外部干扰的情况下自适应滑模观测器很好地抑制了扰动的影响。但由于估计速率的问题,故障估计曲线有所滞后并且曲线的最大值与真实故障曲线相比也有所减少,当加大自适应学习率Γ值时这个现象可以得到改观。
为了验证方法的实用性,仅用上面的数字仿真是不够的,这里在三自由度双旋翼直升机半物理仿真平台上进行半物理实时验证,验证本节所提出的故障诊断方法的可靠性和有效性。
假设直升机在运行到25s时执行器发生时变故障,在25~28s时故障大小随时间增大,到28s后故障大小保持在一个恒定值,系统在运行到30s时故障恢复,f(t)=[f 1 (t) f 2 (t)] T 这时故障形式为:
自适应滑模观测器参数的选取和计算与数字仿真时一致。图2.25为后执行器发生故障的真实曲线,图2.26为将本节提出的方法应用在三自由双旋翼直升机半物理仿真平台上得到的故障估计曲线。从仿真结果可看出,本节提出的方法在半物理实时验证时也能够估计出所发生故障的大小,但估计误差与数字仿真相比偏大,且估计值一直在真值附近上下波动,这同样与三自由度双旋翼直升机半物理仿真平台建模产生的误差、传感器测量的误差有关系。
图2.25 后推进器真实故障曲线
图2.26 后推进器故障估计曲线