双十科技关于标准自动化测试系统架构
Date:2022/12/21 9:21:27 / Read: / Source:本站
双十科技关于标准自动化测试系统架构
构建以软件为中心的生态系统,必须通过标准化架构来实现。人们期望自动
化测试系统的性能越来越强大,功能越来越完善,而这意味着系统复杂度增加。
复杂度增加带来的潜在风险是系统稳定性降低、开发周期延长、维护升级难度增
加、系统复用率下降导致投资回报率降低,因此标准自动化测试系统参考架构就
非常重要。在测试和测量行业,最通用的自动化测试系统架构即五层结构模型,
该模型自下而上分别是仪器设备、测试站、仪器驱动程序、应用开发环境、测试
管理软件,如图1-8所示。
自动化测试系统包括测试站、仪器设备、测试软件三部分。五层结构模型的
第一、二层即自动化测试系统的硬件组成部分,仪器设备可以是PXI模块、VXI模
块、传统GPIB总线接口仪器等;测试站可以是桌面PC、工控机或基于标准总线平
台,如PXI, VXI.实际项目中,可以从带宽、总线延迟、定时同步、实时处理、
成本等方面综合考虑选择合适的硬件。
PXI(PCI eXtensions for一nstrumentation)是一种坚固且基于PC的模块化
硬件平台,是PCI总线在仪器领域的拓展,适用于测量和自动化系统。PXI于1997
年开发,1998年发布,其公开的工业标准由PXI系统联盟(PXISA)所管理。该联
盟由70多家公司组成,它们共同推广PXI标准,确保PXI的互通性,并维护PXI规
范(https://www.pxisa.org)。
VxI(VME eXtensions for Instrumentation)是板上仪器系统的另一个标
准,是VME总线在仪器领域的拓展。VXI于1987年首次发布。VXI的赞助会员有
Bustec , VTI Instruments , EADS , Keysight , NI公司
(https://www.vxibus.org)。
五层结构模型的第三、四、五层都是面向软件的,引导开发人员设计和编写
测试软件。这种清晰的层次划分有利于测试软件开发任务分工,同时提高了测试
软件的开发效率、代码复用率、鲁棒性和可扩展性。仪器驱动程序是用于控制可
编程仪器的一个软件程序集,每个子程序对应一个编程操作,如打开、配置、读/
写及关闭。仪器驱动使用的常见的标准方法有“Plug and Play"(即插即用驱动
PnP)、"Interchangeable Virtual Instrument"(可互换虚拟仪器驱动IVI)、
"Direct I/O"(直接一/0)。直接一/0是对仪器编程的底层方法,采用“Standard
Commands for Programmable Instruments"(可编程仪器标准命令SCPI),只
有当PnP和IVI不可用时,才考虑使用直接I/O的方式。现代仪器的直接1/0通信标
准是通过“Virtual Instrument Software Architecture"(虚拟仪器软件架构VISA)
的API来实现的。VISA是一种工业标准通信协议,无论是串口、GPIB,还是
USB,读/写ASCII字符串的VISA命令都是一样的,因此VISA与接口无关,这使得
开发人员用一种语言就可以对不同接口的仪器进行编程。仪器可以被替换,而程
序很少改动,PnP, IVI和VISA都极大地体现了以软件为中心的理念。
IVI的目的在于更换仪器后不用更改代码,在多个厂商的仪器之间是可以互换
的。IVI联盟的赞助会员有Keysight , NI ,罗德施瓦茨R & S公司
(https://www.ivifoundation.org)。
应用开发环境用于代码模块开发,编写具体代码,如调用仪器驱动程序、测
试项开发、信号处理、函数分析等。对于一个新的项目,很多时间会花在代码模
块开发上面。常见的应用开发环境有Visual Studio, Visual C++、LabVIEW,
LabWindows/CVI,开发过程中应着重设计高度模块化且可重用的代码模块。测试
管理软件位于五层结构模型的最上层,用于管理和执行测试。应用开发环境编写
的每个代码模块都将作为测试管理软件的一个步骤,对应一个具体的测试项,测
试管理软件将这些步骤排列起来形成序列,并按最终定义的顺序执行序列,实现
自动化测试。在管理这些步骤的过程中,要求步骤顺序的调整非常方便。同时,
代码模块有可能是用不同的语言编写的,这在自动化测试中很常见,因此测试管
理软件需要有接口能够同时识别这些代码模块。自动化测试系统需要实现多种任
务和功能,这些任务和功能中,一些与产品紧密相关,如特定仪器的配置、校
准、测试项、分析函数;而另一些则对于多数产品都是通用的,如序列号追踪、
用户管理、测试流程控制、报表生成、数据存储、用户界面更新、配置和提示窗
口。为了把开发时间减到最短和维护费用降至最低,并且保证测试系统的寿命,
实现产品级别的任务与系统级别的任务相分离的测试策略是十分重要的。如果设
计得当,产品级别的操作放在代码模块中,由应用开发环境来完成,而系统级别
的操作在不同产品不同测试站之间可以共享,不需要每次都重新开发,由测试管
理软件接管这些工作,测试管理软件同时负责代码模块的管理和执行。这将大大
减轻开发工程师的工作量,他们可以使用测试管理软件提供的现成框架,而更加
专注于代码模块的实现。从1.2节介绍的测试软件的组成可以看到,除了测试程序
是由应用开发环境编写,用户界面、自动化测试框架、数据管理系统、数据分析
系统都和测试管理软件有关。一些公司已经编写了自己的测试执行器,并且分配
了宝贵的工程资源来从头开始开发测试管理程序。这些测试管理程序的开发以及
长时间维护工作耗费了大量的资源,导致无法全力投入到公司核心竞争力业务
上,而标准商用现成Co丁S的成熟软件可以避免上面的问题,如TestStand,
TestStand除了提供代码模块的管理和执行以及上述通用操作这些核心功能之外,
还可以方便地实现并行测试,提高测试效率,满足高容量生产系统最严苛的生产
要求;TestStand可以调用大部分主流应用开发环境编写的代码模块,如
LabVIEW, LabWindows/CVI, C++、.NET程序集、Visual Basic等;
TestStand提供了现成的架构,专为自动化测试而设计,简化测试软件开发工作并
提高系统鲁棒性和可扩展性,并且这些架构是开放的,项目团队可根据自己的需
求进行自定制。TestStand还有很多其他的特点,对于测试管理软件而言,其功能
远不止于代码模块的管理和执行,测试管理是非常大的一个范畴。
[小结]
自动化测试成为工业界趋势,它带来测试效率和测试结果一致性的提高,并
最终降低成本。自动化测试的特点在于减少人工干预,但并非所有测试都值得自
动化,这需要进行评估,有一些准则可以参考。在产品开发过程中,自动化测试
的需求越来越多,其最重要的趋势是构建以软件为中心的生态系统,这必须通过
标准化架构来实现。在测试和测量行业,最通用的自动化测试系统架构即五层结
构模型,测试管理软件位于模型的最上层,用于管理和执行测试,它通过提供现
成的框架而让工程师专注于代码模块的实现,大大节约了开发时间。
构建以软件为中心的生态系统,必须通过标准化架构来实现。人们期望自动
化测试系统的性能越来越强大,功能越来越完善,而这意味着系统复杂度增加。
复杂度增加带来的潜在风险是系统稳定性降低、开发周期延长、维护升级难度增
加、系统复用率下降导致投资回报率降低,因此标准自动化测试系统参考架构就
非常重要。在测试和测量行业,最通用的自动化测试系统架构即五层结构模型,
该模型自下而上分别是仪器设备、测试站、仪器驱动程序、应用开发环境、测试
管理软件,如图1-8所示。
自动化测试系统包括测试站、仪器设备、测试软件三部分。五层结构模型的
第一、二层即自动化测试系统的硬件组成部分,仪器设备可以是PXI模块、VXI模
块、传统GPIB总线接口仪器等;测试站可以是桌面PC、工控机或基于标准总线平
台,如PXI, VXI.实际项目中,可以从带宽、总线延迟、定时同步、实时处理、
成本等方面综合考虑选择合适的硬件。
PXI(PCI eXtensions for一nstrumentation)是一种坚固且基于PC的模块化
硬件平台,是PCI总线在仪器领域的拓展,适用于测量和自动化系统。PXI于1997
年开发,1998年发布,其公开的工业标准由PXI系统联盟(PXISA)所管理。该联
盟由70多家公司组成,它们共同推广PXI标准,确保PXI的互通性,并维护PXI规
范(https://www.pxisa.org)。
VxI(VME eXtensions for Instrumentation)是板上仪器系统的另一个标
准,是VME总线在仪器领域的拓展。VXI于1987年首次发布。VXI的赞助会员有
Bustec , VTI Instruments , EADS , Keysight , NI公司
(https://www.vxibus.org)。
五层结构模型的第三、四、五层都是面向软件的,引导开发人员设计和编写
测试软件。这种清晰的层次划分有利于测试软件开发任务分工,同时提高了测试
软件的开发效率、代码复用率、鲁棒性和可扩展性。仪器驱动程序是用于控制可
编程仪器的一个软件程序集,每个子程序对应一个编程操作,如打开、配置、读/
写及关闭。仪器驱动使用的常见的标准方法有“Plug and Play"(即插即用驱动
PnP)、"Interchangeable Virtual Instrument"(可互换虚拟仪器驱动IVI)、
"Direct I/O"(直接一/0)。直接一/0是对仪器编程的底层方法,采用“Standard
Commands for Programmable Instruments"(可编程仪器标准命令SCPI),只
有当PnP和IVI不可用时,才考虑使用直接I/O的方式。现代仪器的直接1/0通信标
准是通过“Virtual Instrument Software Architecture"(虚拟仪器软件架构VISA)
的API来实现的。VISA是一种工业标准通信协议,无论是串口、GPIB,还是
USB,读/写ASCII字符串的VISA命令都是一样的,因此VISA与接口无关,这使得
开发人员用一种语言就可以对不同接口的仪器进行编程。仪器可以被替换,而程
序很少改动,PnP, IVI和VISA都极大地体现了以软件为中心的理念。
IVI的目的在于更换仪器后不用更改代码,在多个厂商的仪器之间是可以互换
的。IVI联盟的赞助会员有Keysight , NI ,罗德施瓦茨R & S公司
(https://www.ivifoundation.org)。
应用开发环境用于代码模块开发,编写具体代码,如调用仪器驱动程序、测
试项开发、信号处理、函数分析等。对于一个新的项目,很多时间会花在代码模
块开发上面。常见的应用开发环境有Visual Studio, Visual C++、LabVIEW,
LabWindows/CVI,开发过程中应着重设计高度模块化且可重用的代码模块。测试
管理软件位于五层结构模型的最上层,用于管理和执行测试。应用开发环境编写
的每个代码模块都将作为测试管理软件的一个步骤,对应一个具体的测试项,测
试管理软件将这些步骤排列起来形成序列,并按最终定义的顺序执行序列,实现
自动化测试。在管理这些步骤的过程中,要求步骤顺序的调整非常方便。同时,
代码模块有可能是用不同的语言编写的,这在自动化测试中很常见,因此测试管
理软件需要有接口能够同时识别这些代码模块。自动化测试系统需要实现多种任
务和功能,这些任务和功能中,一些与产品紧密相关,如特定仪器的配置、校
准、测试项、分析函数;而另一些则对于多数产品都是通用的,如序列号追踪、
用户管理、测试流程控制、报表生成、数据存储、用户界面更新、配置和提示窗
口。为了把开发时间减到最短和维护费用降至最低,并且保证测试系统的寿命,
实现产品级别的任务与系统级别的任务相分离的测试策略是十分重要的。如果设
计得当,产品级别的操作放在代码模块中,由应用开发环境来完成,而系统级别
的操作在不同产品不同测试站之间可以共享,不需要每次都重新开发,由测试管
理软件接管这些工作,测试管理软件同时负责代码模块的管理和执行。这将大大
减轻开发工程师的工作量,他们可以使用测试管理软件提供的现成框架,而更加
专注于代码模块的实现。从1.2节介绍的测试软件的组成可以看到,除了测试程序
是由应用开发环境编写,用户界面、自动化测试框架、数据管理系统、数据分析
系统都和测试管理软件有关。一些公司已经编写了自己的测试执行器,并且分配
了宝贵的工程资源来从头开始开发测试管理程序。这些测试管理程序的开发以及
长时间维护工作耗费了大量的资源,导致无法全力投入到公司核心竞争力业务
上,而标准商用现成Co丁S的成熟软件可以避免上面的问题,如TestStand,
TestStand除了提供代码模块的管理和执行以及上述通用操作这些核心功能之外,
还可以方便地实现并行测试,提高测试效率,满足高容量生产系统最严苛的生产
要求;TestStand可以调用大部分主流应用开发环境编写的代码模块,如
LabVIEW, LabWindows/CVI, C++、.NET程序集、Visual Basic等;
TestStand提供了现成的架构,专为自动化测试而设计,简化测试软件开发工作并
提高系统鲁棒性和可扩展性,并且这些架构是开放的,项目团队可根据自己的需
求进行自定制。TestStand还有很多其他的特点,对于测试管理软件而言,其功能
远不止于代码模块的管理和执行,测试管理是非常大的一个范畴。
[小结]
自动化测试成为工业界趋势,它带来测试效率和测试结果一致性的提高,并
最终降低成本。自动化测试的特点在于减少人工干预,但并非所有测试都值得自
动化,这需要进行评估,有一些准则可以参考。在产品开发过程中,自动化测试
的需求越来越多,其最重要的趋势是构建以软件为中心的生态系统,这必须通过
标准化架构来实现。在测试和测量行业,最通用的自动化测试系统架构即五层结
构模型,测试管理软件位于模型的最上层,用于管理和执行测试,它通过提供现
成的框架而让工程师专注于代码模块的实现,大大节约了开发时间。
Author:admin
推荐内容 Recommended
- 激光打标技术的市场前景 CO2视… 06-06
- Dwinauto中国激光打标技术现状 … 06-02
- Dwinauto机械的夹具 镜头贴片… 06-01
- Dwinauto机械零件材料选择 多… 05-20
- 操作与人体尺寸,维护与安全性 … 05-19
最新资讯 Latest
- 双十科技董事长王仕初受邀参加 … 08-11
- 双十科技关于自动化生产线应用 12-27
- 双十科技关于自动化创建序列 12-26
- 双十科技关于TestStand开放式架… 12-23
- 双十科技关于TestStand自动化测… 12-22