基于CAN总线的雷达装备BIT故障诊断专家系统研究
扫描二维码
随时随地手机看文章
摘 要: 介绍了一种基于CAN总线的分散检测,集中诊断、显示的雷达BIT故障诊断系统,描述了其硬件组成、专家系统结构,知识表示和推理机制。通过在该雷达BIT中采用专家系统诊断方法,使得推理机与知识库分离,便于诊断知识库的扩充、维护,有效提高了系统BIT故障诊断能力。
关键词: 雷达;BIT;专家系统;故障诊断
现代雷达装备的复杂程度和技术含量不断提高,可维修性、可测试性对装备的作战能力、生存能力、机动性、维修人员、保障费用产生了重要影响。传统的测试主要利用外部测试仪器对被测设备进行测试,这种测试方法费用高、操作复杂,且只能离线检测。为了提高雷达的维护性能,缩短雷达故障诊断时间,在现代雷达系统中,机内测试BIT(Built-in Test)装置发挥着重要作用。常规BIT故障诊断通过编写一个结构化的程序,每次测试中一旦出现故障便可进行诊断测试,以便故障隔离达到所要求的级别。这种基于结构化的程序将描述算法的过程性测试信息和控制性判断信息合二为一地编码在程序中,导致可维护性和适应能力比较差,不能灵活、高效地利用历史经验和专家知识,测试诊断结果缺乏解释,难以对设备排故与改型设计提供充分的依据[1]。特别是对于雷达设备在工程实际中大量出现的多并行过程监测、突发及多态故障诊断需求使得常规BIT故障诊断的技术手段和方法显得很不适应。因此,通过在雷达BIT故障诊断中使用专家系统技术,可极大地增强系统诊断程序的的灵活性和可维护性;对知识库的不断扩充和完善,可以大大提高系统的诊断能力,在一定程度上克服常规BIT故障诊断的不足。
本文以基于CAN总线的雷达BIT故障检测系统硬件结构为基础,设计了一种基于专家系统的雷达装备BIT故障诊断方法,对专家系统的诊断知识表示和推理控制进行了详细描述。该系统在具体设计中,采用Windows操作系统作为用户平台,故障诊断软件开发工具使用C++ Builder 6.0,采用Access 2000关系数据库,应用面向对象技术和可视化技术实现系统故障诊断功能。
1 BIT检测系统硬件组成
某型雷达技术体制先进,新技术含量高,包含了大量的大规模、超大规模集成电路,微波集成组件和各种功能模块,从高频到低频、从数字到模拟,分布在各个组合中,有些组合相距较远,属于典型的分布式结构。根据BIT的设置应尽量不影响雷达主通道工作的设计原则,确定了全机故障检测采用分散检测,集中显示、控制处理两级层次结构。第一级为雷达监控分系统主控台,由工业计算机组成,其定时采集各分系统的自检信息,完成雷达状态显示、雷达操作控制、人机接口、分系统故障信息综合、诊断及雷达遥控接口;第二级为分系统监控模块,由单片微处理器和传感器接口电路组成,在不影响雷达系统正常工作的前提下,不间断地对分系统工作状态进行监视,提取监测点征兆特征,完成对分系统的状态监测和与主控台通信等功能。与一般的通信总线相比,考虑到CAN(Controller Area Network)总线数据通信具有突出的可靠性、实时性和灵活性的特点,二级系统通过CAN总线连接,从而构成一个具有完整协议的计算机网络。BIT故障检测硬件组成框图如图1所示。
每个CAN模块或带CAN总线接口的单元都有一个唯一的ID号,用来识别不同的模块。各分系统状态及控制等报文均通过ID识别,由各CAN模块或分机本身的监控电路完成本分机状态的收集及上报。主控台接收来自各分机的工作状态信息,进行逻辑分析、判断并以友好方式在主控台界面实时显示出来。规定监测点故障用“1”表示,正常用“0”表示,CAN模块只要发现所监控的点发生状态改变,如由“0”变为“1”或由“1”变为“0”,就必须将结果上报到主控台。
2 故障诊断专家系统结构
故障诊断专家系统结构如图2所示,系统由诊断推理模块、动态数据库、解释机构、知识库管理模块和诊断知识库等组成。诊断推理模块根据BIT测点信息实现对各种规则的匹配和综合分析,给出诊断结果和维修对策,并通过解释机构提供推理的解释;动态数据库用来存放雷达分系统传送过来测点检测结果以及推理过程中的一些中间结果信息;知识库管理模块对诊断知识数据库进行管理,实现知识获取、知识更新、知识检验和知识查询功能,通过系统设计的友好交互界面,用户可以方便地诊断知识内容,并进行添加、修改、保存、删除等操作;诊断知识库用来存储系统的故障诊断知识。
3 诊断知识表示
3.1 诊断树模型
根据雷达BIT拓扑结构,系统采用层次诊断模型进行故障隔离诊断。模型主要按功能分为三个层次:系统级、分系统级、模块级。故障诊断隔离过程为:整机→分系统→模块,系统级诊断从整机隔离故障到分系统,以功能划分的分系统作为诊断目标,隔离故障到其中的某一个分系统;分系统级诊断从分系统隔离故障到模块(最小可更换单元)。
层次诊断模型采用基本结构如图3所示的诊断树[2]表示。诊断树将要进行诊断的系统按组成结构进行逐层分解,形成一棵倒置的树,诊断树节点对象由整机系统、分系统、模块或可更换单元组成,雷达整机构成了故障树的根节点,分系统构成故障树的中间节点,可更换单元模块构成树上的叶节点。连接两个节点对象的分支表示这两个节点的父子关系,在推理规则的作用下,故障从整机隔离到各分系统可更换单元模块。
3.2 诊断树的数据库表示
诊断树上每个节点都可以用一个统一的框架结构封装为类对象表示,存放在一个节点数据表中,节点数据表的结构如表1所示,数据表每行的字段按照ID、NAME、PARENT、TYPE、TESTPOINT、CODE和CONCLUSION等顺序排列。
专家系统诊断知识库建立在雷达系统的BIT测试性模型基础上,依据模型故障隔离结论与测试的关系建立,假设待诊断树某层某个节点对象有n个测点S1,S2,…Sn,通过它们可得到m个故障隔离结论F1,F2,…Fm,它们的对应关系可用表2所示的故障隔离结论与测试多维关系表表示。其中Cij(j=1~n)表示测点Sj与故障隔离结论Fi的相关性,对于故障隔离结论Fi,当其出现时,如果测点Sj测试不正常,即其取值为“1”;如果其正常则取值为“0”;如果测点与Fi无关,则取值为“x”。
诊断树上每个节点具有唯一的编号ID,测试集保存在父节点字段中,而对应的测试结果分散在多个子节点数据字段中,相当于故障隔离结论与测试的关系隐含在父子节点中,如图4所示。诊断时根据父节点的测试集结果组合,在其子节点中进行检索满足相应条件的CODE字段数据,可以判断出对应的故障子节点。
4 推理控制方法
故障诊断专家系统推理方向可以是正向推理、反向推理或混合双向推理。正向推理采用数据驱动控制策略,从一组事实出发,一遍又一遍地尝试所有可利用的规则,并在此过程中加入新事实,直到获得包含目标公式的结束条件为止[3],比较适合于本系统。因此本系统采用正向推理,推理是从诊断树模型的根节点开始,利用与测试结果相匹配的规则执行扩展新的子节点,将故障范围不断缩小到分系统、模块的过程,这个过程反复进行直到分离到故障树的叶子节点为止。推理机的推理过程是一个递归的过程,推理采用深度优先策略[4],推理机的算法流程如图5所示。图中OPEN表是一个链表,记录的数据对象是已经被生成出来,但还没有被扩展的诊断树节点指针。考虑到系统可能会同时发生多个故障,当检测出某个故障模式时,并不是立即将检测结果报告给用户,而是待其他的故障模式检测完毕,再给出故障报告。
实际故障推理时,由于诊断树节点对象具有封装性,所有节点对象都存放于后台的数据表中,对象指针指向对象所在的位置,这样可以使系统尽快根据故障信息找到故障对象,并根据指针遍历诊断树。
通过使用分布式控制CAN总线,对雷达全机故障检测通过采用分散检测、集中显示,有效地提高了检测的实时性和可靠性;在雷达BIT故障检测中采用专家系统诊断方法,使得知识库易于扩充、维护,增强了该雷达BIT故障诊断能力。
参考文献
[1] 温熙森,徐永成,易晓山,等.智能机内测试理论与应用[M].北京:国防工业出版社,2002.
[2] LIU S C, LIU S Y. An efficient expert system for air compressor troubleshooting[J]. Expert Systems,2001(18):203-214.
[3] LUGER G F.人工智能复杂问题求解的结构和策略[M].史忠值译.北京:机械工业出版社,2004.
[4] JO S G, GRATY R.专家系统原理与编程[M].印鉴译.北京:机械工业出版社,20001.