機器人軟件開發(fā)要求

發(fā)布日期:2012-04-01    蘭生客服中心    瀏覽:5109

引言
  機器人的研究與開發(fā)是當(dāng)今學(xué)術(shù)界和工業(yè)界的熱點之一,機器人的發(fā)布數(shù)量較之過去有明顯增長,2010年機器人市場規(guī)模預(yù)計將達到4700億美元。過去人們往往只能在實驗室或高科技競賽中見到機器人的身影,而如今它們已經(jīng)走入工業(yè)應(yīng)用甚至是普通人的生活中[1],F(xiàn)在,機器人應(yīng)用所覆蓋的領(lǐng)域包括無人駕駛車輛、險情救援、個人與服務(wù)機器人、醫(yī)療機器人、農(nóng)業(yè)與采礦、教育與智力開發(fā)等,并且隨著科技的發(fā)展,機器人的應(yīng)用領(lǐng)域還在不斷擴展。

  但是機器人的快速發(fā)展也為該領(lǐng)域的研究與開發(fā)人員帶來了巨大的挑戰(zhàn)。機器人領(lǐng)域的著名科學(xué)家David Barrett博士(曾任iRobot公司副總裁、迪士尼夢幻工程公司主管,現(xiàn)任美國Olin學(xué)院SCOPE項目主管,)在2009年NIWeek圖形化系統(tǒng)設(shè)計會議上總結(jié)了當(dāng)前機器人開發(fā)所面臨的三大挑戰(zhàn):創(chuàng)造更小、更輕、更強大的電池;創(chuàng)造更小、更輕、更強大的執(zhí)行機構(gòu);需要一個工業(yè)級的、并且具有良好兼容性的軟件開發(fā)平臺。這些挑戰(zhàn)也獲得了業(yè)內(nèi)其他領(lǐng)導(dǎo)者的響應(yīng):Segway思維車的發(fā)明人、FIRST機構(gòu)及DEKA研發(fā)公司的創(chuàng)始人Dean Kamen表達了對機器人開發(fā)中傳統(tǒng)嵌入式方法的顧慮;美國國防部地面機器人和自主系統(tǒng)主管Ellen Purdy關(guān)注于自主系統(tǒng)的進一步標(biāo)準(zhǔn)化和持久性(電池能力)需要;韓國浦項智能機器人研究所的Hee Chang Moon博士強調(diào)了對于集成的嵌入式系統(tǒng)以及直觀式開發(fā)軟件的需求。認識到這些挑戰(zhàn),世界各地的業(yè)內(nèi)人士都在努力尋求這些挑戰(zhàn)的解決之道:Dean Kamen的團隊選擇NI LabVIEW軟件和NI CompactRIO嵌入式硬件平臺用于FIRST項目中的機器人自主控制系統(tǒng)開發(fā);TORC科技公司從傳統(tǒng)的編程工具轉(zhuǎn)而使用NI LabVIEW軟件平臺設(shè)計其復(fù)雜的自主系統(tǒng),其CEO Michael Fleming在NIWeek會議上特別談到了TORC如何從功能強大的高級軟件中獲益,從而有助于簡化系統(tǒng)設(shè)計中的復(fù)雜問題。

  接下來我們將展開分析這些挑戰(zhàn),并探尋相應(yīng)的應(yīng)對方法。
 
   圖1 FIRST機器人競賽平臺采用NI LabVIEW軟件和嵌入式硬件CompactRIO,在這些工具的
            幫助下即使是高中學(xué)生也能解決機器人設(shè)計中的復(fù)雜問題

挑戰(zhàn)一. 創(chuàng)造更小、更輕、更強大的電池
  許多機器人需要在野外或嚴(yán)苛的環(huán)境中長時間獨立工作,需要可長時間獨立供電的電源。目前全世界有多家公司和研究機構(gòu)致力于這方面研究。許多廠商選擇NI平臺用于設(shè)計仿真、生產(chǎn)優(yōu)化、驗證測試等各個環(huán)節(jié),推動其創(chuàng)新產(chǎn)品的研發(fā)、生產(chǎn)和應(yīng)用,這些創(chuàng)新產(chǎn)品包括新型燃料電池、太陽能電池、基于小型移動平臺的高效發(fā)電和蓄能裝置等。

  能夠長時間獨立運行的機器人系統(tǒng)不僅需要更高效的新型電池,還需要對能源的使用進行優(yōu)化,例如通過增加電源管理功能有效地監(jiān)測電量消耗并選擇不同的節(jié)電模式,這樣才能真正發(fā)揮出新型電池的效能優(yōu)勢。NI計劃對其嵌入式硬件平臺CompactRIO和SingleBoard RIO增加內(nèi)置電源自診斷和監(jiān)視功能,使機器人開發(fā)人員可以通過相應(yīng)的API直接訪問電池狀態(tài),從而設(shè)計更優(yōu)化的待機和節(jié)電模式。NI希望通過這些努力最終消除電源問題對機器人發(fā)展的制約。

挑戰(zhàn)二. 更小、更輕、更強大的執(zhí)行機構(gòu)
  出于機器人體積和自重的考慮,一般希望執(zhí)行機構(gòu)也更輕更;但同時由于不同的運動要求,又希望執(zhí)行機構(gòu)具有強大的功能。隨著移動性需求從傳統(tǒng)的四輪系統(tǒng)向新型仿生機械的不斷演進,對精密執(zhí)行機構(gòu)的需求也隨之大幅提升。世界上眾多的專業(yè)廠商一直從事這方面的研發(fā),不斷推出高性能的產(chǎn)品。

  對于機器人應(yīng)用領(lǐng)域來說,創(chuàng)造更小、更輕、更強大的執(zhí)行機構(gòu)的最終目標(biāo)是將它們用于機器人設(shè)計中,而且執(zhí)行機構(gòu)的強大功能往往需要通過復(fù)雜的編程才能發(fā)揮出來。因此,隨著執(zhí)行機構(gòu)變得越來越精密復(fù)雜,如何通過編程完成高精度和高復(fù)雜度的控制,也成為機器人系統(tǒng)開發(fā)的關(guān)鍵問題之一。許多機器人領(lǐng)域的開發(fā)人員并不具有運動控制方面的專業(yè)背景,在這種情況下,執(zhí)行機構(gòu)的交互式控制開發(fā)更顯得尤為重要。NI依靠超過25年與執(zhí)行機構(gòu)連接的經(jīng)驗,通過提供基于各種平臺的硬件接口模塊和交互式的軟件工具不斷降低控制開發(fā)的復(fù)雜性,同時提高交互性和靈活性。NI還與行業(yè)內(nèi)領(lǐng)先制造商(如Maxon Moter)合作,使其產(chǎn)品的編程開發(fā)更加簡便。

  此外,在構(gòu)建復(fù)雜運動系統(tǒng)的執(zhí)行機構(gòu)時,電機之間的協(xié)調(diào)工作也十分重要,比如在四輪驅(qū)動系統(tǒng)轉(zhuǎn)向或機械臂動作中,就需要多個電機配合協(xié)調(diào)工作。運用NI LabVIEW機器人模塊中所提供的Steering函數(shù)組和Kinematics函數(shù)組,就可以直接計算出在這些應(yīng)用中每個電機分別需要的轉(zhuǎn)動速度,從而幫助機器人設(shè)計人員縮短了從高性能電機到創(chuàng)新機器人應(yīng)用之間的距離。
        
           圖2 NI嵌入式硬件平臺CompactRIO提供方便的電機接口,并可通過
                   LabVIEW軟件交互式地完成軟件開發(fā)

      
                            圖3 基于LabVIEW FPGA實現(xiàn)的FOC算法可以進一步提高現(xiàn)有
                                                                 電機控制系統(tǒng)的性能和效率

挑戰(zhàn)三. 對工業(yè)級軟件開發(fā)平臺的需求
  除了硬件之外,機器人領(lǐng)域的研發(fā)人員還需要功能強大的軟件來設(shè)計他們的自主系統(tǒng)。人們往往容易忽視這一點,許多人認為"任何事情立即從頭設(shè)計都是相對簡單的",但這對于當(dāng)今機器人飛速發(fā)展的時代是不適用的。事實上,隨著一些技術(shù)領(lǐng)域的趨同并形成某種事實上的標(biāo)準(zhǔn),創(chuàng)新已經(jīng)不再意味著只是從零開始,更多的創(chuàng)新應(yīng)用都是將模塊化的算法和功能組織在一起而完成的。機器人領(lǐng)域亦不例外,需要標(biāo)準(zhǔn)、工業(yè)級的軟件提供現(xiàn)成可用的算法和工具,從而幫助研發(fā)人員更快地完成創(chuàng)新。

1. 該軟件必須是直觀式的
  許多機器人研發(fā)人員都具有機械工程或電子工程背景,但沒有時間和精力去學(xué)習(xí)復(fù)雜的計算機軟件技術(shù),所以需要一款集成常用函數(shù)和算法的軟件開發(fā)工具,該工具還必須具有良好的交互性和易用性。此外,自主系統(tǒng)的終端用戶往往是營救人員(如消防員)、士兵或老年人等,他們也不一定具備計算機知識,因此用戶界面也必須足夠直觀。


  圖4 機器人設(shè)計軟件應(yīng)該是非常直觀的。LabVIEW圖形化編程通過直觀的框圖和連線完成了LIDAR數(shù)
   據(jù)采集、障礙物回避決策、剎車制動等三個步驟,清晰易讀(有文字的淡黃色部分為程序注釋)

2. 軟件必須具備與硬件的良好集成性
  每個自主系統(tǒng)都必須感知或察覺周圍世界的環(huán)境并做出反應(yīng)。感知系統(tǒng)需要外部傳感器(如激光測距儀、聲納傳感器等),做出反應(yīng)則要依靠不同類型的執(zhí)行機構(gòu)完成。因此軟件工具必須能夠直接驅(qū)動各種傳感器和執(zhí)行機構(gòu)。除了感知系統(tǒng)和執(zhí)行控制,往往還需要在真實硬件上實現(xiàn)決策規(guī)劃,這意味著軟件必須具有與實時系統(tǒng)、實時嵌入式硬件、甚至FPGA的強大交互性。目前的許多機器人軟件開發(fā)包缺乏類似功能,它們能夠仿真并在開發(fā)機器上運行,但不具備在實時硬件目標(biāo)上的執(zhí)行能力。

             
                      圖5 基于NI嵌入式硬件平臺CompactRIO搭建成的機器人原型,從仿真
              到最終系統(tǒng)實現(xiàn)的軟件平臺均為NI LabVIEW

3. 軟件必須具備良好的交互性
  完成機器人設(shè)計并不簡單,它需要反復(fù)修改和原型設(shè)計。因此機器人領(lǐng)域的研發(fā)人員需要一款可以輕松調(diào)試的軟件包,既可進行直觀的仿真,又能在實時硬件系統(tǒng)上快速實現(xiàn),從而測試算法和真實I/O。每次硬件實驗之后都可能再回到開發(fā)環(huán)境,對代碼進行進一步優(yōu)化或調(diào)整。這些都要求軟件開發(fā)工具具有極佳的交互性。

  針對上述三點需求,NI LabVIEW軟件是一款理想的機器人開發(fā)軟件。LabVIEW圖形化編程方式使其天然具備直觀性。最新的LabVIEW機器人模塊還集成了常用的搜索、蔽障、路徑規(guī)劃、以及動力學(xué)算法,可以最大程度地幫助機器人開發(fā)人員快速實現(xiàn)應(yīng)用。此外,與硬件的無縫集成也是LabVIEW的一大特點。通過LabVIEW軟件本身就可以連接各種傳感器和執(zhí)行機構(gòu)。完成算法仿真的LabVIEW代碼可以直接下載到NI嵌入式實時硬件平臺CompactRIO或SingleBoard RIO執(zhí)行,從而實現(xiàn)真正的與硬件無縫集成。LabVIEW機器人模塊中還提供了多種機器人常用傳感器在實時硬件平臺下的現(xiàn)成驅(qū)動程序,從而使機器人的開發(fā)更為簡單。最后,LabVIEW提供交互式的調(diào)試環(huán)境和豐富的界面設(shè)計工具,各種算法都可在實時嵌入式硬件上直接實現(xiàn),并可方便地反復(fù)修改驗證,滿足了機器人研究人員的調(diào)試需要。SCOPE項目主管Barrett博士稱LabVIEW正是工業(yè)界所需的軟件:"我花了15年時間力圖探尋最佳機器人編程語言,NI LabVIEW無愧殊榮。它能夠處理各類傳感器、多種執(zhí)行機構(gòu)、復(fù)雜動態(tài)控制算法,并能在實時環(huán)境下輕松進行驗證調(diào)試,完成系統(tǒng)實現(xiàn)。"

  除了上述優(yōu)點,NI LabVIEW還具有高度的靈活性和開放性。例如,LabVIEW機器人模塊已經(jīng)提供一些成熟的路徑搜索算法,用戶可重用這些算法,同時用戶也可以基于這些基本的搜索算法添加他們的創(chuàng)新或最新研究成果,從而創(chuàng)建新型的搜索算法。用戶也可以將這些算法與LabVIEW中提供的其他算法或第三方技術(shù)集成從而開發(fā)更多的創(chuàng)新應(yīng)用,如機器人救援或醫(yī)療輔助應(yīng)用。LabVIEW是一個開放的軟件,它支持許多廠商的硬件平臺或自定義設(shè)備,并且支持調(diào)用多種第三方開發(fā)工具產(chǎn)生的代碼或模型,使其應(yīng)用范圍拓展到機器人應(yīng)用的各個領(lǐng)域。

結(jié)論
  隨著機器人領(lǐng)域的快速發(fā)展,開發(fā)人員面臨著多方面的挑戰(zhàn)。全世界的研究機構(gòu)和相關(guān)廠商都在研究應(yīng)對這些挑戰(zhàn)的辦法。事實上,現(xiàn)在已經(jīng)有一些工具可以幫助機器人領(lǐng)域的研發(fā)人員應(yīng)對這些挑戰(zhàn),比如NI LabVIEW軟件和嵌入式硬件平臺。我們深信專業(yè)知識不該成為創(chuàng)造機器人創(chuàng)新應(yīng)用的瓶頸,未來每個工程師都應(yīng)該能借助功能強大的設(shè)計工具從容地開發(fā)高端機器人。隨著技術(shù)的創(chuàng)新和進步,許多問題將被解決,同時又會出現(xiàn)新的問題,但只要有靈活開放的開發(fā)工具,就能夠不斷解決這些問題,使機器人領(lǐng)域的發(fā)展不斷達到新的高度。

更多相關(guān)信息