基于专家系统和MapInfo的电路故障诊断技术研究

2010-08-08 00:51郭小娟张庆荣
网络安全与数据管理 2010年7期
关键词:控件图层故障诊断

郭小娟,张庆荣

(北京航空航天大学,北京 100191)

控制逻辑转换装置是飞机飞行控制系统的重要组成部分,在该系统中起着控制枢纽的作用。现有的测试系统只能判断控制逻辑转换装置是否有故障,如果测试报错,则完全由人工依靠仪器分析,有时由于测试人员经验不足而导致误判断或误处理,致使故障扩大。

利用基于MapInfo和专家系统的电路故障诊断系统,可以帮助测试技术人员及时、准确地对各种异常状态和故障做出诊断,并预防和消除故障。

1 故障诊断系统的总体设计

故障诊断技术发展至今,已提出了大量较成熟的方法。按照国际故障诊断权威FRANK P M教授的观点,所有的故障诊断方法可以分为3种:(1)基于解析模型的方法;(2)基于信号处理的方法;(3)基于知识的方法[1]。基于知识的诊断方法包括基于专家系统的方法、基于模糊的方法、基于神经网路的方法和基于故障树的方法[2]。

逻辑转换装置的测试系统设计如图1所示。本文采用专家系统的方法设计故障诊断系统,专家诊断的结果还将通过电子地图的方式提供给测试人员。

图1 系统总体设计图

2 故障诊断专家系统的设计

专家系统故障方法是计算机在采集被诊断对象的信息后,综合运用各种规则(专家经验),进行一系列的推理[3]。必要时还可以随时调用各种应用程序,运行过程中向用户索取必要的信息后,就可快速地找到最终故障或最有可能发生的故障,再由用户来证实[4]。

本文设计的专家系统如图2所示,由人机接口、数据库、推理机、知识故障库等组成。

图2 专家系统结构图

人机接口:人与专家系统打交道的桥梁和窗口,也也是人机信息的交互界面。

数据库:采集大量信号和器件在测试中的正确状态。如输入输出信号线、中间信号在测试过程每一步的正确值及开关、灯、继电器以及三极管在测试中的正确状态。系统采用Access完成知识和数据的存储,信息以表的形式存储。数据库的结构易于系统推理加工和处理,在管理软件的控制下,数据库接收和存储有关故障类型的信息和相对应的信息。

推理机:根据获取的信息,综合运用各种规则进行故障诊断、输出诊断结果。本系统设计了两种算法:(1)通过计算匹配度确定故障原因。根据已知的错误信息检索数据库,保存匹配度大于0的所有故障类型,并按匹配度大小进行排队,匹配度大的故障类型是实际发生故障的可能性比较大,由此可以根据专家知识库推理出可能出错的元器件。(2)根据测试中错误信号的分布范围确定故障位置。根据报错的所有测试步骤,查询涉及到的输入输出信号、中间信号、交叉信号,并通过比对输出。技术人员在地图上根据信号找到出错的元器件。

知识故障库:包括所有的故障类型和故障类型对应的信息。故障类型与其对应信息可以在线检测时添加,使得知识库在使用中会不断丰富壮大。

3 电路地图的开发制作

3.1 基于MapInfo制作电路地图的步骤

MapInfo是常见的GIS(地理信息系统)软件之一,MapInfo地理信息系统平台作为图形、文字信息结合的软件工具具有多个优点:强大的图形表达及处理功能、实用的关系型数据库功能、灵活的数据查询分析功能、功能强大的系统开发工具[5]。地图的制作主要经历四个步骤:获取栅格图、配准栅格图、地图图层化、地图编码。

经过获取栅格图、配准栅格图、地图图层化三个步骤后得到的部分电路地图如图3所示。

图3是制作完成的控制逻辑转换装置PCB电路地图的一部分。 包括元件 C19(电容)、C8(电容)、D1(CPLD)、以及元件管脚上的信号。图层1是作为背景的栅格图像层;图层2是信号图层,由星状标识构成,每一个星状标识代表一个信号;图层3是信元器件图层,由黄色多边形构成,每一个多边形代表一个元器件。

图3 部分电路地图

地图编码首先将以上所得到的三个图层制作成一个“.gst”文件,然后采集“.gst”文件中元器件和信号的名称、位置、放大倍数等信息,并将其保存到 Access数据库,这样就可以实现调用地图进行SQL查询,但由于尚无导航功能,因此必须以此为基础进行二次开发。

3.2 基于VB.Net+MapX的导航电子地图实现

MapX是MapInfo的ActiveX控件产品。它是一种基于Windows操作系统的标准控件,因而能支持绝大多数标准的可视化开发环境,如 Visual C++、Visual Basic、Delphi、PowerBuilder、Visual Studio.NET 等。 利用 MapX 能够简单快速地在软件中嵌入地图化功能,增强软件的空间分析能力。

在VB.Net环境下集成MapX开发GIS,将MapX做为控件软件添加到应用程序中,然后通过设置属性和调用该属性方法来实现。

3.2.1 添加MapX控件

在VB.Net开发环境界面中,在工具栏中点击右键,选择“Choose Items”项。在随即弹出的对话框中,选择“COM Components” 选 项 卡 , 选 中 “MapInfo MapX V5”。即可完成添加。

3.2.2 利用MapX控件实现图形的显示、缩放、漫游、定位查询

(1)图形显示

首先在工具栏中调用MapX控件,然后在显示图形窗体(frmView)上添加MapX图,在初始化添加如下代码。

Private Sub Form_Load()

Dim lyr As MapXLib.Layer

Map1.Layers.Add App.Path& “map otalmap.tab”

Map1.Zoom=180′设置图形初始显示比例

Map1.CenterX=-1.2′设置图形初始显示X轴中心

Map1.CenterY=1′设置图形初始显示Y轴中心

Set lyr=Map1.Layers(“totalmap”)

lyr.Editable=False′设置图形不可编辑

lyr.Selectable

End Sub

(2)图形缩放、漫游

先在显示图形窗体(frmView)上添加放大按钮、缩小按钮、漫游按钮。

这3个功能的实现调用MapXLib中的函数miZoom-InTool、miZoomOutTool和 miPanTool来实现。

(3)图形定位

定位功能有着重要的实用意义,技术人员将不必翻找大量资料,在定位元器件或信号的同时,技术人员还可获取该元器件或信号的信息(如名称、当前的正确状态),以便进行下一步排故工作。

VB.Net定位功能实现的思路:在某一图形窗体(frmView)上放 2 个 MapX 控件:Map1(主图)、Map2(鹰眼图,也称导航图)。然后编写相应代码在鹰眼图上创建一个图层,在该图层上添加一个矩形Feature,该矩形的大小随着主图边界而变化。

完成以上工作后,电子地图可以放大、缩小、移动,通过主副图配合使用,技术人员能够快速精确地找到故障位置,获得相关信息。

4 系统用户界面设计

测试系统中与故障诊断界面相关的有故障分析界面和地图操作界面。

(1)故障分析界面主要实现4个功能:输入错误信息、选择算法诊断、输出诊断界面、向故障知识库添加新知识。

(2)地图操作界面进一步辅助用户分析。用户输入出错的测试步骤时,地图会自动定位到相关的原理图或PCB图相关的元件上。通过查看电路图,用户就可以进一步验证故障分析的结果。

此外,在地图操作界面上,用户可查出测试中每一步所有信号的正确状态。因此用户可判断某一信号的状态是否正确,方便手动排除故障。地图操作定位界面如图4所示。

本系统采用人机对话界面风格,系统功能按层次全部列于屏幕上,用户可直接用键盘、鼠标等各种设备选择各项功能。在各子功能菜单上设计各种类型的对话框及图标,实现高度交互性,提高对无效信息的屏蔽,同时统一各菜单标准,提供运行指导和联机帮助功能。

图4 定位界面

通过对故障诊断系统的现场调试实验,对该方法进行了大量有效验证,实践证明该方法能够较好地实现对该电路系统的故障诊断,并且与原测试系统相互配合,合为一体。与其他电子电路的故障诊断方法相比,采用专家系统和MapInfo方法设计的故障诊断系统,不但能诊断出故障原因和故障位置,还可将电路图做成电子地图,直观、形象地查看故障,便于用户实施解决方案。

[1]朱大奇,于盛林.基于知识的故障诊断方法综述[J].安徽工业大学学报,2002,19(7):197-204.

[2]MOURAD S,ZORIAN Y.电 子 系 统 测 试 原 理 [M].北 京 :机械工业出版社,2007.

[3]翟丽芳.电子设备故障诊断专家系统的设计[J].计算机应用,2001,27(4):244-246.

[4]TARIQ A,JOANNE B D.Diagnostic expert systems from dynamic fault trees.www.cnki.com,2003.

[5]杜巧玲.MapInfo 7中文版[M].北京:清华大学出版社,2006.

猜你喜欢
控件图层故障诊断
基于包络解调原理的低转速滚动轴承故障诊断
基于.net的用户定义验证控件的应用分析
关于.net控件数组的探讨
数控机床电气系统的故障诊断与维修
解密照片合成利器图层混合模式
因果图定性分析法及其在故障诊断中的应用
跟我学添加真实的光照效果
基于LCD和排列熵的滚动轴承故障诊断
国外建筑CAD图层标准发展现状与研究
用Photoshop图层技术制作精美邮票