




已阅读5页,还剩55页未读, 继续免费阅读
(通信与信息系统专业论文)可视化电路故障诊断软件开发平台研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 = ;= = = = 4 = j = = ;= = ;= = = = = = = = 一:= ! 摘要 、支本文以“板级产品故障诊断软件开发平台”的研究为背景,首先概述了电路故障 诊断系统的作用及其开发平台发展现状与趋势,指出目前使用的诊断软件开发平台 广泛存在的开发周期长、设计复杂以及专家知识获取困难等问题。针对这些问题, 本文在可视化流程设计方面做了深入研究,提出了c o m 插件形式的可视化诊断流程 设计方案并实现了该平台。可视化流程设计解决了用传统文本编程方式开发故障诊 断软件所带来弊端,具有高度可视化、使用简便以及可快速开发诊断流程的特点, 经过系统测试表明,该两视化开发平台能高效开发出实用的诊断流程,并且流程具 一 有良好的运行效率。彳 本文在电路故障诊断领域对神经网络算法也进行了深入研究,比较了b p 、各种 改进b p 和f t a r t 2 等神经网络算法,指出b p 和改进b p 学习算法存在收敛困难、速 度慢等问题,不适用于故障分类。f t a r t 2 算法则具有一次学习收敛、收敛精度高等 优点,但应用于故障分类仍存在问题。本文针对f t a r t 2 神经网络的不足,在此基础 上提出了自适应门宽f t a r t 2 的改进算法,该算法解决了f t a r t 2 算法存在的偏离样 本处的分类性能降低的问题,成为开发平台中主要的神经网络算法 本文介绍了开发平台的可视化流程设计和改进f t a r t 2 神经网络算法的具体实 现,提出了变量空间的数据传输方案。并以某导弹指挥仪7 3 2 a d 转换电路板的诊断 为例,对平台进行了测试与分析。 关t 词i 可视化编程 插件技术 故障诊断系统神经网络c o m 组件技术 华中科技大学硕士学位论文 _ = _ 目目自= l 自口;= = = ;= = = = = = ! = a b s t r a o t o nt h eb a s i so ft h ep r o j e c t , ”p l a t f o r mf o rd e v e l o p i n gf a u l td i a g n o s i ss y s t e m so f c i r c u i tb o a r d s ”,t h ef u n c t i o no ff a u l t d i a g n o s i ss y s t e m sa n dt h ed e v e l o p m e n to ft h e d e v e l o p i n gp l a t f o r ma r es u m m a r i z e di nt h ef i r s tp a r to ft h ep a p e r a i m i n ga tt h ed e f e c t s l y i n gi nc o n l i n o nd e v e l o p i n gp l a t f o r m s ,s u c ha st h el o n gt e r mo f d e v e l o p i n g , c o m p l e x i t i e s o ft h e d e s i g na n dd i f f i c u l t i e s i n k n o w l e d g ea c q u i s i t i o n , v i s u a lf l o wp r o g r a m m i n gi s i n v e s t i g a t e da n dt h ed e s i g no f v i s u a lp r o g r a m m i n gi nf l o wc h a r tw i t hc o m p l u g - i n si s p r e s e n t e di nt h ep a p e r v i s u a lf l o wp r o g r a m m i n gi sm o r ec o n v e n i e n ta n de f f i c i e n tt h a n t e x tp r o g r a m m i n g ,w h i c hi sp r o v e di nt h ef o l l o w i n gs y s t e mt e s t s t h e a l g o r i t h m so f n e u r a ln e t w o r k si nt h ec i r c u i tf a u l td i a g n o s i sf i e l da r ea l s os t u d i e d i nt h ep a p e r a f t e rc o m p a r i n g b p , i m p r o v e d b pa n df t a r t 2 a l g o r i t h m ,w ep o i n t so u tt h a t b pa n di m p r o v e db p a l g o r i t h m a r cn o t a p p l i c a b l ef o rt h ef a u l tc l a s s i f y i n gb e c a u s eo ft h e l o w p r o b a b i l i t yo f t h ec o n v e r g e n c e a l t h o u g hf t a r t 2c a nc o n v e r g ei no n es t e pa n di s m o r ea c c u r a t e ,t h e r es t i l le x i t sp m b l e m si nt h ef a u l tc l a s s i f y i n gu s i n gf t a r t 2 t os o l v e t h e s ep r o b l e m s ,w e p r e s e n t t h ea d a p t i v ea a l g o r i t h m ,w h i c hg i v e sf t a r t 2 b e t t e ra p p r o a c h a b i l i t yw h e ni n p u t s a r ef a rf r o m s a m p l ei n p u t s i nt h ef o l l o w i n gp a r to ft h ep a p e r , t h er e a l i z a t i o no fv i s u a lf l o wp r o g r a m m i n ga n d a l g o r i t h mo fi m p r o v e df t a r t 2a r ed e s c r i b e d a tt h es a m et i m e ,t h ev a r i a b l es p a c e m e t h o df o rd a t at r a n s f e ri sp r o p o s e d i nt h ee n d , t h ee x a m p l eo f d i a g n o s i s s y s t e mf o r7 3 2 a dc i r c m ti sp r o d d e da n dt h e a n a l y s i so f t h ep l a t f o r m i so v e n k e y w o r d s :v i s u a lp r o g r a m m i n g f a u l td i a g n o s i ss y s t e m n e u r a ln e t w o r kc o m p l u g - i n f t a r t 2 i i 华中科技大学硕士学位论文 t j = = = ;= # 自= l = j = = = = = = = = = = = = = = = = z = = = ;= 一一= 1 1 电路故障诊断系统 1 绪论 电子设备随着电子技术的发展,应用得越来越广泛。尤其在高科技领域,航空 航天等军工项目中,更是大量使用电子设备。这些电子设备电路复杂度高、成本高, 当电路发生故障以后,必须对电路进行可靠的维修。然而对电路进行维修工作首先 就是要了解电路中发生了何种故障,以及故障产生位置。这个工作在早期的中小规 模电路中,是依靠电路专家人工诊断完成。但是随着电路规模和集成度的不断提高。 人工诊断工作变得越来越困难,诊断所需要的电路专家人数也在不断增加,这些都 迫使电路故障诊断不得不由人工方式转为依靠电路诊断系统自动完成。自从1 9 7 0 年 中期开始,分别针对系统级、板级和芯片级的电路故障诊断的研究一直非常活跃“1 。 电路故障诊断系统是一种基于专家知识的自动故障检测和定位的工具,这种专 家知识往往以故障字典或者一些规则的形式存在与诊断系统中呦由于诊断系统本身 具有专家知识库,可以利用已经输入的专家知识完成诊断,因此故障诊断系统的操 作人员不需具备丰富的被测电路知识,从而大幅度降低了进行故障诊断的难度。这 也是为什么电路故障诊断系统被广泛的应用于航空航天、汽车、微电子等众多领域 的一个重要原因。 电路故障诊断系统包括硬件和软件两大部分,其中软件部分被称为电路故障诊 断软件,在诊断中替代专家完成智能推理和故障分析等工作;硬件部分被称为故障 诊断硬件平台,包括所有诊断设备,在诊断中负责对被测电路施加激励和获取电路 响应的工作。 随着对电路故障诊断系统的需求越来越多,智能电路故障诊断系统的快速开发 平台就成为了国内外研究的热点,一个能够快速高效地开发出需要的故障诊断软件 的开发平台,所能带来的社会效益和经济效益难以估量。 华中科技大学硕士学位论文 = = = = = = = = = = = = 2 = = 日= = = = = ;= = = = = ;= = = = = = = = = 一 1 2 电路故障诊断技术的发展 电路故障诊断的研究工作始于1 9 5 9 年阿尔居德( r d e l d r e d ) 的一篇关于组合 电路测试生成的论文。1 9 6 6 年罗斯( j e r o t h ) 的d 算法以及这期间经过各国学者改 进的p o d e m 、f a n 、九值d 算法等高效d 算法,在电路诊断的发展史上具重要的 意义。这些基于电路通路敏化的诊断方法,由于易于计算机实现,将数字电路的故 障诊断推进到相当实用的阶段。从7 0 年代起,电路诊断技术的发展进入了新的阶段, 基于知识的诊断专家系统得到了广泛的应用,较成功地解决了模拟、数字电路的诊 断问题。这个时期的诊断技术水平,已能够满足特定层次的用户需求,在工业、军 事领域发挥了重要的作用。如美军曾经在8 0 年代中期研制的e m m a ( e x p e r t m i s s i l e m a i n t e n a n c ea i d ) 战术导弹维护专家系统就大大增强了维修人员的维护能力。但总 的说来,诊断技术的发展尚处在幼年时期,表现在应用系统的性能和效率距离人们 的期望仍然有巨大的差距。3 。 电路诊断实际上是一个人工智能问题的求解过程,是很典型的智能行为,人们 很早就试图用人工智能的思路方法去解决诊断( 包括电路诊断) 问题。第一个诊断 专家系统,美国斯坦福大学的医用诊断系统( m y c i n ) 的问世表明,用适当的专家 知识表示方法加上机器推理的组合,非常适合于模拟人类专家解决诊断问题的智能 过程。传统意义上的专家系统,大多采用产生式规则表达专家的经验知识,在知识 库的搜索和匹配中完成问题的求解,这种系统有两个突出的弱点,一是知识库不完 备时效率成倍下降,二是知识获取困难,影响到诊断效果的提高。围绕这个问题的 解决,人们对知识、推理、搜索、问题求解等人工智能的基本问题进行了深入的研 究,由此促成了人工智能思路和方法在电路诊断领域的全面引入。 故障诊断技术随着人工智能技术的发展到现在,分化为4 个不同的诊断推理方 式: ( 1 ) 基于模糊理论的故障诊断 由于某些系统状态的不确定性,或者获取的信息不完整,因此出现了基于模糊 理论的诊断方法。其中一种是基于模糊理论的诊断方法,将模糊集划分成不同水平 2 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = ;= = = = = = = = = = = = = = = = = = = 一: 的子集,以此来判断故障可能属于哪个子集。另一种是基于模糊关系及合成算法的 诊断方法,先建立征兆与故障类型之间的因果关系矩阵r ,再建立故障与征兆的模糊 关系方程,即f = s 。r ,这里f 为模糊故障矢量;s 为模糊征兆矢量;”为模糊 合成算子“1 。 这种方法可解决诊断中的不确定性的问题,但是,模糊诊断知识获取困难,尤 其是故障与征兆的模糊关系较难确定,学习能力差,容易发生漏诊或误诊。另外, 由于模糊语言变量是用模糊数( 即隶属度) 表示的,如何实现语言变量与模糊数之 间的转换,是实现上的一个难点。 ( 2 ) 基于实例的故障诊断 系统实例推理( c b r ,c a s e b a s e dr e a s o n ) 是人工智能领域中新兴的一种推理技 术,是一种使用过去的经验实例指导解决新问题的方法。1 。1 个故障实例可用1 个多 元组c = e ,s ,r ,p 来表示,其中,e 、s 、r 、p 为4 个有限的非空集合,分别表示故 障实例名、故障的征兆集、故障结论集和维修方案集。基于实例诊断的优点是根据 过去实例解决新问题,不需人从实例中提取规则,降低了知识获取的负担,解题速 度快。在放障诊断方面,实际的经验实例非常重要,基于实例方法提供了一个快速 有效的诊断途径。 基于实例推理的关键是建立一个有效的实例索引机制与实例组织方式。将c b r 引入故障诊断领域面临的问题是能搜集到诊断实例是有限的,不可能覆盖所有解空 间,搜索时可能会漏掉最优解;当出现异常征兆时,由于找不到最佳匹配,可能造 成误诊或漏诊。另外,还存在实例之间的一致性维护问题。 ( 3 ) 故障诊断专家系统 故障诊断专家系统研究的时间最长,也是研究最多、应用最广的一类智能诊断 技术。 早期的故障诊断专家系统都是基于规则的系统,它是通过专家诊断经验的积累 而建立的。这些经验大多数由产生式的规则进行描述,将征兆与潜在的故障联系起 来。通过这些规则来模仿专家在故障诊断过程中的关联推理过程。这是一种基于经 验知识而不是基于系统结构或行为过程知识的诊断方法,因而也被称为基于浅知识 3 华中科技大学硕士学位论文 = = = = = = = = = = = ;= = = = = = = = = = = = = = = = = = = = = = = 一:= 的方法。 故障诊断领域中,对征兆的描述、故障与征兆的关系等往往具有模糊属性,如: 温度“偏高”、振动“厉害”等。因此,以模糊集表示的模糊语言变量能更准确地 表示具有模糊特性的征兆和故障,符合事物的客观本质,而且能处理诊断中的不确 定信息和不完整信息。所以,建立故障与征兆的模糊规则,即模糊产生式规则,再 进行模糊逻辑推理的诊断方法,也成为诊断系统的研究热点之一。 随着诊断对象复杂程度的增加,基于规则的诊断系统的缺陷暴露,如知识集不 完备,对诊断对象的依赖性强,对没有考虑到的情况或新的诊断对象,系统容易陷 入困境。因此,人们开始研究基于模型知识的诊断系统嘲。 基于模型的故障诊断系统要求诊断对象的每一个环节具有明确的输入输出表达 关系,诊断时首先通过诊断对象的实际输出与期望输出之间的不一致,生成引起这 种不一致的原因集合,然后根据诊断对象领域中的第一定律知识( 具有明确科学依 据知识) 及其内部特定的约束关系。采用一定的算法,找出可能的故障源。相对于 基于经验知识( 规则) 而言,这种模型知识常被称为深知识。 模型知识处理不同于传统的数据建模处理,建模处理主要用于那些能够完全用 数学精确描述的系统,而知识处理主要用于那些没有精确数学模型或很难建立数学 模型的复杂系统近2 0 年里,基于模型知识的方法日益引起重视,已经取得了重要 进展,如r e g g i a 的节约覆盖集方法。y a g e r 的模糊解释模型以及d a v i s 的基于结构与 功能的诊断推理模型等。 与基于经验知识相比,基于模型知识的方法知识获取方便,维护简单,易于保 证知识库的一致性和完备性。但是搜索空问大,推理速度慢所以,近年来也发展 了一些基于经验知识和模型知识相结合的诊断推理方法 总的来说,故障诊断专家系统的优点主要表现在:适于人的思维,容易理解; 知识可用基本规则表示,无需输入大量的细节知识;个别事实发生变化时易于修改; 能解释自己的推理过程但同时由于目前知识处理技术局限性,也存在如下缺点: 知识获取的瓶颈问题。知识的获取多是将领域专家的知识总结为规则加入知 识库中,知识获取效率低。另外,领域专家的某些经验知识往往只能意会,不能言 4 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = z = = ;= = 一: 传,很难用一定的规则来描述: 推理机制的局限性。很多问题难以形式化,知识库管理困难:推理过程中, 因搜索空间大,易产生“匹配冲突”,进而带来“组合爆炸”、“无穷递归”等问 题:没有联想、记忆、类比等形象思维能力; 自学习、自适应能力差。现行的故障诊断系统通常是以专业领域的经验知识 为基础进行问题求解,不能在实践中总结经验( 成功或失败) 或从专业领域本身的 发展中学习新的知识; 不能确定性知识的处理困难。在模糊规则诊断中,一些简单的模糊逻辑算子 往往难以满足推理的要求,模糊隶属度函数的获得也比较困难。 ( 4 ) 基于神经网络的智能故障诊断 神经网络在故障诊断中的应用始于8 0 年代末期,人工神经网络开始被用于故障 诊断中。目前神经网络故障诊断系统的研究已非常活跃m 。 神经网络故障诊断实质上是一类模式分类和识别的问题旧。在传统的模式识别技 术中,模式分类的基本方法是利用判别函数来划分每一个类别如何选择有效的判 别函数形式,以及在识别过程中如何对判别函数的有关参数进行修正,对于传统的 模式识别技术来说,并不是一件容易的事。 人工神经网络作为一种自适应的模式识别技术不需要预先给出关于模式的经验 知识和判别函数,它通过自身的学习机制自动形成所要求的决策区域。它能充分利 用状态信息,对来自不同状态的信息逐一训练以获得某种映射关系,而且网络可连 续学习。当环境改变,这种映射关系可以自适应,以求得对对象的进一步逼近。”“1 神经网络同样也可以用作故障预测,其实现方式主要有以下2 种: 神经网络作函数逼近器,对设备的某些参数进行拟合预测; 用动态神经网络对过程或设备参数建立动态模型而进行故障预测。 函数逼近器的神经网络目前应用较广泛的仍然是基于多层的前馈网络( 如b p 网 络) ,这种网络只代表了一类可通过代数方程描述的静态映射,只适用于静态预测。 动态神经网络是一个对动态时序建模的过程。人们已经提出了许多有效的网络结构, 其中包括全连接网络以及各种具有局部信息反馈结构的网络模型等,这些网络本身 华中科技大学硕士学位论文 l _ j = 目目_ 目a = = i = = = = = = 自一= = = 具有相应的动态结构,因此其预测是动态预测。动态神经网络已经在实际的非线性 动态系统的建模和预测中得到了成功的应用。 神经网络在故障诊断领域中的应用显示了明显的优越性,但也存在以下一些困 难,主要是: 训练样本获取的困难性,神经网络故障诊断是建立在大量的故障样本训练基 础之上,系统性能受到所选训练样本的数量及其分布情况的限制; 忽视了领域专家的诊断经验知识: 权重形式的知识表达方式难以理解,对诊断结果缺乏解释能力。 由于这4 种诊断方式各有优缺点,因此为了综合利用不同方式的优点,还衍生 出了许多组合的诊断方式,如将神经网络与专家系统结合的诊断系统。 专家系统与神经网络的结合策略有层式和混合式2 大类。在层式结合中,专家 系统与神经网络组成串联式结构,分别完成所擅长的启发式逻辑推理或数据模式判 别功能。在混合式结合系统中,将专家系统构成神经网络,把传统专家系统的基于 符号的推理变成基于数值运算的推理,以提高专家系统的执行效率并利用其学习能 力解决专家系统的学习问题。考虑到模糊语言变量在表达具有模糊特性的征兆和故 障方面的优势,近年来,将模糊逻辑、神经网络和专家系统结合在一起的智能诊断 系统也成为研究的热点之一。 神经网络故障诊断专家系统是一类新的知识表达体系,与传统的专家系统的高 层逻辑模型不同,它是一种低层数值模型,信息处理是通过大量称之为节点的简单 处理单元之间的相互作用而进行的。它采用分布式信息保持方式,为专家知识的获 取和表达以及推理提供了全新的方式神经网络与专家系统结合的诊断系统是最具 有发展前景的,也是目前电路故障诊断的研究热点之一。 1 3 电路诊断软件开发平台现状与趋势 电路故障诊断软件开发平台目的是用于开发电路故障诊断软件。使用电路故障 诊断软件开发平台,可以简化电路故障诊断软件的开发过程,降低开发难度,减少 开发时间,并且能利用已有的故障诊断软件开发经验。诊断系统的需求量随着电路 6 华中科技大学硕士学位论文 ;= ;= t 自自= 自= ;= = 自= = = = = = = = 一 的增多而不断增加,快速开发诊断软件的开发平台就随之成为了国内外研究的重点。 国外比较流行并且已经实用化的诊断软件开发平台是使用基于软件测试仪器和 可视化设计界面的开发平台。“软件即仪器”的口号是十年前n a t i o n a li n s t r u m e n t s 公 司提出的,当时该公司提出虚拟仪器的概念,认为利用数据采集插卡为基础,配合 软件程序可以构成数字电压表、数字示波器、任意波形发生器等基础仪器。这种测 试系统既无物理面板,硬件实体亦少,软件起着重要的作用,故称为虚拟仪器。事 实上,数字采集系统由模数转换器、缓存、数模转换器,甚至加上数字信号处 理器( d s p ) 组成,它已具备起码的测试条件。在软件的参加下可灵活配置成信号放 大器、发生器、显示器、电压测量仪、频谱分析仪等等。目前数据采集插卡当分辨 率超过1 6 位时,频率范围只有1 0 0 m h z ,只能处理音频、视频的信号,对于射频、 微波等通信设备来说,“软件即仪器”的办法尚难实现。但是对于低频模拟电路和低 频率的数字电路来说,这种方式不但实用,而且有效地降低了设备成本,使得一套 通用设备就能同时完成f o 、万用表、示波器等多种功能,再配合相应的开发软件, 就有能力在较短的时间内开发出所需的故障诊断软件。 经过十年的发展,n a t i o n a li n s t r u m e n t s 公司的l a b v i e w 开发环境,已经成为了电 路故障诊断软件开发的一个常用平台“”。另外还有h pv e e 等其他可视化的诊断开 发环境。 国内已经实用化的诊断软件开发平台有成都电子科技大学的陈光禹等人研制的 v x i 总线测试软件平台等特定的硬件平台基础上的开发平台,代表了国内诊断软件开 发平台的发展水平。 但这一类开发平台对于硬件的结合较为紧密,需要开发者本人对于其所操作的 硬件环境有较清楚的了解,同时需要开发者能够自己配置硬件的驱动函数;开发平 台中并没有结合任何的诊断相关的技术,所有诊断能力完全由开发人员通过编程实 现;对于目前流行的人工智能相结合的诊断方式,现有的平台中没有现成的代码或 模块可以利用。虽然可由开发者自己通过编写代码的方式自行开发利用人工智能技 术( 如人工神经网络、模糊数学等) 进行诊断的测试程序,但是相对也给开发人员 提出了更高的技术要求,而且也没有解决专家知识获取这一困扰着故障诊断专家系 华中科技大学硕士学位论文 统的问题。 由于目前的开发平台所存在的缺点,诊断软件的开发人员期望能够使用程序设 计简便易懂,包含有主流诊断方法模块的快速开发平台,通过这样的平台降低诊断 软件的开发难度,甚至可以直接由电路设计者来进行诊断软件的开发,而不需软件 工程师来协助软件的开发。更高的开发效率和更简单的设计方式成为了诊断软件开 发平台的发展趋势。 1 4 本文的主要内容 本文以“板级产品故障诊断软件开发平台”为背景。主要在可视化流程设计以及 神经网络故障诊断算法方面做了研究,提出了c o m 插件形式的诊断流程设计方案和 改进f f a r t 2 0 ”算法。全文共分为六章。第一章概述,简要介绍了电路故障诊断系统 的作用以及用于开发电路故障诊断软件的开发平台的发展现状和趋势。第二章详细 的介绍了文章的选题背景和整个开发平台的框架设计。紧接的第三章中,详细讨论 了平台所采用的高效开发方式可视化流程设计的关键技术。第四章则介绍了神 经网络技术的发展与改进,以及f t a r t 2 网络结构和算法针对f t a r t 2 网络在偏离 样本处的预测和拟合性能降低的现象,本文提出自适应门宽的f t a r t 2 改进算法。第 五章主要介绍了平台的具体实现。第六章以某导弹指挥仪7 3 2 a d 转换电路板的诊断 为例,对平台进行了测试与分析,并对全文进行了总结 华中科技大学硕士学位论文 2 可视化电路故障诊断软件开发平台方案 2 1 课题背景 在航空航天领域内,大范围的使用着各种专用电路板。这些电路板被设计用在 各种航空航天器材、测控设备以及相关的仪器或设备上。它们多数都具有成本高、 电路规模较大等特点,如果仅仅依靠个别的电路专家进行维护是远远不够的,而且 甚至有些较早研发的电路板其电路设计图纸已经遗失。为了能对这些电路板进行定 期的检修和维护,必须为不同型号的电路板设计不同的电路故障诊断软件。 然而如前所述,设计电路故障诊断软件是一个复杂的工作,其难点之一在于如 何将专家知识转化成为电路故障诊断软件的专家知识库。另一个问题在于,电路板 之间存在很多相似之处,对应不同的电路板的电路故障诊断软件中,也有很多近似 的部分可以利用。因此如果每一块电路板都从零开始完全独立的开发新的故障诊断 程序,是对诊断软件设计人员劳动的极大浪费。而且,需要开发电路故障诊断程序 的电路板数量很多,因此需要能快速开发诊断软件,并且要尽可能简单直观。 同时,考虑到不同的电路板类型可能使用的诊断方式并不相同。例如某些电路 板比较适合于通过传统的规则判断方式进行诊断,而另一些则更加适合使用神经网 络的方式进行诊断。因此,作为一个通用性好的电路故障诊断软件开发平台,还必 须能够同时支持不同方式的电路诊断,甚至在一个诊断软件中同时结合几种不同的 诊断算法进行故障诊断。因此这个诊断平台应该具有良好的底层运行支持,才能保 证同时支持各种不同的诊断算法 另外,由于诊断算法正在日新月异的不断更新,不断的有人提出更新更好的诊 断算法,而且底层的硬件平台也在不断的更替当中,所以这个平台还应该具有良好 的扩充能力,可以随时补充进入新的功能而不会影响到原有的功能发挥。 正是基于上述种种原因,现在需要开发的是一个具有高度自由性,具有高度扩 充能力,同时使用起来较为简单的一个板级电路故障诊断软件开发平台。 9 华中科技大学硕士学位论文 = = = = = = = 2 = = = = = ;= = = = = = ;= = = = = ;= = = = 一= 本项目的目标是研制“板级产品故障诊断软件开发平台”,该平台是用于编制 电路板智能诊断软件的通用开发环境,具有可视化和模块化的优点。项目由北京航 天安捷测控技术发展中心立题,并负责总体方案和电路板功能测试开发平台( 包括 硬件、软件) ,华中科技大学负责完成开发平台中,诊断知识表示、推理、信息获 取、人机交互、人机界面、数据存储、解释、预测等软件的研制开发。双方共同完 成整个开发平台的研制、集成、调试和完善。 2 2 项目需求 “板级产品故障诊断软件开发平台”旨在提供用于板级v x i 总线模件智能诊断软 件开发的通用环境,要求解决一个模块对应一套诊断软件的弊端,开发人员不需要 复杂的源程序编码,只需输入专家知识及必要的其它信息,在平台中可视化界面的 指导下,利用平台提供的各种功能组件,即可建立一个具体的诊断软件。 开发平台要能忠实地体现专家的诊断思想,提供开发智能系统所需的知识表示、 推理、信息获取、人机交互、数据存储等基本功能组件。 在确保专家( 开发人员) 诊断的经验或原理知识正确、完备的前提下,利用该 平台开发( 生成) 的诊断系统应能满足板级测试、诊断的一般要求,对经过功能测 试确认存在故障的模块板,应准确定位到与实际故障点相连的电路接点上,诊断结 果具有可重复性。 建立故障预测模型,具有一定的故障预测与趋势分析能力。 体现“以人为本”的原则,提供和谐、有好的人机界面及可视化编程环境。 其设计原则如下: 在设计过程中,将坚持实用性、可靠性、先进性的原则,做到三者兼顾,有机 统一。 ( 1 ) 实用性 本项目的开发着眼于工程应用,能如实地体现专家的诊断思想,满足用户开发 智能诊断系统的基本要求,力求减轻用户负担,缩短开发周期,提高开发的效率。 ( 2 ) 可靠性 1 0 华中科技大学硕士学位论文 = = = = = = = = = = = ;= = = = = = = = = = = = = = = = = = = = 一= = 鉴于本平台开发的软件系统是用来进行测试、诊断的,要求平台本身具有更高 的可靠性,需要提高系统的容错与纠错能力,采用软件复用与组件设计技术,严格 执行国军标g j b 4 3 7 - 8 6 ,对平台开发实行全程质量监控,强化文档与标准化管理,确 保平台的高可靠性。 ( 3 ) 先进性 在保证上述( 1 ) ,( 2 ) 的前提下,尽可能采用或研究计算机软件开发及智能 测试、诊断的主流、先进技术,所开发的软件应具有国内先进,行业领先水平。 2 3 平台基本结构 整个平台的基本结构如下图所示 图2 - l 可视化电路故障诊断平台开发平台结构图 结构中各个部分功能说明参见下表: 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 一= 表2 一l 开发平台各模块功能说明 模块数据名称模块的功能描述数据的意义说明 诊断界面设计模块用于直观地设计诊断系统运行界面界面上可以容纳被测电路板的电路 图、诊断步骤描述、激励和响应、硬件平台的状态等信息 诊断界面诊断界面设计模块创建出的界面数据,记录界面上需要显示的界面数据, 以及屏幕上的显示位置等信息。 可视化诊断流程设诊断软件开发人员通过它来设计出针对不同电路板的电路诊断软件流程 计模块 诊断流程可视化诊断流程设计模块创建出的流程数据,主要记录的是流程的整体结 构、每个流程模块中的功能模块类型以及每个功能模块的参数配置情况 诊断流程知识库记录以前开发过的可重用的诊断流程片段,某些诊断流程片段可以单独作 为t p s ( t e s tp r o g r a ms e t ,测试程序集) 使用,供实际诊断时单独调用 另外一些可以作为予流程的形式被其他的诊断流程所利用 诊断功能模块库该库中包括所有完成具体诊断功能的功能模块 可视化诊断系统运该模块完成读入并解释诊断流程,运行流程的工作诊断过程中该模块会 行模块生成诊断过程数据和诊断结果数据。这些数据以诊断结果的形式保存下 来 诊断结果诊断结果数据包括诊断过程数据以及诊断结论两部分诊断过程数据包括 了诊断中的流程运行状况、对电路板所施加激励的信息、电路板的响应信 息、专家系统的判断结果等数据诊断结论记录的是本次诊断的结论,即 电路板是否存在故障以及故障所产生的位置、类型等信息 诊断结果记录库该库中记录着各次电路板诊断的过程和结果数据。以及被测电路板的相关 信息、时间、测试人、诊断报告等效据 硬件驱动库硬件驱动库包括所有的驱动底层硬件的功能模块它们负责完成给被测电 路板加载激励并且取回被测电路板的响应 底层硬件设备平台完成与被测电路板交互的设备 被测电路板简称为u u t ( u n i tu n d e rt e s t ) 。指连接在底层硬件设备平台上,等待 电路故障诊断系统诊断的电路板 诊断解释模块解释整个诊断过程,生成一个可供人工阅读的诊断过程描述报告的模块 解释结果诊断解释模块根据诊断过程生成的对诊断过程的解释 故障预测模块利用保存的诊断信息,完成某块或某类电路板故障状态的预测分析,从而 能够根据电路板的定期检测提前发现某块电路板可能的故障以及某种电 路板容易发生的故障 预测结果由故障预测模块生成的电路板故障预测结果 本人从2 0 0 1 年4 月项目论证开始起至今一直参与项目的需求调查分析、平台结 构设计、软件编制、系统测试、试运行等整个工程的工作。主要工作是负责整体的 框架设计、可视化流程设计模块以及神经网络诊断功能模块的制作。 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 一 3 可视化诊断流程设计中的关键技术 3 1 可视化技术 3 1 1 可视化技术概述 可视化对应的英文词v i s u a l i z a t i o n 包含着v i s u a l 字根,它来自拉丁语v i s u a l i s 及 拉丁语v i s u s ,意为“视觉”。在牛津英语词典中对v i s u a l 一词有7 种定义:其中有6 种最常见的定义都涉及到人们用眼睛所看到的影像:第7 种定义为形成心理图像的 意思,而这种图像与人们的视觉没有必然的联系。后面这种定义从广义上给出了可 视化的含义,即形成某些不可见对象或抽象事物的心理图像的能力或过程,使不可 见的事物变成可见。 可视化并非是一个新的概念,其使用面也非常广。但它作为- f - j 新学科和技术 领域出现的标志是1 9 8 7 年美国科学基金会( n s f ) 组织召开的“科学计算可视化” 专题研讨会,以及会后m c c o r m i c k 等人所发表的“科学计算可视化”( v i s u a l i z a t i o ni n s c i e n t i f i cc o m p u t i n g ,v i s c ) 报告。现在也称为科学可视化( s c i e n t i f i cv i s u a l i z a t i o n 。) , 或简称为可视化( v i s u a l i z a t i o n ) 。值得注意的是,这里所说的可视化对象主要指的是 被计算机计算的数据及计算过程,即专指科学计算可视化。现代科学计算作为三大 科学研究方法( 其它两个是实验方法和理论方法) 之一,其主要特点是数据海量和 计算密集,常常使研究人员处于难以理解计算结果和驾驭计算过程的困境。为了解 决这一问题,科学计算可视化作为- - 1 7 新兴学科应运而生,成为近l o 年来计算机科 学中的研究热点之一,其理论和技术日趋成熟,在流体力学、气象学、医学、分子 图形学和石油地震勘探等计算中获得典型应用“”。 实际上,与此同时作为计算工具的计算机软件可视化( s o f t w a r ev i s u a l i z a t i o n ) 研究也取得长足的进展,已成为可视化技术领域的一个重要分支。它又是软件工程 的一个分支,其目标是帮助程序员管理复杂的现代软件。 华中科技大学硕士学位论文 3 1 2 软件可视化的内涵 软件的主体是程序。当程序编写完装入计算机后,就“消失”在那些存储介质 上了。此后,程序结构、运行行为都不可见,这使得对大型复杂软件的直接理解几 乎不可能,给软件开发、测试、维护和评估带来极大的困难,阻碍了软件的发展和 应用。因此软件界一直在研究软件可视化技术。软件可视化是利用印刷术、图形、 动画和具有现代人机交互功能的电影制片技术和计算机图形技术等手段,使得软件 便于理解和有效使用。 在软件可视化的文献中,涉及的可视化内容和术语很多,可以用图3 1 表明它们 相互之间的关系。 图3 - i 有关术语示意图 下面对软件可视化的内涵作进一步的说明。 ( 1 ) 软件可视化( s v ,s o f t w a r ev i s u a l i z a t i o n ) 指对计算机程序( 较低层) 或算法( 较高层) 的可视化,所以分为程序可视化 和算法可视化。 ( 2 ) 程序可视化( p v ,p r o g r a m v i s u a l i z a t i o n ) 指对程序代码或数据结构的静态或动态特征进行的可视化。可分为静态代码可 华中科技大学硕士学位论文 = = = = ;= = = = = = = = ;= = = = = = ;= = = = = = = = = = = = 一 视化、动态代码可视化( 代码动画) 、静态数据可视化、动态数据可视化( 数据动画) 。 ( 3 ) 算法可视化( a v ,a l g o r i t h m v i s u a l i z a t i o n ) 指对软件高层抽象的可视化。也有一个从静态到动态的范围问题,所以分为静 态算法可视化、动态算法可视化( 算法动画) 。流程图是一个简单的静态算法可视化 的例子。 ( 4 ) 可视程序设计( v p 。v i s u a l p r o g r a m m i n g ) 指在构造程序时,利用“可视的”技术对程序进行规范说明。v i s u a lb a s i c 和 v i s u a lc + + 就是具有一定可视编程能力的可视程序设计语言。v p 本身已形成个领 域。v p 和s v 之间的主要差异是蕴含的目标:v p 试图使程序的规范说明与设计变得 较容易,而s v 试图使程序和算法变得较容易理解。v p 本身可以传递程序的信息, 它是静态代码,数据可视化的一种。许多v p 系统就提供了某种s v ,但这并不是它的 主要功能1 。 ( 5 ) 示范程序设计( p b d ,p r o g r a m m i n g b y d e m o n s t r a t i o n ) 示范程序设计是通过用户的演示实例来实现程序的规范说明。它是一个类似于 s v 的与v p 有关的领域。在早期的文献中有时称作实例程序设计( p r o g r a m m i n gb y e x a m p l e ) 。意思是用户创建一个程序时可以不需要高级的程序设计技巧,可以只演 示一个实例,而由系统推导一个程序。因此,如果用户知道如何在计算机上完成一 个任务,那么就可以建立一个程序去完成该任务。 ( 6 ) 计算可视化( c o m p u t a t i o n v i s u a l i z a t i o n ) 计算可视化是包含像硬件性能方面的s v ,有时称为性能可视化( p e r f o r m a n c e v i s u a l i z a t i o n ) 。这种可视化对于多处理机体系结构上的负载均衡或性能优化是很重要 的。 3 1 3 可视化流程设计方案 首先,本平台的用户分为两大类,其中一类是故障诊断软件的开发人员,也就 是诊断软件设计者。他们的任务是基于被测电路板的电路结构和自己的专家知识, 利用电路故障诊断软件开发平台来设计对被测电路板进行故障诊断的诊断系统。而 华中科技大学硕士学位论文 = = = = = = 篁= = = = = = = = = = = = = = = = 高= = = = = = = = = = = = = = 另外一类用户,则是诊断人员。他们能够使用开发人员所完成的诊断系统,在没有 专家的情况下,独立完成电路故障的诊断和定位,同时还要求系统能够简单易用。 对于故障诊断软件的设计者来说,一个开发平台的要求是能够尽可能快速的开 发出一个需要的软件,同时这个开发平台的使用越简单越好。如前面所介绍,为了 能够尽量降低故障诊断系统设计门槛,在这个平台中采用了可视化的编程技术,也 就是v i s u a lp r o g r a m m i n g 技术。 考虑到这个开发平台的通用性,也就是为了能够表示不同结构的算法,必须设 计一个具有足够语义表示能力的可视化编程方案。目前主要的可视化编程有几种类 型,分别是界面设计的可视化( 如v c + + 、v b 等都属于此类,它们将最为复杂的界 面设计由原来的代码设计变成了直观的屏幕上的控件布置的方式。这样的好处是在 设计时就可以直接看到界面运行的效果,但实际的代码编写等工作还是必须用文本 方式完成) 和程序的流程化设计( 例如l a y o u t 等软件,它们完全摆脱了文本编程方 式,也就是不再是t e x tp r o g r a m m i n g 的编程环境,而是完全基于流程的。使用这样 的平台设计程序,只需要按照要求放置流程模块。并给每个流程模块赋予相应的工 作即可) 。 综合比较这两种编程方案的优缺点,文本方式编程的好处在于,比较适合于人 的语言习惯。目前高级语言大多都很接近于真实的人类语言,容易记忆,而且在开 发环境的设计的难度上相对较小,只需要提供一个改进型的文本编辑器就能够完成 程序的编写,工作最复杂的部分集中在解释器或者编译器环境,因为该部分负责对 整个程序的代码解释运行或者编译成为二进制代码。相对来说,流程化方式编程的 最大好处就在于直观和简单。学习流程编程基本上不需要编程者作任何特殊学习, 尤其是对于文本编程来说,艰巨的语法学习,以及大量的函数名称的记忆,这些都 是让计算机编程的初学者觉得非常困难的地方。因此,最终决定这个平台应该采用 可视化的基于流程的编程方案,目的是为了降低设计者的技术门槛,并且能让设计 者直观的看见程序结构。 但是,传统的流程编程方式也存在几个比较严重的问题。 首先,流程表示方式存在困难。往往在这些纯粹基于流程的开发环境中只提供 华中科技大学硕士学位论文 了顺序运行、根据条件判断的跳转语句这两种模块,这样可以满足大部分的程序设 计,同时可以把流程图简化为一些顺序的流程方块。而对于一些复杂的流程结构, 由于其本身结构很不规则,难以通过程序绘图的方式直观的表现给程序设计者,同 时对于这样复杂结构的内存表示和存贮,都存在着许多不易解决的问题需
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大件物流车型知识培训课件
- 2025内蒙古巴彦淖尔城市发展投资(集团)有限公司招聘7人考前自测高频考点模拟试题及答案详解(网校专用)
- 半导体产研基地项目技术方案
- 芮城教综考试试题及答案
- 建筑电气安装施工方案
- 乙烯生产线项目技术方案
- 潍坊美术模拟考试题目及答案
- 施工过程中的预算管理方案
- 园林施工质量提升方案
- 平朔集团笔试题目及答案
- 《范进中举》课剧本
- 2024年《宪法》知识竞赛必背100题题库带解析(必刷)
- 视频新媒体制作服务方案
- 中华民族共同体概论课件专家版2第二讲 树立正确的中华民族历史观
- 敦煌文献研究与敦煌学
- 大数据时代下人们活的更累辩论赛范文(通用9篇)
- 笛卡尔环线性化技术的基本原理
- 鱼寮遗址聚落嘉义平原考古遗址有过沟-嘉义大学课件
- 渔业资源与渔场学PPT完整全套教学课件
- 跨境电子商务实务PPT完整全套教学课件
- 广告词写作 高教版中职语文职业模块工科类
评论
0/150
提交评论