機(jī)器人軟件開(kāi)發(fā)要求

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

更多相關(guān)信息