1.本課題的研究內(nèi)容、重點(diǎn)及難點(diǎn) | ||||||||||||||||||||
研究內(nèi)容: 機(jī)器人在室內(nèi)環(huán)境或缺少全局位置信號(hào)(GPS等)的情況下,以機(jī)器人搭載的內(nèi)部傳感器和外部傳感器數(shù)據(jù)為輸入條件,系統(tǒng)地解決機(jī)器人自主定位與地圖創(chuàng)建的問題,為機(jī)器人以后切實(shí)能夠在廢墟環(huán)境內(nèi)部自主運(yùn)行做理論性的嘗試和前期的探索。 具體要求如下: (1) 通過對移動(dòng)機(jī)器人控制系統(tǒng)的功能要求分析,確定系統(tǒng)的總體設(shè)計(jì)方案; (2) 可圍繞室內(nèi)環(huán)境中的定位與地圖創(chuàng)建問題,機(jī)器人同步定位與地圖創(chuàng)建(Simultaneous localization and mapping, SLAM)領(lǐng)域的混合地圖表達(dá)方法、數(shù)據(jù)關(guān)聯(lián)問題、局部地圖表示方法以及SLAM算法在室內(nèi)環(huán)境下的適應(yīng)性問題等進(jìn)行系統(tǒng)設(shè)計(jì); (3) 進(jìn)行實(shí)驗(yàn)調(diào)試,證明所提方法的有效性。 研究重點(diǎn): (1) 如何采集實(shí)際環(huán)境中的各類型原始數(shù)據(jù); (2) 如何估算不同時(shí)刻間移動(dòng)目標(biāo)相對位置; (3) 如何構(gòu)建地圖。 研究難點(diǎn): (1) 如何優(yōu)化里程計(jì)帶來的累計(jì)誤差; (2) 如何消除空間累計(jì)誤差。 | ||||||||||||||||||||
2.準(zhǔn)備情況(已查閱的參考文獻(xiàn)或進(jìn)行的調(diào)研) | ||||||||||||||||||||
已查閱的參考文獻(xiàn): [1] 田野, 陳宏巍, 王法, 等. 室內(nèi)移動(dòng)機(jī)器人的SLAM算法綜述[J]. 計(jì)算機(jī)科學(xué), 2021, 48(3): 223-234. [2] 張為心. 基于激光雷達(dá)的室內(nèi)移動(dòng)機(jī)器人SLAM及路徑規(guī)劃研究[D]. 桂林: 桂林理工大學(xué), 2021. [3] 盧彩霞. 無人駕駛應(yīng)用環(huán)境下基于激光雷達(dá)的3D SLAM研究[D]. 北京: 北京交通大學(xué), 2019. [4] Giorgio Grisetti, Cyrill Stachniss, Wolfram Burgard. Improved Techniques for Grid Mapping With Rao-Blackwellized Particle Filters[J]. IEEE Transactions on Robotics: A publication of the IEEE Robotics and Automation Society, 2007, 23(1): 34-46. [5] Lenac Kruno, Kitanov Andrej, Cupec Robert, et al. Fast planar surface 3D SLAM using LIDAR[J]. Robotics and Autonomous Systems, 2017, 9(2): 197-220. [6] Pierzchal, Marek, Giguere, et al. Mapping forests using an unmanned ground vehicle with 3D Li DAR and graph-SLAM[J]. Computers and Electronics in Agriculture, 2018, 14(5): 217-225. [7] Smith, Randall, Self, et al. Estimating Uncertain Spatial Relationships in Robotics[J]. Robotics & Automation, 2013, 37(3): 16-33. [8] 朱友帥. 基于ROS的服務(wù)機(jī)器人同步定位與地圖構(gòu)建研究[D]. 鎮(zhèn)江: 江蘇科技大學(xué), 2019. [9] Imone Ceriani, Daniele Marzorati, Matteo Matteucci, et al. Single and Multi Camera Simultaneous Localization and Mapping Using the Extended Kalman Filter On the Different Parameterizations for 3D Point Features[J]. Journal of mathematical modelling and algorithms in operations research, 2014, 13(1): 23-57. [10] 沈斯杰, 田昕, 魏國亮, 等. 基于2D激光雷達(dá)的SLAM算法研究綜述[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2022, 32(1): 13-18. [11] 阮毅, 楊影, 陳伯時(shí). 電力拖動(dòng)自動(dòng)控制系統(tǒng)-運(yùn)動(dòng)控制系統(tǒng)[M]. 北京: 機(jī)械工業(yè)出版社, 2016. [12] Tadeusz Michalowski. Applications of MATLAB in science and engineering[M]. Rijeka: InTechOpen contributors, 2011. [13] Toshiba Corporation. TB6612FNG motor driver datasheet[M]. Tokyo: Toshiba Corporation, 2011. [14] 劉火良, 楊森. STM32庫開發(fā)實(shí)戰(zhàn)指南[M]. 北京: 機(jī)械工業(yè)出版社, 2017. [15] 陳孟元. 移動(dòng)機(jī)器人SLAM目標(biāo)跟蹤及路徑規(guī)劃[M]. 北京: 北京航空航天大學(xué)出版社, 2018. [16] 郭帥. 基于混合地圖表示的SLAM算法研究[D]. 沈陽: 中國科學(xué)院沈陽自動(dòng)化研究所, 2012. [17] Jiachen Ma, Qi Zhang, Liyong Ma. A novel robust approach for SLAM of mobile robot[J]. Journal of Central South University, 2014, 21(6): 2208-2215. [18] 陶輝, 吳懷宇, 程磊, 等. 基于特征地圖的移動(dòng)機(jī)器人EKF-SLAM和Fast-SLAM算法自主導(dǎo)航研究[J]. 北京聯(lián)合大學(xué)學(xué)報(bào)(自然科學(xué)版), 2010, 24(2): 18-24. [19] 陳世明, 鄭麗楠, 吳龍龍, 等. 面向3維空間的移動(dòng)機(jī)器人快速自適應(yīng)SLAM算法[J]. 信息與控制, 2012, 41(4): 419-424. [20] 張文玲, 朱明清, 陳宗海. 基于強(qiáng)跟蹤UKF的自適應(yīng)SLAM算法[J]. 機(jī)器人, 2010, 32(2): 190-195. [21] 周旭. 基于改進(jìn)粒子濾波的SLAM算法研究[D]. 南京: 南京理工大學(xué), 2014. [22] 陶輝, 吳懷宇, 程磊, 等. 輪式移動(dòng)機(jī)器人FastSLAM算法研究[J]. 哈爾濱理工大學(xué)學(xué)報(bào), 2011, 16(1): 42-47. [23] 郭利進(jìn), 王化祥, 孟慶浩, 等. 移動(dòng)機(jī)器人在大尺度未知環(huán)境下的自主導(dǎo)航方法-改進(jìn)的FastSLAM算法[J]. 高技術(shù)通訊, 2008, 18(4): 375-381. 調(diào)研情況: 機(jī)器人在現(xiàn)實(shí)生活的應(yīng)用過程中,無論是室內(nèi)室外的導(dǎo)航服務(wù)、汽車的無人駕駛以及虛擬現(xiàn)實(shí)的模擬都需要通過自身搭載的各類傳感器采集環(huán)境中的距離、圖像等多種信息,然后估計(jì)自身主體的位姿同時(shí)構(gòu)建環(huán)境地圖,這就是同時(shí)定位與地圖構(gòu)建技術(shù)(SLAM)。現(xiàn)今的SLAM技術(shù)較為繁多,但使用過程中都有一定的局限性[1]。 例如通過無線信號(hào)進(jìn)行定位的SLAM技術(shù)只能在事先搭建的環(huán)境中使用;使用GPS定位的SLAM技術(shù)顯然無法在室內(nèi)環(huán)境中正常工作,并且成本較高。而在SLAM技術(shù)發(fā)展的30多年以來,基于激光雷達(dá)的SLAM技術(shù)研究熱度卻從未降低。作為主流的SLAM技術(shù),其有著其他技術(shù)無法比擬的優(yōu)點(diǎn),例如:其通過激光反射的原理,能夠完成對障礙物信息的準(zhǔn)確判斷,不受光線的影響,在黑暗的環(huán)境下正常進(jìn)行工作;可以搭載其他傳感器共同感知處理信息,構(gòu)建更為精確的環(huán)境地圖[2]。 激光SLAM技術(shù)主要依靠搭載的2D或3D激光雷達(dá)、IMU、里程計(jì)等傳感器完成建圖任務(wù)。最早的基于激光雷達(dá)的SLAM算法是由Smith于1988年提出的EKF-SLAM算法,使用了最大似然算法進(jìn)行數(shù)據(jù)關(guān)聯(lián),但計(jì)算復(fù)雜、魯棒性差,構(gòu)建的地圖無法用于機(jī)器人導(dǎo)航任務(wù)[2]。2002年Montemerlo等人提出了FastSLAM算法,靈活地將SLAM問題分割為定位和地圖構(gòu)建兩個(gè)問題,并且能夠使用柵格地圖[3]。在此基礎(chǔ)上,Grisetti等人提出Gmapping算法,改善了采樣粒子數(shù)過大的問題,對位姿進(jìn)行了掃描匹配,實(shí)現(xiàn)了較好的建圖效果,是目前使用最為廣泛的2D激光SLAM算法。之后激光SLAM算法研究進(jìn)入了飛速發(fā)展的魯棒性時(shí)代。Lenac等[4]提出一種基于3D姿態(tài)的快速SLAM,使用了360°激光雷達(dá)能夠更好的估計(jì)車輛軌跡。Pierzchala等[5]針對森林技術(shù),提出了基于graph-SLAM的同時(shí)定位和映射算法的局部圖。 | ||||||||||||||||||||
3、實(shí)施方案、進(jìn)度實(shí)施計(jì)劃 | ||||||||||||||||||||
SLAM算法的選用: 在機(jī)器人領(lǐng)域,SLAM技術(shù)是極其重要的研究熱點(diǎn)。如何進(jìn)行機(jī)器人的定位和路徑規(guī)劃,都需要以SLAM技術(shù)為前提[6],所以它也是整個(gè)機(jī)器人導(dǎo)航系統(tǒng)的關(guān)鍵[7]。早期時(shí)候,基于濾波的激光雷達(dá)SLAM算法常應(yīng)用于解決移動(dòng)機(jī)器人SLAM問題[8]。隨著近些年來計(jì)算機(jī)和傳感器技術(shù)的高速發(fā)展,它們的性能方面有了極大的提升,所以在這種環(huán)境下,基于圖優(yōu)化的激光雷達(dá)SLAM算法嶄露頭角,漸漸成為發(fā)展的新方向。但基于濾波的SLAM算法在實(shí)際應(yīng)用中仍然有著非常好的效果,占據(jù)著重要的基礎(chǔ)地位。其中的拓展卡爾曼濾波(EKF)和粒子濾波(PF)在早些年被主要集中研究,但EKF算法不適用于非線性系統(tǒng),特別是在環(huán)境特征數(shù)目較大時(shí)計(jì)算復(fù)雜度過高[9];基于PF的RBPF算法同樣因過多的采樣粒子難以在較為復(fù)雜的場景中完成建圖。針對這一系列難題,Gmapping算法優(yōu)化了粒子分布、完善了采樣過程,同時(shí)添加了里程計(jì)和傳感器的觀測信息來獲取更加精確地估計(jì),有效地提高了算法運(yùn)算效率,在室內(nèi)移動(dòng)機(jī)器人建圖過程中被廣泛使用。 目前,主流的激光SLAM算法的優(yōu)缺點(diǎn)分析如表1所示。 表1 激光SLAM算法的優(yōu)缺點(diǎn)分析[10] file:///C:/Users/HUANGZ~1/AppData/Local/Temp/ksohtml12324/wps1.jpg Gmapping算法原理: Gmapping算法是由Grisetti、Stachniss等人最早提出,其主要基于Rao-Blackwellized粒子濾波器原理,同時(shí)融合了擴(kuò)展卡爾曼濾波器思想的二維激光SLAM算法,是目前室內(nèi)機(jī)器人領(lǐng)域廣泛使用的一種激光SLAM算法[2]。該算法將SLAM問題分成機(jī)器人位姿估計(jì)和環(huán)境地圖構(gòu)建兩個(gè)問題,利用粒子濾波和擴(kuò)展卡爾曼估計(jì)機(jī)器人位姿與構(gòu)建地圖[11]。 如圖1所示為Gmapping算法整體框架。Gmapping算法在進(jìn)行同時(shí)定位和地圖構(gòu)建時(shí),除了接收處理激光傳感器的外部環(huán)境信息的同時(shí)還要接收處理機(jī)器人的里程計(jì)信息。最終將這兩種信息數(shù)據(jù)處理整合,同樣構(gòu)建出柵格地圖[12]。 file:///C:/Users/HUANGZ~1/AppData/Local/Temp/ksohtml12324/wps2.png 圖1 Gmapping 算法總體框架圖 基于ROS搭建仿真實(shí)驗(yàn)平臺(tái): ROS旨在提供一個(gè)統(tǒng)一的、開源的編程框架,被用于在各種現(xiàn)實(shí)世界和模擬環(huán)境中控制機(jī)器人[13]。機(jī)器人包含很多重要的專業(yè)技術(shù),并且要想使其成為大眾產(chǎn)品,仍然存在很多技術(shù)局限,因此,需要企業(yè)、專家和用戶一起努力。而ROS正是提供學(xué)者們一起協(xié)作和開發(fā)的平臺(tái),它降低了機(jī)器人入門的技術(shù)門檻、促進(jìn)了技術(shù)的傳播和使用,社區(qū)中的每個(gè)人都能做出自己的貢獻(xiàn)。其中有導(dǎo)航、SLAM、3D物體識(shí)別、多關(guān)節(jié)手臂的運(yùn)動(dòng)控制和機(jī)器學(xué)習(xí)等優(yōu)秀的開源資源供學(xué)者們一起學(xué)習(xí)[14]。 Gazebo是一款3D的物理仿真器,支持機(jī)器人開發(fā)中所需要的機(jī)器人、傳感器和環(huán)境模型,同時(shí)內(nèi)部搭載的物理引擎可以得到較好的仿真效果[15]。此外,Gazebo在ROS中有特定的接口,其中包含了ROS和Gazebo需要的所有控制,因此Gazebo和ROS非常兼容,這樣有利于在缺乏硬件平臺(tái)的情況下,可以先對功能進(jìn)行仿真驗(yàn)證。不僅如此,若在機(jī)器人模型上添加有激光雷達(dá)和攝像頭等傳感器,可以用過Rviz顯示對應(yīng)傳感器的深度信息或者是點(diǎn)云信息。在本文后面的SLAM仿真研究中,Gmapping節(jié)點(diǎn)發(fā)布的柵格地圖,可以通過Rviz訂閱顯示[16]。因此,本設(shè)計(jì)選擇它們?yōu)榉抡孳浖⑦M(jìn)行相應(yīng)的工作。 移動(dòng)機(jī)器人設(shè)計(jì)方案: 一個(gè)完備的室內(nèi)移動(dòng)機(jī)器人需要能夠完成自主導(dǎo)航的基本任務(wù)要求,基于這一實(shí)際的功能需求,移動(dòng)機(jī)器人的系統(tǒng)設(shè)計(jì)必須包括檢測機(jī)構(gòu)、控制機(jī)構(gòu)和執(zhí)行機(jī)構(gòu)這三個(gè)主要部分[17]。如圖1所示為設(shè)計(jì)的移動(dòng)機(jī)器人的系統(tǒng)框架圖。其中檢測機(jī)構(gòu)主要由激光雷達(dá)、IMU、里程計(jì)等組成,通過這些功能齊全的外部和內(nèi)部傳感器實(shí)時(shí)接收外界環(huán)境信息[18];控制機(jī)構(gòu)作為移動(dòng)機(jī)器人的核心需要處理檢測機(jī)構(gòu)獲得的數(shù)據(jù)信息,主要有主控制模塊“樹莓派”和底盤控制器STM32組成[14];執(zhí)行機(jī)構(gòu)則受控于控制機(jī)構(gòu),按照其發(fā)布的控制指令完成機(jī)器人的定向運(yùn)動(dòng),主要由電機(jī)驅(qū)動(dòng)器和電機(jī)組成[11];為了能夠監(jiān)控移動(dòng)機(jī)器人運(yùn)動(dòng)過程中的實(shí)時(shí)數(shù)據(jù)和運(yùn)動(dòng)情況,增加監(jiān)控機(jī)構(gòu),由連接主控模塊的PC主機(jī)來完成監(jiān)控任務(wù)[19]。 file:///C:/Users/HUANGZ~1/AppData/Local/Temp/ksohtml12324/wps3.jpg 圖2 移動(dòng)機(jī)器人系統(tǒng)框架圖 移動(dòng)機(jī)器人在執(zhí)行自主導(dǎo)航任務(wù)時(shí)需要先驗(yàn)的環(huán)境地圖信息和運(yùn)動(dòng)路徑線路作為前提條件,本設(shè)計(jì)方案中其具體內(nèi)容步驟如圖2所示[20]。由檢測機(jī)構(gòu)中的激光雷達(dá)、IMU、里程計(jì)等傳感器實(shí)現(xiàn)對環(huán)境障礙物信息和機(jī)器人自身位姿及運(yùn)動(dòng)信息的采集,并將采集到的信息傳輸?shù)娇刂茩C(jī)構(gòu)中[21];控制機(jī)構(gòu)中的STM32底層控制器首先對接收的各個(gè)傳感器信息進(jìn)行融合處理并傳送給主控模塊“樹莓派”,通過主控模塊“樹莓派”中已經(jīng)編寫好的SLAM算法實(shí)現(xiàn)移動(dòng)機(jī)器人的位姿定位和局部地圖的構(gòu)建[22];當(dāng)移動(dòng)機(jī)器人遍歷整個(gè)環(huán)境時(shí),全局地圖不斷更新完善直至構(gòu)建完整[23]。 file:///C:/Users/HUANGZ~1/AppData/Local/Temp/ksohtml12324/wps4.jpg 圖3 移動(dòng)機(jī)器人地圖構(gòu)建步驟圖 進(jìn)度計(jì)劃:
(4)設(shè)計(jì)圖紙及樣機(jī); (5)程序源碼。 |
歡迎光臨 (http://www.raoushi.com/bbs/) | Powered by Discuz! X3.1 |