碧波液压网 欢迎你,游客。 登录 注册

基于功能封装的仪器驱动程序可互换性实现技术研究

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  0 引言

  仪器驱动程序提供的功能实际上源于对传统仪器面板功能的映射,为了保证控制仪器的指令或语言具有较好的一致性,同时对仪器使用者而言具有更加统一的仪器访问和控制方法,各种规范陆续推出并得到本领域技术人员的支持,最有代表性的发展历程是: SCPI命令集-VISA虚拟仪器软件结构-IVI可互换式虚拟仪器,上述历程有一个最重要的目标是尽管封装仪器实现的具体差别,对外提供一致的表达方式,以使仪器的更换尽量小地影响测试软件。

  仪器使用者最希望的是,告诉仪器他想要测量和激励的信号“是什么”,由仪器根据信号的特征执行“怎么做”,回馈给使用者结果。二者需要一致性表达的平台,最为可行的不是统一到仪器的控制功能上,因为仪器的实现和面板的功能总是随着生产商的不同而有所差异,统一到测量与激励功能或对信号的描述上来应该是可行的途径,目前通用的、得到业界认可的较新的模式主要有: IVI系列[1]和NI公司为多功能数据采集模块提供的DAQmx软件包,但是上述驱动程序如何应用于面向信号的ATS框架之中,信号的动作如何映射到驱动程序实现可互换性将是一个值得研究的问题。

  笔者结合前人研究成果,以某示波器为例,以IVI-MSS服务器形式基于功能接口封装对仪器驱动程序可互换性实现技术进行研究。

  

  1 IVI-MSS (测试与激励子系统)

  1·1 IVI-MSS模型

  IVI-MSS模型共包括五部分:用户应用程序、测量/激励服务器(IVI-MSS Server, Measurement or Stimulus Serv-er)、角色控制模块(RCM, role control modules)、仪器驱动器(Driver)和物理仪器(Instrument),结构如图1所示[2]。其中IVI-MSS和RCM是在IVI驱动器的基础上经进一步封装形成的软件层,二者合称IVI-MSS Solution。RCM由开发人员根据需求来定义,对于不同的测试需求,即使是同一测试仪器平台, RCM也是不同的。在更换仪器后,除了替换驱动程序外,还需替换具有功能相同、接口相同的RCM,而应用程序不需要任何改变,可实现完全的仪器互换性。

  IVI-MSS Server是独立于测试仪器资源的软件层,它封装了测试算法,对外提供编程接口。

  IVI-MSS Server接口在被用户应用程序调用时作为“角色”向用户提供测试服务,接口的形式可以是COM、C,也可以是跟MatLab、LabVIEW等编程平台兼容的特殊接口。在IVI-MSS Server内部封装的代码完全独立于测试仪器,这使得用户应用程序和仪器驱动完全分离,对测试资源的访问是通过RCM来实现的。

  1·2 IVI-MSS模型工作过程

  IVI-MSS Server本质上是COM组件,应用它们之前要先进行例化。IVI-MSS模型的工作过程如图2所示。客户应用程序通过指定某个IVI-MSS服务器的逻辑名首先向IVI-COM Session Factory提出申请,由其根据IVI Configure Store查询查询逻辑名所对应的IVI-MSS Server的软件模块,并对其进行实例化。IVI-MSS Server同样通过IVI-COM SessionFactory创建IVI-MSS RCM的实例,当所有RCM的实例创建完成后,客户应用程序可以调用IVI-MSS Server提供的所有功能, IVI-MSS Server调用RCM的功能对硬件仪器进行访问,并对硬件返回的数据进行处理,保证RCM返回给IVI-MSS Server的数据具有物理标度的一致性,而RCM访问仪器的方法可以有多种多样,比如通过IVI-COM、IVI-C、VISA甚至DAQmx和API接口访问仪器[3]和数据采集模块,采用这种模式最突出的优点是硬件的替换只要伴随RCM的替换即可适应IVI-MSS Server,同时不会影响客户应用程序,可以实现硬件无关性。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论