RSS

NI VlSA仪器驱动设计02

来源:网络 作者:佚名 时间:2008-08-01 Tag:NI   VlSA仪器   驱动设计   点击:

驱动设计


仪器驱动是用来控制可编程仪器的一组函数的集合,包含对仪器的各种操作:配置,读出、写入和触发等。仪器驱动函数的工作流程是:读取前面板上对仪器的控制命令一把命令格式化为仪器能够解析的命令字符串→读取仪器返回的响应结果→根据读取的结果更新前面板上的显示。


仪器驱动已具有交互性,可编程性和通用性。仪器驱动一般通用于某一类的仪器。对于某个仪器的特殊的性能,则另外编写相应的函数。


仪器驱动包含两大类的VIs,一类是组件VIs(componentVIs),一个函数控制仪器的一个特定的功能,另一类是高级的应用函数VIs(Application vIs),一个函数由多个组件vIs组合而成,实现仪器的一个基本的测试或测量操作。其设计模型如图1所示。



应用函数VI位于仪器驱动层次的最高级,通过调用组件级的VI来实现一般的仪器配置和测试操作。用户只调用这些高级应用VIs就可以实现单一的面向测量的仪器接口。


组件vIs是较低级的仪器驱动函数。组件VIs是模块化的VIs,它们包含了仪器所有的配置和测量功能,共分为六类:初始化(Initialize),配置(Configuration),操作和状态(Action/Status), 数据(data),功能(Utilitv)和结束(Close)。组件VIs与仪器的具体功能有关。在设计仪器驱动时,根据仪器的功能将相应的指令归类。


要对逻辑分析仪1673G编写仪器驱动,首先熟练仪器的操作,研究其指令系统,然后确定要实现的VIs。表l给出了选件003示波器要实现的vIs。


1673G的指令包括普通的SCPI命令,系统级的设置和配置命令,以及针对各个选件 (逻辑分析仪,示波器和码型产生器)的命令。文中的驱动主要针对逻辑分析仪和示波器进行编写,预达到可以对逻辑分析仪和示波器进行仪器控制,并且可以得到逻辑分析仪和示波器的采集数据,可以得到示波器的测量数据。


以实现初始化函数AGl673GInitialize.vi为例, 先用VISAOPEN节点打开一个仪器的Session,然后调用propertv nodtj识别仪器的接口类型,建立计算机与仪器之间的通信。然后调用VIsA write向仪器发出%IDN?命令,接着调用vIsA 0PEN读取仪器的响应结果,对读取到的字符串进行分析,与仪器的标识符进行比较,若结果正确就输出dupVIsA Session供以后的函数节点调用。程序调试成功后把程序制作成sutVI以备调用。


具体流程如图2所示。



然后根据表1的命令分类,依据各种命令的功能,组合成各种(20mponent VIs和ApplicatioVIs功能,然后同上的方法调用VISA节点和LahvIEw对字符串和数据、数组之间转换的节点(VI模板)编写所有的驱动VI,并且在最后形成一个VI树。VI树中应包含仪器驱动所有的V!,如图3所示。




基于VISA仪器驱动的设计基本步骤:熟悉仪器的操作,熟悉仪器的变成指令,确定要实现的VIs,形成仪器驱动的设计框架;调用VISA节点实现组件VIs,并在组件VIs的基础上实现需要的应用VIs;把仪器驱动中的VI制作成subVI以方便用户调用;描述各个VI的功能和连接线用法。


文中的仪器驱动成功实现了计算机对安捷伦1673G的控制,并且可以把仪器采集到的数据读人计算机中,利用LabVIEW强大的分析功能进行数据分析。而且文中使用的驱动制作方法适用于其他支持的VISA的仪器


1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
教程下载