最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

8、樹莓派下的LabVIEW Linux RT應(yīng)用程序開發(fā)流程(當(dāng)然,也支持C/Python/QT直接編程)

2021-06-16 12:02 作者:神電測控  | 我要投稿

?????? ?正常情況下,如果我們要使用LabVIEW開發(fā)NI的cRIO等RT控制器程序,除了LabVIEW外,還需要安裝NI的Real-time軟件工具包,也就是NI的實時系統(tǒng)工具包。為了方便廣大愛好者和初學(xué)者,為了減少軟件安裝的繁瑣,NI在去年發(fā)布了一款名為社區(qū)版的LabVIEW 2020,內(nèi)置了支持樹莓派和BBB這類含有Linux內(nèi)核的設(shè)備,讓所有的玩家可以輕輕松松搞定樹莓派和BBB的圖形化開發(fā),并且社區(qū)版的LabVIEW是免費的,也就是說,所有的用戶都可以免費使用這個LabVIEW 2020社區(qū)版。

?????? ?目前這個社區(qū)版是32位的英文版,估計也是為了更好支持樹莓派里面的Linux系統(tǒng),后續(xù)我們會給大家講解如何將NI更為強大的Real-time軟件工具包和其他特定行業(yè)里面的工具包(比如NI Vision機器視覺工具包、聲音振動分析工具包、高級信號處理工具包等),安裝到樹莓派和BBB等Linux RT設(shè)備里面直接使用。

?????? ?本節(jié)通過在樹莓派里面利用LabVIEW編寫一個簡單的波形生成程序,編譯、下載、部署到樹莓派的Linux RT里面運行,并且生成開機自啟動的exe程序,以此向用戶展示一個基本的Linux RT實時應(yīng)用程序開發(fā)過程。

?? ?8.1、在樹莓派上安裝Digilent公司開發(fā)的最新版LINX軟件工具包(前提)

?????? ?由于樹莓派并非NI官方推出的硬件,如果用戶希望利用LabVIEW來開發(fā)樹莓派里面的Linux RT應(yīng)用程序,那么需要先安裝一下Digilent公司(已經(jīng)被NI收購)開發(fā)的LINX工具包,如果用戶更習(xí)慣或者更擅長于C\C++\Python\QT來開發(fā)樹莓派Linux程序的話,可以跳過這一步,不需要安裝LINX工具包。

?????? ?Linux系統(tǒng)下的LINX工具包具體安裝步驟如下:

?????? ?1)通過VNC或者通過PuTTY連接到樹莓派開發(fā)板,使用以下命令在工作目錄下創(chuàng)建一個臨時文件夾:mkdir lvrt20-schroot

?????? ?2)進入剛剛創(chuàng)建好的目錄:cd lvrt20-schroot

?????? ?3)添加labviewmakerhub軟件源(注意,樹莓派需要聯(lián)網(wǎng)才能獲取和更新)

echo "deb [trusted=yes] http://feeds.labviewmakerhub.com/debian/ binary/"| sudo tee -a /etc/apt/sources.list

?????? ?4)更新軟件源:sudo apt-get update

?????? ?5)下載LINX包:apt-get download lvrt20-schroot:armhf

?????? ?6)安裝修改后的軟件包:sudo dpkg -i lvrt20-schroot.deb

?????? ?注意:如果用戶的樹莓派不方便聯(lián)網(wǎng)的話,前5步也可以換一種方式獲得LINX安裝包,那就是用戶自己找個能上網(wǎng)的電腦,然后把第3)步鏈接里面的LINX deb安裝包先下載到本地電腦上,然后再利用U盤或者VNC將其拷貝或者傳輸?shù)綐漭衫锩妫詈笤倮玫?/strong>6)步的命令安裝一下這個LINX deb工具包就可以了。

?? ?8.2、安裝32位的LabVIEW 2020社區(qū)英文版(建議下載離線文件進行安裝)

?????? ?首先,我們需要安裝一下NI最新發(fā)布的LabVIEW 2020社區(qū)版軟件,大家可以直接登錄NI官方網(wǎng)站:ni.com,然后搜索LabVIEW 2020,找到下載頁面。需要注意的是,目前高版本的LabVIEW及其工具包,默認情況下,NI推薦采用網(wǎng)絡(luò)在線安裝,也就是通過NI Package Manager來安裝,好處是用戶再也不用東找西找,直接在NI Package Manager里面搜索需要的軟件關(guān)鍵字,然后自動在線下載和安裝,在一些網(wǎng)絡(luò)比較發(fā)達的國家,這種方式非常好,但是在中國,訪問美國服務(wù)器,速度非常慢,經(jīng)常安裝到一半就斷線,然后又提示用戶重新下載安裝,非常麻煩,除非翻墻。所以我們推薦用戶在NI的官網(wǎng)上將所需要的LabVIEW和軟件工具包先離線下載到本地電腦上再安裝,這樣可以確保萬無一失。

?????? ?打開瀏覽器,輸入下面的鏈接:

https://www.ni.com/zh-cn/support/downloads/software-products/download.labview.html#370001

?????? ?選擇最新的版本:LabVIEW 2020 SP1社區(qū)版,然后,點擊右下角的“下載”按鈕,大小1.91G,如圖9-149所示。對于購買了LabVIEW My FPGA Pro5軟件工具包的用戶,我們會提供全套軟件的百度云盤下載鏈接。

圖9-149:從NI官網(wǎng)上可以下載免費的LabVIEW 2020社區(qū)版(支持樹莓派和BBB編程)

? ? ? ? 下載完成后,直接雙擊安裝,安裝結(jié)束后,重啟電腦就可以了,安裝過程這里就不再贅述了!

?? ?8.3、新建樹莓派Linux RT終端項目(LabVIEW 2020)

?????? ?要想使用LabVIEW開發(fā)帶Linux RT系統(tǒng)的樹莓派或者BBB或者RK3399里面的應(yīng)用程序,必須先創(chuàng)建一個Real-time實時終端,后續(xù)的操作過程跟NI的cRIO完全一樣。

?????? ?首先,啟動LabVIEW 2020之后,點擊左上角的“File”選擇“New...”,如圖9-150所示;在彈出來的頁面中,選擇“Empty Project”,新建一個空白的項目,如圖9-151所示。

圖9-150:啟動LabVIEW選擇New新建


圖9-151:新建一個空白的項目

? ? ? ? 點擊“OK”按鈕即可創(chuàng)建出一個空白的LabVIEW項目,保存一下,取名為“LabVIEW_Raspi_CM4+Linux_RT+PCIe+FPGA.lvproj”,如圖9-152所示。這個項目名稱的含義是,我們采用LabVIEW直接開發(fā)工業(yè)級樹莓派CM4,通過PCIe總線跟FPGA板子進行通信,無論是樹莓派里面的Linux RT程序還是FPGA里面的程序都采用LabVIEW直接開發(fā)。

圖9-152:將空白項目保存一下,重名為“LabVIEW_Raspi_CM4+Linux_RT+PCIe+FPGA.lvproj”

? ? ? ??右擊“LabVIEW_Raspi_CM4+Linux_RT+PCIe+FPGA.lvproj”項目名稱,在下拉菜單里面選擇“New>>Targets and Devices...”,如圖9-153所示。在彈出來的終端選擇對話框里面,先切換到“New target or device”,再展開下面的LINX文件夾,找到樹莓派“Raspberry Pi”,如圖9-154所示,雖然名稱不是最新的4代樹莓派CM4,但是并不影響我們的使用;當(dāng)然用戶如果有BBB這個板子,也可以選擇,反正跑的都是NI的Linux RT系統(tǒng)。

圖9-153:右擊項目名稱選擇新建一個終端和設(shè)備


圖9-154:在彈出來的選擇頁面里面找到離線模式下的Raspberry Pi樹莓派終端

? ? ? ??點擊“OK”按鈕,即可在空白的項目里面新建出來一個樹莓派RT設(shè)備,如圖9-155所示,這個默認的名稱是早期的2代樹莓派,這里,我們直接將其重命名為Raspberry Pi CM4,也就是我們買的最新款的工業(yè)級樹莓派CM4,如圖9-156所示。

圖9-155:默認新建出來的是2代樹莓派RT終端設(shè)備
圖9-156:將樹莓派名稱重命名為最新款的工業(yè)級CM4(4代樹莓派)

? ? ? ??細心的用戶發(fā)現(xiàn)了,默認創(chuàng)建的樹莓派RT終端設(shè)備的IP地址全是0,所以無法跟實際的樹莓派硬件互聯(lián),因此,這里我們需要先把樹莓派項目里面的IP地址改成我們之前配置的樹莓派有線或者無線IP地址。具體操作過程如下:

?????? ?右擊樹莓派RT終端設(shè)備名稱,在下拉菜單里面“Properties”屬性,如圖9-157所示;然后在彈出來的屬性配置頁面里面找到IP地址一欄,輸入樹莓派的有線或者無線IP地址,考慮到有線傳輸更穩(wěn)定,所以這里,我們將IP地址設(shè)置成:169.254.105.254,如圖9-158所示。

圖9-157:右擊樹莓派設(shè)備終端名稱選擇屬性
圖9-158:將IP地址改成實際的樹莓派硬件IP地址

? ? ? ??另外,有些用戶會問,我們這里面編寫的LabVIEW RT VI編譯下載到樹莓派里面,具體的路徑是多少呢?能不能人為修改默認的路徑呢?答案是可以的,就在剛剛打開的屬性頁面里面,選中左側(cè)最下面的“Miscellaneous”其他選項,可以看到,默認下載到樹莓派里面的路徑是:/home/lvuser/natinst/bin,如圖9-159所示;如果用戶想自定義一個路徑,可以在這個地方進行修改。

圖9-159:VI編譯下載到樹莓派里面的默認路徑(支持用戶修改)

? ? ? ??最后,將樹莓派通過網(wǎng)線接到Windows開發(fā)電腦上,給樹莓派上電,然后右擊樹莓派項目終端名稱,在下拉菜單里面選擇“Connect”,如圖9-160;此時,上位機LabVIEW會嘗試去鏈接下位機樹莓派設(shè)備,如果一切正常的話,在彈出來的“部署過程”里面可以看到初始化、計算依賴關(guān)系、下載以及部署成功的提示,如圖9-161所示;點擊“Close”按鈕關(guān)閉對話框,重新回到樹莓派終端項目里面,此時,樹莓派小圖標右下角的LED燈亮起了,如圖9-162所示,說明上位機開發(fā)電腦上的LabVIEW Linux RT已經(jīng)成功連接上了樹莓派終端設(shè)備。

圖9-160:右擊樹莓派項目終端選擇Connect連接
圖9-161:彈出部署過程對話框(跟NI的LabVIEW RT完全一樣)
圖9-162:連接成功后的樹莓派Linux RT設(shè)備指示燈亮起了

? ? ? ??至此,關(guān)于上位機LabVIEW跟樹莓派之間的Linux RT項目準備工作就完成了!

?? ?8.4、新建樹莓派Linux RT應(yīng)用程序(VI)

?????? ?為了測試樹莓派里面的Linux RT能不能正常運行LabVIEW編寫的VI程序,我們需要在這個終端下面新建一個VI,注意,這個VI隸屬于樹莓派,一般也稱之為RT系統(tǒng)下的實時應(yīng)用程序VI。

?????? ?這個實驗例程是本書關(guān)于樹莓派的第一個測試程序,為了結(jié)構(gòu)和層次分明,我們先右擊“Raspberry Pi CM4”終端,在下拉菜單里面選擇“New>>Virtual Folder”新建一個虛擬文件夾,如圖9-163所示;將這個虛擬文件夾重命名為“實驗1-樹莓派波形仿真顯示”,如圖9-164所示;然后在這個虛擬文件夾上右擊,選擇“New>>VI”,新建一個Linux RT下的VI應(yīng)用程序,如圖9-165所示;最后將這個VI保存一下,命名為“實驗1-樹莓派波形仿真顯示.vi”,如圖9-166所示。

圖9-163:右擊樹莓派終端新建一個虛擬文件夾
圖9-164:將新建出來的虛擬文件夾重命名為“實驗1-樹莓派波形仿真顯示”
圖9-165:右擊虛擬文件夾新建一個RT下的應(yīng)用程序VI
圖9-166:將新建出來的VI保存命名為“實驗1-樹莓派波形仿真顯示.vi”

? ? ? ??雙擊打開這個新建的VI,切換到程序框圖里面,添加一個while循環(huán)和一個波形仿真快速VI,然后在前面板上放置一個波形圖顯示控件和一個反應(yīng)while循環(huán)運行的數(shù)值顯示控件,因為這個程序很簡單,具體的編寫過程這里就不再贅述了,直接給出VI程序框圖和前面板界面,分別如圖9-167和9-168所示。

圖9-167:LabVIEW Linux RT下波形仿真生成和顯示程序框圖
圖9-168:LabVIEW Linux RT下波形仿真生成和顯示前面板


?? ?8.5、編譯、下載、運行樹莓派Linux RT應(yīng)用程序(VI)

?????? ?當(dāng)RT下的VI編寫完成后,就可以編譯下載到樹莓派里面運行測試了。對于一般的Linux嵌入式設(shè)備來說,程序編譯、下載和調(diào)試非常的麻煩,但是對于LabVIEW來說,非常簡單,就跟開發(fā)上位機VI一樣,直接點擊運行箭頭即可自動完成編譯、下載和部署,并且也支持在線前面板和程序框圖里面的探針和斷點運行,可以說,完全繼承了NI Linux RT下的所有優(yōu)點。

?????? ?我們直接點擊“實驗1-樹莓派波形仿真顯示.vi”程序前面板上的運行箭頭,然后會彈出一個部署進度對話框,可以看到上位機會把這個程序框圖里面用到的NI Linux RT環(huán)境下的各種VI庫部署到樹莓派里面,部署完成后會提示成功,如圖9-169所示;細心的用戶可以觀察到,樹莓派當(dāng)前的Memory內(nèi)存空間還剩下91%,非常多,說明我們用LabVIEW開發(fā)的Linux RT程序?qū)嶋H上不會占用太多資源,程序雖然部署下去了,但是并沒有運行,我們需要點擊“Close”關(guān)閉這個對話框或者勾選下面的“Close on successful compilation”,這樣以后每次程序下載部署完成后都會自動關(guān)閉這個窗口,如圖9-170所示。

圖9-169:點擊VI運行箭頭后彈出來的部署進度信息提示框
圖9-170:點擊Close按鈕關(guān)閉部署窗口

? ? ? ??部署窗口關(guān)閉之后,VI立刻運行起來了,前面板的波形圖顯示控件里面,出現(xiàn)一條向左慢慢移動的正弦曲線,如圖9-171所示,這是因為我們在波形仿真Express VI里面設(shè)置的正弦信號頻率跟采樣率之間不能整除導(dǎo)致的,就像示波器一樣,這樣可以動態(tài)的觀察實驗現(xiàn)象;同時代表while循環(huán)的“Running”顯示控件里面的數(shù)值也按照1ms的速度遞增起來,因為程序框圖里面的while循環(huán)周期設(shè)置的是1ms。感興趣的用戶還可以測試一下探針和斷點功能,要想把VI停下來,可以點擊前面板上的“Stop”停止按鈕,退出while循環(huán)。

圖9-171:LabVIEW Linux RT下的VI運行起來了


?? ?8.6、生成開機啟動項下載到樹莓派Linux RT里面(startup.rtexe)

?????? ?上面的VI雖然已經(jīng)編譯下載部署到樹莓派里面運行了,一旦樹莓派重啟,這個VI程序就沒有了,這是因為先前部署到樹莓派里面的VI,實際是在Linux RT內(nèi)存里面運行的,并沒有下載或者說固化到樹莓派的硬盤上,因此,掉電就沒有了。

?????? ?本節(jié)教會大家如何將我們編寫好的Linux RT VI程序固化到樹莓派的硬盤里面,并且可以開機自啟動運行起來。

?????? ?首先,右擊“Build Specifications”編譯生成規(guī)范,在下拉菜單里面選擇“Real-Time Application”創(chuàng)建一個應(yīng)用程序編譯生成規(guī)范,如圖9-172所示;然后在彈出來的生成規(guī)范屬性配置頁面里面進行參數(shù)設(shè)置,考慮到后續(xù)還有很多其他實驗要編譯下載,建議大家給每個VI的編譯生成規(guī)范取個名稱,比如第一個實驗,我們將名稱改成“實驗1-樹莓派波形仿真生成顯示”,以示區(qū)分,下面的“Target filename”名稱建議不要改,就用默認的“startup.rtexe”,如圖9-173所示,因為同一個時刻我們能在樹莓派跑的開機自啟動VI就一個;接著,在左側(cè)的目錄里面切換到“Source Files”,將實驗1 對應(yīng)的主VI添加到右側(cè)的“Startup VIs”一欄中,如圖9-174所示;如果用戶想修改一下編譯生成的rtexe啟動程序所在的樹莓派路徑,可以在左側(cè)目錄里面選中“Destinations”,然后就能修改樹莓派上的目標路徑了,如圖9-175所示,一般情況下,不建議改動,默認路徑就行;最后點擊屬性頁面下方的“OK”按鈕關(guān)閉這個窗口返回到LabVIEW樹莓派終端項目下,此時,程序生成規(guī)范下面多出來一個名為“實驗1-樹莓派波形仿真生成顯示”的編譯選項,如圖9-176所示。

圖9-172:右擊程序生成規(guī)范新建一個RT exe應(yīng)用程序
圖9-173:將程序生成規(guī)范名稱修改為與實驗內(nèi)容對的上的名字,以示區(qū)分
圖9-174:將前面編寫好的Linux RT VI添加到啟動項里面
圖9-175:用戶可以自己修改下載到樹莓派上的startup.rtexe文件路徑(一般不建議改動)


圖9-176:創(chuàng)建了一個Linux RT下的實時exe應(yīng)用程序生成規(guī)范

? ? ? ? 接下來,我們可以右擊這個RT exe程序生成規(guī)范,在彈出來的下拉菜單里面選擇“Set as startup”設(shè)置為啟動項,如圖9-177所示;然后再右擊選擇“Run as startup”將rtexe程序設(shè)置為開機啟動項并且下載到樹莓派里面運行,如圖9-178所示。

圖9-177:右擊程序生成規(guī)范將rtexe設(shè)置為啟動項
圖9-178:將rtexe作為啟動項部署下載到樹莓派里面運行

? ? ? ? 在作為啟動項編譯下載之前,還需要右擊程序生成規(guī)范名稱Build一下,生成rtexe程序,如圖9-179所示,選擇Explorer可以瀏覽找到編譯出來的rtexe程序所在的本地電腦路徑;然后再點擊這個“Run as startup”,LabVIEW會立刻將選中的VI進行下載部署到樹莓派里面,同時會控制樹莓派進行重啟,并提醒用戶,如圖9-180所示;重啟過程中,上位機LabVIEW樹莓派終端會自動斷開,重啟完成后,右擊樹莓派終端選擇“Connect”連接時,會彈出一個提示框,如圖9-181所示,大致的意思就是:上位機發(fā)現(xiàn)樹莓派里面已經(jīng)有一個rtexe程序在運行了,如果你想繼續(xù)連接這個樹莓派進行開發(fā)的話,可以單擊“OK”按鈕,終止樹莓派里面部署的startup.rtexe程序,因為LabVIEW認為,只要選擇連接,就會進去開發(fā)者模式,所以終止樹莓派里面的rtexe程序運行也是合情合理的。

圖9-179:部署rtexe作為開機運行之前,先將VI編譯生成rtexe程序
圖9-180:rtexe程序部署完成后,提醒用戶即將重啟樹莓派
圖9-181:重啟成功后,再次連接樹莓派時會提醒用戶里面已經(jīng)有一個Startup.rtexe實時程序在運行了


8、樹莓派下的LabVIEW Linux RT應(yīng)用程序開發(fā)流程(當(dāng)然,也支持C/Python/QT直接編程)的評論 (共 條)

分享到微博請遵守國家法律
潜山县| 云龙县| 石城县| 开封县| 永定县| 徐汇区| 雅江县| 大名县| 保山市| 穆棱市| 永川市| 张家界市| 新巴尔虎右旗| 博兴县| 亳州市| 德江县| 蒙山县| 山东省| 高台县| 巫溪县| 南靖县| 新乡市| 南安市| 麦盖提县| 昌宁县| 兖州市| 靖边县| 马山县| 东丰县| 长垣县| 华坪县| 宜黄县| 柳林县| 勐海县| 淮南市| 逊克县| 南开区| 长汀县| 桐城市| 荣成市| 恩平市|