• 
    

    
    

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

      ?

      基于ROS的SLAM智能車(chē)

      2021-09-13 02:57:48江蘇房守江張睿
      汽車(chē)維修與保養(yǎng) 2021年6期
      關(guān)鍵詞:建圖里程計(jì)激光雷達(dá)

      ◆文/江蘇 房守江 張睿

      本文主要研究設(shè)計(jì)了一款基于樹(shù)莓派ROS平臺(tái)的SLAM智能車(chē)。該智能車(chē)?yán)眉す饫走_(dá)以獲取周?chē)h(huán)境的深度信息,采用ROS環(huán)境下具備SLAM算法的gmapping功能包,并通過(guò)STM32對(duì)智能車(chē)的底層驅(qū)動(dòng)控制可實(shí)現(xiàn)即時(shí)定位、地圖構(gòu)建、自主導(dǎo)航和避障功能。

      一、前言

      室外定位與導(dǎo)航可以使用GPS,但在室內(nèi)進(jìn)行定位與導(dǎo)航會(huì)比較復(fù)雜。SLAM為即時(shí)定位與地圖構(gòu)建技術(shù),很好地解決了室內(nèi)智能車(chē)的地圖構(gòu)建和即時(shí)定位問(wèn)題,具備重要的理論與應(yīng)用價(jià)值。而對(duì)于智能移動(dòng)這個(gè)問(wèn)題,除了要有SLAM技術(shù)之外,還需要加入路徑規(guī)劃和運(yùn)動(dòng)控制技術(shù)。

      二、設(shè)計(jì)方案

      本設(shè)計(jì)中,SLAM智能小車(chē)由小車(chē)底盤(pán)、傳感器系統(tǒng)和樹(shù)莓派計(jì)算機(jī)系統(tǒng)組成,其中,底盤(pán)是智能小車(chē)的運(yùn)動(dòng)載體,用來(lái)實(shí)現(xiàn)整個(gè)智能小車(chē)的運(yùn)動(dòng),傳感器系統(tǒng)由光電編碼器、激光雷達(dá)和IMU組成,用來(lái)采集實(shí)現(xiàn)可靠SLAM所需的各種傳感器信息,計(jì)算機(jī)系統(tǒng)包括下位機(jī)和便攜式計(jì)算機(jī)系統(tǒng),便攜式計(jì)算機(jī)系統(tǒng)用來(lái)運(yùn)行ROS操作系統(tǒng)和SLAM程序,本系統(tǒng)整體設(shè)計(jì)方案如圖1所示。

      圖1 智能車(chē)設(shè)計(jì)方案

      1.相關(guān)傳感器

      (1)激光雷達(dá)

      要完成智能車(chē)的SLAM和自主導(dǎo)航,首先要有感知周?chē)h(huán)境的能力,尤其要有感知周?chē)h(huán)境深度信息的能力,這是探測(cè)障礙物的關(guān)鍵數(shù)據(jù)。激光雷達(dá)可以提供智能車(chē)本體與環(huán)境障礙物之間的距離信息,其優(yōu)點(diǎn)是精度高,響應(yīng)快,數(shù)據(jù)量小,可以完成實(shí)時(shí)SLAM任務(wù)。本設(shè)計(jì)中采用SLAMTEC公司低成本激光雷達(dá)RPlidar-A1,可實(shí)現(xiàn)12米測(cè)距,一秒8 000次測(cè)量頻率,掃描頻率5Hz。

      針對(duì)RPlidar-A1激光雷達(dá),通過(guò)安裝完成ROS相應(yīng)的驅(qū)動(dòng)功能包,在sensor_msgs包中定義了專(zhuān)用數(shù)據(jù)結(jié)構(gòu)——LaserScan,用于存儲(chǔ)激光雷達(dá)獲取的深度信息。

      (2)里程計(jì)與IMU

      里程計(jì)采用底盤(pán)電機(jī)光電編碼器方案,由STM32下位機(jī)經(jīng)過(guò)運(yùn)動(dòng)學(xué)計(jì)算獲得線(xiàn)速度后發(fā)送給ROS進(jìn)行里程的轉(zhuǎn)換,進(jìn)而獲得小車(chē)在地圖上的坐標(biāo)。IMU提供的姿態(tài)數(shù)據(jù)融合到角速度上,小車(chē)原地旋轉(zhuǎn)是否準(zhǔn)確需要靠準(zhǔn)確的IMU和里程計(jì)。IMU數(shù)據(jù)的讀取和線(xiàn)速度的計(jì)算均由STM32下位機(jī)主控負(fù)責(zé),并通過(guò)USB傳輸給上位機(jī)。

      2.運(yùn)動(dòng)控制板(下位機(jī))

      運(yùn)動(dòng)控制板采用STM32F103RC作為主控,主要負(fù)責(zé)小車(chē)運(yùn)動(dòng)模型解算、IMU數(shù)據(jù)讀取、線(xiàn)速度的計(jì)算、遙控部分控制,最終通過(guò)USB傳輸給上位機(jī)。其中,IMU數(shù)據(jù)由MPU6050模塊進(jìn)行讀取,接口電路如圖2。線(xiàn)速度計(jì)算由光電編碼器完成,光電編碼器接口電路如圖3。主控板可裝載峰值6A的電機(jī)驅(qū)動(dòng)模塊,引出四路編碼電機(jī)驅(qū)動(dòng)接口,其中一路電機(jī)驅(qū)動(dòng)接口電路如圖4所示。

      圖2 MPU6050接口電路

      圖3 電機(jī)驅(qū)動(dòng)模塊接口電路

      圖4 光電編碼器接口電路

      3.ROS主控制器

      ROS主控系統(tǒng)控制器采用Raspberrypi 4B,Linux版本安裝了 Ubuntu 18系統(tǒng)。同時(shí)裝有ROS機(jī)器人操作系統(tǒng),ROS版本為Melodic,作為機(jī)器人ROS主控制節(jié)點(diǎn)。

      (1)ROS系統(tǒng)

      機(jī)器人操作系統(tǒng)(ROS)是一個(gè)開(kāi)放源代碼的機(jī)器人中間件套件,安裝到Linux系統(tǒng)上。ROS系統(tǒng)由許多獨(dú)立的節(jié)點(diǎn)組成,每個(gè)節(jié)點(diǎn)都使用發(fā)布/訂閱消息傳遞模型與其他節(jié)點(diǎn)進(jìn)行通信。小車(chē)節(jié)點(diǎn)我們稱(chēng)為主節(jié)點(diǎn)(ROS Master),因本地運(yùn)行數(shù)據(jù)收發(fā)延遲最低,本設(shè)計(jì)中雷達(dá)、建圖、導(dǎo)航、操作和監(jiān)控都在本地節(jié)點(diǎn)運(yùn)行,采用USB供電、HDMI接口的7英寸液晶作為ROS主控顯示器。

      (2)gmapping功能包

      gmapping功能包為開(kāi)源的功能包,集成了粒子波算法,開(kāi)發(fā)者無(wú)需掌握內(nèi)部復(fù)雜的算法,利用其對(duì)用戶(hù)開(kāi)放的接口即可實(shí)現(xiàn)相關(guān)功能,如圖5所示。

      圖5 gmapping功能包總體框架

      gmapping功能包需要獲取環(huán)境深度信息、IMU信息和里程計(jì)信息,通過(guò)相關(guān)參數(shù)配置及算法實(shí)現(xiàn),以進(jìn)行定位與地圖構(gòu)建,gmapping功能包向用戶(hù)開(kāi)放的關(guān)鍵接口如表1所示。

      表1 gmapping功能包向用戶(hù)開(kāi)放的關(guān)鍵接口

      使用gmapping建圖的一般步驟是:①在主控節(jié)點(diǎn)啟動(dòng)雷達(dá)與Gmapping節(jié)點(diǎn),同時(shí)程序會(huì)將IMU姿態(tài)與位置融合發(fā)布o(jì)dom位置信息;②啟動(dòng)本地雷達(dá)與Gmapping節(jié)點(diǎn);③啟動(dòng)rviz在窗口內(nèi)即可看到機(jī)器人tf位姿數(shù)據(jù)、激光節(jié)點(diǎn)、地圖數(shù)據(jù);④保存地圖,如圖6所示,保存后地圖文件為map.pgm和map.yaml。

      圖6 利用gmapping建圖

      (3)自主導(dǎo)航

      導(dǎo)航是在給定環(huán)境中將機(jī)器人從一個(gè)位置移動(dòng)到指定目的地,導(dǎo)航需要使用保存好的地圖,通過(guò)amcl尋找位置,move_base路徑規(guī)劃從而實(shí)現(xiàn)機(jī)器人自主導(dǎo)航。本設(shè)計(jì)采用navigation導(dǎo)航包實(shí)現(xiàn)智能車(chē)的自主導(dǎo)航:①啟動(dòng)底盤(pán)通訊與雷達(dá)節(jié)點(diǎn);②本地啟動(dòng)nav導(dǎo)航包,導(dǎo)入地圖文件;③啟動(dòng)本地可視化rviz,設(shè)置初始姿勢(shì)位置;④確定目標(biāo)位置,開(kāi)始導(dǎo)航,如圖7所示。

      圖7 自主導(dǎo)航

      三、總結(jié)

      本文研究設(shè)計(jì)的SLAM智能車(chē),采用樹(shù)莓派便攜式計(jì)算機(jī)系統(tǒng),配備低成本單線(xiàn)國(guó)產(chǎn)激光雷達(dá)、帶四個(gè)驅(qū)動(dòng)電機(jī)的底盤(pán)、STM32控制器等,成本低,功能完善,建圖與自主導(dǎo)航效果好,可很大程度上滿(mǎn)足室內(nèi)建圖和自主導(dǎo)航的功能需求。

      猜你喜歡
      建圖里程計(jì)激光雷達(dá)
      手持激光雷達(dá)應(yīng)用解決方案
      室內(nèi)退化場(chǎng)景下UWB雙基站輔助LiDAR里程計(jì)的定位方法
      視覺(jué)同步定位與建圖中特征點(diǎn)匹配算法優(yōu)化
      法雷奧第二代SCALA?激光雷達(dá)
      基于三輪全向機(jī)器人的室內(nèi)建圖與導(dǎo)航
      電子制作(2019年10期)2019-06-17 11:45:06
      一種單目相機(jī)/三軸陀螺儀/里程計(jì)緊組合導(dǎo)航算法
      基于激光雷達(dá)通信的地面特征識(shí)別技術(shù)
      一種基于多傳感融合的室內(nèi)建圖和定位算法
      基于激光雷達(dá)的多旋翼無(wú)人機(jī)室內(nèi)定位與避障研究
      電子制作(2018年16期)2018-09-26 03:27:00
      基于模板特征點(diǎn)提取的立體視覺(jué)里程計(jì)實(shí)現(xiàn)方法
      德州市| 马关县| 房产| 姚安县| 志丹县| 视频| 潮安县| 乌鲁木齐县| 诸城市| 津南区| 长宁区| 马尔康县| 宁陵县| 昌吉市| 余庆县| 策勒县| 巴林左旗| 西峡县| 绵竹市| 喀什市| 怀化市| 岗巴县| 高邑县| 温泉县| 宜君县| 临沭县| 卓尼县| 和龙市| 高安市| 湛江市| 九台市| 襄樊市| 莆田市| 三门峡市| 屏山县| 绥德县| 盐城市| 正蓝旗| 平乐县| 年辖:市辖区| 中江县|