已阅读5页,还剩54页未读, 继续免费阅读
(飞行器设计专业论文)面向航天应用的自动测试语言研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要面向航天应用的自动测试语言研究摘要地面仿真测试是航天应用系统研制过程中必不可少的重要环节。智能仿真和自动测试是目前先进的集成仿真测试系统的发展方向之一,也是应用系统仿真测试开发的关键支持技术。为了提高测试效率减轻测试人员的工作强度,测试自动化和测试程序重用已经成为应用系统测试领域的重要研究方向。基于上述背景,本文对自动测试语言进行了详细深入的研究,并提出了种基于丽向信号接口思想的自动测试语言模型a t l m i c ( a u t o m a t i ct e s tl a n g u a g em o d e li nc h i n e s e ) 及其工程实现方法。应用a t l m i c 测试语言编写的测试程序通过对信号接i ;3 的操作来完成测试过程,由于该程序面向各种测试信号,因而具有较好的可移植性和重用性。另外,a t l m i c 测试语言的本地化方法使国内用户可以方便的编写测试细则。结合a t l m i c 模型、c o m 组件、虚拟仪器软件技术构建的自动测试系统,能够高效率地用本地化语言编写测试细则并自动执行。执行原理是先由软件系统将测试程序转换为a c t i v e xs e r i r i t i n g 脚本,再由脚本解释器解释执行,从而控制硬件接口驱动并完成整个测试过程。基于a t l m i c 的自动测试系统的实际应用大大提高了测试效率,同时为测试自动化和测试程序的移植复用提供了一种新的实现方法。a t l m i c 语言模型及其工程实现方法具有可重用、可移植、本地化等特点,符合当前仿真测试技术的发展潮流,在仿真测试领域具有广泛的应用前景。关键词:自动测试语言、自动测试系统、a t l m i c 、虚拟仪器技术、c o m 组件面向航天廊用的自动测试语言研究s t u d yo fa u t o m a tict e s tl a n g u a g ef o rs p a c e c r a f ta p p i c a t i o ns y s t e ma b s t r a c tt h es i m u l a t i o na n dt e s ta r ei n d i s p e n s a b l ef o rt h ed e v e l o p m e n to fs p a c e c r a f ta p p l i e ds y s t e m i n t e l l i g e n ts i m u l a t i o na n da u t o m a t i ct e s ta r ean e wd i r e c t i o n ,w h i c hc a l ls u p p o r tt h ed e v e l o p m e n to f t h es i m u l a t i o na n dt e s ts y s t e m t e s t0 p e r a t o r s m u s t p a y m u c h t i m eo n w f i r i n ga n dc h e c k i n go f t e s tr u l e s t h ee f f i c i e n c yn e e d st ob ei m p r o v e d ,a n dt h ei n t e n s i t yo ft h e i rw o r km u s ta l s ob er e d u c e d a u t o m a r i et e s ta n dr e u s eo ft e s tr u l e sh a v eb e e nt h ei m p o r t a n tg o a l sf o rt h es p a c e c r a f ta p p l i c a t i o ns y s t e mt e s t t h es t u d yo fa u t o m a t i ct e s tl a n g u a g ei si n t r o d u c e di nd c 圭a i li nt h i sp a p e rb a s e do nt h eb a c k g r o u n d a t l m i c ,ak i n do fs i g n a li n t e r f a c eo r i e n t e da u t o m a t i ct e s tl a n g u a g em o d e la n di t sr e a l i z a t i o na r ed i s c u s s e di nt h i sp a p e r , t o o t h e yp r o v i d ean e wk i n do f m e t h o df o ra u t o m a t i ct e s ta n dt e s tp r o g r a mm i g r a t i o n t e s tp r o g r a n i sw r i t t e ni na u t o m a t i ct e s tl a n g u a g ec o m p l e t et e s tp r o c e s sb yo p e r a t i n go ns i g n a li n t e r f a c e a st 1 1 e ya i ma ta l lk i n d so f t e s ts i g n a l s ,t h et e s tp r o g r a m sa r ei m p r o v e do nt h ea s p e c to ft h e i rr e u s ea n dm i g r a t i o n o nt h eo t h e rh a n d ,t h ea t u m i ct e s tl a n g u a g ei sc o n v e n i e n tf o rn a t i o n a lu s c e so nl o c a ll a n g u a g em o d a l i t y t h eb u i l d i n go fa u t o m a t i ct e s ts y s t e mi sb a s e do nc o mt e c h n o l o g ya n dv i r t u a li n s t r u m e n tt e c h n o l o g y byco m p l 如n gw i t hh i 曲e f f i c i e n c yo fw r i t i n gt e s tp r o g r a m sa n dr u n n i n gt h e ma u t o m a t i c a l l y , t h ea u t o m a t i ct e s ts y s t e mb a s e do na t l m i ci si m p r o v e do ni t sp o s s i b i l i t yt ob eu s e d t h ew o r kc a np r o v i d eac o n s t r u c t i v er e f e r e n c et ot h et e s tf i e l d k e yw o r d s :a u t o m a t i ct e s tl a n g u a g e ,a u t o m a t i ct e s ts y s t e m ,a t l m i c ,v i r t u a li n s t r u m e n tt e c h n o l o g y , c o mt e c h n o l o g y第一章引言第一章引言目前,功能强大的自动测试语言在系统级的仿真、测试与验证中起着越来越重要的作用。自动测试语言可以作为测试人员之间互相交流的工具,测试人员可以通过自动测试语言程序获取测试信息、了解测试流程等:自动测试语言也是人与机器互相通信的手段。用自动测试语言编写的测试程序可以精确的描述出测试需求,利用软件系统将测试程序转化为可执行代码后,就可以实现自动测试功能。在航天应用系统的地面综合测试中,由于被测设备种类多、接口复杂,测试人员编写测试细则( 测试过程的具体描述) 和测试程序是一个具有重复性的繁琐过程。测试细则一般由本地化语言作为载体,而测试程序却是应用普通的编程语言来编写,既不能直观的表达测试需求,又要求测试人员具有较高的编程能力,没有实现测试细则与测试程序的一体化。针对这种矛盾,在综合当前自动测试语言发展方向的基础上,本文提出了一种自动测试语言模型a t l m i c ,并完成了该模型的工程实现方法,为面向航天应用领域的测试语言的研究奠定了一定基础。a t l m i c 基于面向信号接口思想,可移植性强,符合当前测试语言发展方向。基于a t l m i c 的本地化测试程序通过软件系统转换为a c t i v e xs c r i p t i n g 脚本程序,再由脚本解释器转换为可执行代码后,结合硬件接口环境就可以实现对设备的测试。在构建自动测试系统的过程中结合了c o m 组件、a c t i v e xs c r i p t i n g 、虚拟仪器等软件技术,并通过数据库统一管理所有测试数据和测试语言程序。整个系统的构建基于c o m 组件技术,用户可以通过添加和删除特定功能的c o m组件进行系统的扩展和维护。同时,结合了虚拟仪器技术的软件界面提高了用户与系统的互操作性,因此整个系统具有扩展性强、简单易用的特点。本文一共由五章组成。第一章概要介绍课题的背景目标、研究目的和课题的主要研究内容。第二章详细阐述自动测试语言理论研究的基本内容,提出了基于面向信号接口思想的自动测试语言模型a t l m i c 。第三章详细说明基于a t l m i c 模型的自动测试系统的开发过程。该系统用以实现和验证模型的功能,主要由两部分组成:分别是测试程序开发环境和自动测试运行系统。第四章介绍基于a t l m i c 的自动测试系统的实际应用情况。第五章对课题和论文进行总结。1 1 课题背景和目标空恻有效载荷集成仿真测试系统是为空间应用系统服务的地面测试支持系统。空间有效载荷的集成仿真测试包含了多项仿真测试验证方面的技术,而智能仿真和自动测试是其中的关键技术,也是目前先进的集成仿真测试系统的发展方向之一。自动测试语言的运用可以推动智能仿真和自动测试技术的发展。本课题的主要目标在于:设计本地化的测试语言,并为空间有效载荷集成仿真测试提供新的实现方法。本地化的测试语言可以使国内测试人员更加简单方便的编写测试程序、进行测试过程的交流。测试人员用本地化测试语言编写完测试程序( 与测试细则合为一体) 后,机器就可以自动将测试程序转换( 编译解释)为机器可执行代码,然后就可以开始自动测试过程,从而提高测试过程的自动化程度。最终产生的测试过程记录可以作为空间有效载荷集成仿真测试专家系统的面向航天应用的自动测试语言研究知识库的一部分,作为专家系统的前端。课题的主要研究成果将是:自动测试语言( 类形式化的测试描述语言) 和对应的语言解释器,以及运行自动测试语言程序的自动测试系统。这里所说的类形式化的测试描述语言是一种本地化的自动测试语言的实现方法,它用特定的语句来描述测试流程中的动作行为,测试语言语句能够覆盖航天应用测试的基本需求。在类形式化语言的研究过程中,在国内外现有的测试语言的基础上提出适合航天应用领域的语言集标准,然后在实用过程中不断完善。而解释器主要是将测试语言程序转换成可执行代码( 例如可运行于a c t i v e xs c r i p t 引擎的脚本程序代码) 。自动测试系统主要提供测试程序的运行和验证环境。自动测试语言的应用有助于提高测试自动化,降低测试人员编写测试集、测试程序的工作量,因而在实际工作中有着重要的现实意义。1 2 课题研究内容课题的主要研究内容是:自动测试语言设计方法和相应的自动测试系统的组建过程。自动测试语言是工具,而自动测试系统是使用和验证该工具的完整系统。自动测试系统一般由自动测试软件平台、自动测试系统硬件环境、自动测试系统软硬件接口关系三部分组成。自动测试软件平台通过软硬件接口关系与硬件环境紧密结合起来,从而组成一个功能完整、具有一定复杂度的系统平台,为用户提供自动测试功能。面向航天应用的自动测试系统软件的主要功能应该包括:多进程同时运行。智能化测控通常除了需要对非常大量的数据进行实时运算处理外,还需有较方便易学的人机对话及操作接口控制,数据、图像、曲线显示及打印,以及自动测试控制程序的运行和管理。测试系统可移植性。测试系统的应用软件的设计与开发必须考虑在不同的计算机系统平台及操作系统中的可移植性。可以使用c o m 组件技术将各个功能模块都封装为组件形式,通过自由装配组件在不同的平台上构建新的测试系统。高度可配置功能模块。测试系统必须具备高度的开放性,以求针对不同测试需求方便地增减功能模块。用户可以自行进行系统配置。包括增减功能模块,合理分布进程的运行等。完备易用的测试控制语言。测试控制语言必须能够覆盖完整的测试过程,以满足闭环测试的基本要求。语言本身要简单易用,因为测试控制语言的用户很多并不是计算机领域专家,而是其他领域的专家。所以本文提出的本地化测试语言语句具有较强的实用性。统一的数据管理。测试系统应能够支持统一管理功能,例如测试数据共享、测试数据回放等。应该建立统一的数据库,对所有数据进行管理,以方便数据内容的修改和各类定义的一致性。自动测试语言是自动测试系统软件平台的重要组成部分,它为自动测试软件平台提供了程序载体,软件平台根据测试语言程序控制整个自动测试流程,因而自动测试语言在软件平台的构建中具有非常重要的地位。自动测试语言和高级编程语言有相似点,但又有其特殊性。相似点是测试语言可以象高级编程语言一样用于编写程序流程,可以对测试语言程序进行解释或者编译。源程序经过编译或者解释后形成可执行码供实时运行。但实时运行时,必须具备多种运行模式,如连续自动运行,由测试人员控制的逐句运行,或设置中断点后作排错运行。自动测试语言的特殊性是面向应用领域专家。应用领域专第一章引言家通常既不是计算机领域的专家,也不具有程序员所擅长的程序编写能力;因此与高级编程语言相比,自动测试语言必须在语句语法上更简便、直观。而对于国内测试人员来说,如果能够用本地化语言编写测试程序,将使他们更容易编写出符合测试需求的程序。对于航天应用系统测试来说,测试语言必须为实时测控提供一整套完整的运行程序。类似于高级编程语言,测试人员可以方便直观地用自动测试语言编写测控程序。因此除了具备与一般高级编程语言相同的语句指令和执行控制流外,测试语言还必须提供与测控系统直接对应的功能语句,例如读取各种模拟量、数字量遥测参数及发送遥控、程控命令,共享并交换图像显示功能模块的数据,能够方便的操作数据库以管理测试数据或者发布共享测试数据。遥测、遥控命令语句可以方便的对遥测参数进行监控,对遥控命令内容赋值以及发送;图形图像命令语句则赢接将数据作为图像或数字显示;数据库操作语句将测试数据送往数据库保存并提供查询、增删等管理功能,同时还能够发布共享测试数据。面向航天应用的自动测试语言研究第二章自动测试语言理论研究2 1 自动测试语言研究方法由于国内外对自动测试语言领域的研究已经有很大的进展,为了吸取已有的成功经验,并提出适合国内航天应用测试的自动测试语言模型,在课题进行过程中采取了下列研究方法:1 ) 进行大量的相关资料调研,提取适合于航天应用测试的成熟知识并形成理论基础;2 ) 在理论基础上分析航天应用测试领域对自动测试语言的需求,提出合适的测试语言模型;3 ) 组建实际的测试系统以验证测试语言模型,并提出测试系统与自动测试语言程序相结合的一般方法;4 ) 采用成熟的软件设计技术开发自动测试系统软件,主要包括:面向对象分析方法、c o m 组件技术、虚拟仪器软件技术等。5 ) 结合自动测试系统的实际应用,验证自动测试语占模型和相应的测试语言。下面详细介绍自动测试语言理论研究的主要内容。2 2 自动测试语言发展历史2 2 1 国外自动测试语言研究进展在国内外,测试语言领域的研究正在不断发展,并在实际中得到应用。在国外卫星测试中,美国宇航局采用的是g o a l ( g r o u n do p e r a t i o n sa e r o s p a c el a n g u a g e ) ,而欧洲宇航局采用的是e t o l ( e u r o p e a nt e s ta n do p e r a t i o n sl a n g u a g e ) 。早期的欧洲宇航局采用的测试语言是一个专用的测试语言,通过编译器直接生成可执行代码;而在近期,测试语言到机器可识别代码的转换过程是通过预编译将测试语言编译成标准的商用语言( 如c ) ,然后再通过商用编译器,编译成可执行代码。而在航空领域,测试语言的研究与标准化工作从二十世纪六十年代起就不断得到进一步发展。1 9 6 6 年,航空运输业标准化组织a r i n c 发表了a r i n c 4 1 6a t l a s ( a b b r e v i a t e dt e s tl a n g u a g e sf o ra l ls y s t e m ) 标准。美国国防部在2 0 世纪7 0年代中期指定a t l a s 为其唯一采用的测试程序语言,a t l a s 标准修订工作也由a r i n c 交到了i e e e ,成为i e e e - - 4 1 6 标准。此后,为限制a t l a s 的冗余性,发布了作为i e e e 一4 1 6 子集的i e e e - - 7 1 6 标准。2 0 世纪8 0 年代初,随着a t e硬件、软件和测试软件包t p s 种类的迅速增长,a t e 维护和运行成本呈剧烈上升趋势。因此,美军开始限制这一趋势的发展。空军的m a t e 定义了一组标准和指南,它对i e e e 一7 1 6a t l a s 进行了修订并定义了仪器间接口控制语言( c i i l ) 。2 0 世纪9 0 年代是a t e 技术和相关标准突飞猛进迅猛发展的年代,图形化程序语言l a b v i e w 、h p v e e 的出现,让字符型的a t l a s 语言遇到了挑战。l a b v i e w 、h pv e e 是图形化编程语言的典型代表。用户无需大量编写文本格式的代码,而只是选择适当的图形图标进行连接、设置参数,就可以实现对测控系统的编程,从而大大降低了测试人员的编程工作量,使他们可以集中精力分析测试对象。在同一时期,c o m 组件技术也开始进入测控领域。c o m 组件技术的发展,4第二章自动测试语言理论研究为软件功能模块的跨语言、跨系统平台调用提供了基础。在c o m 组件技术的基础上,图形化的虚拟仪器语言l a b w i n d o w s c v i 、l a b v i e w 等与通用的编译器v i s u a lc 什、b o r l a n dc 十+ 的结合越来越紧密。c v i 环境可以调用外界的组件,而外界编译器也可以调用c v i 的各类库函数、面板控件等。c o m 组件技术在普通商业编译器和虚拟仪器环境之间搭起了一座桥梁。9 0 年代末,i e e e 制订了基于面向对象和c o m 组件技术的a t l a s2 k 语言。a t l a s2 k 定义了c o m 组件仿真物理信号,通过标准接口装配这些组件可以实现对u u t 的测试需求描述。a t l a s2 k 采用s m m l ( s i g n a la n dm e t h o dm o d e l i n gl a n g u a g e ) 建立具有层次结构的信号模型,增强了对u u t 测试需求描述的正确性。a t l a s 2 k 通过七层模型来实现如下各种特性:面向信号源:采用面向对象技术及组件( c o m ) 技术模型;实现可扩展性,提供新信号的定义;测试程序具有可移植性。下面分别介绍a t l a s 2 k 的各层模型:1 ) 信号方法建模语言( s m m l ) 提供一种机制,用于描述信号的属性。2 ) a t l a s 2 k 基本组件提供了可重用的、格式化描述的基本信号类( 最底层的信号) 。通过这些基本信号类就可以定义所有较高层的信号。每一个基本信号类都存在一个s m m l 描述。基本信号类的类名是s i g n a lf u n c t i o n ,其行为通过类的属性来控制。属性代表其输入,而v a l u e s 则代表输出。基本信号类之间是通过消息进行通信的。基本信号模型如下图所示:输入同步图1a t l a s 基本信号模型3 ) 测试技术框架提供的是可重用的,经格式化描述的信号库;测试技术框架层可实现对信号的扩展,在不对a t l a s 2 k 标准进行扩容情况下,就可创建复杂信号。测试技术框架可以用来定义一组特殊信号,例如射频( r f ) 信号,数据总线信号等。测试技术框架就是一种扩展机制,允许用户定义另外的信号类。4 ) 语言中立描述( l n d ) 是一种程序库,提供了一种用于详细说明所有a t l a s 2 k 基本组件及t t f 组件的手段,它是用接口描述语言( i d l ) 编写的。5 ) 本地代码层并不包含在a t l a s 2 k 标准之中。此过程中涉及到了自动测试系统的本地编程语言对a t l a s 2 k 信号的调用。本地编程语言,或称为载体语言,必须支持面向对象编程技术。可选的载体语言包括c + + 、j a v a 等。6 ) 测试过程层对信号、信号的控制参数和要实施的操作进行描述。在这一层中,除了传统的a t l a s 单一动作的动词外,、还定义了多动作的动词。面向航天应用的自动测试语言研究另外,在该层中,还为使用测试技术框架组件及a t l a s 2 k 基本组件的本地代码层描述了动词,使得在这一层中使用这种定义编写的测试规范可以用来生成在功能上完全等同的测试程序而不必考虑具体的自动测试系统。测试过程层使a t l a s 2 k 的测试规范具有可移植性成为可能。7 ) 环境层是用户选择的界面、载体语言及开发工具的容器,它并不包含在a t l a s 2 k 标准中。v b 、v c + + 都可被用来开发测试程序集( t p s ) 。强大的a t l a s 2 k 信号描述可以包含在开发的测试过程( t e s tp r o c e d u r e ) 层中,而控制及流程结构可在本地代码开发环境中提供。在自动测试语言的研究领域中t p s ( 测试程序集) 与仪器无关性研究也正在进行,而v i s a 、i v i 标准的推出为可互换仪器的实现提供了基础。实现仪器的可互换性就是通过仪器类或类型,定义一个通用的仪器类( v o p 口:示波器、数字多用表、函数发生器) 的编程接口。测试人员可以编写出与硬件无关的测试代码,这就使得开发人员可以更换不同厂家的产品,甚至不同总线( 将g p i b 总线产品更换成v x i 或p x i 产品1 的产品。i v i 驱动器的可互换性可以通过一个称为通用仪器类驱动器来实现。类驱动器是一组用来控制具体一类仪器属性的函数。具体仪器类如:示波器、数字多用表或函数发生器。i v i 驱动器共有五类示波器,数字多用表、任意波形函数发生器、继电器和电源,每一类驱动器调用具体的仪器驱动来控制实际的仪器。具体的仪器驱动包括了控制一个特定仪器的信息:命令字符串、分析码、仪器的有效范围设置。在测试程序中,调用类驱动器,类驱动器是与具体仪器相联系的,并且可以实现在系统中仪器类的范围内更换具体仪器驱动( 及仪器) ,而不会影响到测试代码的执行。i v i c o m 是i v i 类驱动器的c o m 版本,驱动器c o m 组件的接口是标准的,对于同类仪器的类驱动来说是一样的。更换硬件,只要改变相应驱动器配置信息,就可实现硬件互换,用户程序不用更改。i i n t e r f a c e 是最新的1 v i 信号接口标准,它以提供信号接口( c o m 组件形式) 和完成“信号”互换作为目标。w i c o m 和i i n t e r f a c e 标准为测试程序提供了标准的仪器驱动组件,在本课题的自动测试语言系统中也可以引入i v i 驱动组件,作为标准驱动组件的一部分,从而大大扩展了系统的硬件驱动能力。随着a c t i v e x 技术、网络技术不断发展,远程分布式测控系统以其优越的可扩展性和远程监控能力吸引越来越多的测试人员采用这样的测试系统架构。自动测试语言对分布式测试应用的支持也成为了一个新的研究方向。2 2 2 国内自动测试语言研究进展国内对测试语言的研究也有较大发展,也开发出了专业的测试语言,例如ct e s s 语言。c t e s s 语言是大型测试系统的测试程序编程语言,以标准c( a n s i c ) 为基础,并扩充了一些专门用于测试的数据类型和测试元语言库。ct e s s 语言实质上是以测试函数为主体的程序描述语言。c - - t e s s 测试语言子系统包括:c - - t e s s 测试元语言库、c - - t e s s 预编译器、c 语言编译器。用c t e s s 语言编写的测试程序,由预编译器将c t e s s 程序转换成标准的语言程序,随后由c 编译器编译生成可执行代码,最后运行。空间中心在和欧空局合作的双星探测项目中,要对欧空局的七个有效载荷进行测试,而欧空局提供了一种描述测试过程的文件c o n 廿0 1f i l e ,c o n t r o lf i l e是用一种类似于编程语言编写的描述详细测试过程的文件。c o n t r o lf i l e 句法类似于c 语言,但语句简单得多,只有5 种语句:s e n d 、w a i t 、c a l l 、c h e c k第二章自动测试语言理论研究和p a u s e 。用c o n t r o lf i l e 作为测试程序的输入文件,然后执行测试程序就可以完成相应的测试工作。c o n t r o lf i l e 的引入,使测试过程和测试结果的判读由测试程序自动进行,极大的提高了测试自动化。北京空间飞行器总体设计部设计了一种类似于数据库的表格型语苦与测试流程( 测试细则) 一一对应,测试人员在准备测试序列时所做的工作只是根据测试流程利用测试准备软件提供的交互式工具生成测试指令序列表,不需要测试人员具有丰富的程序设计知识和经验。国内的东方信标测试测试技术有限公司,根据市场需求和自身的看法,设计出了自动测试平台g p t s 。g p t s 自动测试平台是一个通用的开放的测试程序运行平台和测试程序开发、系统集成平台,为各个领域的电子设备测试提供一个统一通用的系统解决方案,特别适用于对复杂电子系统及其多个部件进行功能测试或维修。该公司开发了自己的测试语言,该语言的语句和关键词对应于国际标准语言相应的语句和关键词,使之容易向国际标准靠拢。2 2 3 自动测试语言发展方向与标准化i e e ep 12 2 6s t a n d a r df o rab r o a db a s e de n v i r o n m e n tf o rt e s tf a b b e t ) 标准将成为近阶段测试领域标准的总体框架。a b b e t 由i e e ep 1 2 2 6 3 1 2 等一套测试领域信息接口标准组成,将现有测试相关标准作为其子系统纳入a b b e t 的层次化体系结构中。a b b e t 在测试软件、测试语言的要求方面:以信息模型( e x p r e s s语言) 对测试信息进行规格化描述,消除层次间测试信息移植、共享和重用的障碍。对测试软件接口采用描述语言( m l 语言) 定义。由于i d l 语言与具体实现语言的无关性,确保了实现a b b e t 标准的测试语言多元化。运用a b b e t 标准将实现测试软件的开发,与最终实现的硬件环境无关,并且与编程语言、操作系统等软件环境无关的全新设计思想。未来自动测试系统的测试程序集t p s 将注重改善其可移植性和互操作性,推动测试软件开发环境和基于模型的测试软件生成等技术的发展。确定测试程序集t p s 的性能指标,使被测单元f u u t ) 的设计和维护信息更好地被测试程序运用,并开发基于知识的测试诊断软件。国内开发的自动测试语言也要尽量向国际标准靠拢,扩大其通用性和外部兼容性,从而扩大应用领域。另外,针对国内情况应充分考虑测试语言本地化的需求,使测试人员可以摆脱繁琐的测试程序重复编制过程,达到测试程序的复用和移植目的。2 2 4 设计、仿真、测试一体化当前,各类系统开发正朝着设计、仿真、测试一体化的方向发展,在设计过程中就预先考虑测试过程;利用仿真验证系统中的某个设计环节,或者利用仿真代替系统中的某一部分为设计提供方便;在测试过程中验证设计的正确性,另外在测试过程中还可以利用仿真模型代替某些不能提供实物的设备。自动测试语占的研究也应该结合一体化设计思想。在测试过程中兼顾系统设计与仿真。现代航天器研制很重要的一点是一体化设计思想的引进,而一体化设计的一个主要方面就是研制环境的一体化。体化设计、模块化集成逐渐成为现代航天器研制的潮流,航天器设计、分析与仿真验证一体化系统也就成为现代航天器研制过程中的不可缺少的环节。对于航天器设计、分析与仿真验证一体化系统来说,在方案设计阶段可以作为分析和仿真工具用于对总体方案进行优选、优化与验证;在研制阶段可以作为测试平台为部件和分系统提供系统特性的验证和验收手面向航天应用的自动测试语言研究段;在测试和运行阶段用于系统的故障诊断、故障隔离和对策研究,并可作为航天器的模拟器与有效载荷分系统等对连进行联合调试。另外,在一体化设计思想基础上,分布式交互设计、仿真验证系统也成为航天器开发环境的发展方向,h l a ( h i g hl e v e la r c h i t e c t u r e ,高层体系结构) 为分布式设计、仿真验证系统的开发提供了基础框架。h l a 是1 9 9 5 年美国国防部( d o d )发布的建模与仿真大纲( d o dm & sm a s t e rp l a n ) 中第一个目标一开发建模和仿真通用技术框架中的首要内容,其主要目的是促进仿真应用的互操作性和仿真资源的可重用性。1 9 9 6 年1 0 月美国国防部正式规定h l a 为国防部范围内仿真项目的标准技术框架,开始推行h l a ,并用它代替原有的d i s 、a l s p 等标准。同时提交i e e e ,2 0 0 0 年9 月作为i e e e l 5 1 6 发布,成为国际通用的标准。h l a 主要由三部分组成:规则( r u l e s ) :保证联邦( f e d e r a t i o n ) 中仿真应用间按正确的方式进行交互,描述各联邦成员的责任及它们与r t i ( r u nt i m ei n f r a s t r u c t u r e ) 的关系。对象模型模板( o m t :o b j e c tm o d e lt e m p l a t e ):定义h l a 对象模型信息的通用方法,提供一种标准格式的h l a 对象模型模板,以促进模型的互操作性和资源的可重用性。接口规范说明( i n t e r f a c es p e c i f i c a t i o n ) :定义联邦成员与联邦中其他成员进行信息交互的方式,即r t i 的服务。为了指导h l a 联邦模型的开发,促进h l a 的应用,美国国防建模仿真办公室提出了h l a 联邦模型的开发和执行的标准过程:f e d e p ( f e d e r a t i o nd e v e l o p m e n ta n de x e c u t i o np r o c e s s ) ,使联邦模型的开发过程实现标准化。这个h l a 联邦模型的开发和执行过程如图2 所示: 广j【ljm i # 目标l _叫* m 模_ _ 一叫鲥自* 畦摔叫啊一l 。一一1h 执# h * 镕果图2 开发h l a 模型的标准过程每一阶段的工作内容为:1 定义联邦目标:联邦的发起人与开发者就本联邦应达到的目标取得共识,完成“想定”并形成文档。2 开发联邦概念模型:开发联邦有关的“真实世界”的仿真模型,以“仿真对象”和“交互”描述功能。3 设计和开发联邦:完成所有的开发工作的确认,完成联邦对象模型( f o m ) 表。4 集成和测试联邦:完成联邦的所有开发工作,并进行测试。5 执行联邦并分析结果:执行联邦,分析仿真结果,并反馈给发起人。设计、仿真、测试一体化思想的提出和分布式应用的发展加快了航天器系统开发进程,自动测试语言及对应的自动测试系统在航天器系统开发中扮演的角色也应该相应进行转换,成为整个一体化设计思想的组成部分之一。2 3 自动测试语言运行机制自动测试语言程序的运行必须配合相关的硬件环境、接口驱动器和软件环境,它的运行一般是通过调用硬件接口驱动来完成对设备的测试与控制。第二章自动测试语言理论研究通用化的自动测试系统软件平台一般可分为编译、配置和执行三部分。对于自动测试设备( a t e ) 使用者而言,只须提供测试语言源程序和系统配置文件两个程序文件,其中系统配置文件用于描述测试系统与被测设备的连接关系。对于a t e 集成者来说,必须建立系统配置模型,而且还要对系统资源进行说明,以便软件平台能够识别系统资源。然后再由软件平台将测试语言源程序编译成可执行代码,接着将其输入到测试控制计算机t c c 中。t c c 根据系统配置文件和可执行的测试程序代码控制自动测试流程。图3 是根据上述原理提出的一种自动测试流程实现框图,其中测试程序由用户根据需求从数据库中载入或者重新编辑载入,载入后由解释器将其转换为可执行代码;而测试数据由数据库管理,方便回溯和查询。开始上系统酉b 置载入测试程序ii i ,执j 丁测试程序,返回测试数据,恢复初始状态图3 自动测试流程实现简图当前可互换仪器标准正在发展中,将a t l m i c 与可互换仪器标准( 例如i v i s i g n a li n t e r f a c e 标准) 结合是构建自动测试系统软件环境的一种有效途径,如图4 所示。在构建自动测试系统的过程中,基于c o m 组件技术可以将虚拟仪器技术、a t l m i c 测试语言模型、i s i g n a li n t e r f a c e 标准三者紧密结合起来,从而提供给用户一种通用的、图形化的、可移植的测试系统软件平台。面向航天应用的自动测试语言研究图4 自动测试系统软件架构图2 4 自动测试语言模型a t l m l c当前,a t s ( a u t o m a t i c t e s ts y s t e m ) 软件的开发方式有“面向仪器”和“面向信号”两种。面向仪器的t p s 开发基于仪器,很难从本质上反映被测设备的测试需求,加上仪器种类繁多,功能各异,因此很难实现互换,软件通用性差;面向信号的开发方式基于被测对象( u u t ,u n i tu n d e rt e s t ) 的测试需求和测试资源的测试激励能力,解决了需求与供应之间的矛盾,通用性强。应用在a t s 中的软件技术经历了过程编程语言( 如c ) 、w i n d o w sd l l 、面向对象编程( 0 0 ) 、组件对象模型( c o m ) 的漫长发展过程。c o m 采用面向对象的软件设计思想,以标准接口提供功能调用,实现了程序的模块化、通用性设计。随着自动测试技术的不断发展,将测试过程描述成对信号资源和被测信号资源操作的思想己逐渐成为现代测试技术的一个重要分支。a t l a s 发展了这一思想,成为以信号为基础的测试应用开发工具。a t i a s 2 k 由旧版本的a t l a s 发展而来,进一步发展了以信号为基础开发测试程序的思想。本文提出的a t l m i c 面向信号接口语言模型参考了a t l a s 2 k 的基本信号模型,在a t l m i c 中通过对信号接口的操作与控制来实现信号的产生和变化,从而完成测试过程。a t l m i c 定义了针对测试系统的不同信号类,通过对信号旌加带参数动作来控制信号的转换过程。a t l m i c 语言模型如图5 所示:第二章自动测试语言理论研究信号参数输出信号图5 a t l m i c 信号模型“信号”代表测试系统所需要的各类激励信号和测试控制信号,“动作”指产生信号的动作或者针对信号的操作,动作一般都带有参数用于表示动作的环境。而输出信号是由动作作用于信号后产生的输出,从而获得满足用户需求的数据。在该模型基础上,通过分析航天应用测试需求,本文提出了a t l m i c 信号模型的工程实现方法,即应用一组本地化测试语言语句用于测试程序编写、然后将编写好的测试程序通过软件系统转换为可执行代码。2 5 本地化的自动测试语言设计在a t l m i c 信号模型基础上,本文提出了四类测试语言语句,主要有:激励类、量测与控制类、数据处理类和进程控制类信号。每个类别的语句均采用本地化语言加上相应参数的方式来描述测试动作。激励类主要是产生一些物理信号,例如电源开关量、模拟量信号、光电信号、脉冲信号等;测控类主要是提供对被测仪器进行测量和控制的手段,例如测量信号、调节仪器状态等:数据处理类提供了处理测试数据的功能,例如数据格式转换、数据曲线显示等。为了增强语言对测试过程的控制能力,加入了一类专门用于控制测试进程的语句,例如停止测试、切换测试模块等。本地化的测试语句能够完整的覆盖一个独立的测试过程,体现了测试的闭环特性。在这些语句的基础上,如果还不能满足用户需求,可以根据具体情况增加新的测试命令语句,以便扩展系统功能。2 5 1 信号激励类信号激励类产生测试系统所需的物理信号,根据航天应用需求所总结出的主要的语句如下表所示,可以根据需求扩展更多的功能语句。动作名称信号参数加电电源电源型号( 由用户定义) ,时间码断电电源同上开机开关量待开机设备,时间码关机开关量同上开机模拟量用模拟量开机的设备,时间码关机模拟量同上面向航天应用的自动测试语言研究【连接开关量待连设备,时间码ll 断开开关量已连设备,时间码ll 设置设置参数设备名称,时间码i2 5 2 测控类动作名称信号参数打开设备名硬件接口,时间码关闭设备名硬件接口,时间码测量电压待测设备,时间码测量电流待测设备,时间码读取数据待测设备,时间码,数据内容写入数据待测设备,时间码,数据内容校时系统当前时间时间码2 5 3 数据处理类动作名称信号参数显示电压曲线待测设备,时间码显示电流曲线待测设备,时间码数据入库遥测数据模拟量,时间码数据入库遥测数据数字量,时间码2 5 4 进程控制类动作名称信号参数开始测试o时间码结束测试0时间码停止测试0时间码继续测试0时间码切换功能模块名称时间码下面用一个简单的测试程序例子说明测试程序的建立过程。步骤动作信号信号时间参数语句参数参数开始1 0 0 0o00 :0 0 :0 0测试1 0 1 0打开电源6 6 7 30 :0 2 :0 01 0 2 0测量电压6 6 7 30 :0 4 :3 01 0 3 0显示电压6 6 7 3o :0 4 :3 0表1 测量并显示6 6 7 3 电源输出电压表1 是应用本文提出的测试语言语句编写的某型电源的测试程序。时间参数代表动作执行的时间,信号参数代表信号属性,例如该例中“6 6 7 3 ”分别代表电第二章自动测试语言理论研究源开关量的作用对象和电压信号的来源。当动作没有对信号进行操作时,将信号和信号参数置为0 。这样通过带参数的动作对信号进行控制就可以实现测试。2 6 基于a t l m l c 的自动测试语言与标准测试语言的兼容性基于a t l m i c 模型的测试语言的通用性很大程度上体现在与标准测试语言的兼容性上面。a t l a s 是一种国际上流行的标准测试语言,随着现代测试技术的发展,a t l a s 也已经发展到2 0 0 0 版本。a t l a s 对硬件的控制主要是通过一组信号接口操作动词来实现。本文提出的基于a t l m i c 的自动测试语言在信号接口操作动词方面与a t l a s 兼容,a t l a s 程序经过一个对应关系转换过程就可以移植到本文设计的自动测试系统解释执行。该转换过程主要是通过对接口操作动词的对应转换来实现,同时还要对动词所带的各类参数进行相应替换。a t l a s操作动词s e t u po p e nc l o s em e a s u r ec o n n e c ta t l m i c设置打开关闭测量连接操作动词表2 信号接口操作动词对应关系示例表对于各类自动测试语言程序来说,只要提供相应的解释器或者编译器,都可以将其转换成为可执行代码。本文采用的是将a t l m i c 自动测试语言程序转换为a c t i v e xs c r i p r i n g 脚本,再通过脚本引擎对其解释执行的方法。从a c t i v e xs c r i p t i n g 脚本程序的角度看,不用考虑测试语言本身是什么形式,测试程序最终都可以转换为一组脚本用例,因此只要针对各类测试语言程序设计相应的转换工具,最终都可以运行在本文的自动测试系统上面。面向航天应用的自动测试语言研究第三章自动测试语言模型a t l mic 的验证与实现为了验证第二章所提出的自动测试语言模型,必须结合实际的测试系统进行检验。本章详细分析了基于a t l i m i c 模型的自动测试系统的组建过程。3 1 语言功能需求分析3 1 1 语言的完整性测试语言必须能够覆盖航天应用系统测试的基本需求,并能够根据实际需要扩展特定的其它功能。主要功能应该包括以下方面:能够发送程控、遥控指令;能够读取模拟量、数字量数据;能够显示实时数据图形、图像;管理测试数据库,例如对数据记录进行查询、增、删、改等操作:能够支持数据回溯等。3 1 2 测试语言的本地化测试语言语句既要能够覆盖航天应用测试的基本需求,又要对以往的测试细则的编写形式具有传承性,以便测试人员能够迅速的适应新的测试程序编写规范。下表是测试细则的一个示例:指令代号段时间指令名称数管遥控o h l 9 m 0 0 sp 1 4 3g k 8 5发射机切换ap 1 4 6f k 9 6g k 8 2发射机a 加电o h 2 0 m 0 0 sb 1 0入北京站( 1 )0 h 2 5 m 0 0 sb 1 1出北京站( 1 )f k 9 7g k 8 4发射机断电0 h 4 4 m 0 0 sp 1 4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉语言文学类教学难题及措施
- 毕业设计论文结构撰写要求及排版格式规定
- 临床试验远程监查中的电子监管链(eTMF)管理
- 毕业论文的简单学术评语
- 评阅人对学位论文的学术评语
- 兰州大学生文学院讨论生奖助评定细则
- 人民大学同等学力学位论文撰写规范
- 各类新闻稿模板
- 珍视泥土作文(初中初一800字)
- 当前调查取证难的原因和对策
- 合同包死价补充协议
- 食品企业标准模板
- 2026年中国固体制剂行业发展展望及投资策略报告
- (2025年)仪表工仪表技能考试试题附答案
- 2025至2030复合中间合金行业项目调研及市场前景预测评估报告
- 银行普惠金融2025年冲刺模拟试卷(含答案)
- 2025高一英语单词默写本
- XHCO2000B-V2.0新先河一氧化碳监测仪
- 文化遗产知识竞赛真题模拟汇编(共1270题)
- 蔡礼旭如何做一个真正如法的好人讲座
- GA/T 1189-2014现场白骨化尸体骨骼提取、保存、运输规范
评论
0/150
提交评论