《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 加州大學(xué)伯克利分校采用專用于ARM單片機(jī)的NI LabVIEW嵌入式模塊進(jìn)行嵌入式系統(tǒng)教學(xué)
加州大學(xué)伯克利分校采用專用于ARM單片機(jī)的NI LabVIEW嵌入式模塊進(jìn)行嵌入式系統(tǒng)教學(xué)
Jeff C. Jensen
UC Berkeley
摘要: 采用專用于ARM單片機(jī)的NI LabVIEW嵌入式模塊,對(duì)連接到iRobot Create移動(dòng)機(jī)器人平臺(tái)的Cortex-M3單片機(jī)編程,使得同學(xué)們可開發(fā)一個(gè)嵌入式系統(tǒng),與具有實(shí)時(shí)約束的真實(shí)世界進(jìn)行交流。
關(guān)鍵詞: LabView NI
Abstract:
Key words :

加州大學(xué)伯克利分校的電子工程和計(jì)算機(jī)科學(xué)學(xué)院是全球頂級(jí)學(xué)院之一。 作為本科生課程的一部分,同學(xué)們有機(jī)會(huì)去研究嵌入式系統(tǒng)和計(jì)算物理系統(tǒng)帶來的獨(dú)特挑戰(zhàn)。 同學(xué)們將學(xué)習(xí)實(shí)時(shí)嵌入式系統(tǒng)的并發(fā)性和計(jì)算的并發(fā)模型、傳感器和執(zhí)行機(jī)構(gòu)建模、軟件分析工具、代碼生成以及控制算法等方面的知識(shí)。

要開發(fā)一個(gè)可靠的嵌入式系統(tǒng),需要廣泛的專業(yè)技能,包括靜態(tài)代碼分析、實(shí)時(shí)運(yùn)行以及傳感器和執(zhí)行機(jī)構(gòu)的接口技術(shù)。 我們希望同學(xué)們能完成一系列的實(shí)驗(yàn)室實(shí)習(xí)課程,強(qiáng)化一個(gè)成功的嵌入式工程師所必須掌握的技能。

機(jī)器人硬件平臺(tái)

通過課程實(shí)驗(yàn)作業(yè),同學(xué)們將體會(huì)到如何使用專用于ARMni.com/arm/">單片機(jī)的LabVIEW嵌入式模塊、狀態(tài)圖及ANSI C等多種設(shè)計(jì)工具來控制機(jī)器人。機(jī)器人需要處理傳感器發(fā)送來的真實(shí)世界的數(shù)據(jù),對(duì)它們所處的環(huán)境做出快速反應(yīng)并驅(qū)動(dòng)執(zhí)行機(jī)構(gòu)產(chǎn)生有意義的物理響應(yīng),是嵌入式系統(tǒng)教學(xué)的極佳工具。在設(shè)計(jì)課程材料時(shí),我們也采用了LabVIEW直觀的圖形化設(shè)計(jì)工具,為同學(xué)們提供靈活、開放的程序設(shè)計(jì)平臺(tái),使同學(xué)們可混合使用數(shù)據(jù)流、ANSI C和狀態(tài)圖等程序設(shè)計(jì)方法。

同學(xué)們從iRobot Create等預(yù)先構(gòu)建好的機(jī)械平臺(tái)開始,專注于課程作業(yè)中的軟件及單片機(jī)的相關(guān)內(nèi)容。此移動(dòng)平臺(tái)與iRobot Roomba類似,iRobot Roomba是一款配備有車輪驅(qū)動(dòng)器和30多個(gè)傳感器的智能家用吸塵器。但是,它內(nèi)部的8位處理器對(duì)于復(fù)雜智能機(jī)器人的控制算法而言并不夠用。因此,加州大學(xué)伯克利分校的工程師們將iRobot Create與Luminary Micro Cortex M3 ARM單片機(jī)連接起來,通過通用異步收發(fā)器(UART)串口傳輸指令。這樣就實(shí)現(xiàn)了一個(gè)更耐用、更強(qiáng)大的控制器,創(chuàng)建了更多通用I/O端口,可進(jìn)行高速模數(shù)轉(zhuǎn)換,并且具備使用LabVIEW和ANSI C程序?qū)C(jī)器人進(jìn)行編程的能力。

采用帶有ARM單片機(jī)的iRobot Create平臺(tái),同學(xué)們使用嵌入式軟件技術(shù)將機(jī)器人自主引導(dǎo)到一座小山頂上,并在此過程中避開障礙物。同學(xué)們使用的硬件包括iRobot Create、Luminary Micro ARM Cortex M3、一個(gè)加速度計(jì)以及一個(gè)用于診斷和通信的藍(lán)牙芯片。最初同學(xué)們使用ANSI C對(duì)Luminary進(jìn)行編程,以實(shí)現(xiàn)有限狀態(tài)機(jī)、中斷以及在不使用操作系統(tǒng)的情況下與傳感器和執(zhí)行機(jī)構(gòu)的連接。在使用ANSI C開發(fā)出一個(gè)可以工作的控制器之后,同學(xué)們開始使用LabVIEW在桌面仿真中對(duì)他們的控制器進(jìn)行綜合處理,然后,采用專用于ARM單片機(jī)的LabVIEW嵌入式模塊,使用一個(gè)數(shù)據(jù)流、狀態(tài)圖模型與實(shí)時(shí)操作系統(tǒng)一起生成的控制程序?qū)C(jī)器人進(jìn)行編程。

在上述過程中,同學(xué)們都可以學(xué)習(xí)到建模、靜態(tài)分析、代碼執(zhí)行路徑、程序可達(dá)性分析及實(shí)時(shí)系統(tǒng)性能約束的重要性。在iRobot Create平臺(tái)上實(shí)施實(shí)驗(yàn)室實(shí)踐項(xiàng)目使得同學(xué)們體會(huì)到了諸多挑戰(zhàn),如通過傳感器、執(zhí)行機(jī)構(gòu)以及專用于ARM單片機(jī)的LabVIEW嵌入式模塊提供的實(shí)時(shí)操作系統(tǒng)與真實(shí)世界進(jìn)行交流等。

采用專用于ARM 單片機(jī)的LabVIEW嵌入式模塊帶來的優(yōu)勢

模型和系統(tǒng)實(shí)施之間的聯(lián)系是加州大學(xué)伯克利分校課程的主旨之一。與傳統(tǒng)的ANSI C比較,采用LabVIEW圖形化程序設(shè)計(jì)語言可以更容易地對(duì)并發(fā)和定時(shí)進(jìn)行分析和推理。通過將LabVIEW描述與ANSI C實(shí)施進(jìn)行比較,同學(xué)們能夠?qū)η度胧杰浖脑懋a(chǎn)生更深的理解。通過使用LabVIEW,同學(xué)們可以更快地開發(fā)復(fù)雜的功能,從而使整個(gè)過程更有滿足感,也更有教育意義。

通過充分利用LabVIEW嵌入式圖形化系統(tǒng)設(shè)計(jì)工具,同學(xué)們也對(duì)代碼生成這一嵌入式行業(yè)不斷發(fā)展的技術(shù)有了更深的體會(huì)。擁有了在桌面電腦和實(shí)時(shí)嵌入式平臺(tái)上執(zhí)行LabVIEW程序的能力,同學(xué)們就可以在為嵌入式目標(biāo)生成代碼之前,先對(duì)邏輯執(zhí)行的正確性進(jìn)行驗(yàn)證。在LabVIEW前面板有一個(gè)實(shí)時(shí)更新的圖形界面,強(qiáng)化了調(diào)試環(huán)境,使同學(xué)們可以迅速得到結(jié)果。

最終項(xiàng)目

專用于ARM單片機(jī)的LabVIEW嵌入式模塊提高了效率,同學(xué)們得以在更少的時(shí)間里學(xué)習(xí)和理解更多的軟件開發(fā)概念。作為課程的最后一個(gè)部分,同學(xué)們需要在10周時(shí)間內(nèi)開發(fā)一個(gè)自選項(xiàng)目。選擇LabVIEW和ARM硬件的同學(xué)們開發(fā)出來了智能懸停直升機(jī)、密集跟隨的車輛隊(duì)列以及連接到許多傳感器以實(shí)現(xiàn)路徑尋找和地圖繪制的智能車輛機(jī)器人。由于使用LabVIEW,同學(xué)們得以在各種嵌入式應(yīng)用中以非常快速的速度完成軟件的設(shè)計(jì)、模擬及部署。

 

Author Information:
Jeff C. Jensen
UC Berkeley

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。