基于LabVIEW構建智能的移動機器人及無人駕駛車
實例分析1:南洋理工大學使用NI LabVIEW設計救生機器人蜘蛛
本文引用地址:http://www.czjhyjcfj.com/article/98860.htm南洋理工大學開發了一個用于支持營救工作的六足機器人蜘蛛。它是一個尺寸較小、可移動的智能機器人,在搜尋被陷的受害者時,它可以越過障礙并到達通常難以觸及的地方。替代如清掃雷區使之無雷化等危險任務中的工作人員也是機器人蜘蛛的另一個潛在應用領域。
他們設計了一個高度可移動的行走方案,它由六只獨立的下肢組成,可以任意方向移動機器人,即使在機器人移動通常不可行或過于危險的地帶。行走與旋轉均屬于模仿六足昆蟲而得的基本的高層次運動模式。通過三條下肢移動而另外三條下肢抬高,機器人可以達到期望的行走速度,并提供惡劣地帶所需的足夠平衡。爬行時,機器人可以擠壓通過緊湊的空間和狹縫。單下肢的低層次運動步態是3D空間內的幾何原語,如長方形或圓形軌道。
24個自由度的多功能機電系統及智能運動控制
下肢結構與運動控制構成了機器人蜘蛛關鍵特性的一部分。24只智能DC有刷電機共同驅動這些下肢,并充當行走結構中不可或缺的關節。這樣得到了一個堅固的輕型結構,從而降低了功耗并改善了運動動態特性。
除了這些下肢,機器人蜘蛛的特性還在于典型的自主機器人子系統,其中包括機器視覺、遠程測量和無線通信。機器人堅固的殼體內包含有嵌入式硬件、兩節7.2伏的鋰聚合物電池和電量測量裝置。任務參數、I/O設置和新的運動步態均可以通過無線通信或可移動存儲介質傳遞。
機器人蜘蛛的低層次運動有賴于運行時計算的復雜數學模型。憑借ADI公司的Blackfin處理器的高級嵌入式計算能力和LabVIEW的確定性實時性能,機器人的運動表現得有力而平穩。基于NI LabVIEW嵌入式模塊的程序連續運行一個逆動力學算法,算法包含三角函數和矩陣運算,求解恰當的關節角q1與q2,以沿著3D空間內的期望軌線精確移動末端執行裝置。
所有六足的關節角度的計算并行完成以確保動態運動,相應地也得到了連續計算所得的24個電機的設置點。這些設置點通過一個串行RS485網絡傳遞至每只電機,并由分散PD控制器轉換為實際執行動作。通過同樣的網絡,完成所有24只執行裝置的位置、反饋和溫度讀數的采集。
圖形化的實時系統設計平臺
機器人蜘蛛應用軟件是利用面向Blackfin處理器的LabVIEW嵌入式模塊編程實現的。LabVIEW為高層次編程、圖形化調試、圖形化多任務處理和確定性的實時行為,提供了一個理想的嵌入式軟件平臺。面向對象的設計模式有助于進一步控制圖形化層次上的復雜度。例如電機或傳感器等主要對象,通過LabVIEW中表示類的功能性全局變量加以抽象。主要的應用框架由以下多個任務組成。
● 頂層主循環對由一個經典狀態機表示的動作進行規劃,而狀態機通過軟件隊列和同步方法(如信號量)與其他循環連接。通信任務保持一個與外部世界的無線數據連接。
● 視覺任務負責低層次的圖像處理和距離讀數。
● 運動控制任務管理高層次的運動模式與低層次的肢體控制,并監測馬達的位置與狀態。
● 日常任務充當一個通用錯誤處理器。檢測事件與異常,并將其及時間記錄到可移動的存儲介質,以供后續讀取。
通過采用LabVIEW嵌入式模塊所提供的圖形化編程環境,以及Blackfin處理器的高處理器性能,開發周期也大為縮短。基于LabVIEW的圖形化快速調試模式在算法的工程實現過程中非常有用,縮短了5倍的開發時間。
評論