引言 機器人的研究與開(kāi)發(fā)是當今學(xué)術(shù)界和工業(yè)界的熱點(diǎn)之一,機器人的發(fā)布數量較之過(guò)去有明顯增長(cháng),2010年機器人市場(chǎng)規模預計將達到4700億美元。過(guò)去人們往往只能在實(shí)驗室或高科技競賽中見(jiàn)到機器人的身影,而如今它們已經(jīng)走入工業(yè)應用甚至是普通人的生活中[1],F在,機器人應用所覆蓋的領(lǐng)域包括無(wú)人駕駛車(chē)輛、險情救援、個(gè)人與服務(wù)機器人、醫療機器人、農業(yè)與采礦、教育與智力開(kāi)發(fā)等,并且隨著(zhù)科技的發(fā)展,機器人的應用領(lǐng)域還在不斷擴展。 但是機器人的快速發(fā)展也為該領(lǐng)域的研究與開(kāi)發(fā)人員帶來(lái)了巨大的挑戰。機器人領(lǐng)域的著(zhù)名科學(xué)家David Barrett博士(曾任iRobot公司副總裁、迪士尼夢(mèng)幻工程公司主管,現任美國Olin學(xué)院SCOPE項目主管,)在2009年NIWeek圖形化系統設計會(huì )議上總結了當前機器人開(kāi)發(fā)所面臨的三大挑戰:創(chuàng )造更小、更輕、更強大的電池;創(chuàng )造更小、更輕、更強大的執行機構;需要一個(gè)工業(yè)級的、并且具有良好兼容性的軟件開(kāi)發(fā)平臺。這些挑戰也獲得了業(yè)內其他領(lǐng)導者的響應:Segway思維車(chē)的發(fā)明人、FIRST機構及DEKA研發(fā)公司的創(chuàng )始人Dean Kamen表達了對機器人開(kāi)發(fā)中傳統嵌入式方法的顧慮;美國國防部地面機器人和自主系統主管Ellen Purdy關(guān)注于自主系統的進(jìn)一步標準化和持久性(電池能力)需要;韓國浦項智能機器人研究所的Hee Chang Moon博士強調了對于集成的嵌入式系統以及直觀(guān)式開(kāi)發(fā)軟件的需求。認識到這些挑戰,世界各地的業(yè)內人士都在努力尋求這些挑戰的解決之道:Dean Kamen的團隊選擇NI LabVIEW軟件和NI CompactRIO嵌入式硬件平臺用于FIRST項目中的機器人自主控制系統開(kāi)發(fā);TORC科技公司從傳統的編程工具轉而使用NI LabVIEW軟件平臺設計其復雜的自主系統,其CEO Michael Fleming在NIWeek會(huì )議上特別談到了TORC如何從功能強大的高級軟件中獲益,從而有助于簡(jiǎn)化系統設計中的復雜問(wèn)題。 接下來(lái)我們將展開(kāi)分析這些挑戰,并探尋相應的應對方法。 ![]() 圖1 FIRST機器人競賽平臺采用NI LabVIEW軟件和嵌入式硬件CompactRIO,在這些工具的幫助下即使是高中學(xué)生也能解決機器人設計中的復雜問(wèn)題 挑戰一. 創(chuàng )造更小、更輕、更強大的電池 許多機器人需要在野外或嚴苛的環(huán)境中長(cháng)時(shí)間獨立工作,需要可長(cháng)時(shí)間獨立供電的電源。目前全世界有多家公司和研究機構致力于這方面研究。許多廠(chǎng)商選擇NI平臺用于設計仿真、生產(chǎn)優(yōu)化、驗證測試等各個(gè)環(huán)節,推動(dòng)其創(chuàng )新產(chǎn)品的研發(fā)、生產(chǎn)和應用,這些創(chuàng )新產(chǎn)品包括新型燃料電池、太陽(yáng)能電池、基于小型移動(dòng)平臺的高效發(fā)電和蓄能裝置等。 能夠長(cháng)時(shí)間獨立運行的機器人系統不僅需要更高效的新型電池,還需要對能源的使用進(jìn)行優(yōu)化,例如通過(guò)增加電源管理功能有效地監測電量消耗并選擇不同的節電模式,這樣才能真正發(fā)揮出新型電池的效能優(yōu)勢。NI計劃對其嵌入式硬件平臺CompactRIO和SingleBoard RIO增加內置電源自診斷和監視功能,使機器人開(kāi)發(fā)人員可以通過(guò)相應的API直接訪(fǎng)問(wèn)電池狀態(tài),從而設計更優(yōu)化的待機和節電模式。NI希望通過(guò)這些努力最終消除電源問(wèn)題對機器人發(fā)展的制約。 挑戰二. 更小、更輕、更強大的執行機構 出于機器人體積和自重的考慮,一般希望執行機構也更輕更;但同時(shí)由于不同的運動(dòng)要求,又希望執行機構具有強大的功能。隨著(zhù)移動(dòng)性需求從傳統的四輪系統向新型仿生機械的不斷演進(jìn),對精密執行機構的需求也隨之大幅提升。世界上眾多的專(zhuān)業(yè)廠(chǎng)商一直從事這方面的研發(fā),不斷推出高性能的產(chǎn)品。 對于機器人應用領(lǐng)域來(lái)說(shuō),創(chuàng )造更小、更輕、更強大的執行機構的最終目標是將它們用于機器人設計中,而且執行機構的強大功能往往需要通過(guò)復雜的編程才能發(fā)揮出來(lái)。因此,隨著(zhù)執行機構變得越來(lái)越精密復雜,如何通過(guò)編程完成高精度和高復雜度的控制,也成為機器人系統開(kāi)發(fā)的關(guān)鍵問(wèn)題之一。許多機器人領(lǐng)域的開(kāi)發(fā)人員并不具有運動(dòng)控制方面的專(zhuān)業(yè)背景,在這種情況下,執行機構的交互式控制開(kāi)發(fā)更顯得尤為重要。NI依靠超過(guò)25年與執行機構連接的經(jīng)驗,通過(guò)提供基于各種平臺的硬件接口模塊和交互式的軟件工具不斷降低控制開(kāi)發(fā)的復雜性,同時(shí)提高交互性和靈活性。NI還與行業(yè)內領(lǐng)先制造商(如Maxon Moter)合作,使其產(chǎn)品的編程開(kāi)發(fā)更加簡(jiǎn)便。 此外,在構建復雜運動(dòng)系統的執行機構時(shí),電機之間的協(xié)調工作也十分重要,比如在四輪驅動(dòng)系統轉向或機械臂動(dòng)作中,就需要多個(gè)電機配合協(xié)調工作。運用NI LabVIEW機器人模塊中所提供的Steering函數組和Kinematics函數組,就可以直接計算出在這些應用中每個(gè)電機分別需要的轉動(dòng)速度,從而幫助機器人設計人員縮短了從高性能電機到創(chuàng )新機器人應用之間的距離。 ![]() 圖2 NI嵌入式硬件平臺CompactRIO提供方便的電機接口,并可通過(guò)LabVIEW軟件交互式地完成軟件開(kāi)發(fā) ![]() 圖3 基于LabVIEW FPGA實(shí)現的FOC算法可以進(jìn)一步提高現有電機控制系統的性能和效率 挑戰三. 對工業(yè)級軟件開(kāi)發(fā)平臺的需求 除了硬件之外,機器人領(lǐng)域的研發(fā)人員還需要功能強大的軟件來(lái)設計他們的自主系統。人們往往容易忽視這一點(diǎn),許多人認為"任何事情立即從頭設計都是相對簡(jiǎn)單的",但這對于當今機器人飛速發(fā)展的時(shí)代是不適用的。事實(shí)上,隨著(zhù)一些技術(shù)領(lǐng)域的趨同并形成某種事實(shí)上的標準,創(chuàng )新已經(jīng)不再意味著(zhù)只是從零開(kāi)始,更多的創(chuàng )新應用都是將模塊化的算法和功能組織在一起而完成的。機器人領(lǐng)域亦不例外,需要標準、工業(yè)級的軟件提供現成可用的算法和工具,從而幫助研發(fā)人員更快地完成創(chuàng )新。 1. 該軟件必須是直觀(guān)式的 許多機器人研發(fā)人員都具有機械工程或電子工程背景,但沒(méi)有時(shí)間和精力去學(xué)習復雜的計算機軟件技術(shù),所以需要一款集成常用函數和算法的軟件開(kāi)發(fā)工具,該工具還必須具有良好的交互性和易用性。此外,自主系統的終端用戶(hù)往往是營(yíng)救人員(如消防員)、士兵或老年人等,他們也不一定具備計算機知識,因此用戶(hù)界面也必須足夠直觀(guān)。 ![]() 圖4 機器人設計軟件應該是非常直觀(guān)的。LabVIEW圖形化編程通過(guò)直觀(guān)的框圖和連線(xiàn)完成了LIDAR數據采集、障礙物回避決策、剎車(chē)制動(dòng)等三個(gè)步驟,清晰易讀(有文字的淡黃色部分為程序注釋?zhuān)?br /> 2. 軟件必須具備與硬件的良好集成性 每個(gè)自主系統都必須感知或察覺(jué)周?chē)澜绲沫h(huán)境并做出反應。感知系統需要外部傳感器(如激光測距儀、聲納傳感器等),做出反應則要依靠不同類(lèi)型的執行機構完成。因此軟件工具必須能夠直接驅動(dòng)各種傳感器和執行機構。除了感知系統和執行控制,往往還需要在真實(shí)硬件上實(shí)現決策規劃,這意味著(zhù)軟件必須具有與實(shí)時(shí)系統、實(shí)時(shí)嵌入式硬件、甚至FPGA的強大交互性。目前的許多機器人軟件開(kāi)發(fā)包缺乏類(lèi)似功能,它們能夠仿真并在開(kāi)發(fā)機器上運行,但不具備在實(shí)時(shí)硬件目標上的執行能力。 ![]() 圖5 基于NI嵌入式硬件平臺CompactRIO搭建成的機器人原型,從仿真到最終系統實(shí)現的軟件平臺均為NI LabVIEW 3. 軟件必須具備良好的交互性 完成機器人設計并不簡(jiǎn)單,它需要反復修改和原型設計。因此機器人領(lǐng)域的研發(fā)人員需要一款可以輕松調試的軟件包,既可進(jìn)行直觀(guān)的仿真,又能在實(shí)時(shí)硬件系統上快速實(shí)現,從而測試算法和真實(shí)I/O。每次硬件實(shí)驗之后都可能再回到開(kāi)發(fā)環(huán)境,對代碼進(jìn)行進(jìn)一步優(yōu)化或調整。這些都要求軟件開(kāi)發(fā)工具具有極佳的交互性。 針對上述三點(diǎn)需求,NI LabVIEW軟件是一款理想的機器人開(kāi)發(fā)軟件。LabVIEW圖形化編程方式使其天然具備直觀(guān)性。最新的LabVIEW機器人模塊還集成了常用的搜索、蔽障、路徑規劃、以及動(dòng)力學(xué)算法,可以最大程度地幫助機器人開(kāi)發(fā)人員快速實(shí)現應用。此外,與硬件的無(wú)縫集成也是LabVIEW的一大特點(diǎn)。通過(guò) LabVIEW軟件本身就可以連接各種傳感器和執行機構。完成算法仿真的LabVIEW代碼可以直接下載到NI嵌入式實(shí)時(shí)硬件平臺CompactRIO或 SingleBoard RIO執行,從而實(shí)現真正的與硬件無(wú)縫集成。LabVIEW機器人模塊中還提供了多種機器人常用傳感器在實(shí)時(shí)硬件平臺下的現成驅動(dòng)程序,從而使機器人的開(kāi)發(fā)更為簡(jiǎn)單。最后,LabVIEW提供交互式的調試環(huán)境和豐富的界面設計工具,各種算法都可在實(shí)時(shí)嵌入式硬件上直接實(shí)現,并可方便地反復修改驗證,滿(mǎn)足了機器人研究人員的調試需要。SCOPE項目主管Barrett博士稱(chēng)LabVIEW正是工業(yè)界所需的軟件:"我花了15年時(shí)間力圖探尋最佳機器人編程語(yǔ)言,NI LabVIEW無(wú)愧殊榮。它能夠處理各類(lèi)傳感器、多種執行機構、復雜動(dòng)態(tài)控制算法,并能在實(shí)時(shí)環(huán)境下輕松進(jìn)行驗證調試,完成系統實(shí)現。" 除了上述優(yōu)點(diǎn),NI LabVIEW還具有高度的靈活性和開(kāi)放性。例如,LabVIEW機器人模塊已經(jīng)提供一些成熟的路徑搜索算法,用戶(hù)可重用這些算法,同時(shí)用戶(hù)也可以基于這些基本的搜索算法添加他們的創(chuàng )新或最新研究成果,從而創(chuàng )建新型的搜索算法。用戶(hù)也可以將這些算法與LabVIEW中提供的其他算法或第三方技術(shù)集成從而開(kāi)發(fā)更多的創(chuàng )新應用,如機器人救援或醫療輔助應用。LabVIEW是一個(gè)開(kāi)放的軟件,它支持許多廠(chǎng)商的硬件平臺或自定義設備,并且支持調用多種第三方開(kāi)發(fā)工具產(chǎn)生的代碼或模型,使其應用范圍拓展到機器人應用的各個(gè)領(lǐng)域。 結論 隨著(zhù)機器人領(lǐng)域的快速發(fā)展,開(kāi)發(fā)人員面臨著(zhù)多方面的挑戰。全世界的研究機構和相關(guān)廠(chǎng)商都在研究應對這些挑戰的辦法。事實(shí)上,現在已經(jīng)有一些工具可以幫助機器人領(lǐng)域的研發(fā)人員應對這些挑戰,比如NI LabVIEW軟件和嵌入式硬件平臺。我們深信專(zhuān)業(yè)知識不該成為創(chuàng )造機器人創(chuàng )新應用的瓶頸,未來(lái)每個(gè)工程師都應該能借助功能強大的設計工具從容地開(kāi)發(fā)高端機器人。隨著(zhù)技術(shù)的創(chuàng )新和進(jìn)步,許多問(wèn)題將被解決,同時(shí)又會(huì )出現新的問(wèn)題,但只要有靈活開(kāi)放的開(kāi)發(fā)工具,就能夠不斷解決這些問(wèn)題,使機器人領(lǐng)域的發(fā)展不斷達到新的高度。 參考文獻 [1] http://www.roboticsbusinessreview.com/ 作者:NI 應用工程師 徐征 技術(shù)市場(chǎng)工程師 朱君 湯敏 |