黄 强 刘洪刚 吴建军
国防科技大学航天与材料工程学院,长沙410073
液体火箭发动机在地面试车或实际飞行过程中,为了监测发动机的内部工作状态,需要采用各种传感器来监测发动机工作过程中的系统各关键部件和重点部位的压力、温度、转速和振动加速度等参数。现有的各种发动机故障检测算法都是以传感器采集到的数据为基础,如果传感器的采集值出现错误即传感器发生故障则很有可能会导致发动机故障检测出现误判或漏判,因此有必要针对发动机传感器进行故障检测和数据恢复的研究。神经网络由于非线性大规模并行处理方面的特点,以及其鲁棒性、容错性和自学习能力,因此可用到测量技术中。神经网络可以避免分析冗余技术实时建模的需要,而由神经网络的学习完成,它也可以模拟目标系统传感器中的相关性来进行传感器故障的检测和信号的恢复。
无论是单个或多个传感器发生故障,发生故障的传感器所测量的值都将偏离预定的值。然而由于发动机系统是一个内在统一的完整功能系统,因此无论这些传感器是否为相同种类的传感器,也无论这些传感器是否具有硬件冗余备份。在各传感器均正常工作的情况下,各传感器的输出因发动机系统性能参数的内在统一性而具有内在的一致性,这种内在的一致性就是它们之间满足一种已知由描述发动机工作过程数学模型而确立的理论关系式。如果某个传感器出现故障,则故障传感器与其余传感器之间的这种测量输出的内在一致性就会遭到破坏。传感器之间原有的理论关系式也就不再保持。因此传感器故障的特点就在于,发生故障的传感器的测量值偏离正常值,并且与周围的正常传感器不再满足原有的理论关系式,而其他正常传感器却仍然保持在预定的允许偏差范围内并且相互之间满足确定的理论关系式。传感器故障有多种不同的类型,主要分为完全故障、漂移故障、偏差故障和精度等级下降等。第1 种通常称为硬故障,后3 种称为软故障。液体火箭发动机传感器故障也是上述4 种类型。
传感器的故障检测问题,其实质包括以下3个问题:1)对于一个实际的物理系统,如何根据k 时刻和k 时刻以前的传感器输出即输出向量y 判断是否有传感器发生故障;2)如果判断有传感器发生故障,如何分离出发生故障的传感器,即判断是哪个传感器发生了故障;3)当找到了发生故障的传感器后,如何确定一个代替它输出的近似正确值来传给后继的系统。以上3个问题就是传感器故障的检测,分离和补偿问题(Sensor Failure Detection,Identification,and Accommodation,简称SFDIA)。
由于液体火箭发动机的非线性等特点,因此在文中采用神经网络来对发动机传感器进行故障检测和数据恢复,其结构如图1 所示。
图1 传感器故障检测、隔离和补偿(SFDIA)结构图
其各部分功能为:1)前期处理:对发动机传感器数据进行归一化处理;2)故障检测模块:使用经过归一化处理后的传感器数据,利用神经网络来进行传感器的故障检测;3)故障传感器的确定:如果故障检测模块已发现传感器出现故障,则需确定出发生故障的传感器;4)神经网络补偿器:对已确定的故障传感器,使用已训练好的神经网络结构对传感器进行数据恢复;5)后期处理:对已经过检测或是数据恢复后的传感器数据进行反归一化处理,以便后续使用。
神经网络传感器故障检测与数据恢复算法主要包括一个主网络(MNN,Main Neural Network)和n(对应于需要检测的传感器个数)个分散网络(DNN,Decentralized Neural Network)。主网络用来判断传感器是否发生故障以及确定故障传感器,而分散网络用来对已确定的故障传感器进行数据恢复。在本文中,以燃气发生器压力Pf、燃烧室压力Pk、氢泵出口压力Per 和氢泵后温度Tey 等4个参数作为研究对象。以某次正常试车的1000 组数据作为训练样本,另外一次正常试车的1000 组数据作为测试样本。
发动机传感器故障检测算法采用BP(Back Propagation)神经网络,输入节点为4个,输出节点为4个,隐含层节点根据训练结果进行调整,表1 给出了BP 神经网络传感器故障检测算法的误差情况。表中给出的是对应于各参数的训练或测试结果的最大误差值。根据表1 中的数据,当隐含层节点为15 时,BP 神经网络的学习效果较好,具有较高的训练精度,同时具有一定的推广性能,其训练和测试结果如图2 和图3 所示。
表1 BP 神经网络传感器故障检测算法误差情况
图2 BP神经网络传感器故障检测训练结果
图3 BP神经网络传感器故障检测测试结果
表2 BP 神经网络传感器故障检测算法输出与正常读数比较
为了确定传感器是否发生故障,定义了传感器置信度(CL,Confidence Level)。其定义如下:
图4 BP 神经网络传感器故障检测参数置信度
由表2 可以看出,利用BP 神经网络传感器故障检测算法在出现传感器故障时的输出数据和正常数据相比,差别较大,因此需要针对故障传感器训练专有的数据恢复算法。在本文中,传感器的数据恢复算法也采用BP 神经网络,它是将目标参数作为输出,而将剩下的3个参数作为输入,因此输入节点为3,输出节点为1,在实际的工作中发现,各参数的数据恢复神经网络算法,当隐含层节点为5 时,其训练效果较好,测试效果较好,其训练和测试结果如图5 和图6 所示。
图5 BP神经网络传感器数据恢复算法训练结果
图6 BP 神经网络传感器数据恢复算法测试结果
根据液体火箭发动机传感器的故障特性,实现了基于BP 神经网络的液体火箭发动机传感器故障检测算法,实现了基于BP 神经网络的传感器数据恢复算法。使用液体火箭发动机历史试车数据对算法进行验证,结果表明BP 神经网络能够对发动机传感器进行故障检测,训练精度和结果好的网络结构能够对传感器数据进行数据恢复,并且本文实现的液体火箭发动机传感器故障检测、定位和补偿算法能够在一定程度上提高发动机故障检测和诊断方法的可靠性和鲁棒性,并能够应用到液体火箭发动机的健康监控系统。
[1]Yu D L,Gomm J B,Williams D.Sensor Fault Diagnosis in a Chemical Process via RBF Neural Networks [J].Control Engineering Practice,1999,7:49-55.
[2]刘冰.液体火箭发动机智能化故障诊断与健康评估系统研究[D].国防科学技术大学研究生院,1999.
[3]Ehsan Mesbahi. An Intelligent Sensor Validation and Fault Diagnostic Technique for Diesel Engines[J].Journal of Dyanamic Systems,Measurement,and Control,2001,123:141-144.
[4]邱浩,王道波,张焕春.BP 神经网络用于传感器故障诊断的仿真研究[J].中国空间科学技术,2003,6:26-30.(Qiu Hao,Wang Daobo,Zhang Huanchun. Simulation of Sensor Failure Detection Using BP Neural Network[J]. Chinese Space Science and Technology,2003,6:26-30.)
[5]王军,吕震中,曹荃. 基于神经网络的传感器故障诊断方法与应用[J]. 自动化仪表,2003,24(10):21-24.(Wang Jun,Lv Zhenzhong,Cao Quan. Neural Network Based Method for Transducer Fault Diagnostics and Its Application[J].Process Automation Instrumentation,2003,24(10):21-24.)
[6]黄治军,雷勇.传感器故障检测的仿真研究[J]. 计算机仿真,2005,22(1):110-112. (HUANG Zhi-jun,LEI Yong. Simulation Research of Sensor Fault Detection[J].Simulation of Computer,2005,22(1):110-112.)