万 磊,戴 滨,蒋 寒
(1.浙江省涡轮机械与推进系统研究院,浙江 湖州 313219;2.浙江大学 航空航天学院,杭州 310058)
多颗航天器协同工作是目前航天领域常见的工作模式,航天器集群发生单体故障而导致的任务失败问题,一直是国内外研究的热点。传统的故障诊断方法依赖于数据驱动、分形维数以及故障树等技术,在应用过程中的效果均不理想,且检测精度较低,无法满足应用需求[1-2]。
为此,本文设计了一种基于自主诊断重构技术的航天器故障检测系统,完善系统的硬件设备,介绍了系统的检测器、采集器、滤波器以及电源电路等主要硬件模块,并结合小波函数和神经网络,设计出一种全新的小波神经网络,对采集数据集进行数据训练,预测出真确的航天器飞行姿态角,从而进行精确的故障检测,并提出了故障重构措施,进一步保证航天器集群顺利完成任务。最后经过实验,进一步验证了该系统的应用性能,从而促进了自主诊断重构技术的进一步发展和应用。
航天器故障检测系统分为硬件设备设计与软件算法。硬件设备设计采用EEC-I型检测器进行交流信号的监控、采用基于MATLAB的数据采集器进行数据的采集、采用FIR滤波器进行对数据的转换,最后采用4NIC-UPS27型号一体化不间断电源为航天器的飞行提供电力;软件部分融入神经网络和小波函数,预测航天器的姿态角的安全阈值,同时引入了故障检测算法,实现航天器故障的自主判断。
本文设计的基于自主诊断重构技术的航天器故障检测系统由检测器、采集器、滤波器以及电源四部分组成,基于自主诊断重构技术的航天器故障检测系统构架如图1所示。
图1 基于自主诊断重构技术的航天器故障检测系统硬件
为提升航天器的使用和维修的方便性,设计故障检测器检测航天器的工作状况,本文采用EEC-I型检测器对航天器的交流信号进行监控,并探测故障信号来源锁定故障部位。EEC-I型检测器具有统一的16帧故障诊断连接器,兼具数据传输及通讯功能,且为便于控制系统识别故障信息,采用统一的故障码含义,除了国际通用故障码外,允许开发商自定义故障码,并可随时消除检测器的故障码功能[3-4]。检测器结构如图2所示。
图2 检测器结构
观察图2可知,本文设计的检测器内部为MCP2510控制器,客户端与网络服务器连接,通过关联算法搜寻和分配子任务[5]。MCP2510控制器通过SI接口与MCU进行数据传输,为了保证控制器的正常运行,其工作电压控制在2.5~5.5 V内、电流控制在0~5 mA内。存储接口选用PCIE进行数据的存储;时钟选用20 MHz有源晶振型号,为电源提供电压,供给各个端口。当航天器正常运行时,系统内部的输入和输出信号的电流或电压在某一固定范围内均匀变化,而当航天器出现异常故障时,控制电路信号的电流或电压出现急剧异常变化,且数值往往超出固定范围,若该现象的存在时间长于两个信号交换周期,则航天器的电子控制系统认为航天器出现故障,并将故障信息转化为故障代码存储入控制系统的存储器,同时进行故障警报,显示故障信息[6]。
采集器是获取航天器故障信息重要的数据来源。传统航天器故障检测系统应用的数据采集器,往往只具备数据采集功能,无法对数据进行分析和处理,增大了数据处理模块的工作量,不利于提升航天器故障诊断效率。为此,本文设计了一款基于MATLAB的数据采集器,采集器具有6个硬件端口,可使用移动设备对其进行数据提取和读写操作,同时采集器具有12个数据采集端口,增大了航天器故障检测系统的数据采集量。采集器端口如图3所示。
图3 采集器端口
采用MATLAB设计采集器,为采集器提供应用程序接入端口,应用程序接入端口选用Telnet,实现采集器端口的通信。用户可以在MATLAB环境中采用c语言、Java等编译语言进行程序编写,实现采集器的数据处理功能,用显示屏实时显示采集到的数据,再对采集数据进行一系列的关联分析、数据分类等操作,也可以利用数据采集工具箱,调用函数命令,直接控制采集器与PC端进行通信,同时便于采集器与其他服务器建立关系,进一步增强数据扩展性[7-8]。
由于采集器采集的数字信号的频率多种多样,因此在检测系统中只有一个采样频率难以满足应用需求,为实现数字信号的数模转化,设计了FIR滤波器根据冲击响应函数的时域特性进行数据的采样率转换,且在转化过程中保证数据的完整性[9-10]。
FIR滤波器主要由乘加单元组成,传统的滤波器采样直观式结构进行构造,易造成资源面积占用过大,影响滤波器的数据转化效率。而本文利用FPGA硬件构造FIR滤波器,采用串行结构将需要的转换的数据信号与其对应的滤波系数进行相乘,而且为便于清除计算的误差,在完成一级乘法运算后,锁定该层次的运算结构,之后一级的乘积累加,不仅能够节约数据资源,且能够提升数据转化速度,为了降低对信号的衰耗,将滤波器的通带范围设置为0.3~0.5 pi之间、阻带设置为1.5~4 kHz之间,指定5%的通带纹波和40 dB的阻带衰减。FIR滤波器主要包含存储模块与运算模块两部分,运算模块完成数据的相乘而累加,而存储模块的作用是通过时钟控制片选信号和地址译码,查找并读写出与ROM地址相对应的数据,将与数据对应的滤波信号和数据同时输入运算模块[11-12]。
电源模块是航天器故障检测系统的电能来源,在航天器故障检测系统中,设计交流电源和直流电源两种电源,即可以使用36V的直流供电形式,也可以采用220 V的交流供电形式,以满足不同设备的供电需求。且为提升该检测系统的抗电磁干扰能力,在检测器下方,采用4NIC-UPS27型号一体化不间断电源,该电源不仅电容量大、抗干扰能力强、且功率密度大,同时该电源支持0~0.5内的交流电与直流电的快速转换,当系统选择电池供电模式时,则可将电池作为主电源进行供电,当选择其他供电模式时,电池可作为后备电源,以应对系统的突发情况,同时为了保证电源电路的安全,将输入和输出电压设置为220 V。电源如图4所示。
图4 电源电路图
在上述硬件设计的基础上,设计基于自主诊断重构技术的航天器故障检测系统软件,具体的流程如图5所示。
图5 基于自主诊断重构技术的航天器故障检测系统软件设计流程
小波神经网络的优势在于充分考虑了神经网络的结构及小波变换的需求,采用小波函数替代传统神经网络隐含层内的S型函数,并且由小波函数的尺度伸缩因子替代输入层到隐含层的权值,用时间平移因子替代隐含层的阈值,且在这种替换模式下,从实质上将小波神经网络视为一种连续型的非线性映射,通过融合神经网络和小波函数,能够优化两种算法本身的适应能力和扩展能力,针对局部最小值误差,具有更强的容错能力,从而进行更精确的故障检测[13-15]。
权值连接是小波神经网络中最为重要的连接方式,同层次神经元的连接及与相邻层神经元的连接均通过权值进行连接。
本文假设小波前馈神经网络由输入层、隐含层以及输出层三部分构成,小波前馈神经网络如图6所示。输入层和输出层均为一层,输入层包含n个神经元,输出层包含m个神经元,隐含层共有g层且每层包含k个神经元,则小波前馈神经网络中神经元权值的计算方式如下:
图6 小波前馈神经网络结构
φij=1 (j=1)
(1)
φij=xij(2≤j≤n+1)
(2)
φij=Cij(j>n+1)
(3)
(4)
其中:i表示该神经元所在层数;j表示该神经元在i层的位置。
假设小波前馈神经网络共有L层,则网络的总输出如下:
(5)
其中:
(6)
通过上述构建的小波网络算法对航天器的姿态角数据进行分析,通过训练网络预测航天器的姿态角与预测姿态角的残差是否超过安全阈值,可根据不同类型的姿态判断出故障位置[16-17],自主诊断重构推理机如图7所示。但从自主诊断重构技术的推理角度来说,小波神经网络进行数据训练时得到的残差数据分布概率模型p(r丨θ)可以看做是关于参数θ的函数,换个角度说,对于得到的姿态残差数据,数据训练中关于参数的所有信息都包含在残差数据分布概率模型p(r丨θ)中。
图7 自主诊断重构推理机
根据以上理由,在建立残差数据分布概率模型p(r丨θ)所使用的残差数据数据量n充分大时,可以认为获取的航天器姿态残差数据的测量过程中以及包含的参数θ的所有信息,此时可以依据,定义置信界100γ%的残差值满足如下公式的阈值:
(7)
在利用残差数据分布概率模型进行航天器故障诊断时,需要对设定的置信界阈值进行重构,在设定的置信界阈值条件下,若其满足:
(8)
对于残差数据r,在重构后设定的置信界阈值条件下,若其满足:
p(rm丨θ) (9) 则可认定该数据为故障数据,根据数据的获取来源和所属类别,基于自主诊断重构及时锁定故障发生位置和基本故障类型,并及时响应故障警报[18-20]。 为验证本文设计的基于自主诊断重构技术的航天器故障检测系统的实际应用效果,设计航天器故障检测仿真实验进行性能检验,将本文设计的故障检测系统的检测效果与基于分形维数、数据驱动、故障树等3种传统类型的航天器故障检测系统的检测效果进行对比,分析4种检测系统的在线检测性能。 根据故障检测系统的运行机理,当航天器发生故障时,检测系统运用相关网络算法,对采集的航天器本身姿态角与其相对中心航天的姿态角数据进行分析、计算,预测出正常状态下航天器的相应姿态角,以此作为航天器故障检测的依据。 根据以上故障检测原理,在2.5 s时向X轴执行器注入气流故障,采用4种故障检测系统进行故障检测,4种检测系统针对航天器X轴、Y轴、Z轴姿态角的预测结果如图8~10所示。 图8 航天器X轴姿态角的预测结果 图9 航天器Y轴姿态角的预测结果 图10 航天器Z轴姿态角的预测结果 从以上实验结果可以看出,在注入故障后,本文设计的基于自主诊断重构技术的航天器故障检测系统所预测的X轴、Y轴、Z轴姿态角与航天器实际姿态角反差较大,能够有效检测出故障的产生。而基于分形维数的故障检测系统针对Y轴的姿态角预测结果较为准确,基于故障树的故障检测系统针对Z轴的姿态角预测结果较为准确,而基于数据驱动的故障检测系统在X轴、Y轴、Z轴均不精确,存在较大检测误差。造成以上性能差别的原因在于,本文设计的航天器故障检测系统应用基于MATLAB的数据采集器进行数据采集,实时获取航天器的姿态角,且能够对采集数据进行基础分析,配合滤波器和检测器的使用,提升数据转换效率和检测精度,同时构建小波神经网络对姿态角数据进行训练,对比预测姿态角和实际姿态角的残差,当残差值超过设定阈值后,自动诊断航天器故障。而传统的故障检测系统,对航天器姿态角的数据采集不够精确,且不能准确预测出正常运行状态下航天器的姿态角,降低了检测精度和检测效率。 为进一步验证本文设计的检测系统的准确性,应用小波神经网络对注入故障后的航天器进行故障诊断,故障诊断结果如图11和图12所示。 图11 无故障情况诊断结果图 图12 注入故障后诊断结果图 从上述诊断结果可以看出,当2.5 s后,航天器的实际姿态角与系统预测角的残差突破了阈值范围,针对系统,在2.5号航天器发生了故障,进一步验证了本文研究的故障检测系统的精确性。 经过上述检测性能对比后,设计故障重构仿真实验,设计10组航天器集群模拟实验,分别在航天器集群中某一航天器的不同位置注入不可修复的永久性故障,在采用4种故障检测系统对上述10组航天器模型进行故障检测后,对比航天器的后续运行状态。 根据现场实验结果,本文设计的基于自主诊断重构技术的航天器故障检测系统在完成故障检测后,为避免故障航天器干扰其他航天器的运行,自动采取故障重构措施,即改变航天器的运行路线,自动退出航天器团队,故障重构任务示意图如图13所示。而其他3种检测系统在检测出故障后,结束了整体的检测工作,任由航天器进行发展,由此可以看出,本文设计的故障检测系统更利于维护航天器集群的运行安全,更能满足市场需求。 图13 故障重构任务示意图 综上所述,该系统能够有效进行航天器故障检测并采取故障重构措施,具有较高的应用价值。 航天器故障的自主诊断和重构的实现大大增强了航天器集群运行的安全性,可以有效减轻航天器测控站的人力投入、资金投资等,并克服了航天器测控的空间限制,并实现了在故障航天器离开集群后,余下航天器重新进行任务分配,继续完成分配任务,且故障航天器在允许状态下,可以改变航行路线飞回测控站,且随着科学技术的精进,航天器的故障检测和重构技术将融合其他技术,不断提升数据处理能力和故障恢复能力,最终实现航天器的自主智能控制的自主运行,促进我国航天领域的进一步发展。3 结果与分析
4 结束语