一种基于栈技术的故障诊断方法
文献发布时间:2023-06-19 10:02:03
技术领域
本发明属于机载维护系统故障诊断与隔离技术领域,涉及一种基于栈技术的故障诊断方法。
背景技术
随着航空事业技术水平的不断发展和进步,机械设备和电子设备越来越复杂,集成度越来越高,这些技术的提升带来的效益就是,零部件重量和体积不断减小减轻,飞机机体负担越来越小,但是随之而来的弊端也是显而易见:零部件集成度高带来维护维修难度增加,维护维修成本提高。
发明内容
为了解决上述技术问题,本申请提供了一种基于栈技术的故障诊断方法,能够提高机载维护系统的故障诊断的效率。
本申请提供一种基于栈技术的故障诊断方法,所述方法包括:
故障诊断软件读取接收到的配置文件,所述配置文件包括故障诊断逻辑和故障方程属性,所述故障诊断逻辑是由多个元素组成的表达式,当其结果为真时表示对应故障发生;所述故障方程属性为故障报告相关信息;
根据故障诊断逻辑,建立数据结构;
申请栈资源,对所述元素进行压栈操作;
接收成员系统BIT,对元素进行弹栈操作,根据所述故障诊断逻辑,得到故障方程结果。
具体的,方法还包括:
针对选定的机载设备,进行FMECA分析,获取故障模型,所述故障模型包括故障诊断逻辑和故障方程属性;
根据所述故障诊断逻辑和故障方程属性,生成故障方程;根据所述故障方程生成配置文件。
具体的,所述对元素进行弹栈操作,根据所述故障诊断逻辑,得到故障方程结果,具体包括:
元素出栈;
对所述元素是否缺失、元素安全性以及元素是否超出进行检测;
若所述元素无缺失、元素安全且元素是未超出,则根据所述故障诊断逻辑,得到故障方程结果。
具体的,对元素安全性进行检测,具体包括:
若元素类型不符、超出范围或数量不足,则判断所述元素不安全;否则,元素安全。
具体的,故障诊断逻辑的表达式包括布尔表达式。
具体的,所述元素包括变量和逻辑操作符。
具体的,故障诊断逻辑包括一个或多个BIT的逻辑组合。
具体的,所述故障方程属性包括故障名称、ID、所在位置、故障原因、座舱效应、维修信息。
综上所述,本申请提供了一种基于栈技术的故障诊断方法,能够支持较为复杂的数据结构和故障方程,诊断过程简洁,快速,准确,诊断过程中占用资源较少,对缓解机上较为紧张的计算资源起到非常好的作用,为机载维护系统的故障诊断提供更好、更快、更具前瞻性的方法。
附图说明
图1为本发明的基于栈技术的故障诊断方法示意图。
具体实施方式
机载维护系统的故障诊断技术通过对成员设备上报的BIT数据进行监控、分析、诊断、存储,在飞机飞行过程中对机载设备的运行状况进行实时分析和监控,进行地面维护时,及时对存在故障风险的设备进行维护和维修,防患于未然,有效缩短维护维修时间,节省人力成本和资金成本。
利用栈技术高效的压栈、弹栈操作,在机载维护系统的故障诊断过程中实现快速计算、分析,得益于栈的便捷操作,故障诊断运算过程中的计算速度大幅提升,错误率大幅降低,符合机载维护的高实时性要求和高准确性要求,可大幅提高机载诊断软件的运算效率。
实施例一
本发明使用栈(stack)技术进行故障方程的计算,针对飞机飞行过程中进行故障诊断时的数据量大、实时性要求高、诊断准确性要求高等特点,提出了一种解决大容量数据和复杂计算的故障诊断方法,实现对机载维护系统故障诊断的有效提升。
基于栈技术的故障诊断方法,包括以下步骤:
步骤101:针对选定的机载设备,进行FMECA分析,获取故障模型;
步骤102:使用故障方程录入工具,录入故障模型,生成机载配置文件;
需要说明的是,故障方程是故障诊断知识的一种基于规则的规范化表示,一条故障方程对应一个具体的故障模式。故障方程由故障诊断逻辑和故障方程属性两部分组成:故障诊断逻辑是一个或多个BIT的逻辑组合,用以确定某个特定故障是否发生;故障方程属性包括故障名称、ID、所在位置、故障原因、座舱效应、维修信息等故障报告相关信息。
具体的,故障诊断逻辑是由若干个变量和逻辑操作符组成的布尔表达式,当其结果为真时表示对应故障发生。举例:
Equation_A=Var_01AND Var_02
其中,Equation_A为故障方程的名称,Var_01和Var_02为代表某BIT的布尔变量,AND为“逻辑与”操作符。该故障方程表示的意义是:当Var_01和Var_02的值同时为真时,该故障方程代表的故障发生。
故障诊断软件读取机载配置文件时,为变量Var_01和Var_02及AND操作符分别申请栈资源,对其进行压栈操作,该表达式中的三个对象在软件中的表现形式均为元素(Element)。
步骤103:故障诊断软件读取机载配置文件,建立数据结构和故障方程为故障方程中的各元素(element,包括变量和操作符)申请栈资源,对变量和操作符进行压栈操作;
步骤104:软件接收成员设备数据,进行相关故障方程结果计算,对变量和操作符进行弹栈操作,得到故障方程结果。
实施例二
如图1所示,本发明的具体实现方式如下:
步骤210:选取机载设备,进行FMECA分析,获取故障模型;
步骤220:使用故障方程录入工具,录入故障模型,生成机载配置文件;
步骤230:软件读取机载配置文件;
步骤240:建立数据结构,包括数据源和数据域;
步骤250:建立故障方程,为故障方程的各元素(element,包括变量和操作符)申请栈资源并进行压栈操作;
步骤260:软件就绪,开始接收成员系统数据,包括BIT数据;
步骤270:软件收到成员系统数据,启动故障方程解算,步骤270具体进行如下弹栈操作:
步骤271:故障方程元素出栈;
步骤272:检测元素安全性,如果元素有缺失,则报告stack_underflow错误并跳转到步骤240;否则进入步骤273;
步骤273:检测元素安全性,如果元素有超出,则报告stack_overflow错误并跳转到步骤240;否则进入步骤274;
步骤274:检测元素安全性,如果元素有错误(如类型不符、超出范围等),则报告stack_error错误并跳转到步骤240;否则进入步骤260;
步骤280:得到故障方程解算结果,存储结果,跳转到步骤240。
综上所述,本申请通过软件手段对设备的发展趋势进行早期的监控和诊断甚至隔离,快速找出故障原因,采取措施避免设备的突然损坏,使之安全经济地运转,在现代工业尤其是航空工业的发展中起着极其重要的作用。
- 一种基于栈技术的故障诊断方法
- 基于栈式自编码与轻型梯度提升机算法的笼型异步电动机定转子故障联合诊断方法