(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf_第1页
(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf_第2页
(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf_第3页
(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf_第4页
(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(测试计量技术及仪器专业论文)电磁兼容自动测试平台的架构与实现.pdf.pdf 免费下载

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

文档简介

摘要 随着电磁兼容测试技术的发展,自动测试在一定程度上大大提高了测试工作 的效率和精度,但是测试系统功能重复开发比较严重,导致大量人力物力的浪费。 高效的开发自动测试系统成为工作的重心。 本文以实际项目为背景,首先研究了国内外电磁兼容自动测试技术的发展, 对实验室内的平台化框架进行了分析,利用软件重用技术完善了功能层,开发了 若干可重用组件,并对自动测试系统开发给出了规范流程;然后遵循平台化技术 开发流程利用平台化功能组件实现了预兼容实验室内电子产品电磁骚扰标准测试 系统;由于整个系统的定位是预兼容测试也就是屏蔽室内的预测试,所以根据项 目需求也对预兼容实验室作了研究,并存此基础上分析了预测试系统校准方法及 可行性。 关键词:电磁兼容平台软件重用测试系统 a b s t r a c t a st h ed e v e l o p m e n to ft h ee l e c t r o m a g n e t i cc o m p a t i b i l i 妙( e m c ) a u t o m a t i ct e s t t e c h n o l o g y ,t os o m ee x t e n t ,g r e a t l ye n h a n c e dt e s te f n c i e n c ya n dp r e c i s i o n ,b u t t h e r e p e a tt ot h ed e v e l o p m e n to ft h ea u t o m a t i ct e s ts y s t e m s ( a t s ) l e a d i n gt o s u b s t a n t i a l w a s t eo fr e s o u r c e s t h ed e v e l o p m e n to fh i g h l ye 陌c i e n ta t sh a sb e c o m et h ef o c u so f t h ew o r k b a s e do nt h eb a c k g r o u n do faa c t u a lp r o j e c t ,t h i sp a p e ri n i t i a l l ys t u d yt h en e w d e v e l o p m e n to f t h ee m ca t sa n dt h ef r a m e w o r ko ft h ep l a t f o n ni nt h el a b ,a n du s i n g t h es o r w a r er e u s et e c h n o l o g yi m p r o v e dr e u s a b l ec o m p o n e n t so ft h e 如n c t i o n a ll a y e r , a n dg i v e st h en o mp r o c e s so fa t sd e v e l o p m e n t ;a n dt h e nf o l l o wp r o c e s sa n du s et h e c o m p o n e n t st oa c h i e v eae m c s t a n d a r dt e s ts y s t e m ;b e c a u s et h es y s t e mi sd e s i g n e df o r t h ep r e c o m p a t i b l ew h i c hi sas h i e l d e dr o o mp r e t e s t ,ia l s om a d eap r e c o m p a t i b l el a b r e s e a r c h ,a n dc a l i b r a t i o nt h es y s t e mo nt h eb a s i so f t h ee n v i r o n m e n t a ls t l j d l e s k e y w o r d s : e m c p l a t f o r ms o f t w a r er e u s e t e s ts y s t e m 西安电子科技大学 学位论文独创性( 或创新性) 声明 秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名:垫耋垒至!日期丝乏墨:! ! 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文丁作的知识产权单位属西安电子科技人学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校i 口j 以公布论文的全部或部分内 容,可以允许采用影印、缩日j 或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。 ( 保密的论文在解密后遵守此规定) 本学位论文属于保密,在一年解密后适用本授权书。 本人签名:塑塾窒坌 导师签名:曼颦篁匕 日期壁垄! e l 期圭竺i ! 查:! 鱼 第章绪论 第一章绪论 1 1 研究背景和意义 1 1 1 电磁兼容自动测试技术的概念和发展 电磁兼容性( e l e c t r o m a g n e t i cc o m p a t i b i l i 够,e m c ) 是指电子、电器设备共处一 个环境中能互刁 干扰、兼容工作的能力i lj 。对于一个设备,国家和国际标准中均要 求其刁i 能产生大于标准极限值的干扰使其他设备工作失常,也要求其具有一定的 抗干扰能力,以保证在其他设备干扰的环境中能正常工作。对于设备这种电磁兼 容性的测试我们称之为电磁兼容标准测试。电磁兼容自动测试技术产生之前的传 统测试技术是以测试仪器为中心,依靠测试技术人员的手工操作和经验判别的方 法实现系统故障的检测、定位和隔离,测试效率低,测试的过程和结果完全依赖 于测试技术人员的素质和行为。随着计算机硬件技术和软件技术的发展,给电磁 兼容测试技术的发展带来巨大的生机,如何利用计算机技术实现测试过程的自动 化成为人们研究的新的课题。 1 1 2 平台化技术及国内外发展动态 目前,大多数电磁兼容实验室都使用自动测试系统进行e m c 测试,在一定程度 上大大提高了测试工作的效率和精度,但是也存在着如下巧 足: ( 1 ) 大多数实验室没有开发自己的自动测试系统而多采用国外配套系统,由于 技术的垄断和关税等问题,国外进口的配套系统成本很高,对于一般的小 型实验室来说是彳 小的负担: ( 2 ) 国外的进口系统仅适用于特定测试,用户的可扩展性差,刁i 易升级和维护; ( 3 ) 多数自主开发的自动测试系统功能重复开发比较严重,导致大量人力物力 的浪费。基于以上因素本教研室提出了电磁兼容自动测试平台框架,为自 动测试技术的发展绘制了蓝图,从理论上解决了传统自动测试系统的4 i 具 有二次开发的能力,并且在大型系统的开发中存在费用昂贵、开发进度不 易摔制、开发量难以估计、软件质量低、项目失败率高、维护任务重等问 题。本文所介绍的平台化自动测试技术是在本实验室已有的平台化框架模 型的基础之上的更加深入的研究,平台化自动测试技术是以软件重用【2 5 】 为基础采用组件化技术【6 7 】,为用户提供可重用组件,用户可以根据需要 对已经开发出的测试组件进行重组,并生成新的测试程序。 在国外,m i c o r o s o r ,i n p r i e s ,r a t i o n a l ,s u n ,s y m a n t e c 和众多其它厂商都纷 电磁兼容e j 动测试平台的架构与实现 纷推出了各种基于组件和w e b 的集成开发甲台,其中包括了大量的软件结构和组 件库。特别是n i ( n a t i o n a l i n s t r u m e n t ) 公司和h p ( h e w l e t t p a c k a r d ) 公司针对自 动测试系统的开发研发了大型的自动测试系统开发平台l a b v i e w 及v e e ,提出了 虚拟仪器的概念,以集成了软硬件的模块化组件实现了自动测试甲台化,同时其 对于硬件板卡d a q 的支持也让自动测试系统的搭建更加便捷。 目前,我国测试系统开发的趋势己经越来越注重甲台化的开发应用,越来越多 的公司和程序员认识到平台化系统开发给公司和个人带来的巨大效益。国内己经 有若干公司开始基于组件的平台开发,但是相对于国外平台产品还有一定的差距。 平台化技术是2 l 世纪自动测试工业发展的大势趋,随着甲台化理论和平台化技术 的迅速发展,平台框架技术和平台设计技术将日益成熟。 1 1 3 平台化技术中存在的问题 本实验室已经搭建了电磁兼容自动测试平台框架,并分析了甲台的关键技术 和平台的主要特征。但是还有如下1 i 足: ( 1 ) 甲台框架工作虽然已经完成,但是功能层实现方法模糊,功能层组件有待 完善; ( 2 ) 缺乏规范的自动测试系统开发流程,平台化思想难以应用于实践; ( 3 ) 对电磁兼容测试中可能出现的测试环境和测试结果校准等问题没有讨论: ( 4 ) 甲台化技术没有得到实际应用,自动测试系统的实际开发中仍然有重复开 发问题,而月系统开放性差,1 i 易升级和维护。 为解决上述问题,本人在研期间对本实验室内已有的甲台化技术框架进行了进 一步深入研究,实现了一套基于甲台化思想的电磁兼容自动测试甲台。 1 2 主要研究内容 本文的研究背景是某预兼容实验室电子产品电磁骚扰标准测试系统项目。该 系统用于预兼容实验室内的电磁兼容民用标准测试及诊断。本文首先研究了国内 外电磁兼容自动测试技术的发展,对实验室内的平台化框架进行了分析,利用软 件重用技术完善了功能层开发了若干可重用组件,并对自动测试系统开发给出了 规范流程:然后遵循平台化技术开发流程利用甲台化功能组件实现了预兼容实验 室内电子产品电磁骚扰标准测试系统;由于整个系统的定位是预兼容测试也就是 屏蔽室内的预测试,所以本人在研期间根据项目需求也对电磁兼容测试环境特别 是预兼容测试环境作了研究,并在此基础上分析了预测试系统校准方法及可行性, 本文由于篇幅原因只作简要介绍。 本文的主要研究内容有: 第一1 章绪论 ( 1 ) 研究了平台化技术中的软件重用技术,着重分析和研究了组件技术在平台 化技术中的应用,并且针对本文背景项目对电磁兼容自动测试系统常用组 件开发作了详细说明; ( 2 ) 对基于平台的自动测试系统给出了详尽的开发流程,对于自动测试系统的 快速开发有指导性意义; ( 3 ) 对电磁兼容测试环境进行了详尽分析,重点比较了预测试及其测试环境与 鉴定测试及其环境的异同,并在此基础上研究了应用于屏蔽室内用于预测 试的电磁兼容自动测试系统校准方法,并做了详细测试验证,证明了校准 方法的有效性; ( 4 ) 针对实际需要,基于以上所研究的平台化技术,开发了电子产品电磁骚扰 标准测试系统,完成了平台化实现,并以此为例对系统集成关键技术进行 了分析。 第_ 二审平台化技术 第二章平台化技术 电磁兼容自动测试技术的发展,在一定程度上大大提高了测试工作的效率和精 度,但是测试系统功能重复开发比较严重,导致大量人力物力的浪费。平台化技 术和应用可以对这一问题加以解决,平台化技术的目标是作为电磁兼容自动测试 系统的开发平台,使电磁兼容自动测试软件的开发更加高效和规范。它的关键技 术主要有软件重用技术和组件技术。 2 1 平台化技术概述 本实验室内已经对平台化技术的框架【8 母l 作了详细的分析,如图2 1 所示。整个 框架分为四层:应用层是测试软件的操作界面,它的主要功能是通过界面程序将 各种软件功能整合在一起形成整个测试系统;功能层包括设备驱动、数据处理、 图形显示、数据库、测试报告等,功能组件,这是整个平台结构中核心的部分; 支持层包括仪器可互换( i v i ) 1 3 9 】驱动程序、m i c r o s o ra c c e s s 、m i c r o s o rw o r d 、 m i c r o s o rx p 操作系统等。这一层主要提供功能层的应用环境和资源环境,保证系 统软件的正常运转:物理层是系统软件赖以进行处理的物理硬件实体,软件彳i 对 其直接操作,而是通过操作系统与接口发生作用。 i 软件界面 应用层i 丁t丁t i 功能组件 功能层i 了亡丁亡丁亡 l v l c o m 驱动m j c r o s o rm i c r o s o r 科序 a c c e s sw b r d nj r工工 m i c r 。s 。rx p 操作系统 支持层i 彳丁 一 - 各种仪器、设;、接口 物理层i 图2 1平台化技术的框架 针对自动测试系统的功能可扩充裁减性、可重用性、可移植性的发展方向, 电磁兼容自动测试平台实现的关键技术主要有:虚拟仪器技术、软件重用技术以 及仪器可互换技术【l o 】。虚拟仪器技术在平台上的应用目的是使软硬件都以模块化 6电磁兼容自动测试平台的架构与实现 的形式构成,通过对硬件软件化以及对最基本硬件模块的组件化包装形成平台的 基本部件,这是平台化的发展方向:软件重用技术是平台化技术的核心也是本文 研究的重点,随着虚拟仪器技术的发展,硬件模块也将作为可重用部件为平台服 务:仪器可互换技术是仪器领域最新发展成果,虽然具有很多优点而且经过近1 0 年的发展已经初具规模,但是这项技术还彳i 够成熟,支持的仪器种类有限,部分 仪器厂商对其的支持也不够完善,而且相对于普通程控模块开发成本高周期长。 电磁兼容自动测试使用的仪器种类繁多,包括频谱仪、信号发生器、综合测试仪、 矢量网络分析仪等等,而最新的i v i 规范中只有八类仪器,很难满足电磁兼容自动 测试的可互换要求。基于以上因素并且综合了本文的项目背景,本文没有对甲台 化的仪器程控部件采用仪器可互换技术,不过相信随着仪器可互换技术的发展, 其对于电磁兼容测试平台将起到巨大的作用。 2 2 1 软件重用技术概述 2 2 软件重用技术 软件重用的定义很多,一般认为软件重用是利用事先建立好的软部件创建新 软件系统的过程。这个定义蕴含着软件重用所必须包含的两个方面:首先,系统 地开发可重用的软部件。这些软部件可以是代码,也可以是分析、设计、测试数 据、原型、计划、文档、模板、框架等。其次,系统地使用这些软部件作为构筑 模块,来建立新的系统。目前主要是通过软件生产各个活动得到结果的重复使用, 以提高软件产品的生产效率与质量。 2 2 2 软件重用分类 软件重用技术众多,一种重用技术可以包括多种重用形式。比如框架既可以 包括代码级重用,也可以包括设计级重用。按照软件重用所应用的领域范围,把 重用划分为两种:横向重用和纵向重用。横向重用是指重用1 i 同应用领域中的软 件元素,例如数据结构、分类算法、人机界面构件等。标准函数库是一种典型的 原始的横向重用机制。纵向重用是指在一类具有较多公共性的应用领域之间进行 软件重用。因为存两个截然4 i 同的应用领域之间实施软件重用非常困难,潜力4 i 大,所以纵向重用才成为软件重用技术的真正所在。纵向重用活动主要包括以下 几个步骤:第一,进行域分析根据应用领域的特征及相似性预测软部件的可重用 性:第二进行软部件的开发,一旦确认了软部件的重用价值,即可进行软部件的 开发并对具有重用价值的软部件进行一般化,以便它们能够适应新的类似的应用 第一二章平台化技术 领域;最后,将软部件及其文档装入软部件库成为可供后续项目使用的可重用资 源。 2 2 - 3 可重用软件组件 在提倡结构化程序设计的时代,软件重用主要体现:( 1 ) 源代码重用,这是最 低级的重用,无论软件重用发展的何种程度,这种方式将会一直存在。它的缺点 是很明显的,一是源代码的可读性较差,二是易在重用的过程中出错。( 2 ) 目标代 码级重用这是目前用得最多的一种重用方式,一般的开发语言都支持这种方式, 它一般以函数库的方式来体现。相对于源代码级重用它的优点是显而易见的;由 于函数库经过编译,避免了源代码修改的危险;函数库一般提供一个很清晰的接 口,减少了软件开发人员研究源代码的时间。该重用的缺点在于开发人员对其小 能做任何修改,大大降低了它的灵活性;同时受限于语言,不能做到开发平台无 关性。该方法未能与数据结合在一起,从而无法大规模使用。 自动测试系统平台化设计使用了组件的软件重用方式。组件技术是迄今为止 最优秀的软件重用于段,它是一种具有某种特定功能的软件模块,它的出现使软 件的重用性及可维护性得到大大增强而且它不受限于开发语言。从广义上说软件 组件是一种定义良好的独立、可重用的二进制代码,包括功能模块、被封装的对 象类、软件框架和软件系统模型等。基于组件模型的甲台化技术为软件体系结构 设计和大型应用软件开发给予了强有力的支持目前已经为软件行业所广泛接受 s u n s o r 的j a v a b e a n s 和m i c r o s o r 的o l e c o m 都是典型的软件组件规范。 2 2 4 软件重用的过程与意义 纵向重用技术的关键是域分析,根据应用领域的特征及相似性预测软部件的 可重用性,一旦根据域确认了软部件的重用价值,即可进行软部件的开发并对具 有重用价值的软部件进行一般化,以便它们能够适应新的应用领域。然后软部件 及其文档即可进入可重用软部件库。从软部件构造活动来看它是一个彳i 断积累、 不断完善的渐进过程。随着软部件的不断丰富,软部件库的规模会不断扩大,因 此库的组织结构将直接影响软部件的检索。可供候选的软部件从库中检索后,用 户还必须理解其功能发行为,以判别它是否真正适用于当前项目。必要时可考虑 对某个与期望的功能或行为匹配程度最佳的软部件进行修改,甚至可以用修改后 的软部件更新原有软部件,这要求修改后的软部件比原有软部件具有更高的重用 价值。面向重用的软件开发流程【li j 如图2 2 所示。使用重用技术可以减少软件开 发中大量的重复性工作,由于库中软部件大都经过严格的质量认证,并在实际运 电磁兼容臼动测试平台的架构与实现 行环境中得到检验,这样就能够提高软件的生产率,降低开发成本,缩短开发周 期。 知识领域 2 3 1 组件技术概述 图2 2 面向重用的软件平台化丌发流程 2 3 组件技术 组件定义为一个独立的程序,而日该程序很容易作为其他程序的组成部分使 用。与所有其他程序类似,组件必须由某个外部代理加载和执行,而且必须向组 件提供i o 和通信服务。组件必须能够与环境、其他组件或者同时与两者进行交互。 组件框架的设计定义了组件技术的基本特性。 组件级编程标准为组件和框架提供了规范。本文所使用的a c t i v e x 规范【1 2 】详 细描述了某个模块必须实现的服务,该服务提供组件与环境的正常交互;同时该 规范还规定了那些必须由框架实现的服务,以便和其他a c t i v e x 组件交互。 组件交互有两种广义上的类型:( 1 ) 组件一容器交互( 2 ) 组件一组件交互。 一个容器是一个实体,它实现了组件框架并对一个或多个组件集进行维护。一个 v i s u a lb a s i c f l 3 - h 】程序就是一个容器,v i s u a lc + + 6 0 还为a c t i v e x 编程提供了容器 调试程序a c t i v e xc o n t r o lt e s tc o n t a i n e r 。组件一容器交互机制已经完全实现了标 准化,但组件一组件交互的机制由于一些特殊应用而有所保留。几乎没有组件一 第一章平台化技术9 组件直接交互的通用标准。最常见的组件组件直接交互的例子是v i s u a lb a s i c 数 据控件与数据感知组件( d a t a g r i d ) 之间的通信。 2 3 2 组件的特征 自组件技术产生以来,已经引入了许多新的组件技术,其中每种技术都有其 独特的特性,但是所有组件技术都有一些必要的特征【l l 】。下图简要介绍了这些要 求。 组件必须是抽象的,只有抽象而非具体的组件才能被复用 组件组件需具有扩充独立性,所以它必须是一个独立编译的程序。它不能是函 数库或源代码。 必须能够集成组件以创建一个更大的程序,而且无需访问组建的源代码,或将 组件的代码链接到使用该组件的程序中。 组件必须能够嵌入容器,而且必须为组件与容器之间提供通信机制。 组件技术必须支持属拦,方捞移事红或者某种等价的通信方法。 组件技术应支持持久性属性。在设计时应能设置属性值,并在激活组件时,能 够将设置值作为属性的初始值。 组件应描述其自身接口。应能够通过查询组件来确定它所支持的属性、方法和 事件。也就是应当具有良好的描述和接口说明文档 组件应可以在各种不同的环境中使用。也就是说必须是可移植的,不能依赖于 某一具体的硬件、编译程序和操作系统。 图2 3 组件技术特征 包括各种第三方控件和本实验室现有组件等的各种组件技术都提供这些特 性。可以有充足的理由坚持认为所有的组件技术都具备这些特性,这里的特性( 1 ) 我强调组件应该是一完整的、独立的实体,而非某个问题的局部结构解决方案, 这是组件级技术与早期技术之间的根本区别;如果没有特性( 2 ) 和特性( 3 ) , 那就是在研究函数库技术,而非研究组件技术:如果没有特性( 4 ) ,那就是在研 究应用程序,而非研究组件:如果没有特性( 5 ) ,则组件技术毫无用处,因为此 时无法与组件进行通信。特性( 6 ) 、特性( 7 ) 和特性( 8 ) 不是组建的本质特性, 但是如果没有他们,组件编程将变得非常困难。 这些组件特征是我们利用组件技术分解已有测试系统的基础,也是组建新的 测试系统组件的原则。 2 3 3 组件通信子程序 在最底层,实体间相互通信有两种方式( 实体既可以是组件,也可以是容器) 。 第一种方式是主动通信,其中实体a 调用实体b 所包含的子程序。第二种方式是 ) ) ) ) ) ) ) ) d ” ” d d d d ( ( ( ( ( ( ( ( 1 0电磁兼容自动测试平台的架构与实现 被动通信,其中实体a 修改实体b 也可以访问的全局变量。实际上,所有的组件 技术都采用主动通信,尽管用户在必要时可能会模拟被动通信。在主动通信中, 有几类公认的子程序,列举如下: s e tp r o p e n yp 用户认为p 是一个变量,可作为数组内部状态的一部分进行 维护。 s e tp r o p e n yp 函数用于为p 赋一个新值。p 可以是表示组件内部状态的一个 真实变量;也可以是一个虚属性,其值可以在需要时进行计算。设置一个虚属性 值通常会引发组件的某些复杂行为。该函数有一个参数( 新的属性值)数组属 性需要有额外的参数,以便制定该数组的索引值。 g e tp r o p e 啊p 与s e tp r o p e n yp 函数相对应,用于读取属性值。该函数没 有参数,其返回值就是属性p 的值。如果属性是个数组,那么该函数会有一个表 示数组索引的参数。 e v e n tx 事件机制允许组件调用另一个实体( 通常是容器) 的子程序。该事 件子程序可以有参数,但通常没有返回值。事件的接收实体不需要实现事件子程 序,此时该实体必须用一个空操作子程序进行替代。在组件技术中,事件机制通 常是最复杂的交互。 i n i t i a l i z es t a t e 该子程序用一个包含初始化数据的参数进行调用,对组件的内 部状态进行初始化。尽管用户可以制定初始化数据的内容,但这种机制通常对用 户是不可见的,也就是说是根据定制的测试软件由编程人员根据软件需求说明制 定初始化的数据的内容。 s a v es t a t e 该子程序用一个指向容器的参数进行调用,以保存初始化数据。该 数据随后将传递给i n i t i a l i z es t a t e 函数。i n i t i a l i z es t a t e 函数和s a v es t a t e 函数都不 是必需的 m e t h o d 方法是一个可以被组件用户显式调用的任意函数。该函数有输入参数、 返回值或者两者均有。输入值和返回值的实现通常需要框架开发人员付出大量努 力。 综合以上几类公认的子程序,一个组件的通信可以归纳为一组属性、一组方 法和一组事件。 2 4 1 平台化语言分析 2 4 平台化语言及组件描述 用户基于此半台可以开发任意语言和编译器下的自动测试软件。针对4 i 同编译 器形成安装包,将测控模块植入编译器。现在已经完成v b 和v c h 的植入。例如 第二章平台化技术 v b 的实现是将安装包植入、m i c r o s 0 丘v i s i 】a 1s 札d i 0 v b 9 8 t 锄p l a t d p m j e c t s 目录下 并注册所有控件组的控件并目将1 i c e n s e 信息写入注册表。 242 组件描述 削24 、r 台斩建工群界面 团圃日血曩墨墨盟墨墨皿正 e _ 1 1i l 。o b ,r q t “t 目b1 目日 q 口0 i 目a 口 、者= 一 :二; 争端 i :三三 :! : f 。? 图25 平台使用界面 基于组件技术特征及通信子程序的分析,以本文项目背景为蓝本构建了典型的 基于组件的设计模型。如图2 6 所示: 可 1 2 电磁兼容自动测试平台的架构与实现 图2 6 典型的基于组件的设计 现代的基于图形用户界面( 简称g u i ) 的程序由许多彳i 同的部分组成。在用户 界面上至少有一个主窗口和一个菜单栏,而且还可能有工具栏、滚动条和其他各 类摔件。系统的接口部分可以包括软件接口、硬件接口和用户接口等。基于组件 的设计过程:首先进行域分析,识别出程序各个1 同的组成部分;然后通过软件 重用技术流程搜索可重用组件库或者构造新的用户软部件;最后设计系统接口并 用胶连逻辑( g l u el o g i c ) 将组件进行连接。 以电子产品电磁骚扰标准测试系统为例系统组件如表2 1 所示 表2 1自动测试系统组件 组件分组件名称 功能备注 类 前处理皮肤和样美化界面,实现软件系统更换皮肤、 v b 2 一s k i n c o n t r 0 1 o c x 式组件样式和颜色等功能 x p b u t t o n o c x s y s t r a y o c x 调整控件用十解决f f i 十系统分辨率变化及窗体 x d - a d j u s t c o n t r o i o c x 位置组件大小变化造成的软件界面火真 第_ 章平台化技术 图形显示用于数据迹线的显示、标记、缩放等 x d j j r a p h c o n t r 0 1 o c x 及操作组操作 件 初始信息测试初始信息录入 x d l i n i c o n t r 0 1 0 c x 组件 报告组件自动生成w o r d 版测试报告,其中包含 x d l r e p o n c o n t r 0 1 o c x 测试初始信息、测试框图、测试结果 数据表和测试结果曲线等关键内容。 数据库管对系统所用到的数据库数据添加、删 x d l d a t a b a s e c o n t r 0 1 o c x 珲组件除、更新等处理 密码组件通过密码验证更改等操作进行用户识 x d _ - p a s s w o r d c o n t r 0 1 o c x 别 后处理数据处理小波变换、插值等数据处理 x d d a t a p r o c e s s c o n t r 0 1 d l l 组件 仪器程控系统硬件自榆、自动识别、硬件配置、 x d - c o n n e c t c o n t r 0 1 o c x 及系统白数据凄写等 柃组件 2 4 3 若干问题 1 安全问题 由于电磁兼容自动测试平台的架构是在a c t i v e x 控件的基础之上的组件构成, a c t i v e x 控件用于程序的开发其有平台无关性的的优点,但是同时也会有软件安全 问题产生。用a c t i v e x 开发的控件组成的软件系统交付用户时,需要将a c t i v e x 控 件一并注册到用户计算机,这样用户如果想利用这些a c t i v e x 控件进行其它软件的 开发的话是轻而易举的,这样就给软件的加密带来困难,给a c t i v e x 控件开发者带 来经济上的损失,a c t i v e x 控件安全问题不容忽视。许可证文件可以解决这一问题, 制作a c t i v e x 控件时生成许可证文件,如果用户使用a c t i v e x 控件开发出来的软件 系统的话,就不会获得许可证文件也就没有a c t i v e x 控件再开发的权利。本平台开 发的a c t i v e x 控件均采用v i s u a lb a s i c6 0 生成的许可证文件,使用本平台开发电 磁兼容自动测试系统的用户可也获得a c t i v e x 控件和其相应的许可证文件。 平台系统安装包会自动注册a c t i v e x 控件和其相应的许可证文件。而开发出的 自动测试软件安装包则只会自动注册a c t i v e x 控件。 2 动态连接库问题 数据处理组件由于不涉及界面编程,采用a c t i v e xd l l 技术实现。这种技术只 1 4 电磁兼容自动测试平台的架构与实现 包含一些函数而没有界面,适用于数据处理组件。 2 5 1 图形显示及操作组件 2 5 关键组件实现 对于电磁兼容自动测试系统而言,图形显示及操作组件是最重要的组成部分之 一。测试人员通过图形显示及操作组件可以对整个测试全面把握,而且在测试过 程中分析数据做出判断。本平台所制作的图形显示及操作组件是在n im e a s u r e m e n t s t u d i o7 0 基础上作的二次开发,增加了对迹线操作的一些方法,同时保留了原有 控件的功能,改善了接口环境,使该组件更加易于操作和实用。 组件的属性、方法、事件如表2 2 、表2 3 、表2 4 所示 表2 2 属性设计表 名称类型 功能 e m cp i o t s长梧犁功能 默认值= 0限制:无只读运行时 e m c b a c k c o l o r o l ec o l o r 类酗返回设置对象中文本和图 默认窗体颜色形的背景色 无限制 e m c p l o t a r e a c o l o r l o n g 类犁 设置或返回图形区域的背景 默认设计时颜色( 8 4 2 1 5 0 4 )色 无限制 e m c q r a p h f r a m e c o l o r l o n g 类型 设置或返回图形区的背景色 默认设计时颜色无限制 ( 2 1 4 7 4 8 3 6 3 3 ) e m c q r a p h f r a m e s t y i e c w g r a p h f r a m e s i y l e s 类型 设置或返回图形框架的样式 默认值= 1无限制 e m t a x e s c w a x e s 类型c w a x e s 对缘的集合,用十曲 尤默认值线的添加、删除等操作 只读 e m c a n n o t a t i o n s c 、w l n n o t a t i o n s 类犁设置个值,决定个对象是 无默认值否响应用广生成事件 只溃 e m cf o n tf o n t 类犁设置或返回字体 默认设计时的字体无限制 e m c p l o t s c w p l o t s 类犁 w u l c o n t r o l s l b c w g r a p h 的 无默认值 成贝,画线特定的集合 只读 第章平台化技术 23 方法描述表 名称返回值类型参数描述 e m cr e n e s h无刷新图形 e m cc 】e d m e 无无清除曲线中的数据 l c0 1 1 t m i r e s l 2 e ( )无无控制控件外观 u 辩r c o n i 巾l lr i i t i a l i 让( ) 无无初始化控件 o p l j o n l _ c m ( ) 无 【n 血x a sl n i e * r 用于选择测试曲线 的显示类型 c w g m p h l c u b o r c h 锄萨 无c u r s o r l n d e xa sl o n g显示游标点的啪标 b t r a c k i n g a s 表2 0 事件描述表 名称触发条件参数描述 c o n d l - c l j c k ( ) 电击 无使图形沿x 轴放大 c o m m a n d 2 - c m ( ) 单击无使用游标显示特定 点的位置 c o n d 3 _ c l i c h ) 单击无使图形沿v 轴放大 c o m m a n d 4 _ c m ( ) 单击 无在平面上移动图形 c o m m a n d 5 _ c m ( ) 单击 无 在平面内放大图形 一m a n d 6 d i c k ( ) 单击 光饿复图形 j j 始状态 图27 图形显示及操作组件 h 曰曰田 1 6电磁兼容自动测试平台的架构与史现 2 5 2 仪器程控及系统自检组件 每次启动后,系统自动执行初始化自检工作,系统自检主要完成三个方面的内 容: p c i g p i b 卡初始化:驱动程序访问、端口地址获取、与频谱仪通信设置 等; 频谱仪型号检索:向仪器读取型号信息,并在已有型号库中检索仪器型号 是否匹配; 频谱仪初始化:频谱仪与p c 通信情况测试。若发现问题则提示用户先解 决问题后再进行测试工作; 初始化自检流程如图2 8 所示。 困 查 圆 否 否 否 是 是 t 足 恒亟因 图2 8 初始化自检流程图 系统初始化自检可以调用x d l c o r m e c t c o n t r 0 1 q u e r y i n s t r u m e n t 方法完成,函数 返回值反映了系统目前的全部状态,如图2 9 所示。 第= 章平台化技术 秉拄自检 电磁燕容测试系统 回国 0p c i c p i b 口频谱仪型号 口仪器数据读写 妒完成系坑自检 图2 9 系统自榆 由于组件使用的是n i 公司的g p i b 总线实现通信所以在v c + + 编程环境中, 通过调用g p i b 3 2 d l i 动态连接库使用其内部函数完成通信,仪器程控指令参照h p s 5 6 3 e c 编程指令【17 j 编制主要代码如下: ,d c o n 眦c t c o n t m l h p 3 5 6 3 s 啪印方法 d e v = ( 叩i b d e v ) ( b d i n d e x ,p r i m a r y _ a d d r - _ o f d m m , n os e c o n d a r ya d d r 1 1 m e o u t ,e o t m o d e ,e 0 s m o d e ) 初始化仪器 ( + p i b w n ) ( d e v ,”lp ;_ ,s 【f l ( ”ip :) ) = ( p i b w n ) ( d e v ,c e n t 目f r e 吼s t d e l l ( c e n f e i 恤q ) ) ; ( 岬- b w n ) ( d “,s p 蚰m r l e n ( s p a n ) ) ; ( 岬i b w n ) ( d e v ,”s n g l s ;”,s t f l e n ( “s n g l s ;”) ) “扫描参数传送至仪器采用单次 扫描方式 ( + p i b w n ) ( d e v ,”t s ;”,n r l e n ( ”t s ;) ) ; ( + p i b w n ) ( d e v ,”m k p kh i ;”,m r l e n ( ”m k p kh i ; ) ) ; ( + p i b w n ) ( d e v ,”t d fp ;1 r a ? ;”,m l e n ( “t d fp ;t r a ? ;“”; ( + p i b r d ) ( d e v ,r e a d b u 舵 a r r a y s j z e ) ;请求并传送数据至b u 航r 在电磁兼容自动测试平台下直接将x dc o n n e d c o n 廿o l m x 组件添加至工程即 可完成频谱仪程控与系统自检的任务。通过对x dc o 衄e c t c o n 0 l 的属性进行赋值 并调用s w e e p 方法完成程控过程,v b 中实现主要代码如下: x d c o 曲e c t c o n ”0 1 c e n t e r n 明5 ( ( f b + f b e 酉n ) ,2 ) ”m h z ” x d c o e n c o n ”0 1 s p a n = ( f b f b e g i n ) & ”m | i z ” x d c o 曲e c t c o n 廿0 l r b w = 舳w ”m h z x dc o n n e c t c o n t r o lr j = 厅l ”d b m ” 属性赋值 x dc o 衄e c t c o 咖1 s w e e pt e s t m o d e ,s w e 印t i m e s 调用手1 描函数 一_兰 一一- 一 一 一i 蒯一竺叫獠一l 1 8 电磁兼容自动测试平台的架构与实现 2 5 3 调整控件位置组件 电磁兼容自动测试系统需要适应不同的使用载体,在宽屏幕显示器p c 机上以 及仪器嵌入式操作系统中运行是测试系统的发展趋势。由于测试载体显示设备分 辨率的变化测试系统需要自动调整系统控件位置。 表2 5 主要通信子程序衷 名称 类型功能 e m c k e e p r a t i op r o p e n y 是甭保持横纵比 e m c r e s i z e f o n t p r o p e r t y 是甭改变宁体大小 e m c _ r e b u 1 dm e i h o d父窗休初始化 e m c r e f r e s h m e t h o d父窗休凋整控件 调整控件位置的实现主要靠e m cr e f r e s h 方法实现,主要代码如下: s u be m c r e 仔e s h ( ) d i mc t r la sc o n t r o l d i mm i n f a c t o ra ss i n g l e i fk e e p r a t i ot h e n 功能检测是否保持横纵比 e x e c u t i n g 2 t m e p a r e n t f o n n h e i g h t = h e i g h t w i d t h r a t i o 幸p a r e n t f o n n w i d t h e x e c u t i n g = f a l s e e n di f o ne r r o rr e s u m en e x t w i d t h f a c t o r = p a r e n t f o n l l s c a l e w i d t h p a r e n t w i d t h f o ri = 0t ou b o u n d ( c o n t r o l s ) c h a n g e s = c h e c k f o r c h a n g e s ( c o n t r o j s ( i ) c t r l t a g ) 调用函数检查每个控件是否 改变了大小 w i t hc o n t r o l s ( i ) i fr e s i z e f o n ta n d c h a n g e s a l l o w c h a n g e f o n tt h e n 自适应调整字体大小 c t r l f o n t s i z e = f o n t s i z e + m i n f a c t o r e n di f i fc h a n g e s a i l o w c h a n g e l e r = m et h e n 自适应调整控件大小 c t r l l e r = l e r w i d t h f a c t o r e n di f 第二章平台化技术 1 9 e n d s u b 2 5 4 报告组件 自动测试相对于传统手动测试的优点之一是能自动生成测试报告,这样省去了 测试人员繁琐的重复劳动,从而提高了测试效率。电磁兼容自动测试也刁、= 例外, 报告组件是电磁兼容自动测试平台的关键组件之一,它实现的功能主要有:测试 数据自动导入并生成表格、测试配置框图自动导入、测试初始信息自动导入、测 试结果曲线自动导入等。 报告组件的实现是在v b 中调用w 6 r do b j e c tl i b r a r y 引用,从而实现对w b r d 实例的控制。对于文字的添加采用查找替换关键字的方式实现,关键代码如下: s e tw o r d a p p = c r e a t e o b j e c t ( ”w o r d a p p l i c a t i o n ”) 建立w o r d 实例 w o r d a p p v i s i b l e = f a l s e 屏蔽w o r d 实例窗体 s e tw o r d d o c2w o r d a p p d o c u m e n t s o p e n ( a p p p a t h +

温馨提示

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

评论

0/150

提交评论