APP下载

某微型航空发动机燃烧室不点火故障诊断知识库的GUI 设计与实现

2020-11-06党军强

商品与质量 2020年37期
关键词:控件界面设计故障诊断

党军强

西部新锆核材料科技有限公司 陕西 西安 710299

航空发动机结构复杂、工作环境恶劣,由于长期处于高温高压、高负荷、高转速的环境并反复工作,是机械产品中故障率最高、维护工作量最大的系统。一般情况下,任何故障的发生都是在同一时间段内事件组合的结果[1]。

一旦航空发动机某个系统出现故障,就应使用特定的故障诊断机制来查找故障发生的原因。因此,开发一种可靠的诊断机制对故障进行检测和隔离,在航空发动机技术研究和改进中已成为一个重要的研究领域[2]。整个开发过程是基于MATLAB 进行的,其中主要用GUI 进行设计。

1 GUI 的设计依据和原则

1.1 GUI 设计依据

此设计是基于航空发动机不能启动这一故障开发的,主要根据此故障树,对其中一个分树进行研究,其他分树的设计理念和原则基本和本设计差不多,在此就不再赘述,故障树如图1。

1.2 GUI 设计原则

(1)简单性。设计界面应简洁、清晰地体现出界面的特征和功能,减少窗口的数目,避免在不同窗口之间进行来回切换[3]。

(2)一致性。界面的设计风格尽量一致,不要和已存在界面风格差异太大。

(3)习常性。界面应尽量用人们熟悉的标志和符号。

图1 航空发动机不能启动故障树

1.3 GUI 制作

MATLAB 图形用户接口GUIDE 提供了建立GUI 对象的工具,极大地简化了设计过程。不仅能嵌入已有的仿真程序,还能把数表及图形化结果以动态方式呈现出来,给人以深刻的理解和印象。

要实现故障智能诊断,还需要故障树分析、模糊数学等方法理论的支持。由于诊断知识库是来自于发动机不能启动这一故障树,其推理过程也是一条从根到叶的知识链,因而诊断知识的搜索也是从根到叶的支线通路,因此图形用户界面要达到信息交流、故障诊断的目的。

1.4 函数句柄及回调函数

函数句柄是一种数据类型,可供用户在任何地方实现对其进行调用,通常情况下有两种方法,使用Matlab 自带的图形用户界面设计向导或使用全脚本编程。本文采用两种方法的结合进行界面设计。在完成控件布局和属性设置后,对控件回调函数程序代码进行编写,在相应的函数下编写具体的操作程序代码。

2 航空发动机不点火故障诊断的 GUI 界面实现

2.1 用户登录界面设计

本系统用户登陆界面设计与大多数系统一样,登陆界面主要由用户名和密码组成,只有用户名存在且密码正确才能进入系统,如图2。

2.2 绘制控件

打开GUIDE 设计工具,根据GUI 界面的设计构思确定设计区域,通过鼠标拖住区域右下方的黑色方格,调整设计区域,保证能够放下足够的控件。接着向新建界面中添加交互组件,在设计区域中单击鼠标左键就可以把该控件添加到设计区域。

2.3 航空发动机不点火故障诊断功能实现

通过鼠标操作可以改变交互组件的位置和大小,调整对齐方式与距离。如果需要,可对其他控件进行微调,对按钮和文本标签及其他控件属性进行设置,以美化界面。故障诊断结果如图3。

图2 用户登录界面

图3 诊断结果图

2.4 编制回调程序

完成控件布局后,编制菜单、控件的回调程序。右键单击该控件,点击View Callbacks,然后从子菜单中选择激活回调函数方式,编写回调程序。编制回调函数是 GUI 设计中最重要的内容, GUI就是通过回调函数来完成事件驱动。只有在.m 文件中对各控件编写回调函数,指定功能才能实现。如前面所讲,在GUI 编辑状态下,从View Callbacks 中选择回调方式,打开MATALB 自动生成的.m文件,系统会自动生成如下语句:

function Hname Callback (hObject,eventdata,handles):

其中,Hname 为控件对象的属性值,Callback 是一种回调方式。如选中“pushbutton1_Callback”选项,光标会跳到“function pushbutton1_Callback(hObject, eventdata, handles)”的空白处,再继续添加代码,

function radiobutton1_Callback(hObject, eventdata,handles)

set(handles.radiobutton1,’value’,1);

set(handles.radiobutton2,’value’,0);

set(handles.edit2,’String’,’转到供氧系统诊断中’);

由于其他几个分界面的回调函数类似,故回调函数就不再给出。每个界面布置好控件并编好回调函数后,保存时会生成.fig 文件和.m 文件,保存在文件夹gzzd,确保GUI 能够正常运行。根据诊断流程图,给出故障知识燃气涡轮机发动机起动机燃烧室不点火,点击“确定”开始推理,进入推理步骤。

若需转到其他故障诊断中,则需按照提示点击下一步,就可转到其他故障诊断中继续诊断。当出现诊断结束时,整个诊断过程就完成了。如供氧系统诊断中的燃油供给不足这一故障,首先目测油量表,如果指示正常,且余油管没有燃油漏出,压力表也没有指示,可以判定是燃油分配器卡阻。给出的维修建议是更换燃油分配器,送厂修理,根据维修手册进行定期保养。

3 结语

通过建立航空发动机不能正常启动诊断信息库,实现对航空发动机故障知识的管理,在一定程度上为新型航空发动机设计提供了可靠技术保障。通过图形用户界面对故障模式、位置及解决措施进行直观地显示,清晰地发现维护中的缺陷,从而进行全面改善。MATLAB 可视化用户界面整个故障诊断过程操作简单方便,对故障提出相应的解决措施,有利于诊断人员观察故障特征,具有积极的实际意义。

猜你喜欢

控件界面设计故障诊断
中医养生APP界面设计
比亚迪秦EV充电系统故障诊断与排除
基于C++Builder 的电子邮件接收程序设计*
“共享员工”平台界面设计
中国传统元素在界面设计中的应用
基于包络解调原理的低转速滚动轴承故障诊断
使用“填表单”微信小程序 统计信息很方便
基于.net的用户定义验证控件的应用分析
手机UI界面设计中视觉艺术元素的构成
江淮同悦纯电动汽车无倒档故障诊断与排除