资讯详情

LabVIEW和Arduino的巧妙结合(基础篇—1)

1、安装LabVIEW Interface for Arduino Toolkit工具包

2、LabVIEW Interface for Arduino Toolkit使用工具包

2.1、Arduino INIT函数节点

2.2、Arduino CLOSE函数节点

2.3、Low Level函数库

2.4、Sensors函数库

3、烧录Arduino固件


本博文将打开第四篇文章LabVIEW系列专栏也是目前确定的最后一个关于LabVIEW技术专栏:LabVIEW和单片机。在前三个专栏分享介绍:

1、基础篇:LabVIEW开发技巧;

2、工控篇:LabVIEW仪器控制;

3、视觉篇:LabVIEW图像处理和机器视觉。

本专栏使用的单片机为:Arduino(使用本系列专栏Arduino UNO主要原因是控制器,Arduino简单易用,老少皆宜,受众广泛使用。Arduino作为下位机,LabVIEW独立开发者作为上位机,可以快速开发一套软硬件联控演示系统。

同时,我也推荐你先学习之前发布的内容。Arduino基础知识:和12岁的同志搞创客开发,了解Arduino开发工具和基础开发知识。

1、安装LabVIEW Interface for Arduino Toolkit工具包

LabVIEW实现和实现专业接口工具包Arduino进行联控:LabVIEW Interface for Arduino Toolkit。

LabVIEW Interface for Arduino Toolkit是NI公司(美国国家仪器公司)为Arduino借助这个工具包,开发的接口工具包可以很方便地使用LabVIEW软件与Arduino联合开发控制器。包装这个工具LabVIEW结合软件,通过LabVIEW软件可以确的Arduino控制或与控制器Arduino控制器交换数据。

LabVIEW Interface for Arduino Toolkit最大的优点是内置有几十个NI公司开发的库,提供给开发者使用,当Arduino与LabVIEW连接后即可使用LabVIEW开发新的程序算法来控制数十个内置库Arduino硬件,而且构建UlI(人机交互界面)也很容易,适合新手。同时,LabVIEW Interface for Arduino支持Arduino控制器通过USB、串口,蓝牙或XBee计算机的等接口形式LabVIEW进行连接。

LabVIEW Interface for Arduino Toolkit工具包的安装非常简单,搜索可安装,如下所示:

当LabVIEW安装LabVIEW Interface for Arduino工具包后,函数栏将出现在前面板和程序框图中Arduino控件和操作函数库。

Arduino控件包含模拟IO、数字I/O、Pin Mode、Board Type如下图所示:

前面板控件库

包含操作函数库Arduino INIT、Arduino CLOSE、Low Level、Sensors、Examples等待,如下图所示。其中,Arduino INIT和Arduino CLOSE每个程序都是必要的,即和Arduino控制器建立连接,完成对齐Arduino预设操作后,断开和Arduino连接和释放控制器Arduino控制器的串口资源。

程序面板函数库

另外,Low Level为Arduino初级应用,Sensors为传感器函数库包装,Examples包含大量的应用示例。Sensors和Example是将Low Level函数包装构成的函数库使用更方便,但其兼容性和扩展性不如Low Level好。

2、LabVIEW Interface for Arduino Toolkit使用工具包

本节主要讲解Arduino lNIT、Arduino CLOSE、Low Level以及Sensors使用中部函数库。

2.1、Arduino INIT函数节点

Arduino INIT函数节点如下图所示:

输入参数有VISA resource、波特率、Arduino板的类型、连接方式(USB/Serial),输出参数为Arduino资源号函数对提供资源号Arduino进行操作。它的功能是连接Arduino使用控制器Arduino板进入受LabVIEW控制状态。除了VISA另外,其它输入参数不能给定,即使用默认参数,波特率为115200,Arduino Uno板,USB/Serial连接方式,每包15个字节。

2.2、Arduino CLOSE函数节点

Arduino CLOSE函数节点如下图所示:

输入参数为Arduino只有错误输出的资源号。其功能是断开Arduino与LabVIEW连接,释放Arduino串口资源控制器。

2.3、Low Level函数库

Low Level函数库包括模拟输入和数字IO配置、数字输入、数字输出PWM输出(模拟输出),Tone、I2C、SPI、如下图所示:

其中,模拟输入、数字输出、数字输出和PWM输出分为管脚和端口。端口操作适用于多个需求IO操作管脚。

2.4、Sensors函数库

Sensors函数库中包含:热敏电阻、光敏电阻、RGB、数码管、红外、舵机、步进电机和液晶显示等功能,如下图所示:

3、烧录Arduino固件

将Arduino作为下位机时,需要烧录LIFA_Base.ino,可在安装工具包路径下找到,例如该文件在我的电脑位于:

D:\National Instruments\LabVIEW 2020\vi.lib\LabVIEW Interface for Arduino\Firmware\LIFA_Base

 使用Arduino IDE打开该文件,编译并下载到Arduino单片机中,完成固件烧录。


使用LINX替代LIFA进行Arduino和Labview的互动实验-Arduino中文社区 - Powered by Discuz!

使用面向Arduino的LabVIEW接口报5003错误:发生超时 - NI

标签: labview如何控制红外传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台