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