通過圖形化開發(fā)平臺(tái)快速構(gòu)建移動(dòng)機(jī)器人原型
從廣義范疇上,機(jī)器人主要包括移動(dòng)機(jī)器人、機(jī)械手、教育機(jī)器人三大種類。機(jī)械手與教育機(jī)器人已經(jīng)有了相對(duì)成熟的行業(yè)解決方案,而移動(dòng)機(jī)器人構(gòu)成復(fù)雜、應(yīng)用靈活,目前商業(yè)化程度還不高,主要處于前沿研究的階段,一直以來都是科學(xué)家和工程師們關(guān)注的重點(diǎn),本文將主要探討移動(dòng)機(jī)器人的快速原型與開發(fā)。
移動(dòng)機(jī)器人簡(jiǎn)介
移動(dòng)機(jī)器人的應(yīng)用領(lǐng)域非常廣泛,如圖1所示,從軍用、航空航天——無人飛行器 (UAV) 、無人潛航器 (UUV) 和無人地面車 (UGV) ,到工農(nóng)業(yè)裝備——采收機(jī)器人、智能化耕作機(jī)械,到家用服務(wù)機(jī)器人等,不一而足。而隨著應(yīng)用領(lǐng)域和環(huán)境的不同,機(jī)器人需要具備相對(duì)應(yīng)的自主程度,這也為機(jī)器人的開發(fā)帶來了不同的技術(shù)難點(diǎn)。全自主機(jī)器人通常會(huì)涉及到控制系統(tǒng)、自定位、實(shí)時(shí)視覺、多傳感器融合等關(guān)鍵技術(shù),而遙操作機(jī)器人則往往側(cè)重于雙向力反饋控制、虛擬環(huán)境建模、力覺接口等方面的研究。
圖1 移動(dòng)機(jī)器人的應(yīng)用領(lǐng)域
盡管按照不同的應(yīng)用場(chǎng)合機(jī)器人分類復(fù)雜且關(guān)鍵技術(shù)眾多,但他們具有某些共同的構(gòu)架和組成部分,是一個(gè)融合了眾多機(jī)電系統(tǒng)和子系統(tǒng)的綜合體系,并通過這些組成部分與子系統(tǒng)的有機(jī)結(jié)合協(xié)調(diào)工作。由于移動(dòng)機(jī)器人構(gòu)成復(fù)雜、應(yīng)用靈活,雖然部分子系統(tǒng)已有現(xiàn)成的軟硬件工具和解決方案,但如何快速地把各子系統(tǒng)集成在一起,進(jìn)行早期的整體功能性驗(yàn)證,就成了決定機(jī)器人設(shè)計(jì)成敗的關(guān)鍵性環(huán)節(jié)。
機(jī)器人設(shè)計(jì)的前沿方法:圖形化系統(tǒng)設(shè)計(jì)
在Google X PRIZE機(jī)構(gòu)、FIRST組織(科學(xué)技術(shù)的啟示與認(rèn)知組織)、RoboCup,以及美國(guó)國(guó)防高級(jí)研究計(jì)劃局(DARPA)之間展開的競(jìng)爭(zhēng),推進(jìn)了機(jī)器人學(xué)領(lǐng)域的創(chuàng)新。富有創(chuàng)新思維的開發(fā)者們將機(jī)器人學(xué)的前沿方法推進(jìn)到了圖形化系統(tǒng)設(shè)計(jì)。在LabVIEW圖形化編程平臺(tái)下,機(jī)器人學(xué)的領(lǐng)域?qū)<夷軌驅(qū)?fù)雜的機(jī)器人方案進(jìn)行快速的原型設(shè)計(jì)。他們可以不必關(guān)心底層的實(shí)現(xiàn)細(xì)節(jié),將注意力集中到解決手上的工程問題即可。
機(jī)器人設(shè)計(jì)通常包含以下部分的工作內(nèi)容,如圖2所示。
圖2 機(jī)器人設(shè)計(jì)平臺(tái)
● 傳感器連接:連接到陀螺儀、CCD、光電、超聲等傳感器,獲取并處理信息。
● 控制設(shè)計(jì)與仿真:根據(jù)工作環(huán)境和應(yīng)用需求,設(shè)計(jì)機(jī)器人的控制算法。
● 嵌入式控制:嵌入式控制系統(tǒng)相當(dāng)于機(jī)器人的“大腦”,根據(jù)算法進(jìn)行控制決策,完成管理協(xié)調(diào)、信息處理、運(yùn)動(dòng)規(guī)劃等任務(wù)。
● 運(yùn)動(dòng)控制(執(zhí)行器):根據(jù)具體的作業(yè)指令,通過驅(qū)動(dòng)控制器、編碼器和電機(jī)完成機(jī)器人的伺服控制與運(yùn)動(dòng)執(zhí)行。
● 網(wǎng)絡(luò)通信與控制:機(jī)器人各子系統(tǒng)間的通信網(wǎng)絡(luò),完成分布式控制與實(shí)時(shí)控制。
過去,由于在每個(gè)領(lǐng)域中必須使用各自的傳統(tǒng)工具,其中涉及的知識(shí)具有較大的縱向深度,機(jī)械工程師、電氣工程師以及程序員團(tuán)隊(duì)都各自領(lǐng)導(dǎo)機(jī)器人學(xué)的開發(fā)。 LabVIEW和NI硬件提供了一個(gè)獨(dú)特的、功能多樣的平臺(tái),它提供了一套標(biāo)準(zhǔn)的可供所有機(jī)器人設(shè)計(jì)人員使用的工具,從而使機(jī)器人開發(fā)得到了統(tǒng)一。
通過LabVIEW,設(shè)計(jì)人員無須成為計(jì)算機(jī)專家或程序員,就可以開發(fā)高級(jí)機(jī)器人。例如,一位只有有限LabVIEW和機(jī)器視覺經(jīng)驗(yàn)的學(xué)生在短短幾小時(shí)之內(nèi),就設(shè)計(jì)了一個(gè)讓機(jī)器人利用它帶有的IEEE 1394相機(jī)和NI機(jī)器視覺開發(fā)模塊跟蹤一個(gè)紅球的算法。工程師們使用LabVIEW和NI硬件,就可以使用功能強(qiáng)大的圖形化編程語言快速地設(shè)計(jì)并開發(fā)復(fù)雜算法的原型;并通過代碼生成方便地將控制算法部署到PC、FPGA、微控制器或?qū)崟r(shí)系統(tǒng)之中;還可以與幾乎所有的傳感器、執(zhí)行器進(jìn)行連接。此外,通過 LabVIEW和NI硬件平臺(tái),可以支持CAN、以太網(wǎng)、串口、USB等多種接口,方便地構(gòu)建機(jī)器人系統(tǒng)的通信網(wǎng)絡(luò)。現(xiàn)在,領(lǐng)域?qū)<也粌H僅能夠完成機(jī)械工程師的工作,還能夠成為機(jī)器人設(shè)計(jì)者。
實(shí)例分析
本實(shí)例介紹的是弗吉尼亞理工大學(xué)如何使用NI LabVIEW設(shè)計(jì)全自主地面車參加DARPA城市挑戰(zhàn)賽。
DARPA城市挑戰(zhàn)賽需要設(shè)計(jì)一輛能夠在城市環(huán)境中自動(dòng)導(dǎo)航行駛的全自主地面車。在整個(gè)賽程中,全自主車需要在6小時(shí)內(nèi)穿越60英里,途經(jīng)道路、路口和停車場(chǎng)等各種交通狀態(tài)。在比賽開始時(shí),參賽者會(huì)拿到任務(wù)檔案公路網(wǎng)地圖,并指定需要按一定順序訪問的檢查站。
為了盡快到達(dá)檢查站,車輛需要考慮所選道路的車速限制,可能的道路堵塞,以及其他交通狀況。車輛在行駛中必須遵守交通規(guī)則,在十字路口注意安全駕駛和避讓,妥善地處理與其他車輛之間的互動(dòng),以最高30英里的時(shí)速避讓靜態(tài)和動(dòng)態(tài)的障礙物。
來自弗吉尼亞理工大學(xué)的團(tuán)隊(duì)需要在12個(gè)月開發(fā)出全自主地面車,他們將開發(fā)任務(wù)分成四個(gè)主要部分:基礎(chǔ)平臺(tái)、感知系統(tǒng)、決策規(guī)劃和通信架構(gòu)。
每一部分都基于NI的軟硬件平臺(tái)進(jìn)行開發(fā):通過NI硬件與現(xiàn)有車載系統(tǒng)進(jìn)行交互,并提供操作接口;使用LabVIEW圖形化編程環(huán)境來開發(fā)系統(tǒng)軟件,包括通信架構(gòu)、傳感器處理和目標(biāo)識(shí)別算法、激光測(cè)距儀和基于視覺的道路檢測(cè)、駕駛行為控制、以及底層的車輛接口。
1 基礎(chǔ)平臺(tái)
弗吉尼亞理工大學(xué)的參賽車Odin是2005年福特翼虎(Escape)混合動(dòng)力型越野車,如圖3所示,并為自主駕駛做了一定程度的改裝。NI CompactRIO系統(tǒng)與翼虎操控系統(tǒng)進(jìn)行交互,通過線控驅(qū)動(dòng)(drive-by-wire)的方式控制油門、方向盤、轉(zhuǎn)向和制動(dòng)。學(xué)生們利用 LabVIEW控制,設(shè)計(jì)與仿真模塊開發(fā)了路徑曲率和速度控制系統(tǒng),并通過LabVIEW實(shí)時(shí)模塊和FPGA模塊部署到CompactRIO硬件平臺(tái)加以實(shí)現(xiàn),從而建立了一個(gè)獨(dú)立的車輛控制平臺(tái)。與此同時(shí),學(xué)生使用LabVIEW觸摸屏模塊和NI TPC-2006觸摸屏構(gòu)建用戶界面并安裝在控制臺(tái)。
圖3 弗吉尼亞理工大學(xué)的參賽車Odin
2 感知系統(tǒng)
為了滿足城市挑戰(zhàn)賽的競(jìng)賽規(guī)則,Odin需要能夠定位自身的位置,探測(cè)周圍的路面狀況和可用的行駛車道,識(shí)別路徑中的所有障礙,并適當(dāng)分類障礙車輛。 Odin安裝了多種傳感器以滿足這些需求,其中包括3枚四平面激光測(cè)距儀( LRF )安裝在保險(xiǎn)杠,另有4枚LRF和2架計(jì)算機(jī)視覺相機(jī)安裝在車頂行李架,以及高精度的全球定位系統(tǒng)/慣性測(cè)量裝置系統(tǒng)(GPS/IMU)。
對(duì)于每一類感知需求,都通過多個(gè)傳感器以實(shí)現(xiàn)最大的保真度和可靠性。為了達(dá)到靈活的傳感器融合,規(guī)劃軟件忽略傳感器原始數(shù)據(jù),并使用一套由特定任務(wù)組件產(chǎn)生的獨(dú)立于傳感器的感知信息。例如,定位組件使用了LabVIEW卡爾曼濾波器來跟蹤車輛的位置和方向;道路檢測(cè)組件使用NI視覺開發(fā)模塊,結(jié)合相機(jī)及 LRF的數(shù)據(jù),確定路面狀況和附近路段的每個(gè)車道;對(duì)象分類組件使用LabVIEW處理LRF數(shù)據(jù)以檢測(cè)障礙并對(duì)障礙進(jìn)行分類,然后預(yù)測(cè)動(dòng)態(tài)障礙和其他車輛的路徑及下一步行動(dòng)。
圖4 Odin系統(tǒng)組成框架
3 決策規(guī)劃
路線規(guī)劃組件使用的是A*搜索算法,以確定Odin應(yīng)該經(jīng)過哪些路段從而遍歷所有的檢查站。駕駛行為組件采用了基于行為的LabVIEW狀態(tài)機(jī)架構(gòu),負(fù)責(zé)遵守交通規(guī)則并引導(dǎo)車輛沿計(jì)劃路線行駛。運(yùn)動(dòng)規(guī)劃組件進(jìn)行迭代軌跡搜索,避讓障礙并引導(dǎo)車輛沿理想軌跡行駛。最后決策判定系統(tǒng)將運(yùn)動(dòng)序列傳遞給車輛控制接口并轉(zhuǎn)換為驅(qū)動(dòng)器控制信號(hào)。
4 通信架構(gòu)
整個(gè)通信框架都基于LabVIEW進(jìn)行開發(fā),實(shí)現(xiàn)了汽車工程師協(xié)會(huì)(SAE) AS-4無人系統(tǒng)聯(lián)合架構(gòu)(JAUS)協(xié)議,每個(gè)軟件模塊都是JAUS組件,所有模塊之間的交互都是通過LabVIEW框架來完成的,每個(gè)軟件模塊可作為獨(dú)立組件異步運(yùn)行在Windows或Linux操作系統(tǒng)之下。完成整個(gè)通信構(gòu)架中需要使用多種編程語言,由于LabVIEW的開放性,可以很方便地在其他編程環(huán)境中調(diào)用LabVIEW軟件模塊或與之接口。
5 使用LabVIEW的優(yōu)勢(shì)
LabVIEW平臺(tái)提供了一個(gè)直觀,易于使用的調(diào)試環(huán)境,可以讓開發(fā)團(tuán)隊(duì)實(shí)時(shí)地監(jiān)測(cè)源代碼的運(yùn)行,從而方便地實(shí)現(xiàn)硬件在環(huán)調(diào)試。通過LabVIEW開發(fā)環(huán)境,團(tuán)隊(duì)快速可以構(gòu)建系統(tǒng)原型并加快設(shè)計(jì)的往復(fù)周期。此外, LabVIEW與硬件的無縫連接,對(duì)于執(zhí)行某些關(guān)鍵操作如傳感器處理和車輛控制是至關(guān)重要的。由于城市挑戰(zhàn)賽問題復(fù)雜且開發(fā)時(shí)間很短,這些因素對(duì)于開發(fā)團(tuán)隊(duì)的成功發(fā)揮了關(guān)鍵作用。
總結(jié)
圖形化系統(tǒng)設(shè)計(jì)對(duì)于繼續(xù)加快機(jī)器人設(shè)計(jì)中的創(chuàng)新而言是必不可少的。復(fù)雜的傳統(tǒng)工具可能會(huì)阻礙機(jī)器人技術(shù)的進(jìn)步。LabVIEW提供了一個(gè)綜合的、可擴(kuò)展的平臺(tái),能夠橫跨設(shè)計(jì)、原型開發(fā)和部署階段,因此工程師們能夠不用為微小的實(shí)現(xiàn)細(xì)節(jié)所困擾,可以更加關(guān)注機(jī)器人本身。他們可以使用同樣強(qiáng)大的平臺(tái),對(duì)微控制器直至FPGA等各種控制器進(jìn)行編程;還可以同幾乎任何傳感器和執(zhí)行器發(fā)送與接收信號(hào);設(shè)計(jì)并仿真動(dòng)態(tài)控制系統(tǒng);以及實(shí)現(xiàn)進(jìn)行遠(yuǎn)程監(jiān)視或控制機(jī)器人的接口。LabVIEW圖形化系統(tǒng)設(shè)計(jì)平臺(tái)通過為所有機(jī)器人設(shè)計(jì)者提供一個(gè)統(tǒng)一的平臺(tái),鼓勵(lì)設(shè)計(jì)更為精妙的機(jī)器人。
提交
自動(dòng)化機(jī)床的故障排除技術(shù)淺析
安川焊接機(jī)器人編程
ABB機(jī)器人控制軟件RobotWare應(yīng)用手冊(cè)SafeMove(英文)
ABB IRB7600 機(jī)器人維護(hù)信息
ABB IRC5P機(jī)器人培訓(xùn)教材