WinCE平台下嵌入式故障诊断专家的设计_第1页
WinCE平台下嵌入式故障诊断专家的设计_第2页
WinCE平台下嵌入式故障诊断专家的设计_第3页
WinCE平台下嵌入式故障诊断专家的设计_第4页
WinCE平台下嵌入式故障诊断专家的设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、当各种设备应用与管理系统发生故障时,准确而快速地进行故障诊断定位,对于系统的恢复,具有十分重要意义。然而,由于系统结构复杂,导致设备故障的原因很多,在现场分析、判断和处理故障时,往往依赖于维修人员对设备机理的把握程度和经验,导致故障定位不准,维修时间较长。故采用故障树分析法建立检测引导系统,以此来引导维修人员以专家的思维模式对设备进行检测修理,提高经济性和可靠性。这种检测引导系统即为专家系统。本文以串口通信故障检测为例,设计了一种嵌入式专家系统,结合嵌入式WinCE以及SQLite,达到引导检测的目的。1系统架构1.1专家系统简介专家系统(ES是人工智能领域最活跃和最广泛的领域之一1。自从19

2、65年第一个专家系统Dendral在美国斯坦福大学问世以来,经过40年的开发,各种专家系统已遍布各个专业领域。目前,专家系统得到了更广泛的应用,并在应用开发中得到进一步发展。所谓专家系统就是使用人类专家推理的计算机模型来处理现实世界中需要专家作出解释的复杂问题,在没有专家参与的情况下得出与专家相同的结论。简言之,专家系统可视作“知识库”和“推理机”的结合,知识库是专家的知识在计算机中的映射,推理机是利用知识进行推理的能力在计算机中的映射,构造专家系统的难点也在于这两个方面。1.2系统组成本文设计的智能专家系统包括用户界面、数据库以及模块化的程序。应用嵌入式数据库SQLite来实现知识的存储以及

3、人机交互实现推理解释。故障树节点的所有信息均存储在SQLite中,并在数据库中实现故障节点的逻辑关系以此取代推理机,达到引导检测的目的2。1.3系统工作机制专家系统的组织控制机构(即推理机根据当前输入数据来运行知识库中的相应知识,按一定策略进行推理,以达到要求的目标。本文专家系统中,推理机根据用户参与选择后的故障信息,在知识库内寻找能与之匹配的故障树结点事件,每步推理都以用户反馈信息为依据,沿故障树脉络进行正向推理,逐步缩小故障范围,直至完成故障源定位。专家系统工作流程如图1所示。Win CE平台下嵌入式故障诊断专家的设计姜涛,周西峰,郭前岗(南京邮电大学自动化学院,江苏南京210003摘要:

4、针对高科技产品专业性强、系统结构复杂、故障分析困难等问题,本设计以故障诊断的理论和方法为基础,提出了一种基于专家系统的故障诊断设计方案。设计构造了故障诊断专家系统的整体框架,探讨了专家系统中知识库的建立、推理机制以及人机界面设计等问题。关键词:专家系统;嵌入式WinCE;SQLite;串口通信中图分类号:TP391.5文献标识码:A文章编号:0258-7998(201108-0036-03An embedded fault diagnosis expert system based on WinCE platformJiang Tao,Zhou Xifeng,Guo Qiangang(Auto

5、mation College,Nanjing University of Posts and Telecommunications,Nanjing210003,ChinaAbstract:For the reasons that high-tech products are highly professional,system structures are of great complexity and the failure analysis is difficult,according to relevant theories and methods of fault diagnosis

6、the design puts forward a proposal based on expert system.Paper forms a framework of the fault diagnosis system,and discusses the establishment of fault library,reasoning mechanism and interaction interface.Key words:expert system;embedded WinCE;SQLite;serial communications图2串口通信故障树发送模块故障串口通信故障接收模块故

7、障串口扩展板故障物理线路连接不良接收错误数据中央处理单元故障电源故障无法接收数据中央处理单元故障物理线路连接不良电源故障2专家库设计故障树分析FTA (Fault Tree Analysis 是一种演绎推理方法,将系统可能发生的故障和故障原因由总体到部分按树状逐渐细化的图形演绎方法,通过对故障树的定性和定量分析,判明故障原因并可得出引发故障的相关因素的相关重要度3。故障树是用于系统可靠性分析和故障诊断的一种图形化故障模型,而基于规则的诊断专家系统的目标是当系统发生故障时综合利用各种诊断信息,根据知识库中的规则,通过推理确定系统的故障模式,推断出故障部位和故障原因,最后提出排除故障的方法和维修建

8、议。故障树建立时,将最不希望发生的故障作为顶事件;位于故障树底部,导致其他事件的、不可再分的原因事件为底事件,其他事件都是中间事件。各事件间相互关系通过“与”门、“或”门、“非”门等逻辑门表示。2.1SQLite 移植从SQLite 官方网站下载最新版本的SQLite ,解压获得sqlite3.c 、sqlite3.h 、sqlite3ext.h 三个源文件,还要下载一个基于Windows 平台的edll 压缩文档,解压获取sqlite3.def ,最后下载一个支持命令行的版本文件,解压获得sqlite3.exe 。然后生成工程:用VS2005新建DLL 工程,选择智能设备在定制WinCE 生

9、成的SDK(如mini2440-CE6-SDK,把解压出来的源文件加入工程中。最后设置工程属性后编译:编译后便可生成适合设备平台的数据库使用文件sqlite3.lib 、sqlite3.dll 。以后只要把sqlite3.dll 放到与工程相同的目录下,在工程链接的额外依赖中加入sqlite3.lib ,然后在需要使用数据库的源文件中加入include “sqlite3.h ”,SQLite 数据库就可以使用了。2.2故障树的构建基于故障树的推理是指利用故障现象信息和故障树节点间的逻辑关系进行推理,利用异常节点作为推理的起始点,利用辅助信息进行假设排除,最终确定故障原因。在进行故障诊断之前,系

10、统要构造故障树,故障树的作用主要用于诊断过程的剪枝,即缩小状态空间的搜索范围,以提高系统工作效率。将数据库中的所有规则组织成若干棵树,每棵树的叶子节点对应一个故障现象或辅助信息,非叶子节点对应一个故障结论,父节点与子节点的关系构成规则,在数据库中记录故障树的根节点、节点层次、节点关系、叶子节点等信息。设置系统变量,用于判断系统是否进行过规则更新操作,在启动系统、退出规则维护界面和调用故障诊断功能时都进行判断,及时提示用户进行故障树的更新处理4。串口无法通信或者通信过程中出现异常,就要对整体或者串口通信过程中的某个细节进行故障诊断。串口通信的实现需要如下几个模块:数据发送模块、数据接收模块、物理

11、链路、中央处理单元、串口扩展板以及电源。故障主要有数据发送模块故障、接收模块故障以及串口扩展板故障三部分。在工作中,无论哪部分模块发生故障都将影响到整个通信过程。根据故障关系以及检测经验设计图2所示的串口通信故障树。2.3故障二叉树的建立关系数据库管理系统的优势在于存储以二维数据表为模型的数据结构。本文将故障树压缩存储来降低检索算法的时空复杂度。一般的树形dp 都有这样的模型:f x ,y =minf x 1y 1,f x 2y 2,f xm ym 给每个儿子分配多少就需要枚举了,这种做法比较慢。但是如果转化为为二叉树之后,dp 模型一般都是这样:f x ,y =min f left x ,y

12、 1,f rightx ,y ,则变为给一个儿子进行分配就可以了,而且转化之后还有一个很有用的性质,即原树和二叉树的前序遍历相同,可以利用这个性质进行一些优化。而且在某些情况下,通过前序可以把树形dp 转化为在线性表(如数组中的dp,这样许多转移方程就可以继续优化,所以在树的算法中把树转化为某种线性序可以大大优化模型,使其算法变得更简单高效。本着这种原则,本专家系统设计的SQLite 表如表1所示。建立表之前,根据树转二叉树的算法对每个故障现象进行编号,表1图1专家系统工作流程开始选择故障现象提取故障树知识表决策?回馈检测结果回馈检测结果提示检测要求故障源决策?故障源故障源回馈检测结果回馈检测

13、结果解释故障解释故障解释故障提示维修措施提示维修措施提示维修措施提示检测要求图4人机交互流程图检测开始查询SQLite 显示故障现象根据故障现象判断NY节点等级是否为2?NY检测结束并保存检测结果图3故障二叉树串口通信正常吗?发送模块正常吗?莼路连接正常吗?接收模块正常吗?物理线路故障中央单元正常吗?中央处理单元故障电源故障中央处理单元故障数据可以接收吗?接收数据是否合格接收模块故障串口扩展板故障中央处理单元故障NODE 12345678910111213TEXT串口通信是否正常发送模块是否正常接收模块是否正常接收模块故障物理线路连接是否正常中央处理单元是否正常电源故障接收到的数据是否正确是否

14、可以接收到数据物理线路故障接收模块故障中央处理单元故障串口扩展板故障YESTO 3416719121111NOTO 2581101216131111NRANK 0112112112222表1故障树节点存储中,NODE 代表节点号;TEXT 表示节点的故障现象;YESTO 、NOTO 表示判断后将要跳转的节点;NRANK 表示节点等级,根节点等级为0,过度节点等级为1,当节点等级为2(即叶子节点时,表示测试结束并给出是否保存结果的提示。WinCE 下读取数据库信息对系统进行专家诊断的核心代码如下:if(atoi(sqlite->GetTableData(1,5!=2/保证在非叶子节/点之间

15、进行跳转node =atoi(sqlite->GetTableData(node,3;/选择YESTO /跳转到的节点node =atoi(sqlite->GetTableData(node,4;/选择NOTO /跳转到的节点wsprintf(buff1,L"SELECT *from '%s'where NODE =%d ;",table_name,node;/查询数据库m_cap =sqlite->GetTableData(node,2;/读取node 节点的/故障现象GetDlgItem(IDC_TITLE->SetWindowT

16、ext(m_cap;/把故障现象显示出来检测过程中,通过人机交互遍历故障二叉树如图3所示。图中二叉树的每一个叶子节点都是一次检测的结果,也就是故障的最终原因,它们的等级即NRANK 都是2。通过等级的判断来确定是否是最终结果并提示保存。3系统的实现本文以嵌入式操作系统Windows CE 和S3C2440A 为开发环境,应用EVC+语言编写、应用程序和嵌入式数据库SQLite ,开发了故障诊断专家系统,以串口通信故障检测为例,介绍了基于故障树分析法和专家规则的故障诊断专家系统的建立以及诊断过程。当串口通信故障检测开始时,测试人员只需要根据故障现象的提示进行是非判断,然后专家引导系统就会给出下一

17、步的工作。系统工作流程图如图4所示。专家系统运行的过程中,系统首次查询数据库,把故障树的根节点内容显示到提示信息。检测人员将提示故障现象正确与否的判断反馈给专家系统进行下一次数据库查询得到下一步的提示信息。检测人员参与之后的所有数据库查询工作都按照节点设计的逻辑进行跳转,然后重复人机交互操作,最后由专家系统给出确切答案,并提示检测人员对测试结果进行保存。本文提出了一种基于二叉树遍历的检测专家系统并给出了多叉树转化为二叉树的方法,在嵌入式WinCE 平台下将这种系统实现并在初步的实践检验中取得良好效果。以串口通信故障检测为例,详细地介绍了专家系统的建立过程以及工作原理,采用体积较小的嵌入式数据库

18、SQLite 以及WinCE 友好的嵌入式人机交互界面和模块化程序设计方式,复用性好,可移植性高5。此系统模型广泛适用于交通、通信以及电力等设备的故障检测,在故障树的引导下进行专家级检测。参考文献1蔡自兴,DURKIN J ,龚涛.高级专家系统:原理、设计及应用M.北京:科学出版社,2006.2潘玲琳.基于产生式规则的专家系统的研究实现J.计(下转第42页!"!"!"!"捷世伟业推出JTX 嵌入式小模块捷世伟业电子科技有限公司根据自己多年研发经验,推出一种小尺寸、低功耗、中高性能的嵌入式主板设计小模块JTX ,该嵌入式模块集成了一个嵌入式计算机必要的处理

19、器模块,用户只需要再设计载板引出相关的接口信号。JTX 模块设计为轻量级紧凑模块,低功耗、体积小、重量轻、抗震好。模块尺寸为90mm ×60mm ,能很好地放置于ETX 、PC104、CPCI 等各种标准模块的位置上。板载CPU 为低功耗、高效率、多功能的芯片组,例如ARM 、PowerPC 、Xscale 、ATOM ,龙芯等不需要太多外围芯片的CPU 架构。JTX 嵌入式模块主要由2个80pin 的连接器引出。连接器有方向插销,能防止插反、插错。连接器采用类似PC104的插针形式,比其他嵌入式模块的簧片弹性接触更可靠,非常适合于抗震要求高的应用场合。JTX 嵌入式模块特性:高集成

20、度设计,模块集成了CPU 核心系统所需所有部件;具有一个32bit 、33MHz PCI 总线,包含4路总线请求信号;多达19个可编程Smart GPIO 引脚,可以编程为串口、CAN 、中断、I 2C 、LPC 等;板载2路10G/100G 网络,或者1路千兆以太网,不带隔离变压器;4路USB 接口,1路SATA ,VGA 接口,RTC 实时钟电路,提供X4PCIE 总线;1个RS232调试串口,以及外部复位信号;90mm ×60mm 的模块尺寸,高稳固性的插针式连接器;低功耗、单3.3V 供电,整板功耗控制在10W 以下。(捷世伟业供稿(上接第38页算机技术与发展,2007(5.

21、3邵延峰,薛红军.故障树分析法在系统故障诊断中的应用J.中国制造业,2007,36(1:72274.4朱大奇.电子设备故障诊断原理与实践M.北京:电子工业出版社,2004.5庄宗辉,薛毓强,连瑞红.嵌入式数据库SQLite 在远程监控系统中的应用J.现代电子技术,2007(8:62-64.(收稿日期:2011-03-18作者简介:姜涛,男,1986年生,硕士研究生,主要研究方向:计算机控制与系统集成。周西峰,男,1960年生,硕士生导师,主要研究方向:计算机智能监测控制技术。郭前岗,男,1960年生,硕士生导师,主要研究方向:现代电力电子技术在电力系统中的应用。db.setConnectOpt

22、ions("SQL_ATTR_ODBC_VERSION=SQL_OV_ODBC3"由于QODBC 会自动调用unixODBC 和freetds 的配置文件,所以不用调用setHostName(函数单独设置数据主机名。实现了数据库的连接,数据库的检索就相对简单了。QSqlQuery 提供了一套检索数据库的简单方式。4实验与讨论经实验验证,该导医系统能够正确接收有源RFID 标签发射的病人ID 号,并以此发起数据库检索,检索得到病人就医的相关信息后在终端上显示导引信息。该导医系统不仅可以完成就医导引的任务,还可以扩展其他功能。例如,可以修改终端程序,使系统空闲时插播药品广告,这可以进一步减小系统成本。另外,可以修改导医系统终端上的应用程序,使RFID 阅读器实现远程控制。例如远程控制阅读器的开启和关闭、增益设置等。实现方式是在导医终

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论