《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 基于LabVIEW構建智能的移動機器人及無人駕駛車
基于LabVIEW構建智能的移動機器人及無人駕駛車
摘要: 基于LabVIEW構建智能的移動機器人及無人駕駛車
Abstract:
Key words :

    引言

    1956年,恩格伯格和喬治迪沃爾發(fā)明了第一個真正意義上的機器人,Unimate,可以執(zhí)行存儲在磁鼓存儲器中的系統(tǒng)任務。到1961年,Unimate已經(jīng)被成功應用于壓鑄件的運輸和焊接,傳統(tǒng)上這樣的工作由工人擔任——冒著因排出氣體中毒或喪失肢體的風險。 Unimate是機器人用于危險任務場合的早期例子,如今,機器人系統(tǒng)已經(jīng)被廣泛應用于工業(yè)、農(nóng)業(yè)、軍事、航空航天、教育等各個領域。

    機器人分類復雜且關鍵技術眾多,從廣義范疇上說,通常所說的機器人主要包括教育機器人、移動機器人、工業(yè)機械臂三大類。機械臂發(fā)展時間早,產(chǎn)業(yè)化程度高,相對已經(jīng)有了成熟的行業(yè)解決方案,特別在汽車制造等領域,機械臂已被廣泛的運用于產(chǎn)線裝配。移動機器人構成復雜、應用靈活,目前商業(yè)化程度還不高,相對處于前沿研究的階段,因此一直以來都是科學家和工程師們關注的重點。 本文將主要探討移動機器人及無人駕駛車的研究和開發(fā)。

    圖1 機器人系統(tǒng)的分類

    盡管移動機器人構成復雜且關鍵技術眾多,但具有某些共同的構架和組成部分,是一個融合了眾多機電系統(tǒng)和子系統(tǒng)的綜合體系,并通過這些組成部分與子系統(tǒng)的有機結合協(xié)調工作,雖然部分子系統(tǒng)已有現(xiàn)成的軟硬件工具和解決方案,但如何快速地把各子系統(tǒng)集成在一起、進行早期的整體功能性驗證,就成了決定機器人設計成敗的關鍵性環(huán)節(jié)。

圖形化系統(tǒng)設計——機器人設計的前沿方法

    在Google X PRIZE機構、FIRST組織(科學技術的啟示與認知組織)、RoboCup以及美國國防高級研究計劃局(DARPA)之間展開的競爭推進了機器人學領域的創(chuàng)新。富有創(chuàng)新思維的開發(fā)者們將機器人學的前沿方法推進到了圖形化系統(tǒng)設計。在LabVIEW圖形化編程平臺下,機器人學的領域專家能夠對復雜的機器人方案進行快速的原型設計。這些創(chuàng)新工作者能夠不用關心底層的實現(xiàn)細節(jié),可以將注意力集中到解決手上的工程問題中去。

機器人設計通常包含以下部分的工作內容,如圖2所示:

感知系統(tǒng)-連接到陀螺儀、CCD、光電、超聲等傳感器,獲取并處理信息
決策規(guī)劃-相當于機器人的‘大腦’,根據(jù)算法進行控制決策,完成管理協(xié)調、信息處理、運動規(guī)劃等任務
執(zhí)行控制-根據(jù)具體的作業(yè)指令,通過驅動控制器、編碼器和電機完成機器人的伺服控制與運動執(zhí)行
網(wǎng)絡通訊與控制-機器人各子系統(tǒng)間的通訊網(wǎng)絡,完成分布式控制與實時控制

   過去,由于在每個領域中必須使用各自的傳統(tǒng)工具,其中涉及的知識具有較大的縱向深度,機械工程師、電氣工程師以及程序員團隊都各自領導機器人學的開發(fā)。LabVIEW和NI硬件提供了一個獨特的、功能多樣的平臺,它提供了一套標準的可供所有機器人設計人員使用的工具,從而使機器人開發(fā)得到了統(tǒng)一。

   來自弗吉尼亞理工大學機器人學與機械實驗室(RoMeLa)的工科學生,在Dennis Hong教授的領導下正在進行智能動態(tài)擬人機器人(DARwin)的雙足類人機器人的開發(fā)和研究,目的是對假肢進行研究和開發(fā)。DARwin使用NI LabVIEW圖形化系統(tǒng)設計平臺,能夠實現(xiàn)全范圍運動,并且能夠準確地模擬人類運動。學生使用LabVIEW分析動態(tài)雙足運動、設計并開發(fā)機器人控制系統(tǒng)的原型。如果開發(fā)的原型能夠令人滿意地工作,他們就將控制算法部署到運行LabVIEW實時模塊的PC/104單板計算機上。

   通過LabVIEW,設計人員無需成為計算機專家或程序員,就可以開發(fā)高級機器人。例如,一位只有有限LabVIEW和機器視覺經(jīng)驗的學生在短短幾個小時之內,就設計了一個讓機器人利用它帶有的IEEE 1394相機和NI機器視覺開發(fā)模塊跟蹤一個紅球的算法。工程師們使用LabVIEW和NI硬件,就可以使用功能強大的圖形化編程語言快速地設計并開發(fā)復雜算法的原型;并通過代碼生成方便地將控制算法部署到PC、FPGA、微控制器或實時系統(tǒng)之中;還可以與幾乎所有的傳感器、執(zhí)行器進行連接。此外,通過LabVIEW和NI硬件平臺,可以支持CAN、以太網(wǎng)、串口、USB等多種接口,方便地構建機器人系統(tǒng)的通訊網(wǎng)絡?,F(xiàn)在,領域專家不僅僅能夠完成機械工程師的工作,還能夠成為機器人設計者。

    實例分析1:南洋理工大學使用NI LabVIEW設計救生機器人蜘蛛

    南洋理工大學開發(fā)了一個用于支持營救工作的六足機器人蜘蛛。它是一個尺寸較小、可移動的智能機器人,在搜尋被陷的受害者時,它可以越過障礙并到達通常難以觸及的地方。替代如清掃雷區(qū)使之無雷化等危險任務中的工作人員也是機器人蜘蛛的另一個潛在應用領域。

    他們設計了一個高度可移動的行走方案,它由六只獨立的下肢組成,可以任意方向移動機器人,即使在機器人移動通常不可行或過于危險的地帶。行走與旋轉均屬于模仿六足昆蟲而得的基本的高層次運動模式。通過三條下肢移動而另外三條下肢抬高,機器人可以達到期望的行走速度,并提供惡劣地帶所需的足夠平衡。爬行時,機器人可以擠壓通過緊湊的空間和狹縫。單下肢的低層次運動步態(tài)是3D空間內的幾何原語,如長方形或圓形軌道。

圖3  基于NI LabVIEW設計的救生機器人蜘蛛

1、24個自由度的多功能機電系統(tǒng)及智能運動控制
  
    下肢結構與運動控制構成了機器人蜘蛛關鍵特性的一部分。24只智能DC有刷電機共同驅動這些下肢,并充當行走結構中不可或缺的關節(jié)。這樣得到了一個堅固的輕型結構,從而降低了功耗并改善了運動動態(tài)特性。

    除了這些下肢,機器人蜘蛛的特性還在于典型的自主機器人子系統(tǒng),其中包括機器視覺、遠程測量和無線通信。機器人堅固的殼體內包含有嵌入式硬件、兩節(jié)7.2伏的鋰聚合物電池和電量測量裝置。任務參數(shù)、I/O設置和新的運動步態(tài)均可以通過無線通信或可移動存儲介質傳遞。

    機器人蜘蛛的低層次運動有賴于運行時計算的復雜數(shù)學模型。憑借ADI公司的Blackfin處理器的高級嵌入式計算能力和LabVIEW的確定性實時性能,機器人的運動表現(xiàn)得有力而平穩(wěn)?;贜I LabVIEW嵌入式模塊的程序連續(xù)運行一個逆動力學算法,算法包含三角函數(shù)和矩陣運算,求解恰當?shù)年P節(jié)角Θ1與Θ2,以沿著3D空間內的期望軌線精確移動末端執(zhí)行裝置。

    所有六足的關節(jié)角度的計算并行完成以確保動態(tài)運動,相應地也得到了連續(xù)計算所得的24個電機的設置點。這些設置點通過一個串行RS485網(wǎng)絡傳遞至每只電機,并由分散PD控制器轉換為實際執(zhí)行動作。通過同樣的網(wǎng)絡,完成所有24只執(zhí)行裝置的位置、反饋和溫度讀數(shù)的采集。

2、圖形化的實時系統(tǒng)設計平臺

    機器人蜘蛛應用軟件是利用面向Blackfin處理器的LabVIEW嵌入式模塊編程實現(xiàn)的。LabVIEW為高層次編程、圖形化調試、圖形化多任務處理和確定性的實時行為,提供了一個理想的嵌入式軟件平臺。面向對象的設計模式有助于進一步控制圖形化層次上的復雜度。例如電機或傳感器等主要對象,通過LabVIEW中表示類的功能性全局變量加以抽象。

主要的應用框架由以下多個任務組成:

•頂層主循環(huán)對由一個經(jīng)典狀態(tài)機表示的動作進行規(guī)劃,而狀態(tài)機通過軟件隊列和同步方法(如信號量)與其它循環(huán)連接。通信任務保持一個與外部世界的無線數(shù)據(jù)連接。
•視覺任務負責低層次的圖像處理和距離讀數(shù)。
•運動控制任務管理高層次的運動模式與低層次的肢體控制,并監(jiān)測馬達的位置與狀態(tài)。
•日常任務充當一個通用錯誤處理器。檢測事件與異常,并將其及時間記錄到可移動的存儲介質,以供后續(xù)讀取。

    通過采用LabVIEW嵌入式模塊所提供的圖形化編程環(huán)境,以及Blackfin處理器的高處理器性能,開發(fā)周期也大為縮短?;贚abVIEW的圖形化快速調試模式在算法的工程實現(xiàn)過程中非常有用,縮短了5倍的開發(fā)時間。

實例分析2:弗吉尼亞理工大學使用NI LabVIEW設計全自主地面車參加DARPA 城市挑戰(zhàn)賽

    DARPA城市挑戰(zhàn)賽需要設計一輛全自主地面車能夠在城市環(huán)境中自動導航行駛。在整個賽程中,全自主車需要在6小時內穿越60英里,途經(jīng)道路、路口和停車場等各種交通狀態(tài)。在比賽開始時,參賽者會拿到任務檔案公路網(wǎng)地圖,并指定需要按一定順序訪問的檢查站。車輛需要考慮所選道路的車速限制,可能的道路堵塞,以及其他交通狀況。車輛在行駛中必須遵守交通規(guī)則,在十字路口注意安全駕駛和避讓,妥善地處理與其他車輛之間的互動,以最高30英里的時速避讓靜態(tài)和動態(tài)的障礙物。

    來自弗吉尼亞理工大學的團隊需要在12個月開發(fā)出全自主地面車,他們將開發(fā)任務分成四個主要部分:基礎平臺、感知系統(tǒng)、決策規(guī)劃和通訊架構,如圖4所示。每一部分都基于NI的軟硬件平臺進行開發(fā):通過NI硬件與現(xiàn)有車載系統(tǒng)進行交互,并提供操作接口;使用LabVIEW圖形化編程環(huán)境來開發(fā)系統(tǒng)軟件,包括通訊架構、傳感器處理和目標識別算法、激光測距儀和基于視覺的道路檢測、駕駛行為控制、以及底層的車輛接口。

圖4     無人駕駛車Odin的系統(tǒng)構架

    他們的參賽車Odin是2005年福特翼虎(Escape)混合動力型越野車,并為自主駕駛做了一定程度的改裝。NI CompactRIO系統(tǒng)與翼虎操控系統(tǒng)進行交互,通過線控驅動(drive-by-wire)的方式控制油門、方向盤、轉向和制動。學生們利用LabVIEW控制設計與仿真模塊開發(fā)了路徑曲率和速度控制系統(tǒng),并通過LabVIEW實時模塊和FPGA模塊部署到CompactRIO硬件平臺加以實現(xiàn),從而建立了一個獨立的車輛控制平臺。與此同時,學生使用LabVIEW觸摸屏模塊和NI TPC - 2006觸摸屏構建用戶界面并安裝在控制臺。

    LabVIEW平臺提供了一個直觀,易于使用的調試環(huán)境,可以讓開發(fā)團隊實時地監(jiān)測源代碼的運行,從而方便的實現(xiàn)硬件在環(huán)調試。通過LabVIEW開發(fā)環(huán)境,團隊快速可以構建系統(tǒng)原型并加快設計的往復周期。此外, LabVIEW與硬件的無縫連接,對于執(zhí)行某些關鍵操作如傳感器處理和車輛控制是至關重要的。由于城市挑戰(zhàn)賽問題復雜且開發(fā)時間很短,這些因素對于開發(fā)團隊的成功發(fā)揮了關鍵作用。

    總結

    圖形化系統(tǒng)設計對于繼續(xù)加快機器人設計中的創(chuàng)新而言是必不可少的。復雜的傳統(tǒng)工具可能會阻礙機器人技術的進步。LabVIEW提供了一個綜合的、可擴展的平臺,能夠橫跨設計、原型開發(fā)和部署階段,因此工程師們能夠不用為微小的實現(xiàn)細節(jié)所困擾,可以更加關注機器人本身。他們可以使用同樣強大的平臺,對微控制器直至FPGA等各種控制器進行編程;還可以同幾乎任何傳感器和執(zhí)行器發(fā)送與接收信號;設計并仿真動態(tài)控制系統(tǒng);以及實現(xiàn)進行遠程監(jiān)視或控制機器人的接口。LabVIEW圖形化系統(tǒng)設計平臺通過為所有機器人設計者提供一個統(tǒng)一的平臺,鼓勵設計更為精妙的機器人。

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