国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種自動(dòng)規(guī)劃路徑AGV機(jī)器人的設(shè)計(jì)

2021-11-30 19:07趙連強(qiáng)柳國(guó)良李鵬遠(yuǎn)
科技風(fēng) 2021年32期
關(guān)鍵詞:路徑規(guī)劃環(huán)境

趙連強(qiáng) 柳國(guó)良 李鵬遠(yuǎn)

摘要:本文以在室內(nèi)環(huán)境工作的移動(dòng)機(jī)器人自主導(dǎo)航為應(yīng)用背景,構(gòu)建基于ROS平臺(tái)并具有自動(dòng)規(guī)劃路徑功能的AGV機(jī)器人。在建立機(jī)器人導(dǎo)航用環(huán)境地圖方面,對(duì)只依賴激光雷達(dá)數(shù)據(jù)的Hector SLAM地圖創(chuàng)建進(jìn)行了改進(jìn),將激光雷達(dá)、里程計(jì)及慣導(dǎo)(IMU)等多個(gè)傳感器數(shù)據(jù)進(jìn)行融合,通過(guò)里程計(jì)輔助的方式改進(jìn)ICP配準(zhǔn)精度,有效降低了HectorSLAM建圖打滑現(xiàn)象產(chǎn)生的影響,并進(jìn)行基于A*算法和行為動(dòng)力學(xué)的路徑規(guī)劃研究。實(shí)驗(yàn)結(jié)果表明,本AGV機(jī)器人能夠完成室內(nèi)環(huán)境的路徑自動(dòng)規(guī)劃。

關(guān)鍵詞:AGV;路徑規(guī)劃;建圖;環(huán)境

本系統(tǒng)采用樹(shù)莓派4B處理器為主控制芯片,利用慣性測(cè)量單元(IMU)、輪式編碼器以及激光雷達(dá)作為導(dǎo)航數(shù)據(jù)源,進(jìn)行了相關(guān)的硬件設(shè)計(jì)。軟件部分基于機(jī)器人開(kāi)源操作系統(tǒng)(Robot Operating System,ROS)平臺(tái),對(duì)機(jī)器人的環(huán)境建模和路徑規(guī)劃進(jìn)行了研究。主要完成基于ROS的移動(dòng)機(jī)器人平臺(tái)構(gòu)建、基于多傳感器信息融合的HectorSLAM環(huán)境地圖創(chuàng)建、基于A*算法和行為動(dòng)力學(xué)方法的路徑規(guī)劃研究、基于ROS的移動(dòng)機(jī)器人導(dǎo)航實(shí)驗(yàn)等。

一、硬件結(jié)構(gòu)

(一)控制器

機(jī)器人控制器采用樹(shù)莓派4B,運(yùn)行Ubuntu Mate或Raspbian系統(tǒng),安裝ROS機(jī)器人操作系統(tǒng),作為機(jī)器人端ROS節(jié)點(diǎn)控制器。硬件組成框架圖如下:

樹(shù)莓派4B對(duì)比3B+升級(jí)明顯,主要功能包括高性能Cortex-A72 64位四核處理器,2路micro-HDMI端口支持分辨率高達(dá)4K的雙顯示屏,高達(dá)4KP60的硬件視頻解碼及4GB的RAM,雙頻2.4/5.0GHz無(wú)線局域網(wǎng),藍(lán)牙5.0,千兆以太網(wǎng),USB3.0和POE功能(通過(guò)單獨(dú)的POE HAT插件)。

樹(shù)莓派主要負(fù)責(zé)獲取激光雷達(dá)、IMU等傳感器數(shù)據(jù)并發(fā)布相應(yīng)話題來(lái)供虛擬機(jī)訂閱,并訂閱虛擬機(jī)發(fā)出的速度信號(hào)控制小車移動(dòng)。

(二)電源供電

該機(jī)器人的電源為電池模塊,由兩塊鋰離子電池組成,內(nèi)置電池保護(hù)板。一塊8.4V 2400mAh給樹(shù)莓派、激光雷達(dá)、IMU、編碼器供電,一塊12V 6000mAh給減速電機(jī)供電。

(三)通信鏈路

Ros機(jī)器人主機(jī)以50ms為周期發(fā)布速度、位置等控制信息,樹(shù)莓派接收速度控制信號(hào)并將采集到減速電機(jī)的位置信息發(fā)布出去。

(四)電機(jī)參數(shù)

工作電壓:12V。

額定功率:4W。

額定電流:0.36A。

堵轉(zhuǎn)電流:3.2A。

減速比:1:30。

減速后空載轉(zhuǎn)速:366±26RPM。

額定扭矩:1KG·CM。

該電機(jī)全金屬減速箱,可靠性更高。

(五)傳感器

激光雷達(dá):激光雷達(dá)是以發(fā)射激光束來(lái)探測(cè)目標(biāo)位置、速度等特征參數(shù)的雷達(dá)系統(tǒng)。雷達(dá)向目標(biāo)發(fā)射激光束,將接收到的目標(biāo)回波與發(fā)射信號(hào)進(jìn)行比較,作適當(dāng)處理后,可獲得目標(biāo)的相關(guān)參數(shù),如目標(biāo)方位、距離、高度、速度、姿態(tài)以及形狀等,從而對(duì)周圍的物體進(jìn)行識(shí)別。

機(jī)器人上的激光雷達(dá)可以感知環(huán)境二維平面的深度信息。程序可以通過(guò)環(huán)境深度信息來(lái)判斷障礙物距離小車的遠(yuǎn)近借此來(lái)達(dá)到避障的目的。Ros中的slam開(kāi)源包gmapping可以通過(guò)獲取激光雷達(dá)的數(shù)據(jù)對(duì)周圍環(huán)境建立地圖。通過(guò)對(duì)激光雷達(dá)數(shù)據(jù)的處理,可以實(shí)現(xiàn)對(duì)機(jī)器人的定位、計(jì)算機(jī)器人所在二維平面的姿態(tài)、計(jì)算機(jī)器人的速度等。

本機(jī)器人用的LDS1.5激光雷達(dá)是地面移動(dòng)機(jī)器人常用的一種傳感器,其工作原理是用一個(gè)高速旋轉(zhuǎn)的激光測(cè)距探頭將周圍360。的障礙物分布狀況測(cè)量出來(lái),形成障礙物輪廓的俯視二維點(diǎn)陣輸入ROS系統(tǒng)里。

供電電壓:5V。

測(cè)量距離:120~3500mm。

掃描頻率:1.8kHZ。

掃描角度:360°。

分辨率:1°。

陀螺儀和加速度計(jì):IMU MPU6050分別為陀螺儀和加速度計(jì)提供了三個(gè)16位的ADC,將被檢測(cè)的模擬量轉(zhuǎn)化為可輸出數(shù)字量。傳感器的測(cè)量范圍是用戶可控的,陀螺儀的可測(cè)范圍為±250,±500,±1000,±2000°/秒(dps),加速度計(jì)的可測(cè)范圍為±2,±4,±8,±16g,可以精確跟蹤快速和慢速的運(yùn)動(dòng)。通過(guò)對(duì)加速度計(jì)積分可以計(jì)算車速,對(duì)角速度積分可以計(jì)算小車的歐拉角。角速度積分算出的俯仰角、翻滾角可以通過(guò)重力加速度在車模x,y,z軸的分量來(lái)輔助校正。IMU在小車上可以比較精確地感知小車當(dāng)前的狀態(tài)。

二、建圖導(dǎo)航算法

(一)ROS的通信機(jī)制

ROS系統(tǒng)中的通信方式有三種,分別為話題(msg)、服務(wù)(srv)和動(dòng)作(action),其中話題屬于基本的發(fā)布/訂閱通信方式,適用于單個(gè)節(jié)點(diǎn)發(fā)布消息,一個(gè)或多個(gè)節(jié)點(diǎn)接受消息的情況;服務(wù)屬于實(shí)時(shí)獲取結(jié)果的情況,應(yīng)用于請(qǐng)求/響應(yīng)式的應(yīng)用環(huán)境,適用于基本功能的調(diào)用或者狀態(tài)的查看。

ROS是一種分布式軟件框架,節(jié)點(diǎn)可以運(yùn)行在不同的計(jì)算平臺(tái)上,節(jié)點(diǎn)之間以松耦合的方式進(jìn)行組合,通過(guò)Topic、Service進(jìn)行通信。ROS的分布式十分強(qiáng)大,在不同計(jì)算機(jī)上運(yùn)行不同的節(jié)點(diǎn)就如同在一臺(tái)計(jì)算機(jī)上運(yùn)行。

(二)SLAM建圖

SlAM按傳感器分類可以分為兩大類:視覺(jué)SLAM和激光SLAM。視覺(jué)SLAM對(duì)環(huán)境有較高要求,需要環(huán)境有豐富的紋理,且計(jì)算量大。視覺(jué)SLAM在重定位和場(chǎng)景區(qū)分上有著極大優(yōu)勢(shì)。激光SLAM對(duì)環(huán)境要求較低,計(jì)算量小,且激光雷達(dá)本身帶有幾何信息,建立出來(lái)的地圖更直觀精確。本次我們采用的是激光SLAM。

Gmapping是應(yīng)用最為廣泛的2D slam方法,主要是利用RBPF(Rao-Blackwellized Particle Filters)方法,所以需要了解粒子濾波的方法(利用統(tǒng)計(jì)特性描述物理表達(dá)式下的結(jié)果)。Gmapping在RBPF算法上做了提議分布和選擇性重采樣的改進(jìn),可以實(shí)時(shí)構(gòu)建室內(nèi)環(huán)境地圖,所需計(jì)算量較小且精度較高。相比Hector SLAM,其對(duì)激光雷達(dá)的頻率要求低、魯棒性高(在機(jī)器人快速轉(zhuǎn)向時(shí)Hector容易發(fā)生錯(cuò)誤匹配,地圖發(fā)生錯(cuò)位,主要原因是優(yōu)化算法容易陷入局部最小值);而相比Cartographer,在小場(chǎng)景地圖構(gòu)建時(shí),不需要太多粒子且沒(méi)有回環(huán)檢測(cè),計(jì)算量小且精度相差不大。隨著場(chǎng)景的增大所需粒子增加,每個(gè)粒子都會(huì)攜帶一幅地圖,所需的內(nèi)存和計(jì)算量都會(huì)增加,不適合構(gòu)建大場(chǎng)景地圖。因?yàn)闆](méi)有回環(huán)檢測(cè),回環(huán)閉合時(shí)可能會(huì)造成地圖錯(cuò)位,雖然增加粒子數(shù)目可以使地圖閉合但要以增加計(jì)算量和內(nèi)存為代價(jià)。所以Gmapping不能像cartographer那樣構(gòu)建大的地圖。優(yōu)點(diǎn):在長(zhǎng)廊及低特征場(chǎng)景中建圖效果好;缺點(diǎn):依賴?yán)锍逃?jì)(odometry),無(wú)法適用不平坦區(qū)域;無(wú)回環(huán)。綜合以上考慮,本機(jī)器人采用gmapping算法。

(三)機(jī)器人的定位

里程計(jì)是機(jī)器人定位的重要組成部分。以小車的起始點(diǎn)建立坐標(biāo)系(odom坐標(biāo)系),記錄小車移動(dòng)的里程,可以得到小車在odom坐標(biāo)系下的坐標(biāo),以此來(lái)推算出小車的位置。

1.激光里程計(jì)(rf20)

編碼器里程計(jì)和視覺(jué)里程計(jì)是自控中應(yīng)用較多的兩種里程計(jì)類型。電機(jī)編碼的里程計(jì)在低速情況下比較可靠,但不可避免地會(huì)出現(xiàn)因?yàn)檩喿哟蚧纫蛩卦斐傻钠茊?wèn)題;而視覺(jué)里程計(jì)對(duì)于運(yùn)動(dòng)估計(jì)問(wèn)題來(lái)說(shuō)是一個(gè)比較靈活的解決方案,能適用不同的機(jī)器人,缺點(diǎn)在于計(jì)算量大,占用較大資源空間,對(duì)傳感器要求較高。激光里程計(jì)吸收了上述兩種方法的優(yōu)點(diǎn),能快速而精確地從連續(xù)范圍掃描中估計(jì)激光雷達(dá)的平面運(yùn)動(dòng),且運(yùn)算成本低。表現(xiàn)取決于激光的分辨率和環(huán)境因素,轉(zhuǎn)換評(píng)估準(zhǔn)確。

rf20是一種快速而精確的方法,用于從連續(xù)范圍掃描中估計(jì)激光雷達(dá)的平面運(yùn)動(dòng)。對(duì)于每個(gè)掃描點(diǎn),根據(jù)傳感器速度制定范圍流約束方程,并最小化所得幾何約束的魯棒函數(shù)以獲得運(yùn)動(dòng)估計(jì)。與傳統(tǒng)方法相反,該方法不搜索對(duì)應(yīng)關(guān)系,而是以密集測(cè)距法的方式基于掃描梯度執(zhí)行密集掃描對(duì)準(zhǔn)。最小化問(wèn)題以粗到精的方案解決以應(yīng)對(duì)大位移。

實(shí)際測(cè)試中,激光里程計(jì)在小車做直線運(yùn)動(dòng)時(shí)比較準(zhǔn)確,但是在遇到長(zhǎng)直道,激光雷達(dá)采集不到任何特征點(diǎn)的時(shí)候無(wú)法準(zhǔn)確地測(cè)量小車移動(dòng)。由于激光雷達(dá)本身是在旋轉(zhuǎn)的,所以當(dāng)小車在做快速旋轉(zhuǎn)運(yùn)動(dòng)的時(shí)候激光里程計(jì)測(cè)量出來(lái)的旋轉(zhuǎn)數(shù)據(jù)也有較大的誤差。

當(dāng)小車做在做直線運(yùn)動(dòng)的時(shí)候,激光里程計(jì)是比較準(zhǔn)確的,但是當(dāng)小車在做旋轉(zhuǎn)運(yùn)動(dòng)的時(shí)候,由于激光雷達(dá)自身的旋轉(zhuǎn),會(huì)導(dǎo)致激光里程計(jì)的旋轉(zhuǎn)不準(zhǔn)確。所以使用ekf功能包來(lái)將激光里程計(jì)的數(shù)據(jù)與IMU的數(shù)據(jù)融合出一個(gè)較為準(zhǔn)確的數(shù)據(jù)。

這個(gè)包用于評(píng)估機(jī)器人的3D位姿,使用了來(lái)自不同源的位姿測(cè)量信息,它使用帶有6D(3D position and 3D ori-entation)模型信息的擴(kuò)展卡爾曼濾波器來(lái)整合來(lái)自輪子里程計(jì),IMU傳感器和視覺(jué)里程計(jì)的數(shù)據(jù)信息?;舅悸肪褪怯盟神詈戏绞饺诤喜煌瑐鞲衅餍畔?shí)現(xiàn)位姿估計(jì)。

實(shí)際測(cè)試中,在小車低速運(yùn)行時(shí)可以比較準(zhǔn)確地得到小車的位姿態(tài),但是由于IMU計(jì)算出來(lái)的速度受車模加速度的影響,在車模做頻繁的加減速運(yùn)動(dòng)時(shí),融合后的里程計(jì)消息還是有一定程度的漂移。

2.編碼里程計(jì)

為了精確地控制車模的速度,我們根據(jù)采集到的編碼器數(shù)據(jù)測(cè)量車子的速度,并且對(duì)這個(gè)速度積分可以得出車模運(yùn)行的里程。在通過(guò)IMU傳感器便可以計(jì)算出車模的里程。在實(shí)際應(yīng)用中更多的還是通過(guò)輪式里程計(jì)來(lái)進(jìn)行測(cè)量小車的位移。我們經(jīng)過(guò)測(cè)試,這樣計(jì)算出來(lái)的里程計(jì)信息有著較高的精度,使得車模在運(yùn)行時(shí)的定位精度有著很大的提升。

通過(guò)對(duì)里程計(jì)信息的推算可以得出小車在地圖上的位置,但是里程計(jì)定位會(huì)帶來(lái)很多誤差。amcl是根據(jù)已知地圖配合激光雷達(dá)的數(shù)據(jù)進(jìn)行定位,不存在誤差累計(jì)的問(wèn)題,所以我們?cè)诶锍逃?jì)定位的基礎(chǔ)上引入了amcl功能包來(lái)進(jìn)行機(jī)器人在地圖上的輔助定位,可以消除里程計(jì)在運(yùn)動(dòng)過(guò)程中的累計(jì)誤差。

三、路徑規(guī)劃

機(jī)器人在得到目標(biāo)點(diǎn)后,同樣會(huì)以傳感器作為眼睛,來(lái)獲取道路信息,并思考分析如何行走才不會(huì)與其他物體相撞,并用較少的時(shí)間正確到達(dá)目的地。這就稱之為路徑規(guī)劃。路徑規(guī)劃主要涉及了三大問(wèn)題:明確起點(diǎn)與終點(diǎn),規(guī)避障礙物,盡可能做到路徑優(yōu)化。而我們根據(jù)對(duì)環(huán)境信息掌握的程度的不同,將機(jī)器人的路徑分為了兩個(gè)部分:全局路徑規(guī)劃與局部路徑規(guī)劃。

(一)全局路徑規(guī)劃

global_planner與navfn;兩種全局路徑規(guī)劃都擁有自己的插件,在move_base調(diào)用時(shí)只需要將插件名字以參數(shù)的形式傳人便可以直接調(diào)用。全局路徑規(guī)劃的算法主要包括A*與Dijkstra算法。

Dijkstra算法是典型的最短路徑算法,用于計(jì)算一個(gè)節(jié)點(diǎn)到其他所有節(jié)點(diǎn)問(wèn)的最短路徑。其特點(diǎn)是以起始點(diǎn)為中心向外層層擴(kuò)展,直到終點(diǎn)為止。

A*算法是Dijkstra算法的升級(jí)版。f(n)=g(n)+h(n),其中估價(jià)值h(n)的選取是保證找到最優(yōu)解的條件。估價(jià)值≤實(shí)際值的情況,搜索的點(diǎn)數(shù)多,范圍大,效率低,但能得到最優(yōu)解。估價(jià)值>實(shí)際值的情況,搜索的點(diǎn)數(shù)少,范圍小,效率高,但不能保證得到最優(yōu)解。估價(jià)值與實(shí)際值越接近,估價(jià)函數(shù)取得就越好。

(二)局部路徑規(guī)劃

機(jī)器人在獲得目的地信息后,先經(jīng)過(guò)“全局路徑規(guī)劃”規(guī)劃出一條大致可行的路線;再調(diào)用局部路徑規(guī)劃器,根據(jù)costmap的信息及路線規(guī)劃出在局部時(shí)做出的具體行動(dòng)策略。

DWA(Dynamic Window Approach)算法:其原理是在速度空間(v,w)中采樣多組速度,并模擬出這些速度在一定時(shí)間內(nèi)的運(yùn)動(dòng)軌跡,再通過(guò)評(píng)價(jià)函數(shù)對(duì)這些軌跡打分,選擇出最優(yōu)的速度發(fā)送給下位機(jī)。ROS中主要使用了DWA算法。每當(dāng)move_base處于規(guī)劃狀態(tài)時(shí),就調(diào)用DWA算法,選擇出最優(yōu)的速度指令,發(fā)送給機(jī)器人底盤執(zhí)行。

四、結(jié)論

本文研究了基于ROS平臺(tái)上的室內(nèi)環(huán)境下的一種自動(dòng)規(guī)劃路徑的AGV倉(cāng)儲(chǔ)運(yùn)輸小車的設(shè)計(jì)。通過(guò)對(duì)算法的改進(jìn),能夠滿足一般環(huán)境下的運(yùn)輸要求。

作者簡(jiǎn)介:趙連強(qiáng)(1982— ),男,漢族,河南新鄉(xiāng)人,本科,講師,研究方向:汽車傳感器。

猜你喜歡
路徑規(guī)劃環(huán)境
環(huán)境清潔工
公鐵聯(lián)程運(yùn)輸和售票模式的研究和應(yīng)用
基于數(shù)學(xué)運(yùn)算的機(jī)器魚比賽進(jìn)攻策略
清掃機(jī)器人的新型田埂式路徑規(guī)劃方法
自適應(yīng)的智能搬運(yùn)路徑規(guī)劃算法
基于B樣條曲線的無(wú)人車路徑規(guī)劃算法
基于改進(jìn)的Dijkstra算法AGV路徑規(guī)劃研究
漫觀環(huán)境
論環(huán)境雕塑
環(huán)境雕塑與人