张志健,王小虎,曾宪法,何 纯
(北京控制与电子技术研究所,北京 100038)
随着战场体系化对抗的发展,进攻飞行器面临着强大的多阶段、多层次物理拦截和干扰致盲等威胁;为提升生存能力、提高突防/打击效率,飞行器飞行轨迹必须灵活可变,以主动破袭复杂环境下的拦截系统、并有效打击各类目标的关键部位。现代飞行器姿态控制具有灵活可变大包线飞行、强耦合、强时变、非线性、大偏差、大不确定性的特点[1-2],同时还要满足柔性飞行器控制[3]、故障容错的需求[4]。因此,建模复杂度的提升、新型飞行器控制问题、容错需求、自主控制需求、信息化发展趋势,对飞行器的控制提出了新的挑战[5]。
随着计算机性能的提升、测量信息的丰富、信息交互技术的发展,在控制系统中综合智能方法提升飞行器在复杂动态条件、大不确定性、部分执行机构失效情况下的控制效果,成了姿态控制的发展趋势。智能方法中,专家系统可综合专家知识、经验、飞行器地面试验、仿真数据,有效提升其他控制方法的适用性[6];结合神经网络,可通过机器学习自主扩充知识库,应对更多复杂的问题,例如航天器故障诊断[7]。在飞行器智能控制结构方面,文献[8]详述了智能自主飞行器的特性,在功能级别描绘了一种智能自主飞行器原理图;文献[9]详细分析了现代飞行器控制领域的应用成果和现代智能系统研究的理论成果后指出,基于动态专家系统、决策、自组织等的功能—智能系统是未来智能系统综合发展的前景方向之一。文献[8]、文献[9]中姿态控制部分是通过最优控制实现,需要控制对象的准确线性化模型,导致控制器设计困难。
针对飞行器的姿态控制,本文提出了一种包含专家系统、在线辨识估计和控制信号处理的智能姿态控制方法。其基础控制器采用现有的非智能方法,但增加了高层级的专家系统模块,可在飞行器飞行空域、动态特性、任务需求发生变化,或执行机构出现故障时及时调整控制策略和控制参数,从而获得良好的控制性能。该控制器具有功能明确、结构简单的特点,是一种近期可实现的综合型智能控制方案。采用本文提出的智能控制结构,设计了某飞行器的中段容错控制器,姿态发散概率由无容错控制时的45%降低到0%,调姿任务完成率100%。
专家式飞行器智能姿态控制系统的结构如图 1所示,含专家系统、辨识估计、控制信号处理三部分(注:本文着重讲控制方法,不讨论智能控制系统中的智能测量元件和执行机构)。
图1 专家式飞行器智能姿态控制系统结构图Fig.1 Block diagram of the expert intelligent attitude control system for flight vehicle
专家系统是该控制结构的顶层、核心,是系统运行的大脑。针对飞行器特性、任务需求、故障状态的变化,专家系统根据专家经验、试验数据形成的规则,校核辨识估计结果、诊断飞行器故障、更新控制策略及相应参数;使飞行器在各种条件下维持良好的控制效果。专家系统的规则来源于专家知识、实验数据及大量仿真统计;部分难以描述的规则或需要大量信息佐证的决策,则采用神经网络参数表示,通过机器学习、离线学习更新。
专家系统由数据库、知识库、规则库和推理机构成。
1.1.1 数据库
数据库中的信息来源有三类,1)地面试验、理论分析推导出来的结论和依据;2)大量数学仿真验证所习得的参数;3)在线测量,或在线辨识、状态估计,经推理机认可的信息。数据库信息按来源与用途分类如表1所示。
表1 数据库信息分类Tab.1 Classification of database information
1.1.2 规则库和推理机制
规则库是根据专家知识获得的动力学特性、控制策略、控制作用,集中反映了动力学认识、控制知识,是专家系统性能是否优良的核心。规则库根据数据库提供的数据完成如下工作:1)判断辨识/估计结果是否可信;2)根据当前状态和辨识/估计结果,更新数据库;3)判断系统是否出现故障,并诊断故障;4)确定控制策略,调整控制参数和指令分配方法。规则库通过大量产生式规则“if…then…”给出。
推理机制根据系统当前状态、历史状态,辨识结果和数据库中的数据,在规则库中搜索相应的策略。本文采用正向推理方式,即由事实数据出发,实时处理系统的输入、输出,确定系统的运行状态,在规则库中找出相应的故障状态、控制规则、参数调整策略、指令分配策略。
1.1.3 知识库
将专家对控制系统稳定性、操控性、飞行器上主要设备性能的认识,抽象为控制模式、响应特性和参数自调整规则,变成专家系统的知识信息。专家知识是专家在确定飞行器主要参数时,对各种确定性、不确定性因素做出最佳反应的行为的集合。它是工程设计人员和飞行控制专家集体智慧的结晶,必须精心设计,巧妙构思、转化,才能使其实用性更强、应用范围更广。
辨识估计模块对影响飞行器控制性能的主要参数进行在线辨识。为拓展专家知识的在线应用,必须尽可能地辨识或估计飞行器飞行中的时域、频域、结构特征,并转化为可供专家系统推理、计算的量化值,方便与数据库中的信息对比。专家系统推理机根据飞行机动情况和专家知识库,对辨识结果进行处理,判定数据库是否更新,飞行器是否正常工作,辨识估计模块、控制信号处理模块是否需要调整。对于飞行器姿态控制,在线辨识的数据包括:发动机的推力大小、当前状态在飞行包络中的位置、结构振动频率、控制效率等。
控制信号处理模块是飞行器控制的基础,具备完整的控制功能;控制对象复杂度较低时,可独立完成控制任务。专家系统根据任务需求、对象特性变化、故障诊断结果,调节控制信号处理模块中的控制策略、控制参数,从而完成不同的控制任务。
1.3.1 数据滤波
当弹性振动与刚体控制带宽需求相互分离,设计对刚体稳定控制影响小的弹性自适应滤波网络,实现刚体飞行器姿控设计、弹性抑制滤波的相互独立,可有效简化控制系统设计的复杂度。运行中,专家系统根据弹性振动辨识结果和数据库存储的历史信息,实时调整滤波网络。因为闭环系统中弹性抑制与振动辨识相互影响;要实现良好的自适应抑制,滤波器参数的调整依赖于专家对在线弹性振动特性、飞行器结构特性、动态控制过程对辨识结果影响的认识,以及地面试验预示规律。
1.3.2 控制器
根据对象特点、任务需求的不同,可采用不同的控制方案,如经典PID、LPV控制器、变结构控制器等。由专家系统决策,更新控制参数。
1.3.3 指令分配
不旋转飞行器的控制量一般按3个通道给出,而实际飞行器的操纵机构通常存在共用或冗余;例如可摆动单喷管用于控制俯仰、偏航2个通道;4个空气舵用于控制飞行器的俯仰、偏航、滚转通道,8个姿控喷管控制三通道姿态等。指令分配策略的作用是根据三通道控制需求,得到各操纵机构唯一确定的执行指令。指令分配策略由控制系统专家设计,存储于数据库、规则库中,推理机进行分配策略选择。
以上为本文智能控制方案的结构和实现途径,本文以某飞行器中段容错控制为例,介绍了该控制结构的实现方式。
如果姿态控制系统能实现调姿需求,故障是否被精确定位并不重要;基于这一想法,将故障分为可控故障和不可控故障两类,将被动容错与主动容错结合,最终实现综合容错控制方案。
受控飞行器,无故障或者发生故障但仍能实现调姿任务、满足指标需求,则该故障为可控故障;否则为不可控故障。若专家系统包含多个被动容错的鲁棒控制策略,可综合覆盖所有故障;则发生故障时,总存在一个控制策略保证系统可控。因此,若专家系统能及时确认当前控制策略发生不可控故障,并切换到可控控制策略,则必然能保证系统稳定可控。故障诊断常采用状态观测器进行状态重构,从而实现了执行机构或测量装置的故障诊断。本文为了更好地表征飞行器是否处于控制器的可控范围内,以控制策略在可控故障下的执行机构响应作为跟踪观测器的输入,重构系统状态。若发生不可控故障则重构的状态迅速偏离实际状态,从而实现可控故障与不可控故障的快速确诊。
具体容错问题和设计方法如下。
某飞行器在稀薄大气层飞行期间,采用8个姿控喷管控制3个通道,布局如图 2所示;需进行大角度快速观星调姿,运动学耦合较大,用四元数描述其运动:
Mc=Bu(t)
(1)
其中,Mc为姿控喷管控制力矩;Md为气动力、干扰力矩之和;q=[q0,q1,q2,q3]T为飞行器姿态四元数;ωB=[0,ωbx,ωby,ωbz]T为增广角速度。
u(t)=[u1(t),…,u8(t)]T为8个姿控的响应,ui(t)∈[0,1],具有开关特性,与指令之间存在最大0.2s的延迟;故障模式考虑不可关闭和不可开启两种状态。
图2 飞行器姿控喷管姿控布局(尾视图)Fig.2 Layout of attitude control engine of the flight vehicle (tail view)
本算例模型参数如下:
B=
由于发生一个姿控喷管故障已经是小概率事件,因此,忽略多个姿控喷管同时故障的情形。其故障诊断具有非线性、过驱动特性,通用、理论完备的故障诊断方法仍然是故障诊断领域的一个难点[10-12]。
2.2.1 故障状态估计模块设计
姿控喷管响应延迟会影响状态重构,为减小对故障诊断的影响,本文使用2个结构相同的跟踪观测器,1个用于跟踪各种状态下的姿态,1个重构当前控制策略下故障可控时的状态。
v=a0Δθ+a1Δω
am(t)=fa(c)(v)
(2)
其中,am(t)为跟踪模块角加速度控制量;Δθ、Δω为状态估计值与实测值的角度偏差、速度偏差;a0、a1为PD控制增益,为保证跟踪的快速性,可取较大值,本文取值a0=100、a1=100;函数fa(c)(v)为三通道可用角加速度矢量,fa(v)为任意可能角加速度,fa(c)(v)为发生可控故障且指令为v时的可取角加速度。该信息作为飞控专家系统的已知信息存储于数据库中,可表征飞行器在不同姿控开关指令下的动态响应;判定系统是否发生故障的先验信息。
fa(v)取值满足:
fa(v)=v*
(3)
式中,Ti为姿控喷管的不同开关组合对应的标准角加速度(不考虑偏差),T为Ti全体集合;Δ为气动力、姿控推力偏差等所有干扰力矩产生的最大干扰角加速度。
其中:Ti=[Ti,x,Ti,y,Ti,z]T,为不同喷管开关的标称控制力矩;将方向相反成对安装的喷管构成n12,n34,n56,n78这4个虚拟发动,分别可取1、0、-1三种值,对应绕x轴产生负力矩、无力矩、正力矩,共3×3×3×3=81种开关组合。以x通道为例,Tix可表达如下:
Ti,x=n12A12,x+n34A34,x+n56A56,x+n78A78,x
i=33·(n12+1)+32·(n34+1)+3·(n56+1)+
(n78+1)
(4)
单个喷管在某通道产生的标称角加速度具体取值为:
A12,x=A56,x=0.2269,A34,x=A78,x=0.2968
A12,y=A56,y=0.0836,A34,y=A78,y=0
A12,z=A56,z=0,A34,z=A78,z=0.084
以3、4、7、8号喷管控制滚转和俯仰通道为例,fa(v)取值范围如图 3所示。由于执行机构的任意响应都被考虑,状态跟踪模块可跟踪任意故障条件下的飞行器姿态。
图3 滚转、俯仰通道角加速度取值范围Fig.3 Value range of angular acceleration for roll and pitch channels
fc(v)取值满足:
fc(v)=v*
(5)
其中,T(u,Δt,F)为考虑控制指令u、喷管开/关延迟Δt、当前控制策略的可控故障F时,可能的角加速度取值集合,是T的子集,在飞行中实时计算。仍以3、4、7、8号喷管控制滚转、俯仰通道为例:在偏航干扰力矩小于一个喷管产生的控制力时,1、2、5、6号喷管任一故障都属于可控故障,n12、n56可取值1,0,-1;若(t-Δt,t)时间内,滚转指令为1、俯仰指令为0,则可控故障状态下,4个虚拟姿控取值范围是:n12,n56∈{-1,0,1},n34=n78=-1(通道控制需求和喷管指令对应关系见表 2)。俯仰、滚转通道fc(v)取值范围如图 4阴影部分所示。仿真中,Δt取值0.12s,由于飞控机计算周期0.005s,取40个历史数据,综合考虑所出现的指令。
图4 指令约束下滚转、俯仰通道角加速度取值范围Fig.4 Value range of angular acceleration for roll and pitch channels under conmand constraint
可控故障重构模块具有如下性质:无故障或出现可控故障时,可有效跟踪实际状态;出现不可控故障时,重构的状态迅速偏离实际状态。因此,可以将故障诊断问题转化为重构状态Xc和跟踪状态Xa的偏差大小判断。
2.2.2 规则库和推理机制确定
(1)故障诊断流程启动门限
根据Xa与Xc角偏差Δσx,y,z判断当前分配方法是否可控:当某通道角偏差Δσi大于门限值Δf,判定出现当前分配模式为不可控故障,切换指令分配方式、并将Xc赋值为Xa,然后进行对应分配模式的可控性监测。Δf由如下方式确定:
(6)
β为单个喷管开启时该通道产生的最大加速度;Δt为喷管指令与响应不一致时间最大值。为避免喷管响应延迟、测量噪声导致误判,tm取值大于3倍喷管响应延迟时间。本算例取Δf=1.8°。
(2)覆盖可控故障的分配策略设计
当喷管硬件冗余时,存在多种不同的指令分配方式,设为di,其中i代表不同的分配方式。设指令分配方式集合为D={dj|j=1,2,…,m},定义映射:
cji=dj(Fi)
当cji=1时,表示指令分配方法dj下,故障Fi可控;cji=0表示不可控。F0表示无故障,由于无故障状态下,采用dj时系统受控,因此有
dj(F0)=1,∀dj∈D
定义指令分配方式dj的可控故障集为:
Cj={Fi|Fi∈F,且dj(Fi)=1,其中dj∈D}
此时,只要各分配方法dj对应的可控故障集Cj满足:
(7)
即对∀Fi∈F,∃dj∈D,使得dj(Fi)=1。
本实例设计了2个指令分配策略,策略d1:俯仰、滚转共用3、4、7、8号喷管;策略d2:偏航、滚转共用1、2、5、6喷管。不同控制需求下,喷管开启方式见表 2、表 3。表中下标x、y、z代表滚转、偏航、俯仰通道。
表2 耦合通道指令分配方法(注:策略d1取uz-ux)Tab.2 Control commands allocation for coupling channel
表3 独立通道指令分配方法Tab.3 Control commands allocation for independent channel
(3)分配策略调整规则与故障定位规则
三条主要规则:
1)当任意通道角偏差大于故障门限,即Δσi>Δf,则确认发生故障。
2)当故障可定位,则直接切换到对应的可控分配策略。即:当max(|Δσx|,|Δσy|,|Δσz|)>Δf且∃i∈{1,2,…,8}使得下式成立:
∠([Δσx,Δσy,Δσz]T,T(Fi))<Δα
其中,T(Fi)为第i个喷管工作时单独产生的力矩矢量;Δα为夹角判定门限。
则直接切换到分配策略dj,其中dj满足:
dj(Fi)=1
3)若故障不能定位,即不满足2)中条件时,顺序切换分配方式,取di=di+1(当前策略为di)。
因为发生故障时,可在很短时间内判断当前分配方法下系统是否可控,而D元素个数有限;所以当满足公式时,总能在有限步骤、有限时间内找到使任一故障可控的分配方法。所以,即使故障不能定位,也能保证容错控制性能。
2.2.3 控制信号处理模块
控制器处理模块是实现容错控制的基础,但不是设计的重点,下面简要说明。
控制策略:
飞行器采用喷管进行控制,具有开关特性,控制器采用变结构控制方式:
h*=Δθ*+a*ω*
(1)
其中:
1)下标*可分别取值x、y、z,代表滚转、偏航、俯仰通道;
2)u*为对应通道喷管开关需求,取值0表示关机,-1表示偏差为负需开启正向加速喷管,1表示偏差为正需开启负向加速喷管;
3)参数a*、b*取值为:ax=ay=az=0.035、bx=0.9,by=bz=1.2。
指令分配:
指令分配方式参见表 2、表 3。
仿真中偏差有:大气密度偏差100%,气动力系数偏差30%,转动惯量偏差10%,喷管推力偏差15%,响应时间差0.12s,推力大小不同步15%。
图 5、图 6所示分别为1号喷管故障时,控制不容错、控制容错仿真结果。不容错时,滚转、偏航通道150s开始出现负滚转角偏差、正偏航角偏差,此时策略为d2,开启1号喷管才能消除偏差,但1号喷管失效,因此姿态不可控。当采用容错控制,可切换指令分配策略,三通道姿态得到有效控制。
图5 非容错控制下姿态偏差曲线Fig.5 Curve of attitude response under common control
图6 容错控制下姿态偏差曲线Fig.6 Curve of attitude response under fault tolerant control
图 7所示为容错控制下,1号喷管故障时,重构状态与跟踪状态的三通道偏差。偏航有3次超过门限1.8°,触发了控制策略的切换。图 8所示为指令分配策略的变化情况,图中分配方法不等于d1、d2时,为不使用8个姿控喷管的精确调姿阶段。
图7 重构状态和跟踪状态间的角度偏差(下标x,y,z分别表示对应转轴)Fig.7 Augular errors between reconstructed state and estimated state
图8 容错控制下:故障诊断与分配方法变化曲线Fig.8 Curve of fault diagnosis and control strategy under fault tolerant control
图 9所示为1~8号喷管分别失效时,各对应771条极限组合干扰仿真的调姿偏差统计值。结果表明,观星调姿均满足指标需求。一个姿控出现故障时,调姿任务的完成率100%,对不可控故障漏判率为0%。表4所示为故障诊断关键指标统计结果。
图9 观星调姿观星前姿态控制精度Fig.9 Precision of attitude control for measuring star
表4 故障诊断关键指标统计Tab.4 Statistics of fault diagnosis
本文提出了一种基于在线辨识和专家系统的飞行器智能控制方法,应用专家知识,能明显提升系统的适应性、鲁棒性和控制效果,是一种近期可实现的智能控制方法。该方法特点和后续研究方向:
1)要充分发挥专家系统的性能,一是要精心设计专家知识库、规则库;一是要发挥在线辨识和估计的作用,充分获取可用于知识推理、规则搜索的信息。知识库、规则库的设计既是设计重点也是设计难点,其中的规则信息主要来自专家的认识和经验。
2)对于故障诊断类需要大量信息相互佐证的知识,可以通过机器学习的方式形成网络化参数存储在专家知识库中;借助机器学习知识,可以提升系统的适应性、鲁棒性和控制效果。