首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Windows CE中虚拟仪器驱动器综述 03

Windows CE中虚拟仪器驱动器综述 03

2 驱动器开发

  根据以上驱动器设计规范发展回顾及分析可知,驱动器开发也分为两种类型:基于VPP规范的即插即用型驱动器开发和基于IVI系列规范的互换型驱动器开发。

  2.1 即插即用型驱动器开发

  开发基于VPP规范的即插即用型驱动器的过程分为两步。第一是仪器驱动器外部接口的设计,它表示仪器驱动器如何与外部软件接口,通常提供两种方式的接口:程序式开发接口和图形软面板。软件开发者通过程序式开发接口可以理解每个仪器驱动器函数的功能以及在应用程序中如何调用每个函数、另一种接口方式是图形化软面板,通过这一软面板可以直接操作控制物理仪器。第二是要完成仪器驱动器的内部模块设计,实现仪器的硬件功能。使用程序式开发接口的用户了解了这一功能,可以在应用程序中直接应用这些模块,而不必通过软面板操作。

  要完成第一项工作应选用界面编辑功能较强的编程环境,减少仪器软面板的开发时间;第二项工作通过调用VISA I/O库中的函数来完成,编程语言按照VPP规程可以选用ANSI C、BASIC或者Ada等。选用合适的图形软件工具可以把这两部分工作集成到一个环境下完成,省去两部分的连接工作,例如NI公司的可视化软件平台LabWindows/CVI。CVI开发环境中两部分组成:用户界面设计器和源代码编程器。

  2.互换型驱动器开发

  与即插即用型驱动器类似,基于IVI系列规范的互换型驱动器开发也包括两部分。第一是分析测试系统的功能需求,以功能或信号的形式分类定义驱动器组件的接口。这些接口是对UUT测试需求的描述,有严格的主义标准,将不随仪器种类和软件类型而改变,是标准的,通用的。第二是驱动器组件接口的内部实现,它被封装在组件内部,可以根据具体的开发工具和编程人员特长来开发,是非标准的、特殊的。

  对于基于IVI系列规范的驱动器开发,目前还没有专业的、IVI基金会指定的开发工具。但由于其采用COM技术,因此可以使用任何支持组件开发的编程平台进行开发。设计人员在理解技术规范的基础上可以利用现有的图形化编程工具(比如VC++、VB等)进行设计。

  需要说明的是,IVI是介于VPP和IVI-MSS之间的一个过渡性规范,它既有IVI-C的C语言形式,也有基于COM的IVI-COM组件形式,并且接口的严格语义标准目前只发布了八类仪器的技术规范,因此可以根据具体情况选用相应工具进行开发。

  3 发展趋势

  1)信号型驱动器

  由前面对IVI-Signal Interface标准的介绍可知,信号型驱动面向UUT的测试需求,是需求驱动的,符合当前微型计算机体系结构发展趋势,而且实现了更高层次的仪器互换和互操作,通用性好。随着面向信号的商业化虚拟仪器和互操作,通用性好。随着面向信号的商业化虚拟仪器软件开发平台的不断涌现,如PAWS、ATLAS 2K等,迫切需要给出标准化的软件开发平台与底层硬件模块之间的接口,而信号型驱动器恰好实现了面向信号的TPS开发平台与底层硬件模块的完美对接。基于以上分析,信号驱动器将是虚拟仪器驱动器设计标准发展的必然结果。

  2)网络化驱动器

  网络的普及给各个行业都带来了巨大冲击,测试领域也不例外,网络化虚拟仪器和仪器网络化现已成为当前测试技术的一个研究热点。而要想实现远程控制仪器就必须提供仪器设备的网络化驱动器或在现有仪器驱动器的基础上添加网络化功能。基于此,VXI联盟(VXI Consortium)提出了VXI-11规范,这个规范主要是对IEEE-488总线的扩展,也就是通过TCP/IP发送IEEE-488总线命令。该扩展的目的在于实现远端的客房端通过网络与现场仪器通信并完成测试任务,并且对用户来讲好像在本地使用仪器一样。随着虚拟仪器技术和网络技术的发展,网络化驱动器将取得更大的发展空间。

  3)VISA兼容更多的接口类型

计算机接口技术不断发展,涌现了许多商业化PC总线,如USB、Ethernet等,这也是影响虚拟仪器发展的关键技术之一。由于这些总线最初是为网络PC和连接PC外设而设计的,要更方便地控制仪器,这些总线需要软件构架来简化通信并与其他一起控制标准兼容。因此,需要对虚拟仪器驱动器标准框架VISA进行扩展。

  4)与商业TPS开发平台“即插即用”

  驱动器是连接计算机和物理仪器的中间环节,是虚拟仪器开发的重要资源,当前的TPS开发平台向着集成、高效、商家垄断方向发展,如HP公司的VEE、NI公司的LabVIEW、LabWindows/CVI等。为了扩展自己的市场空间和便于用户开发使用,虚拟仪器硬件设计厂商或第三方软件开发单位应该提供与这些商业开发平台“即插即用”的驱动器。同时,为了加强合作和简化集成,商业TPS开发商也应该给出与自己平台兼容的驱动器设计标准并提供相关技术支持。

  5)源代码级开放式结构

  当前,从源代码开放的角度来讲,虚拟仪器设计领域存在三种驱动器类型:封闭黑盒型,封装型和开放源代码型。其中封闭黑盒型不提供对源代码的访问,不具备扩展和编写仪器新功能的能力;封装型驱动可作为驱动器二次开发的原始接口或封装器;而开放源代码型驱动原生于相应的开发环境,提供对源代码的完全访问权限,经过优化和改进后能易于使用并具有集成的灵活性,能让开发人员定制自己的功能需求,把开发触解伸向了仪器设备的心脏地带。

  虚拟仪器的一个重要特点是硬件的功能由软件来定制,而从某种层面上讲,驱动器是仪器功能的描述和表达。当前多种仪器硬件模块开发厂商在发布自己的产品时,都把驱动器作为“黑盒子”来发布,这不利于客户定制自己需要的功能和进行二次开发。另一方面,由于软件开发换代相当迅速,这也给驱动器开发提供了新的要求。现在多数仪器驱动在向.NET平台移植时都存在各种各样的困难,而驱动器源代码级开放是解决这些总是的前提,不仅如此,开放源代码型驱动还能简化与仪器硬件的连接,使开发人员不仅是驱动器的使用者而且是拥有者,因此,仪器驱动器采用开放源代码式结构将是一个重要的发展方向。

  6)可视化配置操作

  可视化与完备的人机交互能力是现场代软件开发的基本要求,作为虚拟仪器核心的驱动器在这方面应能满足客房的更高的需求。把软件开发人员从繁重的代码编写任务中解脱出来,而把主要精力放在测试功能的实现上是驱动器设计迫切需要解决的问题。将仪器连接配置、编写测试代码、测试任务的组合设定等繁琐工作转变成好人机界面下的鼠标操作,必将简化虚拟仪器系统的集成开发。为此,在驱动器设计领域出现了虚拟资源、虚拟通道等概念。它们把物理资源和通道的信息(比如量程、端口配置等)进行封装,通过友好的界面与开发人员进行信息互交,实现了仪器控制的可视化配置操作。

  7)拓展应用空间

  仪器驱动器是计算机控制物理仪器设备的中间环节,随着虚拟仪器的不断发展,这一思想也拓展了崭新的发展空间。驱动器越来越多地以“服务”的形式为测试程序提供功能调用。如IEEE 1451.4标准给模拟传感器定义了电子数据表格并内嵌于其中,测试系统或TPS开发平台可以通过模拟传感受器提供的数字接口读取电子数据表中的数据并对其进行配置,这在一定意义上也是驱动器应用的新领域。使用基于IEEE 1451.4设计的智能传感器可以简化传感器的连接过程,实现传感器的“即插即用”和自动配置。ISP(Programmable in-system)技术在电子设计自动化领域得到了广泛应用,基于此,NI公司提出的RIO(Reconfiguration I/O)技术完成了物理仪器的在线可编程控制,实现了用户自定义硬件,是仪器驱动器概念的升华。
返回列表