1.面向过程软件开发平台
早期检测系统测试软件的开发是面向过程的,主要是利用各种非可视化的编程语言直接开发,如BASIC、FORTRAN、C语言等。由于当时计算机技术水平的限制,这些早期的测试软件主要是在DOS(磁盘操作系统)平台下开发的,开发效率低下,软件复用方式主要是调用过程库或函数库中自己定义的函数,所以用这些语言开发出的测试软件实现的功能单一、结构简单,大部分是一些程序代码,对程序开发人员的要求很低,这一时期的软件系统也只是硬件的一种附属品。
2.面向对象软件开发平台
随着计算机技术和面向对象技术的发展,出现了各种高级的可视化的面向对象的软件开发平台,如Visual C++、Visual Basic、Delphi等,这些平台为用户提供了可视化的编程环境和一些现成的控件,不仅减少了他们的工作量,而且工程技术人员也可以编制较为复杂的测试软件,同时面向对象方法和技术的应用在一定程度上提高了软件的复用性和可维护性[7-9]。
但是这些软件平台的数据处理和分析功能很弱,有的甚至没有信号处理方面的函数库或工具包,对多种总线及仪器驱动的支持也不是太好,这样就要求开发者必须编写大量的代码实现领域专用的功能模块,对应用开发者要求也较高,开发者既要有专业的背景知识,又要掌握专业的软件技术,开发一个新的系统仍然需要付出很大的努力。对于开发一个较为复杂的检测系统软件来说,在这些平台上开发的效率显然不能满足开发者的需要。
3.面向信号软件开发平台
20世纪70年代出现的通用测试语言(abbreviated test language for all systems,ATLAS)是一种面向信号的语言,描述的是测试信号的特性。ATLAS编写的测试程序,主要用于描述需要解决的问题,避免了指定解决问题的具体方法,根据规范进行编写的测试程序具有标准的程序架构、语法格式、参数含义,同时测试程序具有可移植性,能够被重复使用。该语言已在模拟测试、数据总线测试、数字测试、光电测试、燃气涡轮发动机测试、惯性导航系统测试、导航系统测试、定时和同步、视频测试等诸多测试领域内具有测试规范。ATLAS的最大优势是只要有合适的资源,使用者就可以自由地在不同的测试系统中移植它们的TPS(test program sets,测试程序集),避免资源的浪费。目前国际上比较成功的ATLAS开发环境主要有美国TYX公司的PAWS和法国宇航公司的SMART[10-12]。我国对ATLAS的跟踪和研究刚刚起步,加紧研制我国自己的ATLAS开发平台,将ATLAS尽早地应用于自动测试领域是值得我们研究的新课题,军械学院的孟晨教授在这方面做了一些初步的研究,开发了一种面向功能接口的测试语言——测试流程描述语言(test flow description language,TPDL)及其开发平台[13]。
虽然基于ATLAS的软件开发平台具有上述的众多优点,但它的使用存在很多限制,这是因为其存在下列不足[14-15]:①将ATLAS程序转化为计算机和自动测试设备能执行的代码,还需要专门的开发ATLAS的工具(工具内集成有ATLAS的编译器或解释器),然而该软件比较昂贵,一般的测试部门难以承受;②学习ATLAS标准比较困难,必须要花大量时间去理解ATLAS标准和培训测试工程人员;③ATLAS中提供的程序控制语句不够完善;④和现在主流的测试语言开发环境相比,ATLAS提供的人机接口太简单,只提供给系统显示器输出消息的接口。
4.虚拟仪器技术软件开发平台
1)虚拟仪器概述(www.daowen.com)
20世纪80年代中期,随着软件技术的迅速发展,智能仪器、虚拟仪表和数字化测控系统形成了蓬勃发展之势,各种面向仪器与测控系统的计算机软件应用平台应运而生,即基于虚拟仪器技术的软件开发平台。这类开发平台都内置了丰富的信号采集、测量分析与数据显示等函数库,可以容易地实现对各种仪器硬件的有效控制,完成数据表达的任务,并提供了丰富的控件资源,如各种旋钮、开关、按钮、波形图等,还可根据用户需要自定义控件。它提供强大功能的同时还能缩短开发周期,统一设计标准,降低开发费用。用户通过这类开发平台可以快速方便地建立检测系统,提高工程设计的效率与可靠性[16-18]。
具有代表性的是美国Agilent公司、Keithley公司和HEM Data公司推出的VEE、TestPoint、DT Measure Foundry,NI公司推出的LabVIEW和Lab-Windows/CVI,国内重庆大学秦树人教授自行研制的VMIDS(虚拟仪器开发系统)[19-20]。其中LabVIEW和LabWindows/CVI在测试软件开发领域得到比较广泛的应用。LabVIEW是一种G语言的开发环境,用图形语言编程,界面直观形象,并且具有强大的数据可视化分析和仪器控制能力,能够快速地组建小型测试系统。但是LabVIEW亦存在不足,如不擅长完成大量数据处理的任务,调用系统程序实现底层操作困难等。同时,由于采用Lab-VIEW开发的系统通用性、扩展性和灵活性较差,在实际的大型测试系统开发中受到很多限制[21-22],这时LabWindows/CVI成为我们的选择。
在虚拟仪器软件开发平台的发展过程中,虚拟仪器软件标准的建立和发展起了很重要的作用,下面将进行详细的分析。
2)虚拟仪器领域主要标准协议简介
随着软件工程的发展,软件控制技术得到极大的完善,形成了不同层面上的仪器控制软件规范,从仪器控制命令集、仪器驱动程序开发到仪器驱动的使用都进行了全方位的标准化定义。总的趋势是软件控制技术越来越独立于具体的硬件,软件系统的控制层次越来越明晰,各层次间调用关系越来越规范。这种趋势使得软件的核心作用在测量与控制系统的开发中越来越明显,并逐渐成为自动测试系统的基础技术。
下面简单介绍仪器控制相关的几个标准规范[23-26],它们具有技术自然发展的脉络。
(1)VPP。满足该标准的仪器驱动具有相同的结构框架和I/O接口,进而使符合该标准的I/O设备、仪器与软件能一起工作,实现了多系统供应商提供的硬件、软件的互操作性。
(2)VISA。VISA作为VPP标准的一部分,使GPIB、VXI、PXI等总线标准和仪器有了标准的硬件接口平台,在此基础上为虚拟仪器(VI)提供各总线通用的标准I/O函数库及相关规范。
(3)IVI。VPP实现了不同厂家仪器驱动器的互操作性,但冗余命令多、效率低,IVI在此基础上提供了驱动的互换性并增加仿真、状态管理库,比VISA更高一层,是对VPP很好的补充。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。