博客專欄

EEPW首頁 > 博客 > LabVIEW和Arduino的巧妙結合(基礎篇—1)

LabVIEW和Arduino的巧妙結合(基礎篇—1)

發(fā)布人:美男子玩編程 時間:2022-06-22 來源:工程師 發(fā)布文章

本篇博文將開啟第四個LabVIEW系列專欄,也是目前確定的最后一個關于LabVIEW技術的專欄:LabVIEW和單片機。在前三個專欄分享介紹了:

1、基礎篇:LabVIEW開發(fā)技巧;

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

3、視覺篇:LabVIEW圖像處理和機器視覺。


本專欄使用的單片機為:Arduino(本系列專欄使用Arduino UNO控制器),主要原因在于,Arduino簡單易上手,老少皆宜,受眾面廣泛,使用Arduino作為下位機,LabVIEW作為上位機,獨立開發(fā)者可以快捷開發(fā)出一套軟硬件聯(lián)控的演示系統(tǒng)。


同時,我也推薦各位先學習一下之前發(fā)布的Arduino基礎知識:和12歲小同志搞創(chuàng)客開發(fā),了解Arduino開發(fā)工具和基礎開發(fā)知識。


圖片



1


安裝LabVIEW Interface for Arduino Toolkit工具包


LabVIEW中有專業(yè)的接口工具包實現(xiàn)和Arduino進行聯(lián)控:LabVIEW Interface for Arduino Toolkit。


LabVIEW Interface for Arduino Toolkit是NI公司(美國國家儀器公司)為Arduino開發(fā)的接口工具包,借助于這個工具包,可以很方便地使用LabVIEW軟件與Arduino控制器實現(xiàn)聯(lián)合開發(fā)。把這個工具包和LabVIEW軟件結合起來,通過LabVIEW軟件就可以實現(xiàn)對Arduino控制器的控制或者與Arduino控制器交換數(shù)據(jù)。


LabVIEW Interface for Arduino Toolkit最大的優(yōu)點在于內(nèi)置有數(shù)十個NI公司開發(fā)的庫,提供給開發(fā)者使用,當Arduino與LabVIEW連接之后,就可以使用LabVIEW中數(shù)十個內(nèi)置的庫來開發(fā)新的程序算法來控制Arduino硬件,而且構建UlI(人機交互界面)也非常容易,適合于新手使用。同時,LabVIEW Interface for Arduino支持Arduino控制器通過USB、串口、藍牙或XBee等接口的形式與計算機的LabVIEW進行連接。


LabVIEW Interface for Arduino Toolkit工具包的安裝非常簡單,在VI Package Manager,搜索LabVIEW Interface for Arduino就可以進行安裝,如下所示:


圖片


當LabVIEW安裝LabVIEW Interface for Arduino工具包之后,在前面板和程序框圖中的函數(shù)欄目中就會出現(xiàn)Arduino控件和操作函數(shù)庫。


Arduino控件包含模擬IO、數(shù)字I/O、Pin Mode、Board Type和連接方式等,如下圖所示:


圖片

前面板控件庫


操作函數(shù)庫包含有Arduino INIT、Arduino CLOSE、Low Level、Sensors、Examples等,如下圖所示。其中,Arduino INIT和Arduino CLOSE是每個程序必備的,即與Arduino控制器建立連接,完成對Arduino預先設定的操作之后,斷開與Arduino控制器的連接,釋放Arduino控制器的串口資源。


圖片

程序面板函數(shù)庫


另外,Low Level為Arduino初級應用,Sensors為經(jīng)過封裝的傳感器函數(shù)庫,Examples包含有大量的應用示例。由于Sensors和Example是將Low Level函數(shù)封裝構建成的函數(shù)庫,所以使用較為方便,但是其兼容擴展性不如Low Level好。



2


LabVIEW Interface for Arduino Toolkit工具包的使用


本小節(jié)主要講解Arduino lNIT、Arduino CLOSE、Low Level以及Sensors中部分函數(shù)庫的使用。


2.1、Arduino INIT函數(shù)節(jié)點


Arduino INIT函數(shù)節(jié)點如下圖所示:


圖片


輸入?yún)?shù)有VISA resource、波特率、Arduino板的類型、連接方式(USB/Serial),輸出參數(shù)為Arduino資源號,提供給后續(xù)函數(shù)對Arduino進行操作。它的功能是連接Arduino控制器,以使得Arduino板進入受LabVIEW控制的狀態(tài)。除了VISA之外,其他的輸入?yún)?shù)可以不給定,即使用默認參數(shù),波特率115200,Arduino Uno板,USB/Serial連接方式,每個包15個字節(jié)。


2.2、Arduino CLOSE函數(shù)節(jié)點


Arduino CLOSE函數(shù)節(jié)點如下圖所示:


圖片


輸入?yún)?shù)為Arduino資源號,只有錯誤輸出。其功能是斷開Arduino與LabVIEW的連接,釋放Arduino控制器的串口資源。


2.3、Low Level函數(shù)庫


Low Level函數(shù)庫包含:模擬輸入、數(shù)字IO配置、數(shù)字輸入、數(shù)字輸出、PWM輸出(模擬輸出)、Tone、I2C、SPI、模擬采樣功能,如下圖所示:


圖片


其中,模擬輸入、數(shù)字輸出、數(shù)字輸出和PWM輸出分為管腳和端口兩種,端口操作適用于需要多個IO管腳進行操作的情況。


2.4、Sensors函數(shù)庫


Sensors函數(shù)庫中包含:熱敏電阻、光敏電阻、RGB、數(shù)碼管、紅外、舵機、步進電機和液晶顯示等功能,如下圖所示:


圖片



3


燒錄Arduino固件


將Arduino作為下位機時,需要燒錄LIFA_Base.ino,可在安裝工具包路徑下找到,例如該文件在我的電腦位于:



D:National InstrumentsLabVIEW 2020vi.libLabVIEW Interface for ArduinoFirmwareLIFA_Base


圖片


使用Arduino IDE打開該文件,編譯并下載到Arduino單片機中,完成固件燒錄。


圖片


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。

助聽器原理相關文章:助聽器原理




關鍵詞: LabVIEW Arduino

相關推薦

技術專區(qū)

關閉