• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

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

      趙連強 柳國良 李鵬遠

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

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

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

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

      (一)控制器

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

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

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

      (二)電源供電

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

      (三)通信鏈路

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

      (四)電機參數(shù)

      工作電壓:12V。

      額定功率:4W。

      額定電流:0.36A。

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

      減速比:1:30。

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

      額定扭矩:1KG·CM。

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

      (五)傳感器

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

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

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

      供電電壓:5V。

      測量距離:120~3500mm。

      掃描頻率:1.8kHZ。

      掃描角度:360°。

      分辨率:1°。

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

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

      (一)ROS的通信機制

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

      ROS是一種分布式軟件框架,節(jié)點可以運行在不同的計算平臺上,節(jié)點之間以松耦合的方式進行組合,通過Topic、Service進行通信。ROS的分布式十分強大,在不同計算機上運行不同的節(jié)點就如同在一臺計算機上運行。

      (二)SLAM建圖

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

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

      (三)機器人的定位

      里程計是機器人定位的重要組成部分。以小車的起始點建立坐標系(odom坐標系),記錄小車移動的里程,可以得到小車在odom坐標系下的坐標,以此來推算出小車的位置。

      1.激光里程計(rf20)

      編碼器里程計和視覺里程計是自控中應(yīng)用較多的兩種里程計類型。電機編碼的里程計在低速情況下比較可靠,但不可避免地會出現(xiàn)因為輪子打滑等因素造成的漂移問題;而視覺里程計對于運動估計問題來說是一個比較靈活的解決方案,能適用不同的機器人,缺點在于計算量大,占用較大資源空間,對傳感器要求較高。激光里程計吸收了上述兩種方法的優(yōu)點,能快速而精確地從連續(xù)范圍掃描中估計激光雷達的平面運動,且運算成本低。表現(xiàn)取決于激光的分辨率和環(huán)境因素,轉(zhuǎn)換評估準確。

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

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

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

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

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

      2.編碼里程計

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

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

      三、路徑規(guī)劃

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

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

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

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

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

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

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

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

      四、結(jié)論

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

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

      猜你喜歡
      路徑規(guī)劃環(huán)境
      環(huán)境清潔工
      公鐵聯(lián)程運輸和售票模式的研究和應(yīng)用
      基于數(shù)學運算的機器魚比賽進攻策略
      清掃機器人的新型田埂式路徑規(guī)劃方法
      自適應(yīng)的智能搬運路徑規(guī)劃算法
      基于B樣條曲線的無人車路徑規(guī)劃算法
      基于改進的Dijkstra算法AGV路徑規(guī)劃研究
      漫觀環(huán)境
      論環(huán)境雕塑
      環(huán)境雕塑與人
      澄迈县| 资源县| 开化县| 柳江县| 邢台市| 柳林县| 沙河市| 新郑市| 柳林县| 扬州市| 永城市| 武汉市| 凤阳县| 望都县| 兴文县| 迁安市| 博客| 南和县| 迁安市| 宜宾市| 竹北市| 河曲县| 林甸县| 萨嘎县| 锡林浩特市| 云阳县| 印江| 三明市| 吴江市| 青浦区| 扬州市| 延川县| 新兴县| 苍山县| 南城县| 从江县| 松阳县| 阿合奇县| 从江县| 昭苏县| 繁昌县|