前言:想要寫出一篇引人入勝的文章?我們特意為您整理了激光雷達(dá)下的自動駕駛方案設(shè)計(jì)范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:針對在封閉環(huán)境內(nèi)智能車如何實(shí)現(xiàn)自動駕駛問題,本文通過算法與理論的分析以及在仿真環(huán)境中進(jìn)行運(yùn)動規(guī)劃的驗(yàn)證,進(jìn)而得到了一套低成本、簡單易操控的自動駕駛引導(dǎo)方案。經(jīng)實(shí)驗(yàn)結(jié)果證明,基于ROS平臺設(shè)計(jì)的智能車,在地圖構(gòu)建(SLAM)、定位、路徑規(guī)劃方面具有較好的穩(wěn)定性、實(shí)時(shí)性、快速性與準(zhǔn)確性。
關(guān)鍵詞:自動駕駛;ROS;仿真
1自動駕駛的整體設(shè)計(jì)方案
這套針對封閉環(huán)境中既定路徑下車輛自動駕駛的控制方案是基于ROS操作平臺實(shí)現(xiàn)的,ROS提供了大量的工具組合用來進(jìn)行功能的配置、啟動、自檢、調(diào)試以及可視化。在ROS平臺中使用Gmapping算法針對激光雷達(dá)和IMU位姿傳感器檢測和采集的信息對周圍環(huán)境進(jìn)行二維柵格地圖構(gòu)建(SLAM)、采用AMCL算法來實(shí)現(xiàn)車輛在地圖中的準(zhǔn)確定位、最后通過A*算法進(jìn)行全局的路徑規(guī)劃。在路徑規(guī)劃中針對道路中臨時(shí)出現(xiàn)的障礙通過TEB算法進(jìn)行判別并進(jìn)行局部的路徑規(guī)劃以實(shí)現(xiàn)對其合理避讓。整套方案在結(jié)構(gòu)上具有適應(yīng)性廣泛、開發(fā)成本低的特點(diǎn),在不降低效率的前提下實(shí)現(xiàn)了對于自動駕駛的功能。
2基于Gmapping建圖功能的設(shè)計(jì)
SLAM全稱為SimultaneousLocalizationandMapping,及定位的同時(shí)完成建圖。本節(jié)從Gmapping算法功能包開始,結(jié)合重要參數(shù)信息展開介紹SLAM建圖功能。Gmapping運(yùn)行的理論基礎(chǔ)為通過從激光雷達(dá)和里程計(jì)分別獲取數(shù)組觀測向量信息和里程計(jì)測量信息,經(jīng)過TF轉(zhuǎn)換,輸出地圖信息和位姿估計(jì)。
3定位以及導(dǎo)航算法功能介紹
AMCL全稱為自適應(yīng)蒙特卡洛定位,是在傳統(tǒng)MCL定位算法基礎(chǔ)上,添加KLD采樣實(shí)現(xiàn)功能改進(jìn)。針對已有的地圖,使用粒子濾波器跟蹤機(jī)器人位置姿態(tài)。AMCL算法解決了機(jī)器人綁架問題,有效防止迭代過程中重要信息粒子的缺失,并極大程度地提高了運(yùn)算效率。
4全局路徑規(guī)劃
全局路徑規(guī)劃代價(jià)地圖包含地圖層和膨脹層。并基于A*算法配置、設(shè)計(jì)全局路徑規(guī)劃器,通過全局代價(jià)題圖獲取單元格代價(jià)信息,通過計(jì)算尋找起點(diǎn)與終點(diǎn)之間最小代價(jià)路徑。本節(jié)將具體介紹A*算法的基本原理以及實(shí)現(xiàn)過程。A*算法第一部是將區(qū)域作方格化簡化操作,將二維區(qū)域地圖簡化為2維數(shù)組的形式,數(shù)組的每個(gè)元素對應(yīng)一個(gè)方格,便于計(jì)算操作。在簡化搜索區(qū)域完成后,需標(biāo)注起始點(diǎn)、終點(diǎn)和障礙的位置信息。準(zhǔn)備工作完成后,將起始點(diǎn)放入開放列表中,對其周圍的八個(gè)方格,計(jì)算F值,F(xiàn)值由G值和H值相加所得。G值對應(yīng)從起始點(diǎn)移動到指定方格的移動代價(jià),H值為指定方格移動到終點(diǎn)的估算成本。尋找F值最小的方格放入開放列表中,將該方格作為新的起始點(diǎn),重復(fù)上述操作,直到起始點(diǎn)周圍方格中包含終點(diǎn),則此時(shí)成功找到合適路徑。
5局部路徑規(guī)劃
局部路徑規(guī)劃代價(jià)地圖包含障礙地圖層和膨脹層。該功能用于小車行進(jìn)過程中,對地圖中未記錄的障礙信息,能夠及時(shí)改變路徑避開障礙。局部路徑規(guī)劃器是基于TEB算法實(shí)現(xiàn)的。TEB算法核心圍繞位姿和記錄時(shí)間序列展開。位姿及為機(jī)器人在地圖中的位置、姿態(tài)信息記錄不同時(shí)間段的位姿信息,經(jīng)過整合形成位姿序列。時(shí)間序列則由相鄰位姿狀態(tài)變化所經(jīng)歷的時(shí)間∆t整合而成。將位姿序列和時(shí)間序列進(jìn)行合并,以全局路徑允許的最大路徑作為約束條件,通過加權(quán)目標(biāo)優(yōu)化獲取最優(yōu)的路徑點(diǎn)。
6智能車在Gazebo中的仿真
實(shí)現(xiàn)基于ROS操作系統(tǒng)的智能車仿真,需要一個(gè)穩(wěn)定且功能強(qiáng)大的仿真的環(huán)境。ROS官方專門提供了Gazebo物理仿真軟件。Gazebo仿真環(huán)境可以實(shí)現(xiàn)機(jī)器人在三維環(huán)境中完成復(fù)雜動作。Gazebo不僅提供各種可二次開發(fā)的數(shù)據(jù)庫,還可以與ROS系統(tǒng)中的其他平臺進(jìn)行通訊,不僅提高了開發(fā)人員的工作效率也為ROS平臺的開發(fā)提供了更多的可能性。仿真具體過程的流程如下:
6.1車模與運(yùn)動控制器的建立
在ROS操作系統(tǒng)里面,一個(gè)完整的機(jī)器人仿真模型由一系列的link和joint組成,斑紋采用acrox描述文件來構(gòu)建車模的link(部件)與joint(連接件)的基本屬性。Link設(shè)置模型的各個(gè)部件的特性與名稱,link的三個(gè)屬性分別為,conllision,inertial分別與外觀,碰撞屬性和慣性特性相對應(yīng)。Joint則是連接兩個(gè)link的關(guān)節(jié),將parentlink與childlink進(jìn)行連接,由于parentlink與childlink的運(yùn)動關(guān)系不同,使得不同join之間的連接類型不同,下表為仿真模型用到的主要joint類型參數(shù)??刂破鞯呐渲迷诤艽蟪潭壬蠜Q定了車模的屬性。智能車模型的運(yùn)動控制器配置過程:1)在配置模型屬性的過程中,模型的各部分joint已經(jīng)添加了gazebo的標(biāo)簽并且添加了相應(yīng)的控制器插件,接下來通過一個(gè)yaml文件,聲明仿真需要的controller以及相對應(yīng)的參數(shù),并通過joint_state_controller來每個(gè)關(guān)節(jié)的實(shí)時(shí)狀態(tài)。2)生成啟動文件,在文件目錄下加載需要加載的controller
6.2建圖:
首先,打開gazebo和rviz的launch啟動文件,此時(shí)將加載仿真車模及其仿真環(huán)境,以及啟動gampping的功能文件。接著gazebo結(jié)點(diǎn)會自動訂閱車模坐標(biāo)控制信息、里程計(jì)坐標(biāo)信息、激光雷達(dá)坐標(biāo)信息,結(jié)合AMCL算法實(shí)現(xiàn)小車自定位,為建圖做好準(zhǔn)備。然后,通過采用設(shè)計(jì)好的控制工具包提供的滑塊控制車模在環(huán)境中運(yùn)動(如圖2所示),通過rviz可以觀察車模運(yùn)動過程中地圖的掃描情況。在車模運(yùn)動過程中,gampping算法將車模的坐標(biāo)控制信息、里程計(jì)坐標(biāo)信息、激光雷達(dá)坐標(biāo)信息進(jìn)行處理運(yùn)算實(shí)現(xiàn)二維地圖的構(gòu)建。完成建圖工作后使用map_server命令行工具將掃描好的地圖進(jìn)行保存。
6.3導(dǎo)航:
首先,開啟gazebo和rviz的仿真環(huán)境,在gazebo仿真環(huán)境中增設(shè)障礙物錐桶,以模擬真實(shí)環(huán)境中的路況變化。Rviz能夠加載顯示出新建好的二維柵格地圖。其次,分別開啟全局路徑規(guī)劃、局部路徑規(guī)劃、AMCL定位的功能文件,自動引導(dǎo)啟動與定位和導(dǎo)航相關(guān)的多個(gè)節(jié)點(diǎn)。通過在rviz上使用2D-navgoal指定目標(biāo)點(diǎn)的位姿矢量,之后move_base節(jié)點(diǎn)自動訂閱車模坐標(biāo)信息進(jìn)行定位,并由此計(jì)算出最佳路徑,由控制器發(fā)送指令控制車模沿路徑方向移動至終點(diǎn)。
7仿真結(jié)果的分析
經(jīng)過測試本實(shí)驗(yàn)設(shè)計(jì)的智能車可以在仿真環(huán)境中完成SLAM導(dǎo)航,Gmapping建立柵格地圖,躲避障礙物等功能,實(shí)現(xiàn)了Gzaebo在仿真環(huán)境中的研究。為了測試智能車在仿真環(huán)境中的性能。通過激光雷達(dá)建立柵格地圖與環(huán)境模型進(jìn)行對比,驗(yàn)證實(shí)驗(yàn)結(jié)果的準(zhǔn)確性。將柵格地圖與環(huán)境模型進(jìn)行比較,可知智能車在環(huán)境建圖測試中表現(xiàn)良好,擁有著較為精準(zhǔn)的導(dǎo)航與建圖功能。圖4為測試結(jié)果。
8結(jié)論
基于該方案設(shè)計(jì)的自主駕駛方案,經(jīng)過基于ROS平臺的Gezabo仿真實(shí)驗(yàn),得到了準(zhǔn)確度較高的柵格地圖,經(jīng)與仿真環(huán)境中的賽道進(jìn)行對比,證實(shí)了該方案在校園清潔、醫(yī)院消毒、封閉環(huán)境中的自動駕駛與路徑規(guī)劃等應(yīng)用場景的可行性。
參考文獻(xiàn):
[1]恩里克費(fèi)爾南德斯.ROS機(jī)器人程序設(shè)計(jì)[M].機(jī)械工業(yè)出版社.2016.
[2]李鑫.基于激光雷達(dá)的同時(shí)定位與建圖方法研究[D].長沙.
[3]高翔,張濤.視覺SLAM十四講:從理論到實(shí)踐[M].北京:電子工業(yè)出版社,2017.
作者:王建彬 張軒望 譚卓 侯明 單位:北京信息科技大學(xué)