cDAQ控制器中通过Model Interface Toolkit调用dll文件



主要软件: LabVIEW Toolkits>>LabVIEW Model Interface Toolkit
主要软件版本: 2013
主要软件修正版本: N/A
次要软件: Driver Software>>NI-DAQmx
硬件: CompactDAQ>>Backplanes>>cDAQ-9138

问题: 验证在cDAQ控制器中能否通过Model Interface Toolkit以及LabVIEW调用运行Simulink生成的dll文件。

解答:
Simulink是MATLAB中的一种可视化仿真工具, 是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制数字信号处理的建模和仿真中[1],很多时候我们需要在LabVIEW中调用Simulink所生成的dll文件进行进一步的数据处理。其中主要方法有以下两种[2]:
1、使用Controls and Simulation Toolkit 将仿真模型导入到LabVIEW。
2、使用Model Interface Toolkit。
本文主要介绍第二种方法,验证在cDAQ中通过Model Interface Toolkit调用Simulink生成的dll文件。
(一) Model Interface Toolkit
LabVIEW Model Interface Toolkit可以将不同软件环境的仿真模型和控制算法集成到LabVIEW和LabVIEW Real-Time模块,可以同时运行多个模型[3]。从2013版后,Model Interface Toolkit打包在VeriStand中。
(二) 软件安装
请按照以下步骤安装软件(安装顺序不对可能会出现错误)
a)         安装LabVIEW
b)        安装VeriStand
c)         安装兼容的MATLAB [4]。
d)        安装vc2008(编译使用)
注意:在安装MATLAB的时候,有很多需要使用的工具包,在本文中涉及到的工具包有MATLAB CoderMATLAB Compiler。(各种MATLAB工具包可以参考链接[5]
本文中使用的是LabVIEW2015,VeriStand2015以及MATLAB2012b。
(一) 生成dll文件
本文的例子中,首先在Simulink里建模型,设计一个简单的加法模型。
本文中使用的是LabVIEW2015,VeriStand2015以及MATLAB2012b。
 
(一) 生成dll文件
本文的例子中,首先在Simulink里建模型,设计一个简单的加法模型。
 
在Simulink中搭建模型时,输入输出端口是要选择**Library下的控件,以使生成的dll文件最终和LabVIEW交互。
在Configuration Parameters的Code Generation选项,Target Selection选区中,System target file选择NI target(可以在LabVIEW以及RT系统中使用)。
同时在Solver选项卡里,将停止时间设置为无限(inf),仿真形式为Fixed-step,在下面可以设置仿真的时间步进间隔(时间单位默认为s,所以直接填写数字便可,无需带单位)。
在Simulink中点击Build,最终生成了文件包,包含dll文件。(相同的模型更改参数后,生成的文件会覆盖以前的文件夹文件,所以需要提前另存为以防数据的丢失)
(二) cDAQ控制器通过LabVIEW调用dll文件。
在cDAQ-9138上打开LabVIEW,使用Model Interface Toolkit调用dll文件。Model Interface Toolkit函数在Control & Simulation>>Model Interface选项卡中。 
程序中通过DAQ函数采集数据,同时通过调用add.dll文件将采集的数据与数字2相加输出。
在PC端连接myDAQ,输出数字信号,cDAQ-9138则通过NI 9401接收数据.
从下图可以看到,PC端发送出信号1,cDAQ采集到数据将其加2输出显示3;PC端发送出信号0,则输出显示为2 。
由此我们完成了cDAQ控制器中通过Model Interface Toolkit调用dll文件的工作。
 


相关链接:

 [1] http://baike.baidu.com/link?url=KBsSQTX4hbH6hEDyWkMa4szRrPTDxjSbQw7KNTGSQX4REy-poY1uRew_z1Gjkk1yjbqrJgrgVB32wCWA0hk42K  

[2]  http://forums.ni.com/t5/LabVIEW/Connecting-Simulink-Circuit-to-LABview-Controller/m-p/3313296

[3] http://www.ni.com/pdf/manuals/375381a.html#overview

[4] http://sine.ni.com/psp/app/doc/p/id/psp-523/lang/zhs

[5] http://tieba.baidu.com/p/1894084250?pn=1&statsInfo=frs_pager



附件:
add.slxconnect.vi




报告日期: 10/27/2016
最近更新: 10/30/2016
文档编号: 7EQ3HOU8