跳到主要內容

臺灣博碩士論文加值系統

(2600:1f28:365:80b0:8005:376a:2d98:48cd) 您好!臺灣時間:2025/01/18 09:54
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:古廣昭
研究生(外文):Gu,Guang-Jhao
論文名稱:ROS與SLAM技術結合狀態機之應用與開發
論文名稱(外文):Application and Development of State Machine Combining ROS and SLAM Technology
指導教授:何前程賴俊吉賴俊吉引用關係
指導教授(外文):Ho,Chian C.Lai,Chun-Chi
口試委員:柯嘉南王俊傑
口試委員(外文):KE,JIA-NANWANG,JUN-JIE
口試日期:2020-07-20
學位類別:碩士
校院名稱:國立雲林科技大學
系所名稱:電機工程系
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2020
畢業學年度:108
語文別:中文
論文頁數:203
中文關鍵詞:機器人作業系統同步定位與地圖建構Smach狀態機Socket pthread自適應蒙特卡羅法自動導航無人車
外文關鍵詞:ROSSLAMSmachC++ socketAMCLnavigationAGV
相關次數:
  • 被引用被引用:1
  • 點閱點閱:517
  • 評分評分:
  • 下載下載:7
  • 收藏至我的研究室書目清單書目收藏:0
本論文主旨為在Linux系統下,基於機器人作業系統(Robot Operating System, ROS)之雷射引導自動導航無人車之開發。以兩組直流無刷馬達組成差速輪作為車體驅動系統,並搭載雷射測距儀配合嵌入式電腦做運算,可以透過Wi-Fi連接進行遠端監控。
利用搖桿控制讓車體移動,並使用雷射測距儀掃描周圍環境,透過SLAM(Simultaneous Localization and Mapping)技術結合里程計(odometry)與雷射掃描(scan)數據建構周圍環境地圖,其中里程計結合自由度感測模組運用。使用AMCL(Adaptive Monte Carlo Localization)技術在建構完成的地圖上進行車體定位。操作者透過TCP socket能隨時掌握機器人目前狀態,遠端下達指令後,車體會依照狀態機狀態執行動作,以及按照預先規劃好的路徑移動,行進至目標位置,移動時透過雷射掃描即時避障,實現自動導航的功能,並且使用狀態機配合不同的情況切換狀態,實現機器人複雜的動作。

The main purpose of this thesis is to develop a laser-guided AGV based on Robot Operating System (ROS) under Linux system. Two sets of DC brushless motors are used to form the differential wheel as the vehicle body drive system. It is equipped with a laser and an embedded computer for calculation. It can be remotely monitored through Wi-Fi connection.
This thesis uses joystick to control the movement of car body and uses a laser to scan surrounding environment. Through SLAM (Simultaneous Localization and Mapping) technology combined with odometry and laser scan data, it can construct the surrounding environment map, in which the odometer is combined with Freedom Sensing Module. This thesis uses AMCL (Adaptive Monte Carlo Localization) technology to locate the car body on the constructed map. Operators can always grasp the current state of the car body through TCP Socket. After the remote command is issued, the car body will perform actions according to the state machine, following the pre-planned path and travel to the target position. When moving, it uses laser scanning to avoid obstacles in real time to realize the function of automatic navigation. The state machine is used to switch states according to different situations to achieve complex robot movements.

摘要 i
Abstract ii
誌謝 iii
目錄 iv
表目錄 ix
圖目錄 xi
第一章 緒論 1
1.1前言 1
1.2文獻回顧 2
1.3研究動機與目的 3
1.4論文結構 3
第二章 ROS功能介紹 4
2.1關於ROS 4
2.2 ROS術語 5
2.2.1主節點(Master) 5
2.2.2節點(Node) 5
2.2.3功能包(Package) 5
2.2.4消息(Message) 6
2.2.5話題(Topic) 6
2.2.6服務(Service) 7
2.2.7動作(Action) 7
2.3座標轉換(TF) 8
2.4 ROS指令 10
2.4.1 ROS執行指令 10
2.4.2 ROS訊息指令 10
2.5 ROS工具 14
2.5.1 RViz 14
2.5.2 rqt_graph 17
第三章 硬體架構介紹 19
3.1電力系統規劃 19
3.2控制器 20
3.3馬達與驅動器 23
3.3.1直流無刷馬達 23
3.3.2馬達驅動控制器 24
3.3.3馬達控制器通訊指令 30
3.4雷射測距儀 35
3.5自由度感測模組 38
3.6車體架構 40
3.7差速輪運動控制 43
3.7.1直線前進與後退 44
3.7.2原地自旋轉 45
3.7.3圓弧轉向 47
第四章 硬體測試實驗 50
4.1搖桿驅動測試實驗 50
4.1.1實驗目的 50
4.1.2實驗步驟 50
4.1.3實驗結果 52
4.2搖桿發佈命令控制平台實驗 54
4.2.1實驗目的 54
4.2.2實驗步驟 54
4.2.3實驗結果 65
4.3雷射測距儀測試實驗 71
4.3.1實驗目的 71
4.3.2實驗步驟 71
4.3.3實驗結果 77
4.4遠端連線實驗 79
4.4.1實驗目的 79
4.4.2實驗步驟 79
4.4.3實驗結果 83
4.5自由度感測模組實驗 84
4.5.1實驗目的 84
4.5.2實驗步驟 84
4.5.3實驗結果 86
第五章 SLAM技術 89
5.1 RBPF 89
5.2 Gmapping 92
5.2.1改進提議分佈 92
5.2.2選擇性重採樣 94
5.2.3 SLAM演算法比較 95
第六章 Navigation介紹 97
6.1 move_base 98
6.2 Costmap 99
6.3自適應蒙特卡羅定位方法 100
6.4全局路徑規劃 102
6.5動態窗口方法 103
第七章 SLAM與導航實驗 105
7.1 SLAM實驗 105
7.1.1實驗目的 105
7.1.2實驗步驟 105
7.1.3實驗結果 112
7.2定位實驗 115
7.2.1實驗目的 115
7.2.2實驗步驟 115
7.2.3實驗結果 118
7.3導航實驗 121
7.3.1實驗目的 121
7.3.2實驗步驟 121
7.3.3實驗結果 129
第八章 Smach狀態機 136
8.1 Smach狀態機介紹 136
8.2 Smach基本測試 136
8.3 Smach實驗 139
8.3.1狀態機流程說明 139
8.3.2實驗結果 142
第九章 TCP Socket 146
9.1 Socket基本介紹 146
9.2 Socket程式碼 148
9.3 Socket實驗 161
第十章 綜合實驗成果 163
10.1實驗說明 163
10.2實驗步驟 163
10.3實驗結果 165
第十一章 結論與未來展望 177
11.1結論 177
11.2未來展望 178
參考文獻 179


[1]AGV專家,無人搬運車未來趨勢,2019年9月,檢索日期:2020年6月
https://kknews.cc/zh-tw/news/nll6zgg.html
[2]陳宣珽,ROS機器人教材之開發,國立雲林科技大學碩士,2019年6月,檢索日期:2020年6月
[3]從ROS 1.0 進化到 ROS 2.0,機器人作業系統會迎來何種革新?,
經濟部工業局,2019年4月,檢索日期:2020年6月
https://buzzorange.com/techorange/2019/04/18/adlink-ros-2-0/
[4]Vincent Ke,從網站開發到物聯網無所不在的OS作業系統介紹,2019年3月,
檢索日期:2020年6月
https://progressbar.tw/posts/113
[5]無人搬運車與人工搬運比較優勢,經濟部工業局,2017年10月,檢索日期:
2020年6月
https://kknews.cc/zh-tw/tech/4o5krmx.html
[6]Ubuntu使用手冊,Ubuntu官方網站,2019年2月,檢索日期:2020年6月
https://www.ubuntu-tw.org/
[7]Linux,維基百科,2019年2月,檢索日期:2020年6月
https://zh.wikipedia.org/wiki/Linux
[8]TullyFoote,ROS.org,ROS官方網站,2019年3月,檢索日期:2020年6月
http://wiki.ros.org/
[9]TurtleBOT3,TurtleBOT3 官方網站,2019年3月,檢索日期:2020年6月
https://www.turtlebot.com/
[10]機器人作業系統,維基百科,2019年4月,檢索日期:2020年6月
https://en.wikipedia.org/wiki/Robot_Operating_System
[11]ros_nav,GitHub,2020年,檢所日期:2020年6月
https://github.com/guanfuchen/ros_nav
[12]ARK-1124C,ADVANTECH,2020年,檢索日期:2020年6月
https://www.advantech.tw/products/1-2jkbyz/ark-1124c/mod_98b0cd9c-ee56-
45df-ace8-17ab10311242
[13]創盟科技DC電源無刷馬達驅動,創盟科技,2017年,檢索日期:2020年6月
https://www.trumman.com.tw/2016products/ELV.html
[14]創盟科技馬達驅動器,創盟科技,2017年,檢索日期:2020年6月
https://www.trumman.com.tw/2016products/EV.html
[15]創盟科技驅動器使用手冊與規格書,創盟科技,2019年,檢索日期:2020年6月
https://gearfeng.wixsite.com/trummantech/SupDownload/EV
[16]SICK TIM581產品資料,台灣西克,2019年
[17]9DoF Razor IMU MO Hookup Guide,SparkFun Electronics,2019年2月
檢索日期:2020年6月
https://learn.sparkfun.com/tutorials/9dof-razor-imu-m0-hookup-guide
[18]启小新,兩輪差速移動機器人運動分析、建模和控制,博客,2018年11月,
檢索日期:2020年6月
https://blog.csdn.net/iProphet/article/details/83661753
[19]WilliamWoodall,ROS設置機器人的tf轉換,ROS官方網站,2015年5月,
檢索日期:2020年6月
https://www.guyuehome.com/355
[20]MartinGuenther,Sick_tim wiki,ROS官方網站,2018年7月,檢索日期:2020年6月
http://wiki.ros.org/sick_tim
[21]GvdHoorn,ROS Wiki gmapping ,ROS官方網站,2019年2月,檢索日期:2020年6月
http://wiki.ros.org/gmapping
[22]GvdHoorn,gmapping,2019年2月,檢索日期:2020年6月
http://wiki.ros.org/gmapping
[23]Giorgio Grisetti, Cyrill Stachniss, and Wolfram Burgard: Improved Techniques for Grid Mapping with Rao-Blackwellized Particle Filters, IEEE Transactions on Robotics, Volume 23, pages 34-46,2007
[24]即時定位與地圖建構,維基百科,2019年5月,檢索日期:2020年6月
https://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping
[25]粒子濾波器,維基百科,2019年5月,檢索日期:2020年6月
https://en.wikipedia.org/wiki/Particle_filter
[26]wb790238030,gmapping原理分析,台部落,2019年1月,檢索日期:2020年6月
https://www.twblogs.net/a/5c460300bd9eee35b21ef5a6
[27]Giorgio Grisetti, Cyrill Stachniss, and Wolfram Burgard: Improving Grid-based SLAM with Rao-Blackwellized Particle Filters by Adaptive Proposals and Selective Resampling, In Proc. of the IEEE International Conference on Robotics and Automation (ICRA), 2005
[28]AnisKoubaa,ROS Wiki navigation,ROS官方網站,2019年5月,檢索日期:2020年6月
http://wiki.ros.org/navigation
[29]NicolasVaras,ROS Wiki move_base,ROS官方網站,2019年5月,檢索日期:2020年6月
http://wiki.ros.org/move_base
[30]EwingKang,ROS Wiki amcl,ROS官方網站,2019年6月,檢索日期:2020年6月
http://wiki.ros.org/amcl
[31]A*搜尋演算法,維基百科,2019年9月,檢索日期:2020年6月
https://zh.wikipedia.org/wiki/A*搜尋演算法
[32]Clare Lee,機器人運動規劃-動態出口法,2019年9月,檢索日期:2020年6月
https://congleetea.github.io/blog/2019/09/05/motion-plan-dwa/
[33]Playfish,smach wiki,ROS官方網站,2018年3月,檢索日期:2020年6月
http://wiki.ros.org/smach
[34]古月居,ROS技術有限狀態機(1),2018年9月,檢索日期:2020年6月
https://zhuanlan.zhihu.com/p/44234069
[35]古月居,ROS技術有限狀態機(2),2018年9月,檢索日期:2020年6月
https://zhuanlan.zhihu.com/p/45038430
[36]Kai Chou Yang,TCP Socket Programming,2015年3月,檢索日期:2020年6月
http://zake7749.github.io/2015/03/17/SocketProgramming/
[37]Eric,PHP-Socket server and client,痞客邦,2017年,檢索日期:2020年6月
http://dangerlover9403.pixnet.net/blog/post/174593274-
%5B%E6%95%99%E5%AD%B8%5D-php---socket-server-&-client-(part-i)

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
無相關期刊