运动控制卡在LabVIEW的应用

运动控制卡在LabVIEW的应用

ID:40610777

大小:445.76 KB

页数:6页

时间:2019-08-05

运动控制卡在LabVIEW的应用_第1页
运动控制卡在LabVIEW的应用_第2页
运动控制卡在LabVIEW的应用_第3页
运动控制卡在LabVIEW的应用_第4页
运动控制卡在LabVIEW的应用_第5页
资源描述:

《运动控制卡在LabVIEW的应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、运动控制卡在LabVIEW的应用摘要:介绍了一种在LabVIEW平台上使用普通运动控制卡实现快速开发多轴运动控制程序的方法。该方法首先应用运动普通控制卡提供的函数库编译成通用动态链接库文件,然后使用LabVIEW与外部代码进行连接的动态连接库机制调用这个文件,实现实时的运动控制。实践证明,该方法不仅可以很好地发挥运动控制卡的性能,而且可以借助LabVIEW强大的界面编辑功能,缩短程序开发周期,美化人机界面。关键词:LabVIEW;运动控制卡;动态链接库一、引言LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench)是

2、美国国家仪器公司(NationalInstruments)推出一种基于图形语言的开发环境,编程非常方便,人机交互界面直观友好,用户可以创建独立的可执行文件,能够脱离开发环境而单独运行,是目前最流行的虚拟仪器编程平台,广泛应用于测试测量、过程控制、实验室研究与自动化等方面。在运动控制方面,LabVIEW有专门的运动控制模块,并且NI公司为其所有的运动控制卡配备相应的驱动程序,可以方便实现即插即用功能。如果用户所使用的板卡不是NI公司的产品,又没有提供与LabVIEW兼容的驱动程序,就不能为LabVIEW所用。但是LabVIEW能够通过调用Windows32动态连接库(Dyn

3、amicLinkLibrary,简称DLL)来编写与LabVIEW兼容的驱动程序,实现该运动控制卡在LabVIEW环境下二次开发,不仅可以大大降低成本、缩短开发周期,而且可以使界面美观。二、应用背景笔者在参与某二自由度运动平台运动仿真项目的研制过程中,选用深圳众为兴数控技术有限公司生产的ADT850型四轴运动控制卡,该型号的卡提供多种版本Windows下的驱动程序和在BorlandC++3.1、VB和VC等多种环境下开发所需的函数库。虽然在这些编程环境中很容易实现所需的运动控制,但是,如果要开发出一个美观的人机交互界面,将会有很大一部分时间花在程序主界面的编写上。为此,我

4、们利用LabVIEW强大的界面编辑功能以及它能够调用Windows32动态连接库的特点,首先在VC编译环境中编译出运动控制所需要的动态链接库文件,然后在LabVIEW环境中编写程序主界面,最后在LabVIEW框图程序中调用动态链接库文件来编写所需的运动控制程序。其主要过程如图1所示。图1DLL生成与LabVIEW调用三、程序设计LabVIEW具有强大的外部接口能力,可用的外部接口包括:DDE、CIN、DLL、MATLABScript以及HiQScript等,其中DLL是其常用的外部接口。3.1动态链接库(DLL)的编写DLL是基于Windows程序设计的一个非常重要的组成

5、部分。DLL的编制与具体的编程语言及编译器无关,只要遵守DLL的开发规范和编程策略,并安排正确的调用接口,不管用何种编程语言编制的DLL都具有通用性,这就给我们编写通用的DLL带来了很大的方便。针对LabVIEW调用DLL的特点和运动控制的复杂性,我们所编写的通用DLL中必须包含多个可供调用的函数,这些函数都调用运动控制函数库中的一个或多个函数,DLL中每个可供调用的函数都对应着某一具体任务,称其为功能函数。DLL中的功能函数主要有:板卡初始化函数、运行条件初始化函数、两轴运行状态函数、两轴位置函数、脉冲发送函数、两轴伸长计算函数、停止运行函数、归零函数以及板卡结束运行函

6、数等,每个功能函数一般都有自己独立的接口。功能函数确定以后,在VisualC++6.0编译器中建立一个Win32Dynamic-LinkLibrary文件,添加上运动控制卡随带的运动控制函数库文件后,即可编译成我们所需要的DLL文件。3.2动态链接库的调用LabVIEW中动态链接库的调用是通过CLF(CallLibraryFunction)节点实现的,CLF节点位于LabVIEW功能模板中的Advanced子模板中。在LabVIEW中调用DLL时,则应根据应用程序的需要,确定参数个数和参数类型及调用规则,然后在LabVIEW中正确地配置DLL。首先从Advanced子模板

7、中选择CallLibraryFunctionNode图标并将其拖放到Diagram面板中适当位置,然后右键单击它,在弹出的菜单选项中选择Configer…弹出CallLibraryFunction对话框。在此对话框中,第一个参数LibraryNameorPath中填入需要调用的动态连接库文件的文件名和路径;第二个参数FunctionName是连接库中要调用的函数名称;第三个参数CallingConventions是对DLL的调用规则,可选择C或stdcall,该项的选择应与用C++语言编写的动态库的编译模式相一致。如果C++的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。