labview嵌入c代码_LabVIEW与myRIO嵌入式系统开发入门
一、概述
NI myRIO是NI公司推出的一款嵌入式系統開發平臺,內嵌Xilinx Zynq芯片,可以利用雙核ARM Cortex-A9的實時性能以及Xilinx FPGA可定制化I/O進行嵌入式系統設計與開發。由于該設備板載資源豐富且具有可重配置、可重使用的特點,因而非常適合教學,讓學生學習從簡單嵌入式系統開發到具有一定復雜度的系統設計,另外也可以利用myRIO進行創新應用設計,如控制算法設計、機器人設計、測控系統等。
本期給大家分享如何從零開始進行基于NI myRIO和LabVIEW的嵌入式系統開發。本人使用的設備是NI myRIO-1900。
二、準備工作
1、軟件安裝
使用myRIO之前需要在計算機上安裝軟件并進行配置,其中必須安裝的軟件有:
(1)LabVIEW;
(2)NI-RIO驅動;
(3)LabVIEW Real-Time;
(4)LabVIEW myRIO Module。
可選軟件有:
(1)Control Designand Simulation:控制設計與仿真模塊,用于設計控制算法;
(2)FPGA:用于自定義myRIO上的FPGA資源;
(3)MathScript RT:用于調用Matlab編寫的m文件的腳本;
(4)Vision:視覺開發模塊,包含許多現成算法,方便用戶使用;
(5)VisionAcq:視覺采集模塊,用于USB攝像頭與myRIO連接采集視頻圖像。
安裝方法不在此贅述。
2、NI myRIO-1900功能與接口介紹
功能介紹:
(1)雙核ARM Cortex-A9處理器:運行Linux RT實時操作系統;
(2)FPGA:可以自定義myRIO上的FPGA資源;
(3)3組針接頭:40條數字I/O線(支持SPI、PWM輸出、正交編碼器輸入、UART和I2C),8個單端模擬輸入AI,2個差分模擬輸入AI,4個單端模擬輸出AO和2個對地參考模擬輸出AO,方便通過編程控制連接各種傳感器及外圍設備;
(4)內置WiFi功能:可連接無線網絡,也可以作為熱點,支持遠程部署應用;
(5)三軸加速度計:采集X/Y/Z軸上的加速度數據,單位為g(即重力加速度);
(6)4個用戶自定義LED燈;
(7)1個用戶自定義按鍵;
(8)立體聲音頻I/O。
接口介紹:如下圖
3、myRIO連接
計算機安裝好軟件之后,給myRIO插上電源線,并用USB線將myRIO與計算機連接起來。連接成功會自動彈出如下圖所示的啟動界面,單擊Launch the Getting Started Wizard對myRIO進行相關設置。
單擊Launch the Getting Started Wizard后彈出如下界面,可以看到計算機連接的myRIO設備,點擊該設備進入。
使用myRIO時,需要給它安裝與所連接計算機上軟件配置相匹配的軟件,即根據計算機上安裝LabVIEW及其模塊的版本,給myRIO安裝相匹配的軟件。由于該設備之前與其他計算機連接使用過,已經安裝了與其他計算機相匹配的軟件,此時需要按照當前計算機軟件配置來重新安裝相應的軟件(即選擇第2項,點擊Next)。
myRIO安裝完軟件之后需要重啟,所以啟動界面會再次出現,此時在啟動界面中Go to LabVIEW 2019不再是灰色,因為myRIO中已經安裝了相匹配的軟件,點擊Do Nothing即可,也可以點擊Go to LabVIEW 2019,打開LabVIEW。
雙擊打開配置管理軟件NI MAX,在左側一欄的遠程系統中可查看到當前連接的myRIO設備。單擊打開之后,可在頁面右方看到設備的相關信息以及設置,如主機名稱、IP地址、網絡設置等。在遠程系統NI-myRIO的“軟件”上右擊,可添加/刪除軟件。
三、一個簡單的NI myRIO項目
當myRIO連接成功且安裝好軟件之后,可以開始NI myRIO項目開發。打開LabVIEW,點擊Create New Project,
在Templates>myRIO中選擇myRIO Project Templates,點擊Next,如下圖
對Project進行設置,可以自定義項目名稱、項目路徑,選擇Target之后,點擊Finish,
LabVIEW就會按照myRIO Project Templates創建一個myRIO項目,項目瀏覽器如下圖
此Project有兩大部分:My Computer和NI-myRIO-1900,My Computer下面的vi是在計算機上運行的,不會部署到myRIO中去,而NI-myRIO-1900下面的vi是在myRIO上運行的,需要執行部署操作。上圖中創建的是一個myRIO Project,因此在NI-myRIO-1900中有個Main.vi,它在運行前將被部署到myRIO中去,并在myRIO中執行,即使myRIO與計算機斷開連接,Main.vi仍能夠在myRIO中繼續運行。
Main.vi是所選用模板為用戶提供的一個實例,可直接運行。其程序框圖如下
這是一個利用myRIO板載三軸加速度計采集加速度數據的程序,點擊運行后,程序會自動部署,如下圖
部署完畢后點擊Close,程序自動運行,如下圖,將myRIO水平放置(Z軸與水平面垂直)并輕微搖晃,水平放置時,Z軸加速度應為1g,X\Y軸加速度應為0g,但因搖晃動作,3軸加速度均有變化。
值得注意的是:myRIO下面的VI是運行在myRIO板載芯片的ARM嵌入式處理器中的,LabVIEW底層基于網絡的傳輸機制會自動將數據傳至上位機,因此在計算機的LabVIEW界面上也能看到顯示數據。但這會消耗一部分資源,因此絕大部分的嵌入式程序并沒有上述程序中的顯示界面,此方法一般適用于調試階段,或必要的數據監測。
上述程序中的加速度測量是利用myRIO模塊中的Accelerometer Express VI實現的,雙擊Express VI可以進行設置并瀏覽代碼,如下圖
除了Accelerometer Express VI之外,myRIO模塊中還有許多其他Express VI,如下圖,通過Express VI可以快速進行模擬信號輸入輸出、數字信號輸入輸出、自定義按鈕、自定義LED、編碼器、PWM等編程。
由上可知,通過NI提供的myRIO Project Templates可以直接創建一個myRIO項目,項目中包含一個NI為用戶提供的myRIO實例Main.vi,該VI能夠實現3軸加速度數據采集。實際中,我們需要實現更為復雜的功能,可以通過myRIO Project Templates創建myRIO項目并更改Main.vi進行更復雜的嵌入式系統的開發。
四、myRIO上電自啟動程序設置方法
通常myRIO嵌入式系統是脫離計算機工作的,當開發完成后,應將整個項目作為一個獨立的應用程序部署并存儲到myRIO的硬盤上,當下一次啟動myRIO時,無需連接計算機,應用程序自動運行,即上電自啟動程序。生成并部署上電自啟動程序到myRIO上的具體步驟如下(由于寫文途中更換了LabVIEW版本和語言,因此以下圖片顯示為中文,而之前圖片中為英文):
(1)項目瀏覽器窗口,myRIO下面右擊程序生成規范>新建>實時應用程序;
(2)配置實時應用程序:在信息中設置應用名稱,在源文件中將主VI選擇為啟動VI,將子VI選擇為始終包括;?
(3)點擊生成,生成應用程序,幾分鐘后完成,可在項目瀏覽器的NI-myRIO-1900下面看到生成的應用程序,右擊它選擇設置為啟動項;
(4)右擊myRIO下面生成的應用程序,選擇部署將程序部署到myRIO實時操作系統上,重啟myRIO后部署在其上的上電自啟動程序將開始自動運行,且完全斷電之后再上電,之前部署的程序也會自動運行。
根據以上方法,可按照實際需求在myRIO上部署上電自啟動程序,并加以運用。
本期主要介紹了基于NI myRIO和LabVIEW的嵌入式系統開發的基本操作,希望對大家有幫助!
PS:文章部分圖片來源于NI資料,特此說明!
聯系作者請發送郵件:
Email: LabVIEW_Zh@163.com
總結
以上是生活随笔為你收集整理的labview嵌入c代码_LabVIEW与myRIO嵌入式系统开发入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 联想拯救者y7000电池耗电快_游戏新选
- 下一篇: Spring整合Quartz定时任务 在