基于调用DLL的LabVIEW数据采集的实现

合集下载

LabVIEW对数据采集卡DLL函数的调用

LabVIEW对数据采集卡DLL函数的调用

2004年9月襄樊学院学报 Sept.,2004 第25卷第5期 Journal of Xiangfan University V ol.25 No.5LabVIEW对数据采集卡DLL函数的调用刘传清 (襄樊学院 物理学系,湖北 襄樊 441053) 摘要:首先介绍虚拟仪器及其开发环境LabVIEW6的特点,分析并实现了将LabVIEW与外部代码进行连接的高级技术之一—动态链接库(DLL)机制. 实践表明,此机制高效、易行,是增强LabVIEW与其它Windows应用程序之间的数据共享能力的一条很好的途径. 关键词:虚拟仪器;LabVIEW;动态链接库;DLL 中图分类号:TN311.11 文献标志码:A 文章编号:1009-2854(2004)05-0015-03 0 引言 美国国家仪器NI公司的基于G语言的开发环境LabVIEW的出现,使得虚拟仪器的思想为工业界所接受. 所谓虚拟仪器,就是在通用计算机平台上,用户根据自己的需求定义和设计仪器的测试功能,其实质是将传统仪器硬件和最新计算机软件技术充分结合起来,以模块化软件实现并扩展传统仪器的功能. 与传统仪器相比,虚拟仪器在智能化程度、处理能力、性能价格比、可操作性等方面均具有明显的技术优势.LabVIEW(Laboratory Virtual Instrument Engineering Workbench─实验室虚拟仪器工程平台)是目前国际上首推应用最广的虚拟仪器开发环境之一,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,并适用于Windows 9X/XP/2000/ NT、Macintosh、UNIX等多种不同的操作系统平台. 与传统程序语言不同,LabVIEW采用强大的图形化语言(G语言)编程,面向测试工程师而非专业程序员,编程非常方便,人机交互界面直观友好,具有强大的数据可视化分析和仪器控制能力等特点.使用LabVIEW开发环境,用户可以创建32位的编译程序,从而为常规的数据采集、测试、测量等任务提供了更快的运行速度. LabVIEW是真正的编译器,用户可以创建独立的可执行文件,能够脱离开发环境而单独运行. 对于大多编程任务,LabVIEW通常能产生高效的代码.1 LabVIEW调用外部程序代码的途径之一 —— 动态链接库机制 1.1 动态链接库机制概述 LabVIEW是一个功能强大的虚拟仪器开发环境,它完整地集成了与GPIB、VXI、RS-232、RS-485和内插式数据采集卡等硬件的通讯. LabVIEW还具有内置程序库,提供了大量的连接机制,通过DLLs、共享库、ActiveX等途径实现与外部程序代码或软件系统的连接.LabVIEW提供了4种调用外部程序代码的途径,其中动态链接库(Dynamic Link Library─DLL)机制是从LabVIEW调用标准共享库和用户自定义库函数的通用方法. 具体实现时,是使用LabVIEW功能模板中“Advanced”子模板里的“调用库函数(Call Library Function)”结点.“调用库函数结点”包括大量的数据类型和调用规范,使用它可调用大多数标准共享库和用户自定义库中的函数,包括:Windows9X/XP/2000/NT下的动态链接库(Dynamic LinkLibrary)、Macintosh下的代码段(Code Fragment)、UNIX下的共享库函数(Shared Library Function)等.当用户需要调用的代码已经存在,或者用户比较熟悉Windows中动态链接库、Macintosh中代码段、UNIX中共享库的创建过程时,“调用库函数结点”非常有用,此时使用它也最为合适恰当,因为库使用了收稿日期:2004-04-21基金项目:湖北省教育厅重点项目(2003A006)作者简介:刘传清(1964- )男,湖北鄂州人,襄樊学院物理学系副教授.15刘传清:LabVIEW对数据采集卡DLL函数的调用对几个开发环境都适用的格式标准,故用户可以使用几乎任何开发环境去创建LabVIEW能够调用的库. 1.2动态链接库机制实现步骤在Windows 9X下,利用LabVIEW 6.1 (for Windows 95/98/NT)中的“动态链接库机制”调用一个DLL,此DLL返回机器的名称.1)建立“调用库函数结点”新建LabVIEW程序“hostname.vi”,存至新建目录“d:\temp”下,其前面板如下: 图1 库函数调用前面板图 框图程序如下:  图2 库函数调用程序框图 其中,“Call Library Function”结点是通过选择功能模板中“Advanced”子模板里的“Call Library Function”功能模块而产生的.此LabVIEW程序通过“调用库函数结点”调用一个DLL,此DLL将返回机器的名称,返回结果存至字符串指示量“Machine Name”中,而后将字符串常量“LabVIEW is running on ”与“Machine Name”相拼接,拼接之结果在字符串指示量“Message”中显示.2)配置“调用库函数结点”双击框图程序窗口的“Call Library Function”结点,在弹出的对话框中对此“调用库函数结点”进行配置. 其中:在“Library Name or Path”一项中键入“d:\temp\hostname.dll”(即,指明此结点所链接的DLL文件名,它由C源代码“hostname.c”编译而来);在“Function Name”一项中键入“MachineName”(即,指明与此结点相链接的DLL文件中的函数的名称);参数“return type”的类型选择“Void”;所增加的另一个参数“arg1”的类型选择“String”、字符串格式选择“String Handle”;3)编辑C源文件编辑C源文件“hostname.c”(存至目录“d:\temp”下),其内容如下:/* include extcode.h which contains the prototypes for the LabVIEW functions */#include <extcode.h>#include <stdio.h>#include <windows.h>BOOL WINAPI DllMain (HANDLE hDLL, DWORD dwReason, LPVOID lpReserved) {return TRUE;}/* This functions gets the computer name and returns it to LabVIEW */__declspec (dllexport) void MachineName(void *LVHandle) {char computerName[MAX_COMPUTERNAME_LENGTH+1];int compNameLength = MAX_COMPUTERNAME_LENGTH+1;16第25卷第5期襄樊学院学报 2004年第5期/* Get computer name */GetComputerName(computerName, &compNameLength);/* Size LabVIEW handle to the correct size */DSSetHandleSize(LVHandle, compNameLength + 5);/* Copy the string size to the LabVIEW handle */**(int32 **)LVHandle = compNameLength ;/* Copy the string to the LabVIEW handle */sprintf((*(char **)LVHandle)+4,"%s",computerName);}此程序首先了调用Windows的API函数“GetComputerName”获取机器名;然后调用LabVIEW的函数“DSSetHandleSize”来设置LabVIEW句柄之大小;最后将机器名长度(32位整型)、机器名(字符串型)依次写入句柄中.4)编译C源代码将C源代码“d:\temp\ hostname.c”编译成一个DLL文件“d:\temp\hostname.dll”.可使用VC++ 6.0 (for Windows 95/98/2000/NT),完成此编译工作.5)运行VI运行LabVIEW程序“hostname.vi”,结果如下:图3 前面板运行结果 2 结束语 本文着重阐述并实现了将LabVIEW与外部代码进行连接的高级技术之一─动态链接库机制,并给出了应用实例. 由于在LabVIEW中引入了C语言的强大功能,从而提高了LabVIEW的整体性能.本方法已在LabVIEW 6.1 for Windows 95/98/NT及Visual C++ 6.0 for Windows 9X/XP/2000/NT 环境下实现. 实践证明,此方法高效、易行,是增强LabVIEW与其它Windows应用程序之间的数据共享能力的一条很好的途径.参考文献: [1] LabVIEW User Manual,National Instruments Corporation,1998.[2] G Programming Reference Manual,National Instruments Corporation,1998.LabVIEW Data Acquisition Invoke for DLL FunctionsLIU Chuan-qing(Department of Physics, Xiangfan University, Xiangfan 441053, China)Abstract :This paper introduces virtual instrument and the features of its development environment─LabVIEW,analyzes and realizes the advanced technology-Dynamic Link Library(DLL) ,which is one of the general methods for calling external code from LabVIEW. It has been proved that this method is efficient,practicable and also a good one to enhance LabVIEW’s capacity of sharing data with other applications in Windows.Key words:Virtual instrument; LabVIEW; Dynamic Link Library ; DLL17。

如何利用LabVIEW进行数据采集与处理

如何利用LabVIEW进行数据采集与处理

如何利用LabVIEW进行数据采集与处理LabVIEW是一种流程图编程语言,专门用于控制、测量和数据采集等应用领域。

它的易用性和功能强大使得许多科研、工业和教育机构都广泛采用LabVIEW进行数据采集与处理。

在本文中,我将介绍如何利用LabVIEW进行数据采集与处理的基本步骤和技巧。

一、准备工作在开始数据采集与处理之前,首先需要进行准备工作。

这包括安装LabVIEW软件、连接传感器或测量设备、配置硬件设备和安装相关驱动程序等。

确保LabVIEW软件和硬件设备都能正常工作。

二、建立数据采集程序1. 打开LabVIEW软件,在工具栏上选择"新建VI",创建一个新的虚拟仪器(VI)。

2. 在Block Diagram窗口中,选择相应的控件和函数,用于实现数据采集的功能。

例如,使用"DAQ Assistant"控件来配置和控制数据采集设备。

3. 配置数据采集设备的参数,如采集通道、采样率、触发方式等。

根据实际需求进行设置。

4. 添加数据处理的功能模块,如滤波、去噪、采样率转换等。

这些模块可以根据数据的特点和需要进行选择和配置。

5. 连接数据采集设备和数据处理模块,确保数据能够流畅地进行采集和处理。

6. 运行程序进行数据采集,可以观察到数据随着时间的推移不断变化。

三、数据可视化与分析1. 在LabVIEW软件中,使用图形化的方式将采集到的数据可视化。

例如,使用波形图、数值显示等控件显示数据结果。

2. 利用LabVIEW提供的分析工具,对采集到的数据进行进一步的统计和分析。

例如,计算均值、标准差、峰值等。

3. 根据需要,将数据结果输出到其他文件格式,如Excel、文本文件等,以便进一步处理和分析。

四、数据存储与导出1. 在LabVIEW中,可以选择将数据存储到内存中或者存储到文件中。

存储到内存中可以方便实时访问和处理,而存储到文件中可以长期保存和共享数据。

2. 使用适当的文件格式和命名方式,将数据存储到本地磁盘或者网络存储设备中。

图解LABVIEW调用DLL

图解LABVIEW调用DLL

前言:LABVIEW是一个强大的图形编程语言,使用很简单,就是你没有任何编程经验也可以LABVIEW编程,对于需要快速上手图形编程的人是一个不错的选择。

在很多时候我们会用C语言写一些计算机的底层驱动,比如USB数据传输或者串口数据传输,如何把我们自己写的驱动程序集成到LABVIEW中呢?下面我就用图和简单说明的方式给大家说说,由于我也是初学,所以有的地方可能会有错误或不准确的地方,欢迎大家指正,废话不多说了,下面开始正式的教程。

目的:通过一个现成的I2C适配器控制I2C接口的AM2311温湿度传感器,将测得的温度和湿度用LABVIEW显示出来,最终效果如图所示。

准备:1、安装LABVIEW2010。

2、I2C适配器1台。

3、I2C适配器上位机驱动函数库,和函数库头文件。

4、AM2311传感器模块一台。

第一步:打开LABVIEW2010,按下图导入我们需要使用的DLL文件。

得到如下界面,点击下一步。

打开DLL和头文件,点击下一步。

到这里我们的库就基本上导入完毕,但是还有一件事情要做,因为在Ginkgo_Driver.dll里面用到了vt214x.dll里面的一些函数,所以要把这个文件拷贝到刚刚生成库的目录下,否则在运行程序的时候会出现找不到这个DLL的错误提示,而且程序也不能正常工作。

我生成的库目录是:D:\Program Files (x86)\National Instruments\LabVIEW 2010\user.lib\Ginkgo_Driver。

你可以根据自己的实际情况处理,拷贝这个文件后在这个目录下的文件如下图所示:到这里库基本上就导入完毕,下面我们就可以在VI程序里面使用这些库函数了。

第二步:打开LABVIEW软件,新建一个VI文件,另存名字为AM2311.vi。

我们在前面板设计为如下界面。

切换到程序款图界面,因为我们程序需要顺序执行,最后需要在一个循环里面循环读取数据,所以我们可以通过平铺顺序结构来设计程序,在平铺顺序结构的第一帧调用刚刚导入的VTIF_I2C_SelectDevice()函数选择设备,在第二帧调用VTIF_I2C_Init()初始化函数初始化I2C适配器,然后就可以循环的读取数据了,最好将数据解析出来并显示出来。

基于LabVIEW实现数据采集

基于LabVIEW实现数据采集

数据采集专题目录一计算机数据采集与分析技术概述 (1)1.1数据采集与分析的基本概念 (1)1.1.1 信息与信号 (1)1.1.2 数据采集 (1)1.1.3 系统 (2)1.2计算机数据采集系统的组成 (2)1.3 数据采集系统的主要性能指标 (3)二数据采集硬件电路 (5)2.1 传感器的选用 (5)2.1.1 对传感器的主要技术要求 (5)2.1.2传感器的类型 (5)2.2 运用前置放大器的依据 (6)2.3 信号调理中的常用放大器 (7)2.4A/D转换器 (9)三数据采集系统设计及举例 (11)3.1 系统设计考虑的因素 (11)3.2A/D转换器的选择要点 (11)3.3 采样保持器S/H的选择 (12)3.4 数据采集系统实例 (14)四基于LabVIEW实现数据采集 (15)4.1LabVIEW概述 (15)4.2LabVIEW操作入门 (16)4.3 数据采集系统 (22)4.3.1硬件介绍 (22)4.3.2 软件介绍 (22)4.4 采样定理 (22)4.4.1信号的分类 (22)4.4.2 采样定理的应用 (23)4.5 以数据采集卡USB2812为例进行数据采集 (23)4.5.1 数据采集卡USB2812介绍 (23)4.5.2 信号输入连接方式 (25)4.5.3 软件编程知识 (25)4.5.4USB2812驱动函数概述 (26)4.5.5 数据采集演示程序 (29)4.5.6 电压采集试验 (30)一计算机数据采集与分析技术概述1.1数据采集与分析的基本概念数据采集技术是信息技术的重要组成部分之一。

信息技术主要包括信息获取、传输、处理、存储(记录)、显示和应用等。

信息技术的三大支柱技术是信息获取技术、通信技术和计算机技术、常称为3C技术(即collection、communication、computer)。

其中,信息获取技术是信息技术的的基础和前提,而数据采集技术是信息获取的主要手段和方法,它是以传感器技术、测试技术、电子技术和计算机技术等技术为基础的一门综合应用技术。

如何使用LabVIEW进行数据采集和分析

如何使用LabVIEW进行数据采集和分析

如何使用LabVIEW进行数据采集和分析LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一款由美国国家仪器公司(NI)开发的图形化编程环境和开发平台,主要用于测试、测量和控制领域。

LabVIEW具有直观的用户界面、强大的数据采集和分析功能,被广泛应用于工业自动化、科学研究、仪器仪表等领域。

本文将介绍如何使用LabVIEW进行数据采集和分析的基本步骤。

一、实验准备与硬件连接在使用LabVIEW进行数据采集和分析之前,首先需要准备好实验所需的硬件设备,并将其与计算机连接。

LabVIEW支持多种硬件设备,如传感器、仪器和控制器等。

根据实验需要选择相应的硬件设备,并按照其配套说明书将其正确连接至计算机。

二、创建LabVIEW虚拟仪器LabVIEW以虚拟仪器(Virtual Instrument,简称VI)的形式进行数据采集和分析。

在LabVIEW中,可以通过图形化编程来创建和配置虚拟仪器。

打开LabVIEW软件后,选择新建一个VI,即可开始创建虚拟仪器。

三、配置数据采集设备在LabVIEW中,需要为数据采集设备进行配置,以便准确地采集实验数据。

通过选择合适的数据采集设备和相应的测量通道,并设置采样率、量程等参数,来实现对实验数据的采集。

LabVIEW提供了丰富的数据采集函数和工具箱,使得配置数据采集设备变得更加简单和便捷。

四、编写数据采集程序使用LabVIEW进行数据采集和分析的核心是编写采集程序。

在LabVIEW中,可以通过拖拽、连接各种图形化函数模块,构建数据采集的整个流程。

可以使用LabVIEW提供的控制结构和数据处理函数,对采集的实验数据进行处理和分析。

LabVIEW还支持自定义VI,可以将经常使用的功能模块封装成VI,以便在其他程序中复用。

五、数据可视化和分析通过编写好的数据采集程序,开始实际进行数据采集。

LabVIEW提供了实时查看和记录实验数据的功能,可以将采集到的数据以曲线图、表格等形式进行显示和保存。

LabVIEW数据采集系统的设计与实现

LabVIEW数据采集系统的设计与实现

随着计算机技术的迅速发展,虚拟仪器正逐渐成为测试领域的发展方向。

虚拟仪器的概念是由美国NI公司提出来的,是指在通用的计算机平台上,用户根据自己的需求定义和设计具有测试功能的仪器系统,即虚拟仪器是由用户利用一些基本硬件及软件编程技术组成的各种各样的仪器系统。

虚拟仪器的三大主要功能是:数据采集;数据测试和分析;结果输出显示。

数据采集是一切测试测量过程的第一步。

本数据采集系统就是一个虚拟仪器系统,它的任务主要是实现对燃料电池汽车上锂动力电池组电压电流的采集。

由于电压和电流的范围很大(电压300多伏特,电流±100多安培),因此需要外接信号调理电路,使信号变换到数据采集设备的输入范围之内。

电压采用电阻分压,比例为1:100;电流采用霍耳传感器(1:2000),输出是电流信号,而且输出信号较弱,因而接入一个40(3)单通道最高采样速率达1.25MS/s,多通道时最高1MS/s(时分复用);(4)电压范围最大为±10V(可编程);(5)板上自带4096字内存(FIFO)等。

操作系统支持Windows2000和XP等操作系统,软件平台推荐使用LabVIEW、LabWindows/CVI和Measu-rementStudio,也可使用VB、VC++等软件。

需要提及的是USB6251不再支持传统的NI-DAQ,只支持NI-DAQmx驱动程序。

2.2LabVIEW简介LabVIEW是目前较为成功、应用广泛的虚拟仪器软件开发环境,LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench,实验室虚拟仪器工作平台)是NI公司在1986年首次推出的,最新版本为LabVIEW8.2。

它是一个高效的图形化程序设计环境,结合了简单易用的图形式开发环境与灵活强大的G编程语言;提供了一个直觉式的环境,与测量紧密结合,在这个平台上,各种领域的专业工程师和科学家们通过定义和连接代表各种功能模块的图标来方便迅速地建立高水平的应用程序;支持多种系统平台,在任何一个平台上开发的LabVIEW应用程序可直接移植到其它平台上。

如何在LabVIEW中进行数据采集与分析

如何在LabVIEW中进行数据采集与分析

如何在LabVIEW中进行数据采集与分析LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一款由美国国家仪器公司(National Instruments)开发的集数据采集、信号处理、分析及控制等功能于一体的可视化编程环境。

本文将介绍在LabVIEW中进行数据采集与分析的步骤和技巧。

一、LabVIEW环境介绍LabVIEW具有图形化编程的特点,用户可以通过拖拽和连接各种图形化元件,组成一个数据采集与分析的程序。

LabVIEW提供了丰富的工具箱,包括信号生成、数据采集、信号处理、滤波器、傅里叶变换等,方便用户进行各种数据的处理和分析。

二、数据采集1. 连接仪器设备在进行数据采集前,首先需要连接仪器设备,比如传感器、示波器、多功能仪等。

LabVIEW支持各种接口和通信方式,如USB、GPIB、串口等。

通过选择适当的接口和连接方式,将仪器设备与电脑连接起来。

2. 创建数据采集VI在LabVIEW中,VI(Virtual Instrument)是最基本的程序单元,类似于函数和模块。

我们可以通过创建一个新的VI来进行数据采集。

在“Front Panel”界面上,可以添加控件来显示和控制数据采集过程,如图形显示、文本框、按钮等。

3. 配置数据采集参数在数据采集VI中,需要配置数据采样率、采集时间、通道数等参数。

通过添加适当的控件,用户可以在界面上进行参数设置,并将参数传递给数据采集程序的后台。

4. 进行数据采集通过LabVIEW提供的函数和工具箱,可以快速实现数据采集功能。

根据仪器设备的特点和接口类型,选择相应的函数和配置采样模式。

LabVIEW提供了多种数据存储格式,如数组、文本文件、二进制文件等,可以根据需要选择合适的数据格式进行存储。

三、数据分析1. 数据预处理在进行数据分析前,通常需要对采集到的原始数据进行预处理,以提高分析的准确性和可靠性。

嵌入式LabVIEW调用DLL实现数据采集

嵌入式LabVIEW调用DLL实现数据采集

技术创新《微计算机信息》(嵌入式与SOC )2010年第26卷第4-2期360元/年邮局订阅号:82-946《现场总线技术应用200例》嵌入式系统应用嵌入式LabVIEW 调用DLL 实现数据采集Realization of Data Acquisition by Calling DLL in Embedded LabVIEW(清华大学)黄佳钰邓焱张锦杰HUANG Jia-yu DENG Yan ZHANG Jin-jie摘要:为了实现便携式高精度检波器测试仪的数据采集和信号处理,本文研究了嵌入式系统中开发LabVIEW 应用程序的方法。

本文以ARM+Windows CE 为平台进行了检波器测试仪的软硬件设计。

分析了基于24位地震勘探芯片组的数据采集模块的控制方法,开发了实现SPI 总线通讯和GPIO 控制的驱动程序,以及实现芯片组数据采集流程的接口函数。

针对嵌入式LabVIEW 应用程序编译和运行环境的跨平台问题,研究并验证了动态连接库的存根调用方法,最终在嵌入式系统中实现了LabVIEW 应用程序的数据采集。

关键词:嵌入式系统;LabVIEW;动态链接库;数据采集;Windows CE 中图分类号:TP274文献标识码:BAbstract:The developed method of a LabVIEW application in the embedded system was studied for data acquisition and signal pro -cess of a portable high precise geophone tester.Base on a combined development platform of ARM chip and Windows CE operating system,the design of hardware and software of the tester was described.Through the control method analysis of the tester ’s data ac -quisition module,which was consisted of 24-bits seismic exploration chip suit,the driver for SPI communication and GPIO control was developed,as well as the interface function performing data acquisition schedule in the chip suit.To deal with the problem caused by different compiling platform and running platform of the LabVIEW application,a new method of stub DLL for calling DLL was investigated in detailed.Finally,the data acquisition and signal processing function in the portable geophone tester with embed -ded LabVIEW was achieved.Key words:embedded systems;LabVIEW;DLL;data acquisition;Windows CE文章编号:1008-0570(2010)04-2-0026-031引言地震检波器在石油勘探中具有重要作用,其精度直接影响勘探结果,在实际勘探之前要对检波器的各项指标进行现场检测。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

万方数据
陋的论文得到两院院士关注l
数采与监测
卡,此卡为12/16位A/D转换分辨率,最高采样频率町达lOOK
3.3基于调用DLL的应用实例
Hz。

PCI--911
1数据采集卡自带了Windows下的驱动程序库
本例子通过调用凌华数据采集卡的PCI—Dask.dll实现简单PCI—Dask.d11.库内包含了数据采集用的所有函数,下面就将要的单通道的旋转机械转子不平衡时振动速度信号的监测,主要调用的有关甬数作个简要的说明。

目的在于说明在LabVIEW中调用DLL的具体应用。

在速度传在说明函数之前,有必要对DLL中的数据类型作个介绍。

感器检测的信号输入数据采集卡之前,经过了凋理模块,实行116表示有符号16位整型,对应C语言中的。

holt;U16表示无了放大、隔离和滤波等,最后显示的波形接近转子不平衡时振符号16位整型,对应c语言中的unsignedshort;1"64表示双精动的正弦波形。

度浮点数,对应c语言中的double。

程序设计采用顺序结构,设置i个调用动态链接库节点。

116Regkter
Card(U16CanIType.U16card
):该函数的第一帧调用e函
数进行数据采集卡的初始化,输入_numRgitr_Card功能是初始化数据采集卡,使其做好输入输出操作的准备,返数据采集卡的型号和卡号;第:二帧调用AI—VreadChannel函数回值为数据采集卡的卡号,此卡号数为数据采集卡插在PCI插
读取通道的电压,并用波形图表显示I叶J来;第i帧调用Re一槽中的序列号,在下文例子中为0。

CardType和card_num为函lea.se_Card函数释放数据采集卡所占资源,程序结束。

具体各个数的参数,CardType为数据采集卡的型号,凌华公司对不同的节点的配置依照上文介绍的步骤设置好即可。

程序的前面板如型号有对应的代码,在下文例子中,其代码为2l。

在调用其它函图2所示,程序框图如图3所示。

数之前,必须先调用此函数。

116Release
Card(U16card):该函数用来释放由一_humReg
ister_Card函数分配的存储参数值以关闭装载的数据采集卡。

在程序的最后要调用此函数。

116
AI—VreadChannel(U16CardNumber,U16Channel,U16
AdRange.F64*voltagel:该函数的功能读取指定通道的电压值。

参数Channel为指定的通道数,AdRange为输f“的电压的显示范围,也有相应的代码,vohage为输l叶』的电压值。

3.2在LabVIEW中调用DLL的步骤
下面具体的介绍在LabVlEW‘中调用DLL的步骤和应用。

软件为LabVIEW8.2中文版。

首先从程序框图中的函数面板中依次选择:互联接
口一库与呵执行程序一调用库函数节点,即可调出调用库
函数节点图标。

右键单击,在弹出的菜单中选择“配置…”,弹出调用库函数对话框(图1所示)。

这时就町根据需要,对其中的各项进行设置,
图1调用库函数的设置对话框
“库名或路径”选项为要载入的被调用的DLL文件,本文例子中调用的是PCI—Dask.du。

“函数名”选项为要调用的函数名称,线程一般默认即町。

“调用规范”选项选择对库函数的调用规则,在此选择stdcall。

在调用自己用C语言编写的程序而后编译成动态链接库的DLL文件时,“调用规范”选c。

接下来是对“参数”选项的设置,选择网l中的参数项。

根据调用的函数,在此项设置下添加和设置相应的参数,参数名称、类型和数据类型都要与被调用函数中的参数名相同。

设置好这两项后.调用库函数节点的配置就完成了,接下来就是外部的编程和连线了。

旋转机械振动监测
图2程序的前面板
图3程序的程序框图
当数据获取后,要进一步对数据进行各种分析处理,就可
在此基础上进行了。

PCI—Dask.dU中提供了丰富的函数,对于模拟量的输入除了调用上文介绍的函数进行数据采集外。

同样可以调用其它的相关函数来实现同样的功能,如可调用AI—ReadChannel,AI_ContReadChannel.M_Volts(:ale等。

4结束语
在LabVIEW中通过调用动态链接库来驱动数据采集卡,能使LIl'VIEW和普通的数据采集卡结合进行数据采集.扩大了LabVIEW的应用范罔。

节约开发R寸问,同时可以充分利用LabVlEW图形化编程的方便快捷和强大的虚拟仪器开发功能,来实现高效、低成本的应用开发。

(下转第250页)
@啪罔邮局订阅号:82娟360元/-q-一79—
万方数据
 万方数据
基于调用DLL的LabVIEW数据采集的实现
作者:张亿雄, 顾海明, ZHANG Yi-xiong, GU Hai-ming
作者单位:南京工业大学,南京,210009
刊名:
微计算机信息
英文刊名:CONTROL & AUTOMATION
年,卷(期):2008,24(34)
1.候国屏.王坤.叶齐鑫LabVIEW7.1编程与虚拟仪器设计 2005
2.吉顺祥.刘旺锁.胡金华LabVIEW的外部代码接口技术应用[期刊论文]-微计算机信息 2006(11-1)
3.张凯.周陬.郭栋LahVIEW虚拟仪器工程设计与开发 2004
4.杨忠仁.饶程.邹建基于LabVIEW数据采集系统[期刊论文]-重庆大学学报 2004(02)
5.张新亮.孙军强.刘德明LabVIEW驱动一般多功能接口卡的研究[期刊论文]-仪器仪表学报 2000(03)
ing External Code in LabVIEW 2000
7.PCIS-DASK Function Reference 2007
本文链接:/Periodical_wjsjxx200834034.aspx。

相关文档
最新文档