LABVIEW+Arduino

2021-02-20 老溫的LABVIEW之路

LABVIEW+ARDUINO

在頻率源、開關等微波組件測試時,需要切換不同的頻點或者通道,在沒有自動測試系統時,通常的做法是使用撥碼開關來控制各個控制位的高低電平,從而實現頻點及通道的切換。而arduino可以模擬這些操作,再與LABVIEW相結合,可以在同一程序能實現切換頻點、通道等的操作,並根據測試需要將所需要的測試數據記錄在相應的表格內。

一、什麼是arduino

Arduino是一款便捷靈活、方便上手的開源電子原型平臺。包含硬體(各種型號的Arduino板)和軟體(Arduino IDE)。由一個歐洲開發團隊於2005年冬季開發。

它構建於開放原始碼simple I/O介面版,並且具有使用類似Java、C語言的Processing/Wiring開發環境。主要包含兩個的部分:硬體部分是可以用來做電路連接的Arduino電路板;另外一個則是Arduino IDE,你的計算機中的程序開發環境。你只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板後,程序便會告訴Arduino電路板要做些什麼了。

Arduino能通過各種各樣的傳感器來感知環境,通過控制燈光、馬達和其他的裝置來反饋、影響環境。板子上的微控制器可以通過Arduino的程式語言來編寫程序,編譯成二進位文件,燒錄進微控制器。

Arduino本質上是一種電子工具,它可以被用來製作許多有趣的創意電子製作,比如電子時鐘、四軸飛行器、寵物餵食機、3D印表機、電子顯微鏡等。全世界的電子愛好者們還在不斷開發基於Arduino的創意電子製作。

 

二、Arduino種類

常用的Arduino有以下七種:

 

UNO R3最常見,而MEGA2560 R3則輸入輸出口最多,大家可根據需要自己選擇合適的版本。淘寶都可以買的到,價格從二三十到兩百不等。

三、Arduino編程

Arduino 語言是建立在 C/C++基礎上的,其實也就是基礎的 C 語言,Arduino 語言只不過把 AVR 單片機(微控制器)相關的一些寄存器參數設置等都函數化了,不用我們去了解他的底層,讓不太了解 AVR 單片機(微控制器)的朋友也能輕鬆上手。

以上是對程式設計師朋友說的,本人是上學期間學過一年的C語言,畢業之後就沒有涉及過,接觸arduino也僅僅是網上看到它可以控制很多東西,想自己玩玩,拿到之後才發現沒有那麼容易,編程時候的邏輯關係還是有點複雜的。

本來都準備放棄了,有次偶然的機會,在NI公司的網站上發現了有專門的LABVIEW工具包,於是便下載下來試試看,發現有了這個工具包之後也不需要再敲代碼,直接將一個個子程序圖標拖進去就可以。簡直可以說是「山窮水盡疑無路,柳暗花明又一村」

四、Arduino工具包安裝

Arduino和LabVIEW之間的互動設計主要有三種工具包可以選擇,將這些工具包和LabVIEW軟體結合起來,通過LabVIEW軟體就可以實現對Arduino控制板的控制或者與Arduino控制板交換數據,從而實現LabVIEW軟體與Arduino控制板之間的互動設計。

 下面對這三種工具包進行分析:

首先,這三個工具包都需要相同的環境:LabVIEW軟體、VISA驅動、VI Package Manager (JKI VIPackage Manager Community Edition)軟體。

1、LabVIEW Interface for Arduino(LIFA) 是NI公司(美國國家儀器公司)為Arduino開發的接口工具包,這是一個入門級免費的工具包.

LabVIEW Interface for Arduino Toolkit(LIAT)這個軟體看後綴也就知道這也是NI公司開發的,屬於前者的高級版本。但是這個工具包不光支持的硬體版本少,僅支持Arduino UNO、Arduino2009、Mega2506而且庫函數的數量有限,傳感器類型單一,存在極大的局限性,當使用的傳感器不是官方函數庫中已有函數的傳感器,就無法使用LabVIEW對Arduino進行交互控制。

3、LabVIEW Hacker LINX Toolkit(LINX),這個工具包並非NI公司開發的,因而在VIPM上不一定能找到它。據網友講,Arduino有可能會威脅到labview的硬體,尤其是是老師們用labview教授Arduino硬體的時候。但是這個工具包可以直接燒錄程序到Arduino,並且程序塊更加集成、整潔,支持的硬體種類更多,提供的庫函數也超級豐富。

 由於前兩者目前已經停止更新,建議使用時下載LINX。

安裝LINX時需要注意,必須先下載makehub工具包,否則LINX將無法安裝,具體安裝步驟如下:

 

 

安裝完成後,需要根據arduino版本的不同對其進行設置,步驟如下,本人使用的是MEGA2560 R3,因此以此版本為例。

 

 

 

設置完成點finish即可。

五、LABVIEW+ARDUINO程序。

下圖為LABVIEW+ARDUINO程序,其功能為按照輸入的數字點亮對應的發光二極體。程序圖如下:

 

圖中最左側是打開arduino,然後是一個while循環,循環內為一個arduino的N位寫入子程序,(我選擇從第2到7位I/O口),常量轉換為布爾數組之後即可將得到對應位的高低電平

例如:1為TFFFFF(2-7位),3為TTFFFF,4為FFTFFF,63為TTTTTT.再點擊停止後,將第2-7位I/O口全部置0,然後在關閉arduino的串口。以上程序正式結束。

以輸入1、3、4、63為例,運行結果如下:

相關焦點

  • labview串口被動接收數據
    本文引用地址:http://www.eepw.com.cn/article/201701/337037.htm二、labview串口被動接收數據這裡labview被動接收傳感器發送來的數據,即在開發板獲取傳感器的數據來進行計算控制時,labview用來數據的採集。
  • LabVIEW+Arduino之四位數碼管顯示
    0x90};//數碼管顯示0-9所對應的編碼(段碼);charScan[] = {0x08, 0x04, 0x02, 0x01}; //位選所對應的掃描碼,對應從pin11掃描到pin8;voidsetup() {DDRB =0xff; // 設置 PORTB為輸出,對應arduino
  • labview和C ,那個更好入門
    現在用來編寫C/S端程序的程式語言,比較容易入門的估計就是labview和C#了。先來說說labview吧。labview在工控自動化領域應用非常廣泛,而且在物理教學方面很有優勢。如果你是搞電氣自動化,嵌入式,那麼用labview會事半功倍。labview的口號是軟體即是儀器。它的優勢是入門簡單,有編程功底的兩三天就可以入門。就算沒有編程功底的,兩周也入門了。不過,入門雖然容易,但是想要真正使用它編寫出一個健壯的商業軟體卻是不那麼容易的事。
  • arduino 從零開始(2)探索arduino開發板和arduino IDE
    1、你將會探索arduino開發板2、你將會打開並上傳程序到arduino 板3、你將會學到arduino程序的基本框架和基本函數4、你將會自己編寫並上傳arduino程序一、arduino 板簡單來說,arduino(硬體)就是一個可以用來根據你的要求進行編程從而可以和很多輸入輸出設備進行交互的一個微型電腦系統。
  • LabVIEW與Arduino如何進行聯合編程?(2)
    Arduino IDE下載地址:https://www.arduino.cc/en/Main/Software?
  • 用Arduino開發物聯網設備之初識Arduino
    硬體部分:最初Arduino硬體只有那麼幾種,uno、mini等,但是現在經過這麼多年的發展,越來越多的硬體支持了arduino開發環境,所以現在也很難去界定什麼是血統純正的arduino硬體了。軟體部分:這部分也就是我們平時說的Arduino,我們其實使用的就是arduino框架來對很多的mcu來進行編程。這裡很多小夥伴其實有很多疑問,比如為什麼要用arduino來進行?
  • 基於labview的示波器控制設計
    計算機控制示波器步驟實例(以LAN口控制為例,開發軟體:labview)下面針對計算機如何編程控制示波器的步驟進行詳細的說明。3.1 開發軟體的選取市場上最流行的分析和開發軟體很多,有VC/VC++、VB/VBA、Matlab、Labview、LabWindow CVI等開發軟體,根據個人的愛好和對某個軟體的熟悉程度來選用。
  • labview使用DSN與資料庫的連接包括access,mysql
    labview與資料庫的連接:labview與上面兩種資料庫的連接方法基本相同,下面交叉講述這兩種資料庫與labview的連接。
  • Arduino_集合Arduino教程、Arduino IDE及設計應用的技術專題
    在線等挺急的 詳細點 回答28# eepwlover:Arduino開發工具(arduino IDE) 1.0.5 綠色免費版
  • 如何編譯LabVIEW代碼並燒錄到Arduino上?
    Arduino IDE 啟動頁面Arduino IDE下載地址:https://www.arduino.cc/en/Main/Software?
  • Arduino為什麼這麼火
    正文:這一兩年間,arduino作為一個能夠快速表現設計想法的工具,日漸火了起來,愛好者們自發性、非官方組織起來的論壇社區日漸豐富和活躍,近一兩年小夥伴們的作品集中也越來越多地涉及arduino相關的項目案例,那麼我們就簡單地來看一下arduino究竟好在哪裡。
  • labview串口調試
    1.labview對串口進行調試時,首先需要安裝visa驅動,可在NI的官方網站上下載,不過速度好像不是很快。 2.最簡模式下進行串口程序接收。如圖:然後在最右邊接一個字符串接受區就可以接受到串口發送的數據了。
  • 如何學習LabVIEW
    還記得當初是因為一個項目才與labview結緣的,使用圖像化的編程方式操作外設,通過NI和研華的板卡採集和控制外設的數據,一直對自己很大的吸引力。
  • labview實現PC與單片機之間的串口通信
    使用Proteus進行單片機仿真,仿真硬體連接,串口通信部分使用keil與labview=255);}labview的前面板跟程序框圖 以及Proteus圖為
  • labview介紹和書籍推薦
    labview包含兩部分:1是前面板,2是圖形化原始碼  LabVIEW擁有一整套工具用於數據採集、分析、顯示和存儲數據,以及解決用戶編寫代碼中可能出現的問題。LabVIEW提供眾多輸入控制項和顯示控制項用於創建用戶界面,即前面板。
  • 大牛輕鬆帶你玩轉Arduino智能硬體:(一)arduino入門:硬體介紹
    (一)arduino入門:硬體介紹認識arduino你都不需要去關心單片機編程繁瑣的細節,提供給你的是一套容易使用的工具包。4 以下是基於arduino單片機的作品尋跡小車平衡小車我相信大家看了這些作品後,都會感覺arduino的強大,心中也是很激動的,也很想嘗試去自己動手製作,那好就讓我們進入arduino的世界吧,讓自己成為一名創客。以後我們會推出一系列的基本教程,讓大家更容易入門arduino。
  • 如何將光學旋轉編碼器與Arduino連接 - 【單片機教程-Arduino-光學旋轉編碼器】
    大家好,我們將學習如何將光學旋轉編碼器與arduino微控制器連接。首先,我們了解什麼是光學旋轉編碼器。
  • arduino mega全解
    關於arduino mega相信大家對於這一開發板有了一定的了解,現在對這款開發板做一下系統的解說:本文引用地址:http://www.eepw.com.cn/article/147959.htm  熔絲位的問題一直是困擾用戶的一個問題,
  • 詳解arduino uno製作學習
    致力於打造最好的arduino項目教程,用最精煉的語言將常見的項目難點,盲點,靈感寫出來。Arduino是一款便捷靈活、方便上手的開源電子原型平臺。
  • 用Arduino點亮OLED模塊學習筆記
    說實話,網上關於7腳OLED與arduino相連的教程比較亂,查找了一些資料,自我總結了一下,這樣我以後搞開發就方便了。我的OLED模塊採用的是SSD1306控制晶片,程序裡最核心的一句:U8GLIB_SSD1306_128X32 u8g(10, 9, 12, 11, 13);所以我總結函數裡面的順序應該是(D0,D1,CS,DC,RES),導入庫文件自帶的示例程序,效果如下圖:接線方法:OLED中的GND引腳與arduino 的GND連接;VCC與arduino的5V連接;D0 為時鐘線