摘 要:路徑規(guī)劃是物聯網專業(yè)本科階段“機器人與人工智能”課程的重要內容,具有理論性與實踐性強及知識更新快等特點。為了使學生直觀深入地掌握該知識點,以機器人操作系統ROS為基礎,設計了面向智能家居服務移動機器人的路徑規(guī)劃實驗內容。機器人采用Gmapping算法建圖,采用Amcl算法實現定位,利用A*算法和WTO算法實現路徑規(guī)劃?;赗OS的家居服務機器人路徑規(guī)劃實驗設計科學、合理,能夠讓學生更深刻地理解各部分運行原理,提高學生的學習興趣。
關鍵詞:ROS;智能家居;機器人;路徑規(guī)劃;SLAM;Gmapping;Amcl
中圖分類號:TP242 文獻標識碼:A 文章編號:2095-1302(2025)04-0-03
0 引 言
從國際機器人聯合會(International Federation of Robotic, IFR)的表述來看,智能家居服務機器人是指自身通過半自主或完全自主的方式運行,為人類健康或維持設備良好狀態(tài)提供幫助的機器人。智能家居服務機器人是將智能科學理論知識與多學科技術相互融合并應用到機器人領域的產物,機器人能實現自主感知、決策與行為。它基于計算機視覺、語音識別、語義理解、自然語言處理、機器學習、動態(tài)導航和其他技術,使家居服務機器人可以提供實用的服務及更好的人機交互功能。而路徑規(guī)劃又是家居服務機器人最重要的底層功能。
本文基于ROS系統架構設計了家居服務機器人路徑規(guī)劃實驗。為方便學生使用和二次開發(fā),ROS程序以軟件包的形式管理。使用ROS作為開發(fā)平臺,能夠使學生接觸到現代機器人技術的前沿,了解機器人系統構架和功能模塊,培養(yǎng)學生在機器人領域的科學素養(yǎng)。
1 ROS家居服務機器人的硬件設計
在現實環(huán)境下作業(yè)時,自主移動機器人首先要解決的基本問題是其自身的建圖、定位、路徑規(guī)劃與導航問題[1-2]。本文以ROS路徑規(guī)劃與導航相關知識為基礎,設計了智能家居場景下的路徑規(guī)劃和自主定位與導航實驗。
智能服務機器人以Intel高性能處理器為核心,附加一個單片機進行移動和轉向等控制[3-4]。智能服務機器人集成了多種傳感器,通過SLAM激光雷達和慣性傳感器來識別機器人所處的周邊環(huán)境和自身狀態(tài),進而完成自主導航和路徑規(guī)劃[5]。另外,該家居服務機器人可以通過麥克風陣列和深度攝像頭實現人機交互;通過無線模塊實時讀取溫度、濕度、光照強度、燃氣泄漏等信息,實現家居狀態(tài)的實時監(jiān)控;通過電風扇、臺燈、窗簾等繼電器開關狀態(tài)的選擇,實現溫濕度、光照強度的控制[6]。圖1為該家居服務ROS機器人實物。
2 家居環(huán)境的繪制與機器人實時定位
家居服務機器人配備有激光雷達,具備SLAM(Simultaneous Localization and Mapping)功能,能夠通過激光雷達掃描建立未知家居環(huán)境的地圖,以及標注機器人在地圖中的實時位置[7]。在ROS系統中,利用Gmapping包和Amcl包實現了SLAM的核心功能:Gmapping包根據從激光掃描儀中獲得的數據繪制地圖;Amcl包在現有的地圖中實現機器人的實時定位[8-10]。
圖2為本文設計的家居服務機器人進行實驗的實景拍攝圖和規(guī)劃圖。圖3為Gmapping包生成的2D柵格地圖。圖4為基于Amcl包的機器人自身定位示意圖。
3 家居服務機器人的路徑規(guī)劃算法實現
路徑規(guī)劃是指在一張已知起點和終點的地圖中,找出一條無障礙物最佳路徑,并且系統還能夠隨著機器人的不斷移動動態(tài)調整路徑,直到機器人抵達終點。通常使用全局路徑規(guī)劃加局部路徑規(guī)劃的方式實現,全局路徑規(guī)劃用于統籌全局、計算最優(yōu)路徑,局部路徑規(guī)劃用于修正行進過程中的誤差、使之盡量貼合全局規(guī)劃的路徑[11]。
在ROS系統中,move_base節(jié)點集合了全局路徑規(guī)劃和局部路徑規(guī)劃算法,接收map_server節(jié)點存儲的地圖信息,Acml節(jié)點的定位及姿態(tài)信息,以及里程計信息和傳感器數據。在確定起點與終點的情況下輸出全局路徑規(guī)劃,然后再結合機器人的移動以及周圍環(huán)境的變換情況,以線速度與角速度的形式將局部路徑規(guī)劃輸出給機器人底盤[12-14]。
考慮到ROS機器人的家居服務工作場景,本文利用A*算法進行家居機器人的全局路徑規(guī)劃;當遇到障礙物時,局部路徑規(guī)劃功能采用DWA(動態(tài)窗口法)實現。圖5為A*算法的程序流程。圖6為DWA算法的程序流程。
move_base節(jié)點雖然已經將局部路徑規(guī)劃和全局路徑規(guī)劃算法封裝完畢,但是由于家居機器人執(zhí)行的任務不同,最終的路徑規(guī)劃線路也有所不同。因此需要在建好的地圖中明確起點和終點,然后基于上述全局路徑規(guī)劃算法和局部路徑規(guī)劃算法實現路徑規(guī)劃功能,并控制底盤進行自主導航,完成從起點到終點的運動。圖7為本文所設計的家居服務機器人基于路徑規(guī)劃行進的運動路線圖。
4 結 語
大連海事大學船舶電氣工程學院為物聯網專業(yè)開設了ROS服務機器人的相關課程設計。初步建立了基于家居服務機器人的實踐教學項目,并編寫了相關實踐指導書。通過參與ROS服務機器人的課程設計,學生能夠掌握ROS平臺的基本原理和技術,獲得實際的機器人開發(fā)經驗。學生通過熟悉ROS的節(jié)點通信、服務調用、數據傳輸等核心概念,掌握了路徑規(guī)劃功能相關的機器人導航、目標識別、運動控制等關鍵技術。
參考文獻
[1]王雨蒙,王欣,朱冰,等.ROS智能車創(chuàng)新性實驗設計及教學應用[J].實驗室研究與探索,2023,42(6):182-186.
[2]徐浩,鞠文清,錢夔,等.基于ROS網橋的跨平臺網絡化人機交互系統設計[J].測控技術,2023,42(12):18-23.
[3]楊亮,李文生,傅瑜,等.基于ROS的機器人即時定位及地圖構建創(chuàng)新實驗平臺研制[J].實驗技術與管理,2017,34(8):99-103.
[4]楊記周,胡廣宇,許玉云,等.室內移動機器人平臺設計與實
現[J].自動化儀表,2019,40(5):75-78.
[5]張開樂,陳興文,許爽.基于ROS的移動機器人開發(fā)平臺設計與實現[J].制造業(yè)自動化,2023,45(9):104-109.
[6]趙地,謝廣明,杜玉紅,等.創(chuàng)新創(chuàng)業(yè)教育背景下的高校大學生機器人創(chuàng)新實驗室建設與探索[J].實驗室研究與探索,2022,41(9):162-165.
[7]朱德智,張銘,楊勝嶸,等.基于ROS的多移動機器人協同承重與導航[J].控制工程,2022,29(3):419-427.
[8]陳正升,王雪松,程玉虎,等.基于ROS的自主移動機器人路徑規(guī)劃虛實結合實驗平臺[J].實驗技術與管理,2023,40(1):77-82.
[9]葛亞明,胡一博,雷喬治,等. ROS無人駕駛創(chuàng)新實驗課程研究與教學實踐[J].實驗技術與管理,2020,37(6):221-224.
[10]胡雙,吳瑜佳,王語瑛,等.基于ROS的智能機器人可視化自主交互系統設計[J].實驗室研究與探索,2023,42(4):54-59.
[11]李振富,石學文,徐雍倡,等. ROS機器人的移動導航設計[J].自動化儀表,2021,42(12):56-61.
[12]李建勇,趙靜,劉雪梅,等.基于ROS的自主家庭陪伴機器人設計[J].電子技術應用,2021,47(2):58-62.
[13]劉小軍,溫宏愿,周軍,等.基于雙控制器的家庭服務機器人實驗系統設計[J].實驗室研究與探索,2021,40(3):75-80.
[14]石學文,趙曉晨,王慶蘭,等.基于ROS的差分輪式機器人系統的設計[J].自動化儀表,2020,41(9):89-93.