LabVIEW与外部程序接口
LABVIEW 互联接口VI

。如错误发生在VI或函数 行之前,VI或函数将
输入 错误输出 运 没 正 运 运 值传递至
。如在VI或函数 行前 有发生错误,VI或函数将 常 行。如在VI或函数 行时发生错
正 运 错误输出 身 状 简易 误,VI或函数将 常 行并在
中设置自 的错误 态。 错误处理器或通用错误处理器VI可用于显示错
浏览 打开范例
相关范例
SimpleTaskMonitor VI: labview\examples\comm\dotnet\SimpleTaskMonitor.llb
表错误明输VI出或函包数含中错出误现信的息。错如误错状误态输。右入键表单明击在错VI或误输函出数运的前行面前板已显发示生控错件误,,从错误快输捷菜出单将包中选含相择同解的释错错误误信可息获。取更否多则关,
于该错误的信息。
状态 叉 勾 警告 无 的值为TRUE( )时表示错误,为FALSE( )时表示 或 错误。
.NET函数
所属选板: 互连接口VI和函数 安装: 基础软件包。本主题的内容可能与您所安装的LabVIEW选板不匹配,LabVIEW选板上显示的对象取决于操作系统、已
获得许可证的产品以及终端。
.NET函数用于创建.NET对象,设置该对象的属性或调用其方法,以及在.NET环境中处理对象事件。也可在前面板上创建一 个.NET控件。创建.NET对象并与之通信需安装.NET Framework 1.1 Service Pack 1或更高版本。
输入 错误输出 运 没 正 运 运 值传递至
。如在VI或函数 行前 有发生错误,VI或函数将 常 行。如在VI或函数 行时发生错
正 运 错误输出 身 状 简易 误,VI或函数将 常 行并在
中设置自 的错误 态。 错误处理器或通用错误处理器VI可用于显示错
第13章 LabVIEW常用外部接口

ActiveX组件包括如下几类。 (1)自动化服务器 (2)自动化控制器 (3)控件 (4)文档 (5)容器
13.4.2 ActiveX控件
ActiveX控件是ActiveX最常用的,它 是存放于ActiveX容器的一个可嵌入的组件。 LabVIEW中ActiveX容器函数位于“控件” 选板下“新式→容器”子选板中,如图1314所示。利用“ActiveX容器”函数,用户 可以调用第三方提供的各种ActiveX控件。
图13-7
CIN节点函数接线端子 图13-8 CIN节点函数接线端子与控件的连接
图13-9
创建DLL工程对话框
图13-10 将cintools路径
DLL工程编译命令
图13-13 CIN节点示例程序框图和运行界面
13.4 ActiveX
13.1 调用库函数
13.1.1 DLL简介
DLL是Dynamic Link Library 的缩写 形式,中文译为动态链接库。它是作为共 享函数库的可执行文件。 可以把动态链接库理解为一个函数库。
DLL在编程中的广泛应用主要缘于它的 一些优点。 (1)使用较少的资源 (2)推广模块式体系结构 (3)简化部署和安装 Windows操作系统中一些作为DLL实 现的文件有:ActiveX 控件(.ocx)文件、 控制面板(.cpl)文件和设备驱动程序 (.drv)文件。
图13-1
“调用库函数节点”函数位置
图13-2
“调用库函数”函数配置属性对话框
13.1.4 调用库函数示例
图13-3
调用库函数示例程序框图
13.2 Matlab接口
13.2.1 Matlab Script节点
Matlab是由数值分析、矩阵分析、信 号处理和图形绘制等组成的一个高性能的 数值计算和图形显示的计算软件环境。为 了结合两者以充分利用LabVIEW和Matlab 各自的优点,LabVIEW通过提供的Matlab Script节点可以导入和编辑Matlab程序。
第07次课 LabVIEW与其它应用程序的通讯

编写C代码
进入VC++开发环境 打开LabVIEW自动产生的C代码文件 在/* ENTER YOUR CODE HERE */处添 加以下代码:*_=*_1+*_2; 编辑完成,关闭文件
9/23/2003
河南科技大学电信学院自动化所
9
编辑后的C代码
35
对话框
9/23/2003
河南科技大学电信学院自动化所
36
举例-得到磁盘的类别
9/23/2003
河南科技大学电信学院自动化所
37
框图
9/23/2003
河南科技大学电信学院自动化所
38
对话框
9/23/2003
河南科技大学电信学院自动化所
39
Winbase.h
#define #define #define #define #define #define #define
9/23/2003
河南科技大学电信学院自动化所
10
编译VC++6.0源程序
在VC++6.0中创建一个空的Win32 Dynamic DLL project 在DLL工程中加入自己编写的实现两数 相加的C代码 在DLL工程中加入CIN对象和函数库: 加入CINTOOLS路径下的cin.obj、 labview.lib、lvsb.lib、lvsbmain.def共4 个文件
河南科技大学电信学院自动化所
6
前面板和后面板
9/23/2003
河南科技大学电信学院自动化所
7
自动产生的C代码如下
/* * CIN source file */ #include "extcode.h" CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_); CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_) { /* ENTER YOUR CODE HERE */ return noErr; }
LabVIEW的ActiveX实验

LabVIEW的ActiveX实验一.实验目的1.了解LabVIEW的外部程序接口2.掌握在LabVIEW中调用ActiveX的方法二.实验器材1.计算机一台2.LabVIEW8.20软件一套3.Excel 一套4.PowerPoint 一套三.实验原理LabVIEW作为一种图形化的编程语言,既有独特的优势,也在某些方面略显不足。
为改善自身不足,充分利用其他编程语言的优势,LabVIEW提供了强大的外部程序接口,包括DLL、CIN、ActiveX、Matlab等。
通过DLL,可以方便调用C、VC、VB等编程语言及Windows自带的API函数;通过ActiveX,方便调用外部程序、控件等。
ActiveX作为微软公司推出的一个技术集的统称,可以使用户重用代码,并能将程序连接在仪器实现复杂计算。
它是基于COM(Component Object Model)组件对象模型技术,是OLE(Object Linking and Embedding)技术的扩展。
ActiveX 对象是用于桌面、基于COM的组件。
它可以是可见的,也可以是隐藏的。
通过现成的ActiveX对象,用户可以方便的实现许多强大功能,如操作Excel、PowerPoint 等。
本实验利用LabVIEW调用Excel和PowerPoint提供的ActiveX来操作Excel和PowerPoint。
程序前面板如图所示。
通过两个按钮,分别调用Excel和PowerPoint。
下面说明其创建过程。
1.调用Excel(1)在函数面板→互连接口→ActiveX ,选择“打开自动化”,将其放在程序框图的合适位置。
(2)在“打开自动化”上单击鼠标右键,在弹出的菜单中选择“选择ActiveX 类→浏览”,出现如图所示的对话框,从类型库中选择Microsoft Excel 11.0 Object Library Version 1.5,在对象框中,选择仅显示可创建的对象,然后选择Application (Excel.Application.11),单击“确定”,就可以完成Automation Refnum 控件与Excel Application 的连接。
LabVIEW与外部程序间DLL文件的调用

图20 Parameters页面点击“OK”,将生成的CLN的输入段连接到DAQmx Read.vi,return type 输出连接到波形图表上,即可实现采集值放大10倍的功能。
图21 完成后的程序方法二LabVIEW中还有一种方法可以调用DLL文件,在VI的选项栏,依次选择Tools——Import——Shared Library(.dll),弹出Import Shared Library 对话框。
图22 生成Import Shared Library对话框选择Create VIs for a shared library,点击Next,在Shared Library (.dll) Files中输入Scale.dll文件的路径,Head(.h) File里填写头文件的路径。
图23 选择DLL文件路径和头文件路径点击Next,如果DLL文件中依赖其他的一些DLL文件,需要在Include Paths中填写这些文件的路径。
其他选项可以根据客户需求设置,一般默认即可。
这样一直点击Next到最后,选择Open the generated library,点击Finish。
这样可以生成一个.lvlib格式的库文件,里面包含了Scale.vi,这是将调用该DLL 文件的方法封装好的VI,只留下输入和输出接口,方便运用到LabVIEW的程序中。
直接将Scale.vi拖放到刚才的连续采集中即可完成方法一的功能。
图24 完成的程序VC调用LabVIEW生成的DLL文件刚才介绍了LabVIEW调用DLL文件的方法,使用VC调用LabVIEW生成的DLL 文件也很简单。
还是以之前生成Scale 的DLL文件为例,不同的是采集电压程序使用的是C语言的例程,但和LavVIEW实现的功能相同。
首先将先前生成Scale DLL文件时,路径下所有的文件全部复制粘帖到C语言例程的文件夹下。
打开连续采集程序,点击状态栏的Project——Settings,在Project Settings对话框中加载入Scale.lib的静态链接库。
LabVIEW 外部代码接口技术的研究与应用-文献综述

LabVIEW 外部代码接口技术的研究与应用摘要LabVIEW是一种功能强大的图形化虚拟仪器编程软件,广泛应用于仿真、数据采集、仪器控制、测量分析等嵌入式应用系统的开发。
然而,在需要进行大量数据运算处理和数据采集时,LabVIEW显得有些力不从心。
为此,本文研究了LabVIEW 外部接口技术,提出了LabVIEW与其他软件之间接口的方法,并且通过举例验证了各种方法的可行性,从而有效的解决了问题。
关键词:LabVIEW,虚拟仪器,外部接口,数据运算处理,数据采集中图分类号:TP13 自动控制理论Study And Application of External Code Interface Technology in LabVIEW.Guohua Bai1,Wenxi Wang2(1.Key laboratory of Instrumentation Science & Dynamic Measurement,North University of China 2. Xinyuan High Tech Centre North University of China ,TaiYuan 030051, China )Abstract :LabVIEW is a graphical software with strong virtual instrument function, which has been abroadly applicated in simulation, data acquisition, instrument control, measurement and analysis of the application-embedded system exploitation. However, LabVIEW has not the ability to operate complex mathematic operation and data acquisition.To this point, the LabVIEW external code interface technology is studied and several kinds of method of implementing the interface between LabVIEW and other softwares are put forword in this paper. The feasibility of the whole bag of tricks is verified by giving some examples and the problems are effectively solved.Key Words:LabVIEW,virtual instrument,external interface,mathematic operation,data acquisition引言当前,虚拟仪器技术已广泛应用到各种自动化测试和测量领域,虚拟化已经成为仪器领域的发展方向。
LabVIEW与硬件连接实现与外部设备的通信

LabVIEW与硬件连接实现与外部设备的通信LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一款由美国国家仪器公司(National Instruments)开发的图形化编程环境软件。
通过使用LabVIEW,工程师和科学家可以快速而方便地设计、控制和调试各种测试、测量和控制系统。
与硬件连接是LabVIEW应用的重要组成部分,使其能够与外部设备进行通信和交互。
本文将探讨LabVIEW与硬件连接的实现,以及与外部设备的通信方法。
一、硬件连接的准备工作在将LabVIEW与外部设备连接之前,我们需要进行一些准备工作,以确保连接的稳定和可靠性。
1. 硬件选型首先,选取适合的硬件设备。
LabVIEW支持与各种类型的硬件设备连接,如传感器、执行器、数据采集卡等。
根据所需的功能和应用场景选择合适的硬件设备,确保其与LabVIEW的兼容性。
2. 连接方式根据硬件设备的要求,选择合适的连接方式。
LabVIEW支持多种连接方式,包括串口、并口、以太网等。
根据实际情况选择连接方式,确保连接的稳定和传输速度的要求。
3. 驱动程序安装在连接硬件设备之前,需要安装相应的驱动程序。
LabVIEW提供了一系列专门用于驱动硬件设备的工具包,如NI-DAQmx、NI-VISA 等。
根据硬件设备的要求,安装相应的驱动程序,以便与LabVIEW进行通信和控制。
二、基于LabVIEW的硬件连接实现LabVIEW提供了丰富的工具和功能,使其能够轻松地与外部设备进行连接和通信。
下面介绍几种常见的基于LabVIEW的硬件连接实现方法。
1. 串口通信串口通信是一种常见的硬件连接方式,适用于与串口设备进行数据传输和控制。
LabVIEW提供了针对串口通信的专门工具,如VISA函数库和串口控制面板。
通过使用这些工具,可以实现LabVIEW与串口设备之间的通信,并进行数据的读取、写入和控制操作。
LabVIEW与外部程序接口

LabVIEW软件和数据采集卡编程开发讲师:于海春LabVIEW与外部程序接口•LabVIEW DAQ与LabVIEW Driver都是利用LabVIEW的外部程序接口以达到第三方软件集成的目的。
•LabVIEW DAQ使用的是dll调用•LabVIEW Driver使用的是Cin节点方式调用•两者的执行效率一致。
动态链接库方式•通过Dll 方式集成第三方程序–可以用C/C++语言实现软件的运算部分,并把这些功能构建在DLL 文件中,然后再使用LabVIEW 编写程序的界面部分,并通过调用编写好的DLL 来调用运算部分的功能。
–LabVIEW 中是通过Call Library Function Node (CLN )节点来完成DLL 文件调用–将节点放置在程序框图中,双击会出现它的配置对话框在Functions Palette 中选中Connectivity →Libraries&Executables工具栏即可找到该节点动态链接库方式•节点配置(1)–Library name or path需给出DLL文件名和路径–动态加载DLL,勾选上Specify path on diagram选项–Function name是需要调用的函数的名称–Thread栏用于设定调用的函数运行的线程–Calling convention用于指明被调用函数的调用约定动态链接库方式•节点配置(2)–DLL和LabVIEW之间传递参数,最常用的三种数据类型是数值、数值型数组和字符串。
–在NI软件的安装路径下打开当前使用版本的LabVIEW文件夹,通过examples\dll\datapassing\CallNativeCode.llb找到简单数据类型在LabVIEW与C之间的对应关系。
动态链接库方式•节点配置(3)–为DLL设置一些回调函数,可以使用这些回调函数在特定的情形下完成初始化、清理资源等工作–Reserve:当一个新的线程开始调用这个DLL时,这个回调函数首先被调用–Unreserve:线程在使用完这个DLL之后,它会调用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LabVIEW软件和数据采集卡编程开发
讲师:于海春
LabVIEW与外部程序接口
•LabVIEW DAQ与LabVIEW Driver都是利用LabVIEW的外部程序接口以达到第三方软件集成的目的。
•LabVIEW DAQ使用的是dll调用
•LabVIEW Driver使用的是Cin节点方式调用
•两者的执行效率一致。
动态链接库方式
•通过Dll 方式集成第三方程序
–
可以用C/C++语言实现软件的运算部分,并把这些功能构建在DLL 文件中,然后再使用LabVIEW 编写程序的界面部分,并通过调用编写好的DLL 来调用运算部分的功能。
–LabVIEW 中是通过Call Library Function Node (CLN )节点来
完成DLL 文件调用
–将节点放置在程序框图中,双击会出现它的配置对话框
在Functions Palette 中
选中Connectivity →
Libraries&Executables
工具栏即可找到该节
点
动态链接库方式
•节点配置(1)
–Library name or path需
给出DLL文件名和路径
–动态加载DLL,勾选上
Specify path on diagram
选项
–Function name是需要调用的函数的名称
–Thread栏用于设定调用的函数运行的线程
–Calling convention用于指明被调用函数的调用约
定
动态链接库方式
•节点配置(2)
–DLL和LabVIEW之间传递参数,最常用的三种数据类
型是数值、数值型数组和
字符串。
–在NI软件的安装路径下打开当前使用版本的LabVIEW
文件夹,通过
examples\dll\data
passing\Call
NativeCode.llb找到简单
数据类型在LabVIEW与C之
间的对应关系。
动态链接库方式
•节点配置(3)
–为DLL设置一些回调函数,
可以使用这些回调函数在特
定的情形下完成初始化、清
理资源等工作
–Reserve:当一个新的线程
开始调用这个DLL时,这个
回调函数首先被调用
–Unreserve:线程在使用完
这个DLL之后,它会调用。
–Abort:用于VI非正常结束
时被调用。
第四页是错误处理方式,用户可根据需
要选择相应的错误检查级别。
LabVIEW DAQ •LabVIEW DAQ数据采集例程
CIN 节点
•通过代码接口节点(CIN)可从程序框图调用以基于文本的编程语言(如C语言)所编写的代码。
•通过代码接口节点(CIN)可访问以另一种语言编写的算法•通过代码接口节点(CIN)可操作LabVIEW不直接支持的某个特定平台的功能或硬件。
•CIN为可扩展函数,可显示已连线的输入端和输出端的数据类型。
CIN 节点
•按照下列步骤,创建一个CIN。
– 1. 设置CIN的输入和输出端。
– 2. 连接CIN的输入和输出端。
– 3. 创建一个.c文件。
– 4. 编译CIN源代码。
– 5. 加载CIN对象代码。
•在VC中可以利用lvsbutil工具将dll转换成lsb文件
CIN与DLL
•CIN(Code Interface Node)节点是LabVIEW中用来调用C/C++代码的功能节点。
•它与动态链接库的不同之处在于,它能够将代码集成在VI中作为单独的一个VI发布,而不需要多余的文件。
•它提供了函数入口,它可以根据用户提供的输入输出自动生成函数入口代码。
•CIN节点与DLL在不同的场合有不同的优势。
•对于完全相同的代码,CIN和DLL的执行效率是完全一样的。
•CIN节点必须调用.lsb文件,lsb文件是通过外部编译器与CINTools工具结合将C代码编译生成的。
Generated by Foxit PDF Creator © Foxit Software For evaluation only.。