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