1.本发明属于航空发动机故障诊断技术领域,具体涉及一种故障诊断系统硬件在环仿真平台及方法。
背景技术:2.航空发动机分布式控制系统彻底改变了飞机航空发动机控制系统的体系结构,将先进的数据总线网络、智能传感器和智能执行机构等技术引入到航空发动机控制系统中去,极大地降低了全权限数字式发动机控制器((full authority digital engine control,fadec)的接口复杂程度,减轻了线缆的重量,降低了控制系统的成本。通过将fadec中的数据处理等底层功能分散到其他节点中去,fadec可以更为专注于实现与飞机上其他控制系统的协作、基于模型的预测控制/健康管理和主动控制等高级功能。由于航空发动机分布式控制智能装置的普及,分布式航空发动机控制系统具有从智能部件到整个系统的故障诊断与容错能力,为开展先进故障诊断方法及应用提供了前所未有的技术平台,因此全面、系统、深入的开展分布式航空发动机控制系统故障诊断技术研究非常必要。
3.硬件在环(hardware-in-loop,hil)仿真是一种可靠性很高的仿真方法,能够将针对航空发动机分布式控制系统所设计的故障诊断算法从理论层面转换为实际应用层面,验证故障诊断算法在实时系统中是否能达到应有的效果。硬件在环仿真的环境模拟真实系统的仿真环境,相较于纯数字仿真更接近实际工作状况,能够有效推动航空发动机分布式控制系统故障诊断方法的应用,避免全物理仿真试验所带来的高成本与高风险问题,缩短故障诊断装置的试验和研发的周期。因此,对航空发动机分布式故障诊断系统硬件在环仿真验证是必不可少的环节。
4.专利201420352736.0公开了“航空发动机硬件在回路试验系统”,包括用于执行发动机控制的电子控制器,用于仿真发动机行为的实时仿真装置,用于执行信号的调理和采集的信号调理和采集装置,用于执行故障注入的故障注入装置。信号调理和采集装置耦接至所述实时仿真装置,故障注入装置分别通过硬接线与信号调理和采集装置、电子控制器连接。实时仿真装置与故障注入装置之间的arinc总线通信和以太网通信,为实时仿真装置根据测试用例和试验脚本进行多种发动机控制系统的组合系统故障诊断试验的自动化提供了基础。该试验系统采用传统的集中式策略进行构建,“点对点”的连接方式将增加线束的重量,电子控制器不仅要处理传感器模拟信号,还要完成控制功能,使得电子控制器的工作负荷增大。
5.专利201620679457.4公开了“航空发动机lvdt信号硬件在回路试验装置”,包括电子控制器;实时仿真模块,用于仿真发动机的作动部件以输出作动部件的lvdt相对位移量;电压采集模块,用于采集来自该电子控制器的激励信号以提供用于该航空发动机lvdt信号硬件在回路试验装置的工作电压;a相幅值变换模块,用于基于来自该实时仿真模块的lvdt相对位移量对该工作电压执行a相幅值变换,以输出a相lvdt反馈信号至该电子控制器的a通道以供该电子控制器执行发动机控制仿真;以及b相幅值变换模块,用于基于来自该实时
仿真模块的lvdt相对位移量对该工作电压执行b相幅值变换,以输出b相lvdt反馈信号至该电子控制器的b通道以供该电子控制器执行发动机控制仿真。该试验装置针对lvdt信号进行硬件在环仿真,且不具备故障注入功能,功能实现上不够完整,且仅针对执行机构进行测试,无法完成航空发动机系统级的硬件在环仿真。
6.航空动力学报2017年第3期43卷43-49页介绍了“航空发动机故障诊断装置硬件在环实时仿真平台”,该仿真平台包括主工作站,故障诊断端和被监控端组成。其中主工作站由pc机组成,故障诊断端由icetek-f28335开发板组成,被监控端由研华610h工控机组成。通过labwindows/cvi搭建人机交互界面,实现航空发动机端状态参数的实时显示和在线故障注入。该仿真平台采用集中式策略搭建,特定的传感器对应特定的a/d、d/a功能,使得故障诊断端接口变得复杂。
7.目前针对航空发动机建立的硬件在环仿真平台都针对集中式系统,在高性能计算机上模拟发动机,嵌入式设备上实现控制算法和软件驱动程序,一旦fadec设计成型,元器件较难更改和替换,较难适应新技术的发展。集中式下的故障诊断系统硬件在环仿真平台由于不具备智能节点和网络通信功能,故障诊断端通过“点对点”的方式直接与航空发动机端相连,无法对通信网络的噪声、延迟和数据丢包进行测试,无法对分布式故障诊断算法进行验证。
技术实现要素:8.为了克服现有技术的不足,本发明提供了一种航空发动机分布式故障诊断系统硬件在环仿真平台及方法,包括主工作站、航空发动机端、故障诊断端和智能节点;主工作站与航空发动机端通过rj45接口连接;航空发动机端与故障诊断端通过rs232串口相连,与智能节点通过rs232串口和a/d转换接口连接;故障诊断端与智能节点通过ttcan总线连接;主工作站完成故障诊断算法的设计与仿真验证,航空发动机端用于实时运行航空发动机部件级模型程序,故障诊断端用于实时执行故障诊断算法,智能节点用于实现智能节点功能;最终通过比较故障诊断算法的诊断结果和航空发动机加入故障的实际情况,得出各种故障的性能评估结果。本发明避免了全物理仿真试验所带来的高成本与高风险问题,减少总线通信中不确定事件的发生。
9.本发明解决其技术问题所采用的技术方案如下:
10.一种航空发动机分布式故障诊断系统硬件在环仿真平台,包括主工作站、航空发动机端、故障诊断端和智能节点;所述主工作站与航空发动机端通过rj45接口连接;所述航空发动机端与故障诊断端通过rs232串口相连,航空发动机端与智能节点通过rs232串口和a/d转换接口连接;所述故障诊断端与智能节点通过ttcan总线连接;
11.所述主工作站完成故障诊断算法的设计与仿真验证、总线通信方案的设计与仿真验证、航空发动机端及故障诊断端的代码生成与下载任务;在仿真过程中,主工作站实现人机交互功能,为航空发动机端和故障诊断端提供飞行条件和油门杆角度信息,实时显示航空发动机监控参数和故障诊断结果;在仿真结束后,使用主工作站对数据进行后期处理;
12.所述航空发动机端使用工控机模拟,用于实时运行航空发动机部件级模型程序,完成航空发动机全状态模拟,并将航空发动机参数以模拟量的形式输出;航空发动机端加载的采集板卡通过a/d转换接口采集智能节点的执行机构信号,输出航空发动机传感器信
号;并通过rs232串口与故障诊断端和智能节点进行数据交互;
13.所述故障诊断端由f28335开发板组成,用于实时执行故障诊断算法;故障诊断端f28335开发板上的dsp内部集成了ecan模块与智能节点进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换;
14.所述智能节点由f28335开发板组成,用于实现智能节点功能;智能节点f28335开发板上的dsp内部集成了ecan模块与故障诊断端进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换;通过智能节点f28335开发板上的dsp内部的12位a/d模块实现传感器信号的采集;采用mcp2515芯片捕获can消息的帧起始位;采用dac7724芯片输出执行机构信号。
15.进一步地,所述主工作站、航空发动机端、故障诊断端和智能节点的连接方式如下:
16.所述主工作站与航空发动机端通过rj45接口连接,采用tcp/ip传输协议;主工作站为运行matlab/simulink的计算机,即商用台式机,航空发动机端为运行simulink real-time实时系统的计算机,即运行航空发动机模型的工控机;
17.所述航空发动机端与智能节点通过a/d、d/a转换端口和rs232串口连接;航空发动机端的d/a输出由pcl-812pg板卡实现,电压范围为0~2.5v;智能节点的a/d采集由dsp芯片上集成的a/d转换功能采集电压信号;智能节点的d/a输出由dac7724芯片实现,电压范围为0~5v;航空发动机端的a/d采集由pcl-812pg板卡采集电压信号;航空发动机端的rs232串口向智能节点发送工作模式、飞行条件,智能节点的rs232串口向航空发动机端上传智能节点中的a/d采集的传感器信号。
18.所述航空发动机端与故障诊断端通过rs232串口连接;航空发动机端的rs232串口向故障诊断端发送硬件在环仿真平台工作模式、飞行条件信息;故障诊断端的rs232串口向航空发动机端上传故障诊断结果信息;
19.所述智能节点与故障诊断端通过ttcan总线连接;智能节点通过ttcan总线,在预先设计好的时间窗内发送传感器信号和接收控制指令,mcp2515芯片连接至总线上,捕获参考消息的帧起始位;故障诊断端通过ttcan总线,向智能节点发出参考消息和控制指令,接收传感器信号。
20.一种航空发动机分布式故障诊断仿真方法,包括如下步骤:
21.步骤1:数字仿真验证;
22.在数字仿真条件下,搭建故障诊断算法:用一组kalman滤波器对基于处理器节点的发动机部分分布式控制系统进行传感器故障诊断;假设有m个传感器,则设计m个kalman滤波器,每一个滤波器都只利用m-1个传感器测量信号;对于第i个kalman滤波器,其输入yi中包含了除第i个传感器外的其余m-1个传感器测量信号;如果第i个传感器发生了故障,那么只有第i个kalman滤波器得到的估计结果是正确的,据此对传感器故障进行检测和定位;
23.传感器故障分为四种,分别为:低压转子转速xnl传感器故障、高压转子转速xnh传感器故障、高压压气机出口压力ps3传感器故障和涡轮后温度t45传感器故障;
24.第i个传感器故障的kalman滤波器计算公式如式(1)所示,
[0025][0026]
其中表示k+1时刻状态估计值,x
ss
表示稳态点状态,表示当前时刻输入,u
ss
表示稳态点输入,φ=e
at
,t为采样周期,ci,di,分别为c,d,除去第i行后的子集,a,b,c,d分别表示状态空间方程系数,s表示拉普拉斯算子,i是从1到m的整数,ki是对应的kalman滤波器增益矩阵;
[0027]
残差加权平方和用于衡量故障发生标准,其中∑i=diag(δi)2,向量δi代表第i个传感器的标准偏差,v为调节比例系数;
[0028]
通过注入四种传感器故障的实际情况与故障检测定位结果进行比较,即得到故障虚警率、故障检测正确率性能评估指标,设计的故障诊断算法在故障诊断端中执行;
[0029]
步骤2:航空发动机端、故障诊断端、智能节点模型搭建;
[0030]
步骤2-1:航空发动机端模型搭建;
[0031]
航空发动机端由四部分组成:模型端、故障诊断端、模拟输出端、模拟输入端;模型端实时运行航空发动机模型;故障注入端注入四种传感器故障;模拟输出端通过pcl-812pg板卡输出传感器信号;模拟输入端通过pcl-812pg板卡输入执行机构信号;搭建完成后,打开主工作站,进行航空发动机端模型的连接、编译和下载;
[0032]
步骤2-2:故障诊断端模型搭建;
[0033]
故障诊断端由两部分组成:一部分是can消息中断接收模块,另一部分是epwm模块计数器中断触发时间窗任务模块;
[0034]
具体的实现方法及实现流程如下:
[0035]
采用dsp的epwm模块实现e毫秒的时间窗设计,以epwm模块计数器中断来触发故障诊断端任务的执行;采用can消息接收中断的方式,接收can消息;设基本循环时间为f*e毫秒:
[0036]
第1个e毫秒时间窗内:通过ttcan总线,发送参考消息,进行主从节点时间同步;
[0037]
第2个e毫秒时间窗内:通过ttcan总线,接收低压转子转速xnl传感器信号;
[0038]
第3个e毫秒时间窗内:通过ttcan总线,接收高压转子转速xnh传感器信号;
[0039]
第4个e毫秒时间窗内:通过ttcan总线,接收高压压气机出口压力ps3传感器信号;
[0040]
第5个e毫秒时间窗内:通过ttcan总线,接收涡轮后温度t45传感器信号;
[0041]
第6-9个e毫秒时间窗内:运行故障诊断算法;
[0042]
第10个e毫秒时间窗内:通过ttcan总线,发送控制指令;
[0043]
第11个e毫秒时间窗内:通过串口,上传故障检测定位结果;
[0044]
第12到f个e毫秒时间窗内:空闲时间窗,用作功能拓展;
[0045]
每经过f个时间窗,会循环执行以上时间窗内任务,以此实现航空发动机f*e毫秒的控制周期;设计上述的故障诊断端时间窗模块,最后将程序固化到故障诊断端dsp的flash中;
[0046]
步骤2-3:智能节点模型搭建;
[0047]
智能节点由三部分组成:(1)spi配置mcp2515芯片模块;(2)can消息接收中断模
块;(3)epwm模块计数器中断触发时间窗任务模块;
[0048]
采用dsp的epwm模块实现e毫秒的时间窗设计,以epwm模块计数器中断来触发送can消息、a/d、d/a转换任务的执行;采用can消息接收中断的方式,接收can消息;设基本循环时间为f*e毫秒:
[0049]
在启动之前,通过spi通信配置mcp2515芯片,传输速率为10m/s,dsp依次向mcp2515芯片发送“0xc0”、“0x022a40”、“0x022992”、“0x022882”、“0x020f07”,配置mcp2515芯片;
[0050]
第1个e毫秒时间窗内:通过ttcan总线,接收参考消息;当mcp2515芯片检测到can消息帧起始位时,将此帧起始位连接至epwm波帧同步引脚,epwm波的计数寄存器将重置为0,实现主节点与从节点的时间同步功能;将参考消息中的基本循环序号写入全局变量gl_cycle_count,记录全局时间,并禁止epwm波的帧同步功能,禁止非参考can消息帧起始位对epwm的同步,最后开启a/d转换,采集四路传感器信号;
[0051]
第2个e毫秒时间窗内:通过ttcan总线,发送低压转子转速xnl传感器信号;
[0052]
第3个e毫秒时间窗内:通过ttcan总线,发送高压转子转速xnh传感器信号;
[0053]
第4个e毫秒时间窗内:通过ttcan总线,发送高压压气机出口压力ps31传感器信号;
[0054]
第5个e毫秒时间窗内:通过ttcan总线,发送涡轮后温度t45传感器信号;
[0055]
第10个e毫秒时间窗内:通过ttcan总线,接收来自故障诊断端的控制信号;
[0056]
第11到f-1个e毫秒时间窗内:空闲时间窗,用作功能拓展;
[0057]
第f个e毫秒时间窗内:开启epwm波的帧同步功能,以mcp2515芯片产生的参考消息帧起始位脉冲同步epwm波,实现主节点和从节点时间同步;
[0058]
每经过f个时间窗,会循环执行以上时间窗内任务,以此实现f*e毫秒的控制周期;设计上述的智能节点时间窗模块,最后将程序固化到智能节点dsp的flash中;
[0059]
步骤3:故障注入及诊断;
[0060]
在前台用户界面中输入参数,包括工作模式、飞行条件,随机注入四种传感器故障,模拟航空发动机传感器真实故障,故障诊断端通过接收传感器信号,在线进行四种传感器的故障诊断;
[0061]
步骤4:故障诊断评估结果;
[0062]
统一评价指标包括故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间;故障虚警率和故障检测正确率通过故障检测矩阵求得;故障隔离正确率通过故障隔离矩阵求得;故障检测延迟时间和故障隔离延迟时间通过计算故障在线检测和隔离的时间求得;
[0063]
通过比较故障诊断算法的诊断结果和航空发动机加入故障的实际情况,得出故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间性能评估结果。
[0064]
优选地,所述e=0.2,f=100。
[0065]
本发明的有益效果如下:
[0066]
本发明提出了航空发动机分布式故障诊断硬件在环仿真平台,实现了对分布式故障诊断算法验证,避免全物理仿真试验所带来的高成本与高风险问题,缩短故障诊断装置
的试验和研发周期。通过主从节点的时间窗设计,制定通信调度方案,实现了ttcan协议,避免了基于事件触发的can总线带来的优先级问题,减少总线通信中不确定事件的发生。通过自动代码生成技术,生成故障诊断端和智能节点的可执行代码,利用图形化的开发方式避免复杂的代码调试工作。
附图说明
[0067]
图1是本发明仿真平台整体架构图。
[0068]
图2是本发明硬件在环仿真平台仿真流程图。
[0069]
图3是本发明发动机部分分布式控制系统进行传感器故障诊断架构图。
[0070]
图4是本发明故障诊断端时间窗设计流程图。
[0071]
图5是本发明智能节点时间窗设计流程图。
[0072]
图6是本发明故障注入及诊断流程图。
[0073]
图7是本发明故障检测矩阵示意图。
[0074]
图8是本发明故障隔离矩阵示意图。
具体实施方式
[0075]
下面结合附图和实施例对本发明进一步说明。
[0076]
一种航空发动机分布式故障诊断系统硬件在环仿真平台,包括主工作站、航空发动机端、故障诊断端和智能节点;所述主工作站与航空发动机端通过rj45接口连接;所述航空发动机端与故障诊断端通过rs232串口相连,航空发动机端与智能节点通过rs232串口和a/d转换接口连接;所述故障诊断端与智能节点通过ttcan总线连接;
[0077]
所述主工作站完成故障诊断算法的设计与仿真验证、总线通信方案的设计与仿真验证、航空发动机端及故障诊断端的代码生成与下载任务;在仿真过程中,主工作站实现人机交互功能,为航空发动机端和故障诊断端提供飞行条件和油门杆角度信息,实时显示航空发动机监控参数和故障诊断结果;在仿真结束后,使用主工作站对数据进行后期处理;
[0078]
所述航空发动机端使用工控机模拟,用于实时运行航空发动机部件级模型程序,完成航空发动机全状态模拟,并将航空发动机参数以模拟量的形式输出;航空发动机端加载的采集板卡通过a/d转换接口采集智能节点的执行机构模拟信号,输出航空发动机传感器模拟信号;并通过rs232串口与故障诊断端和智能节点进行数据交互;
[0079]
所述故障诊断端由f28335开发板组成,用于实时执行故障诊断算法;故障诊断端f28335开发板上的dsp内部集成了ecan模块与智能节点进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换;
[0080]
所述智能节点由f28335开发板组成,用于实现智能节点功能;智能节点f28335开发板上的dsp内部集成了ecan模块与故障诊断端进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换;通过智能节点f28335开发板上的dsp内部的12位a/d模块实现传感器信号的采集;采用mcp2515芯片捕获can消息的帧起始位;采用dac7724芯片输出执行机构模拟信号。
[0081]
进一步地,所述主工作站、航空发动机端、故障诊断端和智能节点的连接方式如
下:
[0082]
所述主工作站与航空发动机端通过rj45接口连接,采用tcp/ip传输协议;主工作站为运行matlab/simulink的计算机,即商用台式机,航空发动机端为运行simulink real-time实时系统的计算机,即运行航空发动机模型的工控机;
[0083]
所述航空发动机端与智能节点通过a/d、d/a转换端口和rs232串口连接;航空发动机端的d/a输出由pcl-812pg板卡实现,电压范围为0~2.5v;智能节点的a/d采集由dsp芯片上集成的a/d转换功能采集电压信号;智能节点的d/a输出由dac7724芯片实现,电压范围为0~5v;航空发动机端的a/d采集由pcl-812pg板卡采集电压信号;航空发动机端的rs232串口向智能节点发送平台工作模式、飞行条件信息,智能节点的rs232串口向航空发动机端上传智能节点中的a/d采集信号和d/a输出信号;
[0084]
所述航空发动机端与故障诊断端通过rs232串口连接;航空发动机端的rs232串口向故障诊断端发送在环仿真平台工作模式、飞行条件信息;故障诊断端的rs232串口向航空发动机端上传故障诊断结果信息;
[0085]
所述智能节点与故障诊断端通过ttcan总线连接;智能节点通过ttcan总线,在预先设计好的时间窗内发送传感器信号和接收控制指令,mcp2515芯片也连接至总线上,捕获参考消息的帧起始位;故障诊断端通过ttcan总线,向智能节点发出参考消息和控制指令,接收传感器信号。
[0086]
一种航空发动机分布式故障诊断仿真方法,包括如下步骤:
[0087]
步骤1:数字仿真验证;
[0088]
在数字仿真条件下,搭建故障诊断算法:用一组kalman滤波器对基于处理器节点的发动机部分分布式控制系统进行传感器故障诊断;假设有m个传感器,则设计m个kalman滤波器,每一个滤波器都只利用m-1个传感器测量信号;对于第i个kalman滤波器,其输入yi中包含了除第i个传感器外的其余m-1个传感器测量信号;如果第i个传感器发生了故障,那么只有第i个kalman滤波器得到的估计结果是正确的,据此对传感器故障进行检测和定位;
[0089]
传感器故障分为四种,分别为:低压转子转速xnl传感器故障、高压转子转速xnh传感器故障、高压压气机出口压力ps3传感器故障和涡轮后温度t45传感器故障;
[0090]
第i个传感器故障的kalman滤波器计算公式如式(1)所示,
[0091][0092]
残差加权平方和用于衡量故障发生标准,其中∑i=diag(δi)2,向量δi代表第i个传感器的标准偏差,v为调节比例系数;
[0093]
通过注入四种传感器故障的实际情况与故障检测定位结果进行比较,即得到故障虚警率、故障检测正确率性能评估指标,设计的故障诊断算法在故障诊断端中执行;
[0094]
步骤2:航空发动机端、故障诊断端、智能节点模型搭建;
[0095]
步骤2-1:航空发动机端模型搭建;
[0096]
航空发动机端由四部分组成:模型端、故障诊断端、模拟输出端、模拟输入端;模型端实时运行航空发动机模型;故障注入端注入四种传感器故障;模拟输出端通过pcl-812pg板卡输出传感器信号;模拟输入端通过pcl-812pg板卡输入执行机构信号;搭建完成后,打
开主工作站,进行航空发动机端模型的连接、编译和下载;
[0097]
步骤2-2:故障诊断端模型搭建;
[0098]
故障诊断端由两部分组成:一部分是can消息中断接收模块,另一部分是epwm模块计数器中断触发时间窗任务模块;
[0099]
具体的实现方法及实现流程如下:
[0100]
采用dsp的epwm模块实现e毫秒的时间窗设计,以epwm模块计数器中断来触发故障诊断端任务的执行;采用can消息接收中断的方式,接收can消息;设基本循环时间为f*e毫秒:
[0101]
第1个e毫秒时间窗内:通过ttcan总线,发送参考消息,进行主从节点时间同步;
[0102]
第2个e毫秒时间窗内:通过ttcan总线,接收低压转子转速xnl传感器信号;
[0103]
第3个e毫秒时间窗内:通过ttcan总线,接收高压转子转速xnh传感器信号;
[0104]
第4个e毫秒时间窗内:通过ttcan总线,接收高压压气机出口压力ps3传感器信号;
[0105]
第5个e毫秒时间窗内:通过ttcan总线,接收涡轮后温度t45传感器信号;
[0106]
第6-9个e毫秒时间窗内:运行故障诊断算法;
[0107]
第10个e毫秒时间窗内:通过ttcan总线,发送控制指令;
[0108]
第11个e毫秒时间窗内:通过串口,上传故障检测定位结果;
[0109]
第12到f个e毫秒时间窗内:空闲时间窗,用作功能拓展;
[0110]
每经过f个时间窗,会循环执行以上时间窗内任务,以此实现航空发动机f*e毫秒的控制周期;设计上述的故障诊断端时间窗模块,最后将程序固化到故障诊断端dsp的flash中;
[0111]
步骤2-3:智能节点模型搭建;
[0112]
智能节点由三部分组成:(1)spi配置mcp2515芯片模块;(2)can消息接收中断模块;(3)epwm中断触发时间窗任务模块;
[0113]
采用dsp的epwm模块实现e毫秒的时间窗设计,以epwm模块计数器中断来触发送can消息、a/d、d/a转换任务的执行;采用can消息接收中断的方式,接收can消息;设基本循环时间为f*e毫秒:
[0114]
在启动之前,通过spi通信配置mcp2515芯片,传输速率为10m/s,dsp依次向mcp2515芯片发送“0xc0”、“0x022a40”、“0x022992”、“0x022882”、“0x020f07”,配置mcp2515芯片;
[0115]
第1个e毫秒时间窗内:通过ttcan总线,接收参考消息;当mcp2515芯片检测到can消息帧起始位时,将此帧起始位连接至epwm波帧同步引脚,epwm波的计数寄存器将重置为0,实现主节点与从节点的时间同步功能;将参考消息中的基本循环序号写入全局变量gl_cycle_count,记录全局时间,并禁止epwm波的帧同步功能,禁止非参考can消息帧起始位对epwm的同步,最后开启a/d转换,采集四路传感器模拟信号;
[0116]
第2个e毫秒时间窗内:通过ttcan总线,发送低压转子转速xnl传感器信号;
[0117]
第3个e毫秒时间窗内:通过ttcan总线,发送高压转子转速xnh传感器信号;
[0118]
第4个e毫秒时间窗内:通过ttcan总线,发送高压压气机出口压力ps31传感器信号;
[0119]
第5个e毫秒时间窗内:通过ttcan总线,发送涡轮后温度t45传感器信号;
[0120]
第10个e毫秒时间窗内:通过ttcan总线,接收来自故障诊断端的控制信号;
[0121]
第11到f-1个e毫秒时间窗内:空闲时间窗,用作功能拓展;
[0122]
第f个e毫秒时间窗内:开启epwm波的帧同步功能,以mcp2515芯片产生的参考消息帧起始位脉冲同步epwm波,实现主节点和从节点时间同步;
[0123]
每经过f个时间窗,会循环执行以上时间窗内任务,以此实现e毫秒的控制周期;设计上述的智能节点时间窗模块,最后将程序固化到智能节点dsp的flash中;
[0124]
步骤3:故障注入及诊断;
[0125]
在前台用户界面中输入参数,包括工作模式、飞行条件,随机注入四种传感器故障,模拟航空发动机传感器真实故障,故障诊断端通过接收传感器信号,在线进行四种传感器的故障诊断;
[0126]
步骤4:故障诊断评估结果;
[0127]
统一评价指标包括故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间;故障虚警率和故障检测正确率通过故障检测矩阵求得;故障隔离正确率通过故障隔离矩阵求得;故障检测延迟时间和故障隔离延迟时间通过计算故障在线检测和隔离的时间求得;
[0128]
通过比较故障诊断算法的诊断结果和航空发动机加入故障的实际情况,得出故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间性能评估结果。
[0129]
具体实施例:
[0130]
本实施例的整体架构如图1所示。航空发动机分布式故障诊断系统硬件在环仿真平台,作为验证分布式故障算法的仿真平台,其主要由主工作站、航空发动机端、故障诊断端、智能节点。主工作站与航空发动机端通过网线连接;航空发动机端与故障诊断端通过rs232串口相连,与智能节点通过rs232串口和硬件线连接;故障诊断端与智能节点通过ttcan总线连接。本发明构建的仿真平台包括智能节点和网络通信功能,开发周期短、易实现,可对通信网络的噪声、延迟和数据丢包进行测试;同时,本发明的仿真平台的故障诊断端修改方便,可对其他故障诊断算法进行验证。
[0131]
由图1可知,该仿真平台由四部分组成:
[0132]
一:主工作站
[0133]
主工作站是一台商用台式机,在前期的设计阶段,使用主工作站完成故障诊断算法的设计与仿真验证、总线通信方案的设计与仿真验证、工控机及dsp端的代码生成与下载等任务;在仿真过程中,使用主工作站实现人机交互功能,为航空发动机端和故障诊断端提供飞行条件和油门杆角度等信息,实时显示航空发动机监控参数,故障诊断结果等数据;在仿真结束后,使用主工作站对数据进行后期处理。
[0134]
二:航空发动机端
[0135]
航空发动机端由研华ipc 610-h工控机组成,用于实时运行航空发动机部件级模型程序,完成航空发动机全状态模拟,并将航空发动机参数以模拟量的形式输出。加载的采集板卡pcl-812用于采集智能节点的执行机构模拟信号,输出航空发动机传感器模拟信号,并通过rs232串口与故障诊断端和智能节点进行数据交互。
[0136]
三:故障诊断端
[0137]
故障诊断端由f28335开发板组成,用于实时执行故障诊断算法。dsp内部集成了ecan模块与智能节点进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换。
[0138]
四:智能节点端
[0139]
智能节点端由f28335开发板组成,用于实现智能节点功能。dsp内部集成了ecan模块与智能节点进行数据交互,采用vp230芯片作为ttcan总线的收发器;通过rs232串口进行与航空发动机端的数据交互,采用max232芯片实现电平转换;通过dsp内部的12位ad模块实现传感器信号的采集;采用mcp2515芯片捕获can消息的帧起始位;采用dac7724芯片输出执行机构信号。
[0140]
各模块的连接方式如下:
[0141]
主工作站与航空发动机端通过网线连接,采用tcp/ip传输协议。主机为运行matlab/simulink的计算机,即商用台式机,目标机是指运行simulink real-time实时系统的计算机,即运行航空发动机模型的研华工控机。
[0142]
航空发动机端与智能节点通过a/d,d/a和rs232串口连接。航空发动机端的d/a输出由pcl-812pg板卡实现,电压范围为0~2.5v;智能节点端的a/d采集由dsp芯片上集成的a/d转换功能采集电压信号。智能节点端的d/a输出由dac7724芯片实现,电压范围为0~5v;航空发动机端的a/d采集由pcl-812pg板卡采集电压信号。航空发动机端的rs232串口向智能节点发送仿真平台工作模式、飞行条件等信息,智能节点端的rs232串口向航空发动机端上传智能节点中的a/d采集信号和d/a输出信号,观察比较精度。
[0143]
航空发动机端与故障诊断端通过rs232串口连接。航空发动机端的rs232串口向故障诊断端发送仿真平台工作模式、飞行条件等信息;故障诊断端的rs232串口向航空发动机端上传故障诊断结果等信息。
[0144]
智能节点与故障诊断端通过ttcan总线连接。智能节点通过ttcan总线,在预先设计好的时间窗内发送传感器信号和接收控制指令,mcp2515芯片也连接至总线上,捕获参考消息的帧起始位;故障诊断端通过ttcan总线,向智能节点发出参考消息和控制指令,接收传感器信号。
[0145]
在该仿真平台下,实现的流程图如图2所示,技术实现过程具体包括以下步骤:
[0146]
一:数字仿真验证
[0147]
在数字仿真条件下,搭建故障诊断算法。用一组kalman滤波器对基于处理器节点的发动机部分分布式控制系统进行传感器故障诊断,故障诊断结构图如图3所示,假设有m个传感器,则应设计m个kalman滤波器,每一个滤波器都只利用m-1个传感器测量信号。以第i个kalman滤波器为例,其输入yi中包含了除第i个传感器外的其余m-1个传感器测量信号。如果第i个传感器发生了故障,那么只有第i个kalman滤波器得到的估计结果是正确的,因为它没有使用发生故障的传感器的测量信息,而其它的kalman滤波器则因为使用了故障传感器的测量信息,导致估计结果都不同程度地偏离了实际情况。利用这一特性,可以对传感器故障进行检测和定位。
[0148]
第i个传感器故障的一般kalman滤波器计算公式如式(1)所示,
[0149][0150]
其kalman滤波器增益矩阵ki如式(2)所示,
[0151][0152]
残差加权平方和用于衡量故障发生标准,其中σi=diag(δi)2,向量δi代表第i个传感器的标准偏差,v为调节比例系数,
[0153]
通过注入四种传感器故障的实际情况与故障检测定位结果进行比较,即可得到故障虚警率、故障检测正确率等性能评估指标。然后分别将航空发动机端、故障诊断端、智能节点端分离。
[0154]
二:航空发动机端、故障诊断端、智能节点端模型搭建。
[0155]
子步骤一:航空发动机端模型搭建
[0156]
航空发动机端主要由四部分组成:模型端、故障诊断端、模拟输出端、模拟输入端。模型端实时运行航空发动机模型;故障注入端注入四种传感器故障,分别为:低压转子转速xnl传感器故障、高压转子转速xnh传感器故障、高压压气机出口压力ps3传感器故障、涡轮后温度t45传感器故障;模拟输出端通过pcl-812pg板卡输出传感器信号;模拟输入端通过pcl-812pg板卡输入执行机构信号。搭建完成后,打开主工作站,进行航空发动机端模型的连接、编译、下载。
[0157]
子步骤二:故障诊断端模型搭建
[0158]
故障诊断端主要由两部分组成:一是can消息中断接收模块,二是epwm模块计数器中断触发时间窗任务模块。
[0159]
故障诊断端的时间窗设计流程图如图4所示:
[0160]
在上述时间窗设计思路的基础上,具体的实现方法及实现流程如下:
[0161]
采用dsp的epwm模块实现0.2ms的时间窗设计,以epwm模块计数器中断来触发故障诊断端任务的执行;采用can消息接收中断的方式,接收can消息。以一个20ms的基本循环为例:
[0162]
第1个0.2ms时间窗内:通过ttcan总线,发送参考消息,消息标识符设置为2210;
[0163]
第2个0.2ms时间窗内:通过ttcan总线,接收低压转子转速xnl传感器信号;
[0164]
第3个0.2ms时间窗内:通过ttcan总线,接收高压转子转速xnh传感器信号;
[0165]
第4个0.2ms时间窗内:通过ttcan总线,接收高压压气机出口压力ps3传感器信号;
[0166]
第5个0.2ms时间窗内:通过ttcan总线,接收涡轮后温度t45传感器信号;
[0167]
第6-9个0.2ms时间窗内:运行故障诊断算法;
[0168]
第10个0.2ms时间窗内:通过ttcan总线,发送控制指令;
[0169]
第11个0.2ms时间窗内:通过串口,上传故障检测定位结果;
[0170]
第12-100个0.2ms时间窗内:空闲时间窗,用作功能拓展;
[0171]
每经过100个时间窗,会循环执行以上时间窗内任务,以此实现航空发动机20ms的控制周期。设计上述的故障诊断端时间窗模块,最后将程序固化到dsp的flash中。
[0172]
子步骤三:智能节点端模型搭建
[0173]
智能节点端主要由三部分组成:一是spi配置mcp2515芯片模块,二是can消息接收中断模块,三是epwm模块计数器中断触发时间窗任务模块。
[0174]
智能节点端的时间窗设计流程图如图5所示:
[0175]
在上述时间窗设计思路的基础上,具体的实现方法及实现流程如下:
[0176]
采用dsp的epwm模块实现0.2ms的时间窗设计,以epwm模块计数器中断来触发送can消息、a/d、d/a转换等任务的执行;采用can消息接收中断的方式,接收can消息。以一个20ms的基本循环为例:
[0177]
在启动之前,通过spi通信配置mcp2515芯片,传输速率为10m/s,dsp依次像mcp2515芯片发送“0xc0”、“0x022a40”、“0x022992”、“0x022882”、“0x020f07”,配置mcp2515芯片。
[0178]
第1个0.2ms时间窗内:通过ttcan总线,接收参考消息。当mcp2515芯片检测到can消息帧起始位时,将此帧起始位连接至epwm波帧同步引脚,epwm波的计数寄存器将重置为0,实现主节点与从节点的时间同步功能;将参考消息中的基本循环序号写入全局变量gl_cycle_count,记录全局时间,并禁止epwm波的帧同步功能,禁止非参考can消息帧起始位对epwm的同步,最后开启a/d转换,采集四路传感器信号。
[0179]
第2个0.2ms时间窗内:通过ttcan总线,发送低压转子转速xnl传感器信号;
[0180]
第3个0.2ms时间窗内:通过ttcan总线,发送高压转子转速xnh传感器信号;
[0181]
第4个0.2ms时间窗内:通过ttcan总线,发送高压压气机出口压力ps31传感器信号;
[0182]
第5个0.2ms时间窗内:通过ttcan总线,发送涡轮后温度t45传感器信号;
[0183]
第10个0.2ms时间窗内:通过ttcan总线,接收来自故障诊断端的控制信号;
[0184]
第11-99个0.2ms时间窗内:空闲时间窗,用作功能拓展;
[0185]
第100个0.2ms时间窗内:开启epwm波的帧同步功能,以mcp2515芯片产生的参考消息帧起始位同步epwm波,实现主节点和从节点时间同步。
[0186]
每经过100个时间窗,会循环执行以上时间窗内任务,以此实现20ms的控制周期。设计上述的智能节点端时间窗模块,最后将程序固化到dsp的flash中。
[0187]
三:故障注入及诊断
[0188]
故障注入及诊断流程图如图6所示。
[0189]
在前台用户界面中输入参数,包括工作模式、飞行条件等,随机注入四种传感器故障,模拟航空发动机传感器真实故障,故障诊断端通过接收传感器信号,在线进行四种传感器的故障诊断。
[0190]
四:故障诊断评估结果
[0191]
统一评价指标包括故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间。故障虚警率和故障检测正确率通过故障检测矩阵求得,故障检测矩阵如图7所示;故障隔离正确率通过故障隔离矩阵求得,故障隔离矩阵如图8所示,故障检测延迟时间和故障隔离延迟时间通过计算故障在线检测和隔离的时间求得。
[0192]
通过比较故障诊断算法的诊断结果和航空发动机加入故障的实际情况,得出故障虚警率、故障检测正确率、故障隔离正确率、故障检测延迟时间、故障隔离延迟时间等性能评估结果。
[0193]
本发明的改善之处是:
[0194]
(1)使用研华工控机ipc 610-h作为航空发动机模型端,实时运行航空发动机模型。可采用其他实时仿真机作为航空发动机模型端。
[0195]
(2)由于dsp内部集中了can模块,使用can总线作为物理层,开发ttcan协议,进行故障诊断端和智能节点间的数据交互。可使用其他总线进行数据交互。
[0196]
(3)通过航空发动机分布式故障诊断系统硬件在环仿真平台,故障诊断端与智能节点端通过ttcan总线进行网络连接,对通信网络的噪声、延迟和数据丢包进行测试。建立起分布式故障诊断评估体系,对航空发动机分布式故障诊断算法进行验证。
[0197]
(4)通过主从节点的时间窗设计,制定通信调度方案,检测参考消息的帧起始位,实现ttcan协议。