系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc

上传人:laozhun 文档编号:4070871 上传时间:2023-04-03 格式:DOC 页数:83 大小:4.44MB
返回 下载 相关 举报
系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc_第1页
第1页 / 共83页
系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc_第2页
第2页 / 共83页
系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc_第3页
第3页 / 共83页
系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc_第4页
第4页 / 共83页
系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc_第5页
第5页 / 共83页
点击查看更多>>
资源描述

《系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc》由会员分享,可在线阅读,更多相关《系统可测性分析与辅助设计软件总体设计及关键模块实现硕士学位论文1.doc(83页珍藏版)》请在三一办公上搜索。

1、硕士学位论文论文题目 系统可测性分析与辅助设计软件 总体设计及关键模块实现学科专业 测试计量技术及仪器独 创 性 声 明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名: 日期: 年 月 日关于论文使用授权的说明本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允

2、许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后应遵守此规定)签名: 导师签名: 日期: 年 月 日 摘 要可测性(Testability,也译为可测试性)是产品能及时准确地确定其状态(可工作、不可工作、性能下降),隔离其内部故障的设计特性。可测试性设计已成为装备整体设计中一个重要的组成部分,在提高武器装备保障能力、降低测试维护成本方面起到决定性的作用。虽然我国1995年就颁布了装备测试性大纲,但由于缺乏有效的系统可测性设计与评估的计算机辅助工具,我国电子装备可测性设计现

3、状远远滞后于新一代装备可测性设计需求。因此,本论文在国家相关项目的支持下,参考美国QSI公司的TEAMS软件,对系统可测性分析及辅助设计软件的总体设计及关键模块实现做了深入研究,开发的可测性软件已在相关单位作了应用验证。论文的主要研究工作有:1设计了软件总体方案。将本软件划分为系统级可视化建模、可测性指标分析、最优故障诊断树生成、可测性指标分配四个大功能模块。以VC+ 6.0为编程开发平台,设计了软件总体结构和集成方案,以及多类型结点的模型树、依赖矩阵等用于模块间数据传递的关键数据结构。2提出了一种“基于依赖矩阵多测试信息的虚警率评估方法”。该方法在依赖矩阵基础上,只需采用现有测试方法就能评估

4、虚警率,希望能为虚警率评估提供一种新的思路。另外,还完成了对常见可测性指标(故障检测率、故障隔离率、未检测故障集、故障模糊集、隐藏故障、掩盖故障、冗余测试)与动态性能指标(加权故障检测率、加权故障隔离率、平均模糊度)计算方法的实现与优化。3实现了基于AO*与或图启发式搜索算法的最优故障诊断树生成方法。AO*启发式搜索算法是可测性分析与设计优化的基础,但其算法描述复杂且计算复杂度较高。为了减少程序运行时的资源开销,本论文将所有的待解故障集、可用测试都通过依赖矩阵传入时的先后ID号来标识,该方法避免了程序执行期间无意义的冗余信息操作处理,一定程度上减少了不必要的内存和CPU开销。此外,本论文还设计

5、和实现了诊断树结果的图形化交互显示界面。4针对TEAMS软件不能进行可测性指标分配的不足,提出了在可测性软件中集成可测性指标分配功能模块。本论文对可测性指标分配进行了简要介绍,编程实现了经验分配法和线性插值分配法,并根据指标分配的数据特征设计和实现了特定的数据结构和窗口化交互显示方式。5对研制的可测性软件进行了测试验证。以“反坦克导弹发动机系统”为测试验证实例,通过和TEAMS 6.0对比验证,发现两款软件的各项可测性指标分析结果基本一致,另外本软件还具有直接查看系统依赖矩阵、虚警率分析与可测性指标分配等特殊功能。此外,本软件2010年通过了总装专家组的验收测试,而且本软件也在航天科工集团与中

6、电集团相关单位进行了应用验证,得到了相关专家的肯定与表扬。关键词:可测性,指标分析,故障诊断树,指标分配,虚警率ABSTRACTTestability is a key factror for a product design through which the products status (work, unwork, performance degradation) can be determined timely and accurately, and the internal fault can be isolated. Design for testability (DFT) ha

7、s become an important part in the design of weapons and equipments because DFT plays a decisive role in imroving supportability and reducing test costs for weapons and equipments. Although China promulgated the Outline of test equipment in 1995, the DFT status applied in current electronic equipment

8、 lags far behind testability requirements for the new generation equipments due to a lack of an effective computer-aided tool for DFT design and evaluation, Therefore, in support by some projects of the State, based on the TEAMSa commercial software for testability, we do a thorough research in soft

9、ware architecture design and key modules design for DFT software. Our DFT software has been verified in some related units. Main contents in this thesis are as follows: 1. The architecture of the software is designed. The software is divided into four functional modules i.e. system-level visual mode

10、ling, testability index analysis, optimal fault diagnosis tree generation, testability indicator distribution. Using VC+ 6.0 as the development platform, we designed the architecture of the software. In addition, we designed a multi-node model tree and some dependence-matrix data structures that pla

11、y a key role when data transmission between modules. 2. A false alarm rate evaluation approach based on multi-test information from a dependence-matrix is proposed. Based on dependence-matrix, this method can verify the false alarm rate only use existing test methods. Thus this method provides a new

12、 way for evaluating false alarm rate. In addition, the calculation methods for common testability index (fault detection rate, fault isolation rate, undetected fault sets, fault ambiguity sets, hidden fault sets, masking fault sets, redundant test sets) and for dynamic testability index (weighted fa

13、ult detection rate, the weighted fault isolation rate, the mean ambiguity degree) are implemented and optimized. 3. Based on AO* heuristic search algorithm, the optimal method for fault diagnosis tree generation is implemented. AO* heuristic search algorithm is the basis of testability analysis and

14、design optimization, but its algorithm description is complexity and it has complexity computation. In order to reduce resource overhead when the program runs, the program identify all the fault sets and usable the tests by the sequence of ID numbers on the time dependence-matrix. This method avoids

15、 redundant information in processing meaningless during the operation. Moreover, the method reduces the unnecessary requirement for memory and CPU overhead to some extent. In addition, we also design and implement an interactive graphical display interface for the results of the diagnostic tree.4. B

16、ecause of a shortage of index distribution in TEAMS software, the paper proposes to integrate a testability index distribution module into our testability software. First, an index distribution is briefly reviewed. Then, two distribution methodsan experience method and a linear interpolation method,

17、 are implemented. Finally, based on the characteristics of a distribution index, a specific data structure and an interactive display window are designed, 5. Our DFT software has been tested and verified. An instance of the anti-tank missile engine system is tested using our software and TEAMS 6.0.

18、The test results show that the two testability softwares have nearly consistent performance. In addition, our software also has other special features, such as dependence-matrix direct view, false alarm rate analysis and distribution of testability indicators. Morover, our software passed the accept

19、ance test from expert assembly in 2010, and the software has been verified by CASIC (China Aerospace Science & Industry Corp.) and the CETC (China Electronic Technology Group).Keywords: Testability, Index analysis, Fault diagnosis tree, Indicator distribution, False alarm rate (FAR)目 录第一章绪论11.1 可测性技

20、术概述11.2 国内外可测性软件概况11.3 本文研究内容及结构安排3第二章软件结构总体设计52.1 软件平台介绍52.1.1 编程开发平台介绍52.1.2 引用的第三方组件介绍52.2 软件应具备的功能72.3 软件总体设计与实现92.3.1 软件集成方案设计与实现92.3.2 关键数据结构设计132.4 本章小结19第三章可测性指标分析模块设计与实现203.1 可测性性能指标介绍203.1.1 静态可测性指标203.1.2 动态可测性指标213.2 虚警率评估方法研究233.2.1 虚警率基本概述233.2.2 基于依赖矩阵多测试信息的虚警率评估方法研究243.3 软件设计与实现263.3

21、.1 依赖矩阵预处理子模块设计与实现263.3.2 可测性性能指标分析实现293.3.3 指标结果图形化显示设计与实现313.3.4 虚警率评估实现333.4 本章小结35第四章最优故障诊断树模块设计与实现364.1 最优故障诊断搜索算法介绍364.1.1 AO*搜索算法简介364.1.2 AO*搜索算法的实例分析374.2 软件设计与实现384.2.1 模块总体结构设计384.2.2 霍夫曼平均码长求解实现404.2.3 AO*算法实现434.2.4 诊断树的图形化交互显示设计与实现464.3 本章小结50第五章可测性指标分配模块设计与实现515.1 可测性指标分配简介515.1.1 可测性

22、指标分配概述515.1.2 可测性指标分配方法介绍525.2 软件设计与实现545.2.1 模块总体结构设计545.2.2 窗口化交互显示设计与实现565.3 本章小结60第六章软件测试与验证616.1 测试验证实例简介616.2 指标分析模块测试验证626.2.1 可测性性能指标636.2.2 虚警率656.3 最优故障诊断树模块测试验证656.4 指标分配模块测试验证666.5 软件整体测试验证676.6 本章小结69第七章总结与展望70致 谢72参考文献73攻硕期间取得的研究成果75第一章 绪论1.1 可测性技术概述随着半导体集成电路技术的迅猛发展,军用电子系统日趋复杂,且向集成化和小型

23、化两个方向发展,急剧地限制了测试点的设置,而随着检测点的缩减,降低了故障的可观测性。在这种情况下,人们提出了可测性设计概念,在设计阶段就考虑产品的后期测试维护问题,把降低测试维护代价的要求纳入设计规范,并通过可测性指标来检验和改进设计。在可测试性大纲1,2,3中,可测性(Testability,也称可测试性)被定义为:产品能及时准确地确定其状态(可工作、不可工作、性能下降),隔离其内部故障的设计特性。以提高可测性为目的进行的设计被称为可测性设计(DFT: Design For Testability)。可测性设计要解决的问题是如何通过改善设计4,将难测或不可测故障转变为易测或可测的故障。具体是

24、指在系统、分系统、设备、组件和部件的设计过程中,通过综合考虑并实现测试的可控性与可观测性、初始化与可达性以及和外部测试设备兼容性等,达到可测性要求的设计过程。可测性设计的目的是提高系统的故障诊断和隔离能力,因此需要同故障诊断技术相结合来优化系统可测性设计。总之,可测性设计是与产品功能设计并行的复杂工作,不能仅从设计阶段的投入衡量,还要从它在产品整个寿命周期获得的利益考虑。1.2 国内外可测性软件概况20世纪80年代,美国军方相继实施了综合诊断研究计划。为与综合诊断的协调,美国国防部于1993年2月颁发MIL- STD-2165A系统和设备的可测性大纲,大纲将可测试性作为与可靠性及维修性等同的设

25、计要求,并规定了可测试性分析、设计及验证的要求及实施方法。该标准的颁布标志着可测试性作为一门独立学科的确立5-8。考虑可测性的综合诊断技术已应用在正在研制的新一代武器系统中,如军用运输机C-17、战斗机F-22、轰炸机B-2。自从MIL-STD-2165发布后,陆续出现了很多可测性分析工具用于美国军方装备的可测性设计和分析。这些工具包括:ASTEP、CAFIT、DTA、IN-ATE、LOGMOD、SCOAP、STAMP、ACE、WATA等。作为指标分析工具,上述这些软件基本上都具有系统逻辑建模的功能,但都没有得到大范围应用推广。随着计算机软件工程的发展、武器系统测试和诊断要求提高,目前的可测性

26、辅助设计和评价软件工具不仅可以用于系统的测试和诊断设计,而且可以生成相应的测试序列和故障诊断引擎,以提高系统的维护性、可靠性。具有代表性的可测性分析和辅助设计工具有美国QSI公司9的TEAMS和DSI公司10的eXpress。TEAMS主要用于复杂系统的测试时序生成和可测性设计、分析。TEAMS最初为美国航天工业和NASA研制,后逐渐扩展应用到汽车、化工、医疗等行业。TEAMS是基于模型的分析工具,这些模型涵盖了系统的组成结构、互联、测试布局、故障模式等信息。这个模型将各种故障与系统组成单元、维护步骤和修理过程关联起来。产品的可测性经过TEAMS分析后,生成文本和图形的可测性报告。eXpres

27、s也是建立在模型基础上,从系统观点获取设计数据,通过综合利用不同的数据源,将系统工程、可靠性、可测性、可维护性和诊断可测性等学科关联在一起。eXpress强调诊断性设计,其中的诊断信息可产生多个诊断报告,这些报告包括检测覆盖率报告,详细故障组统计,功能概率,故障模式概率等。但这两款商用软件价格都很昂贵,TEAMS的单个建模模块就需要4-8万美元,若购买整套软件则需要高达几十万至百万美元。除此,TEAMS在可测性辅助设计方面功能不够完善,而eXpress的学科关联也太多,缺乏对系统可测性指标分析和辅助设计的针对性。国内装备的可测性设计从20世纪80年代开始逐渐得到重视。1990年4月发布的航标H

28、B6437-90电子系统和设备的可测试性大纲,1995年10月发布国军标GJB2547-95装备测试性大纲。时至今日,装备可测试性问题仍然没有得到很好地解决,甚至成为装备保障过程中最为突出的问题。从技术层面上看,主要是缺乏系统的可测性设计指南、理论指导,和缺乏有效的关于可测性设计的计算机辅助设计与仿真软件工具11-20。在国内,雷达整机以及机载、舰载电子系统等复杂系统的设计研制单位,都对电子系统和设备可测性设计技术需求迫切。因为可测性设计是军用电子设备研制必要指标之一,而且未考虑可测性设计的电子设备大大增加了研制单位的维护费用,所以这些单位迫切希望能对现有电子系统和设备进行深入的可测性分析,为

29、设备的后期测试、维护提高故障诊断依据。因此,有必要自主开发一款可测性分析与辅助设计软件15,对现有电子装备系统进行的可测性分析,为故障诊断提供最优测试依据,提高可测性设计效率的相关工程应用具有重大意义。1.3 本文研究内容及结构安排本论文的主要研究工作是可测性分析与辅助设计软件的总体结构设计与实现,和可测性指标分析模块、最优故障诊断树模块、可测性指标分配模块的设计与实现。本论文的主要研究内容如图1-1所示。图1-1本文研究内容根据本文研究内容及可测性软件的关联性,本文的结构安排如下: 第一章,绪论介绍可测性技术的定义及课题背景和国内外可测性软件概况。第二章,软件结构总体设计本章从软件整体结构设

30、计的角度出发,介绍软件的编程开发平台和编程过程中引用的第三方开源组件。还介绍了软件具备的功能,并将其划分为系统级可视化建模、可测性指标分析、最优故障诊断树生成、可测性指标分配四个大功能模块。再阐述软件总体结构和集成方案设计,及模型树、依赖矩阵等负责模块间数据传递的关键数据结构的设计。第三章,可测性指标分析模块设计与实现本章介绍了常见可测性指标(故障检测率、故障隔离率、未检测故障集、故障模糊集、隐藏故障、掩盖故障、冗余测试)、动态性能指标(加权故障检测率、加权故障隔离率、平均模糊度)的定义及计算方法,并编程实现了这些指标的计算方法和显示可测性指标结果的报告输出。此外,本章提出了一种“基于依赖矩阵

31、多测试信息的虚警率评估方法”。该方法在依赖矩阵基础上,只需采用现有测试方法就能评估验证虚警率,希望能为虚警率评估提供一种新的思路,并编程实现了该方法。第四章,最优故障诊断树模块设计与实现本章对故障诊断树和AO*最优故障诊断树搜索算法作了简要介绍。重点阐述了最优故障诊断树生成模块的软件设计和编程实现,包括模块的组成结构设计,霍夫曼树的构造、霍夫曼平均码长的求取实现,AO*算法的编程实现,诊断树结果的图形化交互显示界面的设计和实现。第五章,可测性指标分配模块设计与实现本章针对TEAMS软件不能进行可测性指标分配的不足,提出了在可测性软件中集成可测性指标分配功能模块。对可测性指标分配做了简要介绍,还

32、介绍了经验法、线性插值法两种分配方法。编程实现了经验分配法和线性插值分配法,并根据指标分配的数据特征设计和实现了特定的数据结构和窗口化交互显示方式。第六章,软件测试与验证本章以“反坦克导弹发动机系统”测试验证实例,建立本软件的可测性模型,对本软件的各功能模块和整体性能进行一一测试。同时,使用可测性分析软件TEAMS建立其对应的可测性模型,分析可测性指标和最优故障诊断树。第二章 软件结构总体设计本章从软件整体结构设计的角度出发,先介绍本软件的编程开发平台和编程过程中引用的第三方开源组件,及本软件具备的功能。再阐述本软件的总体结构、集成方案设计,和“模型树”、“故障-测试依赖矩阵”两个数据结构的设

33、计,这两个数据结构对软件模块间数据传递起到了关键作用。2.1 软件平台介绍本软件是在VC+6.0编程平台下开发,并且以Windows操作系统为运行平台。2.1.1 编程开发平台介绍C+是一种使用非常广泛的计算机编程语言,它也是静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格21。VC+6.0是微软(Microsoft)公司推出的一个基于Windows系统平台的可视化的集成程序开发环境,它的源程序要求按C+语言方式编写,并加入了微软提供的功能强大的MFC(Microsoft Foundation Class)

34、类库22。MFC中封装了大部分Windows API(Application Programming Interface,应用程序编程接口)函数和Windows控件,它包含的功能涉及到整个Windows操作系统。MFC不仅给用户提供了Windows图形环境下应用程序的框架,而且还提供了创建应用程序的组件,为开发人员节省了大量的开发时间。除此,它还提供了详细的程序开发手册,介绍其定义类库和函数的接口,使应用程序开发变得简单。2.1.2 引用的第三方组件介绍程序中开发过程中,除了使用MFC自带的程序开发函数库,引用了第三方开源组件CMarkup、CRGTreeT、CGridCtrl,分别用来完成数

35、据的文件读写、数据操作、表格数据显示,还引用了Visio ActiveX图形化开发控件,和Xtreme Toolkit Pro界面美化组件。1CMarkup XML文件读写组件CMarkup类是由First Objective Software Inc用C+语言开发的非常经典的XML文件读写工具。它是一个非常独立的、简单易用的开源项目。用它来创建新的XML文档,分析修改现存的XML文档,非常方便易用。它具有如下特征:独立,不需要任何外部的XML组件;小,是很小的一个类,并且对于文档只维持了一个字符串;简单,创建、导航和修改XML无比的简单;快,分析器能相当快的建立索引数组。本软件将可测性模型数

36、据存储为XML(Extensible Markup Language,即可扩展标记语言)格式的文件,并通过CMarkup类来实现工程文件数据的读写操作。2CRGTreeT树形数据操作组件CRGTreeT类是由程序员Tibor Blazko和Ren Greiner联合开发的纯数据树形数据结构。其功能完整,不仅包含树结点的添加、插入、删除,而且还提供查找、排序、堆内存外部释放等功能。除此,其数据结构明晰易懂,代码简洁明了易用。本文的模型树、诊断树等树形数据结构都是继承至CRGTreeT类。3CGridCtrl表格数据显示组件CGridCtrl类是CodeP网站的创始人之一Chris Maunder

37、开发的一个数据表格显示编辑开源控件,该控件继承于MFC的CWnd类,其功能全面,简单易用。除此,还具有如下特点:可以对任何列或行固定,隐藏行和列,行或者列可以按照大小自动排序;单元格可以有不同文本和背景颜色的个性化设置,字体的个性化设置,标注只读或者其他的状态设置及检测,单元格太小而不能显示数据时会有提示框显示完整的数据。本文的依赖矩阵显示的数据表格,和指标分配模块的线性插值法加权参数设置表格使用了该组件。4Visio ActiveX图形化开发控件Visio是由Microsoft开发的功能强大的图形开发环境,它可以创建种类广泛的几何图形和流程图。Visio ActiveX图形化控件可以嵌入到以

38、Microsoft Visual Studio、Microsoft office开发的应用程序中,为图形编程提供绘图界面,并允许开发人员控制集成的Visio用户界面。软件中建模模块的图形化交互显示就是基于该组件实现的,但该部分不是本文的研究内容,不作深入讨论。5Xtreme Toolkit Pro界面美化组件Xtreme Toolkit Pro是由Codejock Software Inc开发的一套非常好的MFC扩展界面库,可以帮助在编程时轻松的制作出非常漂亮专业的自定义主题外观,是VC程序员的理想的界面开发工具选择之一。本文对该组件的使用,主要体现在框架和属性面板的显示风格上。2.2 软件应

39、具备的功能如果按功能进行划分,本可测性分析与辅助设计软件具备系统级可视化建模、可测性指标分析、最优故障诊断树、可测性指标分配四大功能模块。软件模块化原则是软件架构中的基本原则。模块化可以提高软件模块的复用性,并保障每一个模块的稳定性。软件的功能模块组成结构图如图2-1所示。图2-1软件功能模块组成结构图1系统级可视化建模模块可视化建模的目的是为了建立可测性模型,对被测系统进行系统级的数学抽象描述23-27。系统级可测性模型是通过人们对系统的理解来进行抽象描述的,可能涉及到各行各业的专业知识,各种不同岗位的工作人员的合作努力。对于系统的功能设计工程师,其关注的模型是具有传输函数的结构框图,而对于

40、维修工程师来说,关注的模型又是由可更换元件组成的系统原理图。系统级可测性模型数学模型是一个多信号模型14-18。多信号模型是在对被测系统结构层次图基础上,分析各组成单元构成、相互连接关系,和各单元隐含的故障模式(简称故障,也称信号)及故障模式流向,以分层有向图的方式来表征系统组成、功能、故障及测试之间相关性的一种模型表示方法。系统级可测性模型的建模17是通过分等级多层次分布建模实现的,建模方向一般是从上至下逐层细化的过程。当仅有设计概念时,用户可以先设计系统的最顶级模型,等到子系统的设计方案明确后,再完善较低等级的模型。系统级可视化建模模块是本软件的核心部分和数据来源,但该模块由其他同学设计与

41、实现,该模块部分不在本文的讨论范围之内,这里只做简单说明。2可测性指标分析模块可测性是系统及设备的一种设计特性,描述和确定系统的检测和隔离故障的能力。可测性参数是对可测性特性的描述,可测性指标是可测性参数的量值。本文依据计算不同指标的要素及方法差异性,将可测性性能指标分成静态、动态两部分。静态可测性指标是在被测系统的故障-测试依赖矩阵中作统计分析或进行“或”运算产生的结果,由系统的故障测试依赖关系决定,不受故障概率等因素影响。动态可测性指标的计算除了考虑被测系统的故障-测试依赖矩阵,还要考虑故障概率、测试成本/时间等用户评估性辅助加权因素,所以这些指标具有一定的动态性。虚警率(FAR),是指在

42、规定时间内,发生的虚警次数与在同一时间内发生的虚警次数与真实故障显示次数总和的百分比。其中,虚警是指机内测试和外部测试设备检测显示出一个单元有故障,而实际上该单元没有故障的情况。3最优故障诊断树生成模块最优诊断树是一种将形成系统故障的原因由总体至部分按树枝状逐级细化并隔离出故障的分析方法,是用于隔离复杂系统故障的一种简单有效的方法。故障诊断树的生成和优化涉及到目标函数的确定、测试点的选取、生成算法等多方面的问题。生成最优诊断树的关键在于选取最优决策搜索算法,本文采用的算法是AO*(And/Or)与或图启发式搜索算法。该模块实现了AO*启发式最优诊断树搜索算法,国外可测性分析软件TEAMS已经实

43、现了故障诊断树生成功能24,但存在技术封锁问题,国内仍缺乏相关的最优诊断树生成组件或软件平台11-18。4可测性指标分配模块可测性分配是可测性设计中的重要工作内容28,可测性分配是将要求的系统可测性和诊断指标逐级从整体到局部、由大到小的分解过程,使整体和部分的指标协调一致。在进行系统可测性分配时,首先应建立系统的功能框图,系统功能框图是进行可测性分配的基本依据。需要进行分配的指标是故障检测率和故障隔离率。指标分配方法是很重要的部分,采用不同的分配方法得到的分配结果也不同。本文实现了常规的经验分配方法和高效的自动化可测性分配方法线性插值法。2.3 软件总体设计与实现2.3.1 软件集成方案设计与

44、实现1软件总体结构及数据流向本软件按功能模块划分为系统级可视化建模、可测性指标分析、最优故障诊断树、可测性指标分配四大模块。软件总体结构及数据流向如图2-2所示,图中采用黑框突出标注的“模型树”、“故障-测试依赖矩阵”在软件模块关联上起到了重要的数据纽带作用。图2-2软件总体结构及数据流向示意图系统级可视化建模模块,是用户建立、编辑可测性模型的工作平台。是其他模块工作的数据来源,该模块除了输出模型树供指标分配模块使用,还根据可测性模型的故障传播机理输出故障-测试依赖矩阵。它也是和用户交互最为频繁、操作最为复杂的模块,是本软件的核心模块之一。由于本模块的复杂性和相对独立性,该模块的具体设计与实现

45、由其他人员协作开发完成,本文对该部分的内容不作深入讨论。可测性指标分析模块,是计算可测性模型的可测性指标的功能模块。该模块的输入为故障测试依赖矩阵,输出为可测性指标报告。其中,这些可测性指标包括未检测故障、冗余测试、静态模糊组、隐藏故障、掩盖故障等静态可测性指标,和加权检测率、加权隔离率、平均模糊度等动态可测性指标。最优故障诊断树模块,是产品可测性设计和后期维护、故障诊断结合的模块。该模块的输入同样是依赖矩阵,根据最优决策算法生成一棵测试代价最小的最优故障诊断树(最优测试序列)。同时,其还生成诊断树的平均隔离代价、未使用测试等故障诊断指标。可测性指标分配模块,是将要求的系统可测性和诊断指标逐级

46、分配给子系统、设备、部件或组件,是可测性设计的重要工作内容。该模块的输入为系统结构层次图(模型树),输出就是分配到每个子系统或组件的指标。在分配方法上,该模块实现了经验法、线性插值法两种分配算法。2模块集成方式本文将每个功能模块都封装成不同的C+抽象数据类21,以方便框架下、平台间的相互调用。进行类的封装隐含了实现该类的成员和具体功能实现过程,使用该类时只需要了解这些类的接口,不用在意这些过程的实现细节。用类来定义各模块的抽象数据类型,可以使程序的编写、调试和修改更容易。类的封装也避免了类内部出现无意义的、可能破坏对象状态的错误。保证了各模块间的相对独立,互不干涉。除此,采用C+类来抽象和封装

47、各功能模块,首先对编程语言的要求比较单一,其次模块间的调用也不需要其他平台或媒介的支持。从一定程度上降低了开发环境和集成环境的复杂度。如图2-3所示为框架类CMainFrame的构成图。图2-3软件框架CMainFrame类的数据成员及事件响应函数构成图本文以CMainFrame类作为软件的框架类,其中封装集成了各模块的数据成员及事件响应函数。框架类包含了关键数据对象、右侧面板、对话框、工具栏等数据成员对象,和指标分析、指标分配、查看报告等用户操作事件的响应函数。菜单栏、工具栏的操作,模块间的切换操作均是通过框架类的成员函数实现。3框架窗口交互显示样式设计从软件的框架构成方面看,将软件大致分为菜单工具栏、视图工作区、属性面板三大功能区域。其中,视图工作区是整个软件的主题交互显示部分,模型编辑、指标报告显示、最优故障诊断树结果显示操作都在这个区域中完成;属性面板是辅助功能区,用于快捷查看视图工程区中指定对象的属性。框架窗口的功能区域构成示意图如图2-4所示。图2-4框架窗口的功能区域构成示意图当切换不同功能模块时,在此框架窗口结构下,相应调整视图工作区、属性面板的显示内容即可完成模块间的切换和跳转。为了使框架程序窗口的显示风格和Windows系统提供的传统窗口有所不同,让框架窗口的界面风格显

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号