labview与matlab接口的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LabVIEW与Matlab接口的方法
The Method of Interfacing Between LabVIEW and Matlab
陈金平
(新疆大学,乌鲁木齐 830008)
0 引言
虚拟仪器技术是计算机技术、现代测控技术和电子仪器技术相互结合、渗透的产物。在虚拟仪器系统中,数据的分析处理、控制、结果输出和用户界面等功能都由软件完成,硬件仅仅是为了解决信号的输入输出,因此,软件是整个仪器系统的核心,从某种意义上可以说:“软件即仪器”。虚拟仪器系统的软件设计可以采用通用的可视化编程语言,如Visual C++、Visual Basic、Delphi等,但更为方便高效的还是专用的虚拟仪器软件开发平台,如美国国家仪器公司(National Instruments,NI)的Lab2 VIEW、LabW indows/C VI,惠普公司的VEE等,而其中首推NI公司的图形化编程语言LabVIEW。
1 LabVIEW的功能及特点
LabVIEW是NI公司推出的一种虚拟仪器软件开发平台,自1986年正式推出,经过短短不到15年的时间,已经发展到以最新板本LabVIEW611为核心,包括控制与仿真、高级数字信号处理、统计过程控制、模糊控制和PID控制等众多附加软件包,运行于W indows NT/98、Linux、M acintosh、Sun和HP-UX等多种平台的工业标准软件开发环境。
LabVIEW在包括航空航天、通信、汽车、半导体和生物医学等众多领域内得到了广泛的应用。其最大的特色是采用编译型图形化编程语言———G语言(G raph2 Pro gramm ing),即用户设计好程序的大体框架后,如同画流程图一般,只需将系统提供的各种图形化功能模块连接起来,就可得到所需的应用软件。LabVIEW中的程序称为VI(virtual instruments),每个VI都由前面板和框图程序以及图标/连接端口三部分组成。
除了具备其它编程语言所提供的常规函数功能外,LabVIEW内部还集成了大量的生成图形界面的模板,如各种表头、旋钮、开关、LE D指示灯、图表等;丰富实用的数值分析、信号处理功能,如FFT变换、各种滤波器、信号发生器等;以及对RS-232、G PI B、VXI、数据采集板卡、网络等多种硬件的设备驱动功能,并免费提供数十家世界知名仪器厂商的几百种源码级仪器驱动,大大方便和简化了用户的设计开发工作。Lab2 VIEW使得过去繁琐、枯燥的软件开发变得简单、方便,尤其适合不熟悉传统文本编程语言(如C、BASIC等)的工程技术人员,被誉为工程师和科学家的语言。
但是,在大型的系统测试和仿真过程中,需要软件进行一些很复杂的数值计算时,LabVIEW的图形化编程语言就显得力不从心,M atlab是一种常用的高效率数学运算工具,它建立在向量、数组和复数矩阵的基础上,使用方便,将它和LabVIEW有机地结合起来会大大减少编程的工作量,提高编程效率。本文通过求解一常微分方程初值问题的例子,介绍了两种编程语言的接口方法。
2 在LabVIEW中调用Matlab语言的方法在测试系统设计和软件开发过程中,数学分析与信号处理是两个不可缺少的重要内容。LabVIEW将数据采集和测试分析中常用的数学和信号分析算法程序集成在一起,提供了先进的数学和信号分析环境,所有的数学分析节点都集中在M athematics子模板中。在此模板中有一M atlab Script节点,利用此节点就可以实现在LabVIEW中对M atlab语言的调用。下面通过具体例子介绍调用方法。举例如下:
用Runge2K utta法计算下列微分方程的解(初值问题):
y′=-50y+50x2+2x , 0≤x≤1 y(0)=1
2.1 编制M文件
启动M atlab610,利用其M文件编辑器编写M文件如下:
function y=ff2(x,y)
y=-50・y+50・x・x+2・x;
35
LabVIEW与M atlab接口的方法 陈金平
存盘退出,文件名为ff 21m ;路径为M atlab 默认路径(注意:若将M 文件存在其他文件夹中,应将该路径添加到M atlab 环境中去)。分别用ode45和ode23两个函数求解,以比较两个函数求解过程的差异。
2.2 LabVIEW 编程
①启动LabVIEW ,在其框图程序中加入M atlab
Script 节点,在节点中输入以下内容:[x ,y ]=ode 45(′ff 2′,[a ,b],c );
[x 1,y 1]=ode23(′ff 2′,[a ,b],c );
其中:[x ,y ],[x 1,y 1]分别为ode 45和ode23两个函数计算结果;a 代表积分下限;b 代表积分上限;c 代表初始条件,′ff 2′即为ff 21m 文件。
②在M atlab Script 节点上增加3个输入端口并在框图程序中增加3个数字量控制:a →积分下限;b →积分上限;c →初始条件。输入端口属性均为实数。同时增加4个输出端口,x 、y 、x 1、y 1,输出端口属性均为实矩阵,如图1
所示。
图1 Matlab Script 节点
以上是调用M atlab 的关键步骤,特别是输入和输出端口的属性一定要设置正确,它们由ode 45和ode23两函数格式中的参数性质所决定。
③利用LabVIEW 的数组、F or 循环和XY 波形记录控件将ode 45和ode23两函数的计算结果通过4个输出端口显示出来,而这正是LabVIEW 的强项,在此不加详述。其完整的框图程序如图2所示,其前面板如图3
所示。
图2 框图程序
在前面板中输入任意积分上下限和初始条件,运行后均可得到相应的结果。图3是按本文例子中的给定条件运行的结果,从中可以看出两种计算方法的区
别。图3 前面板
3 结论
在LabVIEW 环境中调用M atlab 语言简单可行,并能够扩展LabVIEW 功能。该两种语言混合编程,一方面可应用LabVIEW 强大的G 语言的编程方法,提高开发数据采集、工业控制等虚拟系统的效率;另一方面可利用M atlab 能够进行复杂数值计算的优势大大增强
LabVIEW 功效,特别适合大型复杂测控系统的开发。
以上例子的VI 程序在LabVIEW 611和M atlab610语言以及中文W indows 98环境中运行通过。
参考文献
1 杨乐平,李海涛,肖相生.LabVIEW 程序设计与应用[M].北京:电
子工业出版社,2001
2 王沫然.M AT LAB610与科学计算[M].北京:电子工业出版社,
2001
收稿日期:2002-11-30。
作者陈金平,男,1965年生,2001年毕业于东华大学,硕士,讲师;主要研究领域:测控技术、软件工程,发表论文7篇。
CZ 3000系列配电器、隔离器、
信号转换器系列产品
主要技术性能
320~35V ,d.c.供电
3电源,输入、输出信号之间1500V 以上隔离3传输精度高,稳定性好、温漂小3多种故障检测,输入、输出短路保护3DI N35导轨安装
上海辰竹仪表有限公司
地址:上海市漕宝路103号 邮编:200233电话:(021)64360668 传真:(021)64846984
http :∥w w w.chenzha
4
5《自动化仪表》第25卷第3期 2004年3月PR OCESS AUTOMATION INSTRU MENTATION,V ol.25,N o.3,Mar.,2004