发明内容
针对以上问题,本申请所提的容错控制方法只需要设计一个鲁棒辅助***既可以实现鲁棒容错控制,而重构控制器的设计则基于辅助***的动态模型即可。所以本文相对传统方法,在设计步骤上更为简洁和方便,避免了如何设计一个可以漏报和误报都很低的FDI单元这一难题。从而绕过这一难题实现飞控***的鲁棒容错控制,为达此目的,本发明提供基于神经网络观测器的无人飞行器姿态鲁棒容错控制方法,具体步骤如下:
基于神经网络观测器的无人飞行器姿态鲁棒容错控制方法,具体步骤如下,其特征在于:
1)将变量信号 输入给控制层的K1控制器,经过控制层的K1控制器处理后再经过控制层的x1***控制器,x1***控制器将从飞行器运动得到的参数x1和从K1控制器得到的变量信号进行相应的处理得到变量信号;
2)控制层的x1***控制器经过控制层的指令滤波器处理得到变量信号,所述变量信号分两路,所述K1控制器处理得到的变量信号和一路变量信号进行信号叠加处理后经过控制层的滤波误差补偿得到变量信号传送给控制层的x2***控制器,所述另一路变量信号经过控制层的K2控制器处理后再经过控制层的x2***控制器;
3)所述x2***控制器将滤波误差补偿后得到变量信号以及飞行器运动得到的参数x2以及监督层的自适应神经网络观测器所得到的变量信号、、进行处理得到变量信号u;
4) 所述x2***控制器将处理后的变量信号u传送给飞行器和监督层的自适应神经网络观测器,监督层的自适应神经网络观测器根据所得变量信号u得到对应的变量信号、、并将其反馈给x2***控制器。
作为本发明进一步改进,所述步骤3中自适应神经网络观测器模型如下:
设计自适应律,用于理想权值估计和失效因子的估计,定义,于是针对姿态角速度回路环设计一个自适应神经网络观测器如下,
(2.25)
其中表示损伤因子的估计值,并由如下的自适应律得出:
(2.26)
其中,且是的解,其中,即为一个Hurwitz矩阵。为投影算子[137],其可以确保估计值处于最小值和最大值之间。神经网络权值更新算法如下,
(2.27)
其中为正定矩阵。定义损伤因子估计误差为,神经网络权值估计误差,由观测器方程(2.25)和姿态角速率回路方程(2.22),可以得到观测误差动态方程为:
(2.28)。
作为本发明进一步改进,所述步骤2指令滤波器模型如下:
为了方便容错控制器的设计,观测器方程表示为:
(2.31)
其中,定义两个跟踪误差向量为:
(2.32)
(2.33)
,为滤波器的输出。由(2.21)、 (2.31) 、(2.32)和(2.33),可得:
(2.34)
(2.35)
第一步:将作为姿态角度环的理想控制输入,同时选择Lyapunov函数,并得到对时间的导数:
(2.36)
姿态角度环的控制器可以选择为:
(2.37)
其中为待设计的正定常矩阵。将(2.37)代入(2.36)可得:
(2.38)
约束指令滤波器的状态方程表示如下:
(2.39)
其中:,分别表示滤波器的阻尼和带宽,且,;
如果虚拟控制量的幅值和速率大于实际***所能承受的最大值时,其经过滤波器后的信号必然和滤波器输入的信号之间存在一个误差,在动态面控制方法,由滤波器造成的残差信号并没有加以补偿,导致跟踪信号不能实现全局渐近跟踪,如果引入自适应后,当实际***不能实现给定的信号跟踪,会造成误差累积而导致***不稳定甚至发散。为此重新定义跟踪误差,并设计如下:
(2.40)
第二步:考虑观测器(2.31)方程,同时选择如下Lyapunov函数:
(2.41)
对时间的导数为:
(2.42)
设计角速度回路控制器:
(2.43)
其中为待设计的正定常矩阵。将(2.43)代入(2.42)可得:
(2.44)
由定理2.1,可知,利用利用Barbalat引理,可得,于是进一步得到,和。
本申请基于神经网络(神经网络: Neural Network)技术和指令滤波反演方法,提出一种基于指令滤波反演的鲁棒容错控制***设计架构。首先给出NSV姿态控制***的数学模型,并在此基础上考虑建模误差引起的不确定和外部干扰,及操纵面故障下NSV姿态控制***的状态方程。其主要的设计涉及两个单元:一个是辅助***的设计,一个是基于辅助***的控制器的设计。辅助***引入神经网络确保辅助***的鲁棒性,并且通过Lyapunov定理严格证明闭环***的稳定性。并在相应飞行器的姿态控制***上进行仿真,结果显示本申请所提的方法可以使得具有外部干扰的不确定飞控***在操纵面损伤下具有理想的容错跟踪性能。
具体实施方式
以下结合附图和实施例对发明做详细的说明:
本申请所提的容错控制方法只需要设计一个鲁棒辅助***既可以实现鲁棒容错控制,而重构控制器的设计则基于辅助***的动态模型即可。所以本文相对传统方法,在设计步骤上更为简洁和方便,避免了如何设计一个可以漏报和误报都很低的FDI单元这一难题。从而绕过这一难题实现飞控***的鲁棒容错控制。
本发明提供如图1所示基于神经网络观测器的无人飞行器姿态鲁棒容错控制方法,具体步骤如下,其特征在于:
1)将变量信号输入给控制层的K1控制器,经过控制层的K1控制器处理后再经过控制层的x1***控制器,x1***控制器将从飞行器运动得到的参数x1和从K1控制器得到的变量信号进行相应的处理得到变量信号;
2)控制层的x1***控制器经过控制层的指令滤波器处理得到变量信号,所述变量信号分两路,所述K1控制器处理得到的变量信号和一路变量信号进行信号叠加处理后经过控制层的滤波误差补偿得到变量信号传送给控制层的x2***控制器,所述另一路变量信号经过控制层的K2控制器处理后再经过控制层的x2***控制器;
3)所述x2***控制器将滤波误差补偿后得到变量信号以及飞行器运动得到的参数x2以及监督层的自适应神经网络观测器所得到的变量信号、、进行处理得到变量信号u;
4) 所述x2***控制器将处理后的变量信号u传送给飞行器和监督层的自适应神经网络观测器,监督层的自适应神经网络观测器根据所得变量信号u得到对应的变量信号、、并将其反馈给x2***控制器。
本发明采用径向基神经网络 (RBF神经网络: Radial Basis Function Neural Network) 来逼近复合干扰项,RBF是一种前馈式神经网络,由输入层,隐含层和输出层组成。RBF神经网络具有局部逼近的特点,作为一个有力的工具,其逼近速度快,对任意非线性函数良好的逼近能力,RBF神经网络经常被用于非线性***的建模。如果有足够多的神经网络隐含层个数,即通过调节权值和中心值,可以使得任意一个连续函数由一个参数线性化的回归网络表述。由于复合干扰项可以表示为一个未知的非线性函数,这里简单的给出的逼近过程,若具有足够多的隐含层个数,则存在一个最优的权值矩阵,使得表示为:
(2.23)
其中为一个任意小量。则RBF神经网络的输出为:
(2.24)
其中为的估计值,由高斯函数向量表示。
由于RBF神经网络能较好的逼近非线性函数,同时也避免了陷入局部极小值,因此在控制理论中有着广泛的应用,这里利用RBF神经网络逼近复合干扰,设计自适应律,用于理想权值估计和失效因子的估计,定义,于是针对姿态角速度回路环设计一个自适应神经网络观测器如下,
(2.25)
其中表示损伤因子的估计值,并由如下的自适应律得出:
(2.26)
其中,且是的解,其中,即为一个Hurwitz矩阵。为投影算子[137],其可以确保估计值处于最小值和最大值之间。神经网络权值更新算法如下,
(2.27)
其中为正定矩阵。定义损伤因子估计误差为,神经网络权值估计误差,由观测器方程(2.25)和姿态角速率回路方程(2.22),可以得到观测误差动态方程为:
(2.28)
定理2.1:由观测器(2.25)和自适应更新律(2.26)和(2.27),可以确保角速率误差动态方程(2.28)全局渐近稳定,即对任意初始值,确保。
证明:选择如下Lyapunov方程
(2.29)
代入(2.25)和自适应更新律(2.26)和(2.27),并对(2.29)求导得
(2.30)
如果选择合适的神经网络基函数中心点和足够多的隐含层个数,可以确保,利用引理[138],可以得到***(2.28)是全局一致最终有界(GUUB),并且按指数收敛,从而跟踪误差可以收敛到一个封闭球域。
备注2.1:理论上,如果选取足够多的神经网络隐含层和合适的结构,可以确保,于是可以使得的自适应神经网络观测器确保NSV在发生操纵面损伤故障和存在复合干扰的情况下保证观测误差仍然趋向0。实际中由于保证实时性,只能选取有限的隐含层个数,所以也只能确保误差保持在一个可接受的误差范围内。它不需要准确的故障信息,也不需要分析故障和复合干扰之间的耦合关系。利用本文所给出的容错控制设计框架,可以利用自适应神经网络观测器动态模型去设计控制而非姿态动态模型。可以有效避免鲁棒容错控制需要设计鲁棒FDI和鲁棒可重构控制两个难题。利用所设计的自适应神经网络观测器模型,将传统鲁棒容错控制问题转化为只要设计一个鲁棒辅助***。
本发明利用观测器动态方程和姿态角度回路方程设计一种指令滤波反演控制,由于故障和复合干扰等影响都隐含在上节所设计的观测器中,所以基于观测器动态所设计的控制器具有鲁棒性和容错能力,兼顾了鲁棒和容错的特点。下面给出控制器设计步骤。
为了方便容错控制器的设计,观测器方程(2.25)又可以表示为:
(2.31)
其中,定义两个跟踪误差向量为:
(2.32)
(2.33)
,为滤波器的输出。由(2.21)、 (2.31) 、(2.32)和(2.33),可得:
(2.34)
(2.35)
第一步:首先考虑(2.21)第一个方程,将作为姿态角度环的理想控制输入,同时选择Lyapunov函数,并得到对时间的导数:
(2.36)
姿态角度环的控制器可以选择为:
(2.37)
其中为待设计的正定常矩阵。将(2.37)代入(2.36)可得:
(2.38)
为了解决传统反演控制存在的微分膨胀和约束问题,文献[139-140]引入指令滤波。指令滤波的思想是将虚拟控制量通过一个二阶约束滤波器得到和,并设计一个补偿器来补偿滤波器输出和输入之间造成的残差,这一点也是其本质上不同于动态面控制。引入的约束指令滤波器如图2所示。
约束指令滤波器的状态方程表示如下:
(2.39)
其中:,分别表示滤波器的阻尼和带宽,且,。
如果虚拟控制量的幅值和速率大于实际***所能承受的最大值时,其经过滤波器后的信号必然和滤波器输入的信号之间存在一个误差,在动态面控制方法,由滤波器造成的残差信号并没有加以补偿,导致跟踪信号不能实现全局渐近跟踪。如果引入自适应后,当实际***不能实现给定的信号跟踪 (输入饱和造成),会造成误差累积而导致***不稳定甚至发散。为此重新定义跟踪误差,并设计如下:
(2.40)
第二步:考虑观测器(2.31)方程,同时选择如下Lyapunov函数:
(2.41)
对时间的导数为:
(2.42)
设计角速度回路控制器:
(2.43)
其中为待设计的正定常矩阵。将(2.43)代入(2.42)可得:
(2.44)
由定理2.1,可知,利用利用Barbalat引理,可得,于是进一步得到,和。
备注2.2:的逆通常用表示,然而,当的维数不等于状态向量的维数时,它便不存在严格意义上的逆矩阵。本章为解决这个问题,使用广义逆,采用最小二范数广义逆概念,利用广义逆的右逆,可以满足,由于往往不是唯一的,且对控制分配可能存在不合理,所以在实际应用中,使用加权2-范数来取代,其中为大于零的常数。虽然它只能近似,但它实现了伪逆矩阵的唯一性和最小控制能量分配,实现了对控制的最优分配。
备注2.3:和传统的主动容错控制不同的,传统的主动容错设计FDI单元的目的就是将故障信息准确及时的显现出来,这在实际实现上存在诸多难点。因为实际对象的模型不确定性,外部干扰等因素都会造成得到的故障信息不准确,造成许多误报和漏报。而本章给出的设计方法将故障信息和干扰等信息均隐含在所设计的自适应神经网络观测器中,并实时的将隐含信息反馈给控制器,从而实现鲁棒容错控制。显然它也不同于被动容错控制,被动容错控制器在实现容错时未用到实时的诊断信息,被动容错控制本质上属于控制范畴。
为了验证本申请现定义NSV的再入姿态操纵面故障模型如下:
考虑具体的飞行环境,给出合理的假设并选择合适的坐标轴系,得到简化的可用于控制***设计的姿态模型。然后将计算得到的容错控制律在原始模型上进行仿真,检验容错控制***的合理性和有效性。
以NSV为例,NSV由于特有的属性使其成为一个极其复杂的非线性动力学***,如某些参数会随着飞行状态的改变而发生强烈的非线性变化,并且可能会在飞行过程中伴随着飞行器的气动热以及弹性形变等。由于本文的重点是在飞行容错控制***的设计上,因而只考虑对飞行运动起主要作用的因素,这样可以有效降低所研究问题的复杂程度,为此,针对NSV的飞行运动作如下的假设如下:
假设2.1:NSV为理想刚体,不考虑在飞行过程中的机体包括操纵舵面在内的弹性形变、强度以及气动热等因素。
假设2.2:NSV在其飞行的同一高度空域中,大气是干洁且均匀的并且不考虑大气的运动。
假设2.3:假设地球是标准的圆球形状,NSV的自转速度远远大于地球的自转,即忽略地球的自转。
假设2.4:不考虑燃料等的晃动,飞行器质心位置始终保持在机体的结构纵轴上。
假设2.5:NSV的外形是左右对称的,并且质量分布也是左右对称的,则其惯性积,并且由于其近似轴对称,因而惯性积。
假设2.6:忽略NSV的气动操纵舵面以及发动机所形成的转动惯量影响。
X-33再入模态的姿态角回路运动方程整理可得:
(2.1)
(2.2)
航迹滚转角的运动规律表达式可由文献[81]中类似方法求出:
(2.3)
因而可得:
(2.4)
最后推导近空间飞行器的转动动力学方程,由于刚体的旋转动力学方程为:
(2.5)
其中为近空间飞行器的动量矩,为作用在近空间飞行器上的全部的力矩矢量和,主要包括由气动操纵舵面和发动机推力矢量所产生的控制力矩矢量以及操纵舵面为零时近空间飞行器机体所受到的气动力矩矢量。因此,在机体坐标轴系下的(2.5)的矩阵形式为:
(2.6)
可表示为:
(2.7)
其中、和为近空间飞行器的惯性矩,、和为惯性积。
综合考虑式(2.6)-(2.7),并根据假设2.5,有角速率回路运动方程为:
(2.8)
经整理可得:
(2.9)
(2.10)
(2.11)
其中:,为控制分配矩阵。经过以上分析可知,式(2.1)-(2.3)及(2.8)为近空间飞行器X-33的再入姿态运动模型。
综上所述,X-33的再入模态的姿态动力学方程为:
(2.12)
其中:,且有:
(2.13)
(2.14)
(2.15)
其中:为姿态角回路的控制输入系数矩阵:
(2.16)
为了结果更具推广性,上述NSV的姿态动态方程可以写成如下严格反馈形式:
(2.17)
其中:,,,,,。
考虑NSV存在参数不确定和外部干扰,(2.17) 可以写成复合干扰形式如下:
(2.18)
定义NSV操纵面损伤故障模型如下:
考虑操纵面损伤故障,定义故障后的实际上每个控制通道的控制作用为:
(2.19)
其中为未知的常数,定义为损伤因子。当,则认为故障未发生。于是实际控制通道作用可以表示为:
(2.20)
其中,则X-33操纵面损伤模型可以表示为:
(2.21)
我们定义,,则 (2.21) 又可以表示为如下形式:
(2.22)
现进行仿真验证:
接下来,利用***明所提方法的优越性,所用来验证的X-33飞行器有四对操纵面,两个方向舵,两个襟翼,左边的两个内侧副翼外侧副翼和右边的两个内侧副翼外侧副翼。记, 其中:,表示右边和左边的内侧副翼,,表示右边和左边的襟翼。,表示右边和左边的方向舵。,表示右边和左边的外侧副翼。假设每个操纵面通道上的舵回路动态为:
X-33各个操纵面的最小最大偏转角度为:
X-33的转动惯量为:
X-33的飞行环境为马赫,高度千米。攻角的跟踪值设定为4 deg,航迹滚转角跟踪设定值为3 deg,侧滑角设定值为0 deg。考虑转动惯量存在1%的参数摄动,即,角速率环的外部扰动为,姿态角和角速率的初始值为deg 和deg/s。
情况1:姿态角回路环控制器的增益矩阵,角速率回路的控制增益矩阵,指令滤波器的参数选择见图3:
自适应神经网络观测器增益矩阵,,神经网络权值的初始值选为,假设如下的操纵面损伤故障发生:右内侧升降副翼,左襟翼,右方向舵分别失效40%,20%,40%。
经仿真得到如图4故障情况1下的姿态角响应曲线(为传统的主动容错控制方法,为未容错控制,实线为本文所提方法)和如图5故障情况1下的操纵面的偏转角度(为传统的主动容错控制方法,为未容错控制,实线为本文所提方法)。
仿真比较采用本申请所提的方法和传统的主动容错控制方法进行比较,得出***在本申请所提方法,传统的容错控制方法和未采用容错控制方法三种情况下的姿态角响应曲线。仿真结果见图4和图5,由图4可以看出在故障情况下,传统的主动容错方法的控制效果没有所提容错控制方法好,其产生的原因是故障估计单元存在估计偏差和可重构控制器不能有效的降低干扰所带来的影响。可以得出结论,在故障发生后,***姿态角响应未发散的情况下,本申请所提的方法明显优于传统的容错控制方法。对于有外部扰动的不确定***具有明显的容错特点。
情况2:前面假设的故障由仿真图可以看出严重程度不高。这里假设发生如下的操纵面损伤故障发生:右内侧升降副翼,右外侧升降副翼,左襟翼,和右方向舵分别失效60%,60%,20%,和60%。仍然采用本文所提的方法和容错控制方法进行比较。
经仿真得到如图6故障情况2下的姿态角响应曲线(为传统的主动容错控制方法,为未容错控制,实线为本文所提方法)和如图7故障情况2下的操纵面的偏转角度(为传统的主动容错控制方法,为未容错控制,实线为本文所提方法)。
由仿真曲线图6和图7可以看出,当故障发生后,未考虑故障的控制器已经不能使得姿态动态方程的姿态角跟踪设定值,整个***都已经不稳定。而传统的容错控制方法虽然能使得***稳定,但是由于不确定和外部扰动的影响,已经造成输出曲线不能渐近跟踪设定值,跟踪偏差一直存在,
总结情况1和情况2,可以看出本申请所提出的鲁棒容错控制策略具有很好的容错性能,且该方法还可以解决故障下饱和问题,因为故障下的控制***,由于控制力的损失必然会造成饱和问题尤为突出。而本申请所提的方法可重构控制器采用的是基于约束指令滤波的反演控制算法,可以有效避免由于饱和而引起的自适应误差累积问题。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。