基于LabVIEW和CompactRIO設計飛蟲(chóng)機器人的研究
挑戰:
開(kāi)發(fā)一個(gè)靈活的高帶寬機器人設備,以便測量和仿真有翼昆蟲(chóng)的飛行方式。
解決方案:
利用NI的LabVIEW軟件和CompactRIO硬件制造一個(gè)快速、模塊化、易于使用的仿生機器人平臺,它涉及各種工業(yè)協(xié)議和實(shí)時(shí)閉環(huán)激勵信號生成。
蒼蠅能夠高速追逐,并精確地降落在盤(pán)子的邊緣,這其中的機動(dòng)性令人非常感興趣。我們可以利用蒼蠅作為模型系統研究神經(jīng)信息處理、空氣動(dòng)力學(xué)和遺傳學(xué),此外,它們還可以快速、精確地使用它們的生物傳感器、控制器和執行機構。人們對它們這樣的能力很感興趣但是難以進(jìn)行研究。測量和激勵裝置必須具有高帶寬、低延遲,并擁有靈活的界面。同時(shí),易用性和模塊化特性也是跨學(xué)科和合作研究的關(guān)鍵。
我們利用CompactRIO 控制器和LabVIEW 圖形系統設計軟件來(lái)研究飛蟲(chóng)如何實(shí)現出色的飛行控制。我們采用了數字I/O模塊來(lái)連接一個(gè)基于LED的視覺(jué)激勵場(chǎng),它具備了時(shí)間和空間的精確的分辨率,使得我們可以有效刺激蒼蠅的視覺(jué)系統。記錄昆蟲(chóng)的響應需要一個(gè)快速、靈活的采集系統。LabVIEW能夠提供記錄這些信號所需要的速度和模塊化特性,并且能夠將它們作為實(shí)時(shí)反饋來(lái)生成刺激信號。這樣,我們就能夠把將蒼蠅作為一個(gè)活的傳感器,并嵌入到一個(gè)科技系統中。
我們開(kāi)發(fā)了一個(gè)試驗。在試驗中,我們把一只果蠅用繩拴住,通過(guò)果蠅的動(dòng)作來(lái)控制伊普克(e-puck)機器人。該機器人是一個(gè)小型移動(dòng)機器人,是一個(gè)大學(xué)的研究項目,它被設計用于通過(guò)充滿(mǎn)障礙的環(huán)境。從綁定在機器人上的照相機和接近傳感器可以獲得反饋,用來(lái)確定向蒼蠅展示的視覺(jué)刺激、翅振頻率和幅度等飛行參數,來(lái)控制機器人運動(dòng)。蒼蠅和機器人之間的傳遞函數會(huì )發(fā)生變化,從而實(shí)現一系列的試驗模式。
蒼蠅的高速電影:加速的LED視覺(jué)場(chǎng)
視覺(jué)激勵場(chǎng)包括8個(gè)綠色LED 面板,它們通過(guò)I2C協(xié)議連接到定制的控制器。在過(guò)去的設計中,所有的飛行都由一條總線(xiàn)進(jìn)行控制。為了實(shí)現更高的幀率,并根據蒼蠅的反饋來(lái)調節視覺(jué)激勵,我們必須使用多條并行的總線(xiàn)。最終,我們選擇了NI cRIO-9014 實(shí)時(shí)控制器和一體化NI cRIO-9104可重新配置嵌入式機箱更換了最初的控制器。
蠅控機器人:從蒼蠅到機器人
在實(shí)驗裝置中,果蠅被用繩拴在一個(gè)環(huán)形的LED面板陣列的中心。雖然昆蟲(chóng)不能夠移動(dòng),但仍可以拍打翅膀并且按照和自由飛行相同的方式飛行。數字振翅分析儀會(huì )獲得電流頻率、振幅、位置均值和蒼蠅振翅的相位。這些行為狀態(tài)矢量通過(guò)用戶(hù)數據協(xié)議(UDP)包傳輸到一臺運行LabVIEW的主機上。我們可以在主機上應用自定義傳遞函數計算出更新的伊普克(e-puck)機器人的輪轉速。這些數值再通過(guò)藍牙(Bluetooth)發(fā)送到機器人上。
從機器人到蒼蠅
當我們利用昆蟲(chóng)的行為來(lái)操縱機器人時(shí),來(lái)自機器人設備的反饋會(huì )修改面向昆蟲(chóng)的視覺(jué)顯示方式。反饋由安裝在機器人頂部的三個(gè)線(xiàn)性照相機和八個(gè)接近傳感器給出。照相機以10Hz的頻率采集,每幀擁有102像素。接近傳感器以20Hz的頻率輸出標定后的數據。主機會(huì )通過(guò)藍牙(Bluetooth)接收這些信號并且應用第二個(gè)自定義傳遞函數,以生成在LED視覺(jué)場(chǎng)上顯示的下一幀圖像。
主機應用程序通過(guò)以太網(wǎng)(Ethernet)把新的圖像模式發(fā)送到實(shí)時(shí)控制器。然后這一圖像模式被劃分為8×8像素塊,每個(gè)像素塊將與一個(gè)LED面板相對應,并被轉換為I2C指令。為了實(shí)現最大處理量,這些數據會(huì )經(jīng)由DMA(直接內存存?。┑腇IFO(先進(jìn)先出)隊列傳遞到FPGA(現場(chǎng)可編程門(mén)陣列)。中斷向量可以保證在實(shí)時(shí)控制器命令生成和FPGA底層硬件通信之間的同步。而后,FPGA背板采用I2C協(xié)議控制12條總線(xiàn),每條總線(xiàn)分別控制五個(gè)面板。從而,機器人所看到的環(huán)境決定了針對蒼蠅的視覺(jué)刺激,而蒼蠅對視覺(jué)刺激的響應也改變了機器人前進(jìn)的路徑。
視覺(jué)刺激的幀率大約在30Hz和400Hz之間,這取決于模式的深度和是否垂直對稱(chēng)??刂苹芈分械睦鄯e延遲小于50毫秒并且這主要是由傳感器信息是經(jīng)由藍牙從機器人傳輸到主機而造成的。
有效地設計:靈活的界面和模塊化的結構
借助于LabVIEW和CompactRIO,我們可以通過(guò)各種不同的協(xié)議連接到一系列的研究工具。NI和LabVIEW的網(wǎng)絡(luò )用戶(hù)社區提供的極大的靈活性和許多范例程序,這使得基于LabVIEW設計的應用有效地替代了實(shí)驗生物學(xué)中的定制控制器。
我們設計了一種友好的GUI(圖形用戶(hù)界面),它為實(shí)驗者提供了必要的控制手段和信息,從而簡(jiǎn)化了多個(gè)硬件平臺上運行的代碼的復雜度。這一功能在一些跨學(xué)科的應用中非常有效,能夠增進(jìn)生物學(xué)家、數學(xué)家、物理學(xué)家和工程師之間的密切合作。此外,LabVIEW代碼的模塊性和可移植性也使其能夠在實(shí)驗室。
評論