999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ROS的自主導航系統仿真設計

2019-08-09 02:14:26胡思旺李春杰
自動化與儀表 2019年7期
關鍵詞:移動機器人規劃

胡思旺,李春杰

(中國科學技術大學 軟件學院,蘇州 215000)

移動機器人在陌生環境中自主避障與導航一直是機器人相關領域研究熱點。機器人自主導航技術的實現關鍵在于如何解決機器人在陌生環境中的定位與路徑規劃問題。一方面,基于里程計慣性導航[1]的實現,往往因為慣性傳感器長時間的累積誤差,極易造成機器人航跡計算偏差,無法滿足移動機器人定位與路徑規劃的精度要求。另一方面,采用GPS信號的衛星導航[2]技術,存在室內信號弱,定位誤差大,且極易受到天氣與環境影響等問題。

顯然,傳統上的自主導航技術難以勝任移動機器人自主導航的需求。同時定位與地圖構建SLAM(simultaneous localization and mapping)技術的提出是解決傳統上導航技術缺陷的有效方法。SLAM是指機器人在陌生環境中通過獲取自身傳感器數據,實現在陌生環境中的自主定位與環境地圖構建,機器人依據SLAM構建的室內環境地圖進行路徑規劃,同時利用自身傳感器數據自主避障到達目標點。

機器人操作系統ROS是基于Linux構建的開源機器人操作系統,其本質上是運行在Linux上的機器人軟件開發工具集,提供非常多的開源硬件驅動與算法功能包,極大方便機器人的設計與開發。在此基于ROS設計并實現了移動機器人的自主導航系統,并在stdr_simulator仿真系統上測試與驗證。

1 ROS操作系統

ROS是2010年由Willow Garage公司發布開源的次級操作系統,最早基于Ubuntu操作系統設計。ROS的設計初衷是幫助實現機器人研發過程中的代碼復用,提高機器人開發人員的效率,因此ROS被設計成為一種分布式、松耦合的架構,不同的執行程序被分散地獨立設計,可以按需求將不同的執行程序組合起來,實現機器人的功能。系統在運行時,所有的可執行程序及其所交互的數據都會通過ROS實現的點對點網絡組織與實現。

ROS中把可執行程序稱為節點,節點與節點之間通過基于ROS主題的形式傳遞消息。ROS提供節點基于主題訂閱與發布的消息通訊模式,節點將消息發布到指定主題中,其它節點通過訂閱主題來獲取消息,通訊模式如圖1所示。

圖1 ROS消息模型Fig.1 ROS messaging model

ROS允許節點運行在同一網絡下的不同計算機上,由ROS節點管理器ROS Master負責節點通訊的管理。ROS Master提供節點、主題等信息的注冊與查找,實現節點分布式、松耦合的通訊。ROS Master工作原理如圖2所示。

ROS Master負責維護ROS中所有節點進程之間的通訊,發布者節點在ROS Master中注冊主題與自身地址。訂閱者節點通過在ROS Master中依據訂閱的主題查找發布者節點通訊地址,依據ROS通訊協議,與發布者建立Socket通訊鏈路,最終實現發布者與訂閱者的消息通訊。

圖2 ROS Master通訊模型Fig.2 ROS Master communication model

2 自主導航系統設計

ROS為機器人自主導航開發提供了大量的功能級軟件包。在此,利用了ROS提供的用于機器人SLAM的gmapping軟件包,以及用于自主避障與路徑規劃的navigation軟件包集,在stdr_simulator仿真器下仿真實現移動機器人的自主導航。ROS將提供的軟件功能包以封裝成節點的形式提供給開發者使用,通過組織不同節點,極大方便自主導航系統的設計。

gmapping軟件包基于RBPF粒子濾波算法[3],利用激光雷達傳感器與機器人里程計信息構建室內柵格地圖,其核心運行的節點為slam_gmapping。在此通過配置navigation軟件包實現機器人的自主避障與路徑規劃,amcl軟件包實現機器人的移動定位。ROS提供navigation軟件包集配置如圖3所示。功能如下:

1)amcl 是ROS提供實現在SLAM構建的柵格地圖上定位軟件包,基于粒子濾波的蒙特卡洛定位算法實現。

2)sensor transforms 負責實現機器人中不同傳感器與機器人本體之間復雜坐標系統變換。

3)Odometry 負責發布move_base運行的里程計信息。

4)base_controller 訂閱move_base路徑規劃的速度geometry_msgs/Twist消息,并轉換為機器人電機驅動指令,驅動機器人運行。

5)Laser sensor 為激光雷達節點,提供激光掃描數據。

6)map_server 是ROS提供的讀取柵格地圖的工具,為move_base提供自主導航需要的先驗環境地圖。

圖3 navigation導航功能包集配置Fig.3 Navigation package configuration

7)move_base 是整個導航功能包集的核心運行節點,根據機器人外部傳感器數據,負責實現移動機器人的自主避障和路徑規劃。

8)global_planner 是全局路徑規劃插件,在此采用A*路徑規劃算法[4]。

9)local_planner 是move_base中局部路徑規劃插件,基于DWA動態窗口法實現機器人的自主避障與局部路徑規劃。

10)recovery_behaviors 是當機器人導航失敗時執行動作的配置。

ROS基于代價地圖實現機器人的路徑規劃,global_costmap為全局代價地圖,local_costmap為局部代價地圖。

3 自主導航系統配置

ROS導航功能包集中核心配置為move_base軟件包配置。move_base軟件包實現移動機器人自主避障與路徑規劃。move_base在global_costmap全局代價地圖上實現全局路徑規劃,在local_costmap上實現局部路徑規劃。在配置文件中配置機器人運行時的相關參數。move_base軟件包運行時,通過加載編寫的配置文件,實現移動機器人的自主導航。相關的配置有:通用配置文件;全局代價地圖配置文件;局部代價地圖配置文件。

3.1 通用參數配置

通用參數配置文件,主要用于配置全局路徑規劃插件global_planner與局部路徑規劃插件local_planner的共同必要基本參數。在此配置如下:

其中,robot_radius參數配置圓形機器人的半徑;obstacle_range代表傳感器最大的探測距離;raytrace_range:表示障礙物最小引入代價地圖的距離;observation_sources參數定義構建代價地圖傳感器的來源。

3.2 全局代價地圖參數配置

全局代價地圖用于配置全局路徑規劃插件global_planner的工作行為。其配置如下:

其中,global_frame與robot_base_frame定義全局地圖與機器人本體坐標系統;update_frequency定義全局路徑規劃插件global_planner的工作頻率。對于機器人在偏離原先的全局路徑時,全局路徑規劃插件將重新規劃全局路徑。

3.3 局部代價地圖參數配置

局部代價地圖用于配置局部規劃器在自主避障過程的DWA動態窗口算法的工作行為。在此配置如下:

在局部路徑規劃配置中,主要配置global_frame,robot_base_frame機器人地圖坐標系及機器人本體坐標系。public_frequency配置局部路徑規劃器發布信息的頻率。controller_patience表示在代價地圖清理操作執行前,控制器花多長時間等有效控制下發速度控制指令。接下來的width,height,resolution定義代價地圖的大小與分辨率。transform_tolerance參數定義轉換的允許延遲時間。之后的參數定義了機器人本體的最大速度、最小速度、最大加速度等速度屬性。

在此所仿真的是兩輪差速運動機器人,max_vel_y的方向速度定義0,速度屬性參數應該根據機器人本體的特性進行合理的配置。

4 仿真驗證

move_base軟件包參數完成配置后,需要編寫launch啟動文件,啟動move_base節點,launch文件的編寫規則可以參考文獻[6]。在此,仿真環境為ROS-indigo版本,操作系統為ubuntu14.04,仿真器選用stdr_simulator。

首先需要啟動stdr_simulator仿真器。通過編寫launch文件啟動gmapping節點,控制機器人在環境中移動以實現周圍環境地圖的構建,使用ROS提供的map_server工具保存gmapping創建的地圖。

模擬環境如圖4所示。使用gmapping所構建的地圖如圖5所示。

圖4 仿真環境Fig.4 Simulation environment

圖5 室內地圖Fig.5 Indoor map

在自主導航仿真環境中,仿真的過程如下:先啟動stdr_simulator仿真器;通過編寫的launch文件啟動move_base節點與amcl節點;打開ROS提供的可視化調試工具rviz,在rviz中點擊2D Nav Goal。此時,機器人便會在創建的地圖上進行全局路徑規劃,并開啟自主導航。當遇到障礙物時,機器人通過局部路徑規劃進行局部避障。其仿真結果如圖6所示。

圖6 仿真實現效果Fig.6 Simulation effect

5 結語

充分利用ROS提供的導航功能包集,設計并實現了移動機器人自主導航系統,在stdr_simulator仿真環境下對自主導航系統進行了仿真驗證。試驗結果表明,基于ROS的自主導航系統,可以有效地滿足移動機器人在室內自主導航的需求。針對ROS的特點,后續工作通過設計機器人驅動節點與激光雷達驅動節點,便可以實現將自主導航系統部署在真實的移動機器人。

猜你喜歡
移動機器人規劃
移動機器人自主動態避障方法
規劃引領把握未來
快遞業十三五規劃發布
商周刊(2017年5期)2017-08-22 03:35:26
基于Twincat的移動機器人制孔系統
多管齊下落實規劃
中國衛生(2016年2期)2016-11-12 13:22:16
迎接“十三五”規劃
極坐標系下移動機器人的點鎮定
基于引導角的非完整移動機器人軌跡跟蹤控制
主站蜘蛛池模板: 狠狠色噜噜狠狠狠狠奇米777| 无码网站免费观看| 制服丝袜在线视频香蕉| 国产成人a在线观看视频| 91亚洲国产视频| 亚洲精品片911| 亚洲男人在线| 欧美高清国产| 国产精品密蕾丝视频| 亚洲欧美日韩另类在线一| 日韩乱码免费一区二区三区| 鲁鲁鲁爽爽爽在线视频观看| 国产精品美女网站| 日韩无码白| 国产不卡在线看| 国产白浆在线观看| 精品人妻一区无码视频| 久久精品国产精品一区二区| m男亚洲一区中文字幕| 亚洲美女操| 国产精品成| 国产亚洲欧美在线中文bt天堂| 一区二区三区精品视频在线观看| 亚洲第一在线播放| 亚洲h视频在线| Aⅴ无码专区在线观看| 国产在线欧美| 香蕉视频在线精品| 午夜激情婷婷| 午夜精品区| 亚洲视频一区| 国产精品久久国产精麻豆99网站| 久久这里只精品国产99热8| 国产制服丝袜91在线| 久久精品视频亚洲| 美女被操91视频| 日韩视频免费| 国产视频久久久久| 国产精品永久在线| 国产真实二区一区在线亚洲| 国产成人综合网| 久久精品欧美一区二区| 亚洲欧美在线看片AI| 国产剧情一区二区| 欧美日韩亚洲国产主播第一区| 亚洲欧美自拍中文| 色婷婷在线播放| 亚洲人成网站色7777| 香蕉蕉亚亚洲aav综合| 国产欧美日韩在线一区| 五月天久久婷婷| 亚洲男人的天堂久久香蕉网| 欧美三级视频在线播放| 国产成人一区| 中文字幕在线不卡视频| 久久精品国产精品一区二区| 亚洲欧美日韩综合二区三区| 亚洲va欧美va国产综合下载| 国产成人亚洲精品无码电影| 人妻丝袜无码视频| 日韩a级片视频| 在线国产毛片| 国产精品99久久久| 亚洲最新网址| h视频在线播放| 久久99国产综合精品1| 国产精品制服| 国产高潮视频在线观看| 中文字幕色站| 久久国产免费观看| 尤物午夜福利视频| 无码内射中文字幕岛国片| www亚洲天堂| 日韩精品一区二区三区视频免费看| 亚洲欧州色色免费AV| 亚洲色图欧美在线| 伊人久久久久久久| 无码视频国产精品一区二区| 亚洲色无码专线精品观看| 中文字幕亚洲综久久2021| 久草网视频在线| 国产人成乱码视频免费观看|