本書主要介紹移動機器人的結構、SLAM、ROS等移動機器人相關內容。全書共分為9章3個部分:第1部分為移動機器人基礎(第1~5章),詳細介紹了移動機器人的基本概念、結構、數學模型、定位、路徑規(guī)劃等,側重于原理性介紹,為后續(xù)內容奠定基礎;第2部分為SLAM(第6、7章),主要介紹了激光SLAM原理與視覺SLAM相關原理,并且結合案例對原理進行了說明,側重于理論與案例的結合;第3部分為ROS移動機器人實戰(zhàn)(第8、9章),主要介紹了基于ROS仿真環(huán)境的移動機器人SLAM開發(fā),側重于動手實踐。通過全書3個部分,從原理到案例再到實踐,讀者可以充分了解移動機器人SLAM技術。本書可以作為機器人工程、人工智能、自動化、控制科學與工程、計算機科學、電子信息、傳感器技術、信息處理等相關學科的大學本科和研究生的專業(yè)基礎教材,也可以作為有志從事移動機器人相關研究的從業(yè)者的參考資料。
莫宏偉,工學博士,教授,博士生導師。1996年7月-2001年8月,哈爾濱工程大學自動化學院,助教,團委書記,輔導員;2001年9月-2003年8月,哈爾濱工程大學自動化學院,講師;2003年9月-2004年9月,美國加州大學戴維斯分校訪問學者;2004年10月-2007年8月,哈爾濱工程大學自動化學院,副教授;2005年9月-2007年12月,哈爾濱工業(yè)大學計算機科學與技術學院,博士后;2007年9月-至今,哈爾濱工程大學自動化學院,教授。參加的學術組織及任職情況:黑龍江省多學科協同人工智能重點實驗室主任。中國人工智能學會自然計算與數字城市專業(yè)委員會(發(fā)起人)副主任,中國人工智能學會智能空天系統(tǒng)專委會常務委員,中國人工智能學會智能醫(yī)療專業(yè)委員會委員,全國高校人工智能與大數據創(chuàng)新聯盟副理事長,黑龍江省高等教育學會人工智能教育專業(yè)委員會創(chuàng)始人、理事長,黑龍江省人工智能學會秘書長(2007-2019),黑龍江省生物醫(yī)學工程學會理事。黑龍江省醫(yī)師協會智慧醫(yī)療分會理事。國際期刊Research of Information Technology、International Journal of Swarm Intelligence Research、International Journal of Robotics and Automation Technology、《電子學報》、《導航與授時》編委。IEEE Tran on Industrial Informatics 2018 ?夺t(yī)療衛(wèi)生中的大數據處理》副主編。Journal of Big Data Research主編。獲得的個人榮譽和集體榮譽:黑龍江省杰出青年科學基金獲得者。全國高校人工智能與大數據創(chuàng)新聯盟人工智能教育"個人創(chuàng)新獎”。哈爾濱工程大學"人工智能導論”精品在線課程負責人。智慧樹"2021年雙一流高校學科建設精品課程”人工智能導論負責人。省級一流課程負責人。出版的主要著作:《人工免疫系統(tǒng)》,科學出版社,2009;《Handbook of Research on Artificial Immune Systems and Natural Computing: Applying Complex Adaptive Technologies》,IGI Global,USA,2009;《免疫調度原理與應用》,科學出版社,2013;《自然計算》,科學出版社,2016;《磁性細菌優(yōu)化算法》,科學出版社,2017;《人工智能導論》,人民郵電出版社,2020;《深度學習》,人民郵電出版社,2020。所承擔的重點科研項目:1.2013年1月-2015年12月,基于蜂群智能的無人機集群協同飛行控制策略研究,黑龍江省杰出青年科學基金,負責人;2.2014年1月-2016年9月,腦機接口控制機器人,總裝預研,負責人;3.2014年1月-2016年6月,橋梁檢測無人機,橫向,負責人;4.2018.9-2018.12 智能手術導航系統(tǒng),橫向,負責人;5.2019.1-2021.12 智能光譜識別系統(tǒng),橫向,負責人;6.2019.9-2019.12 人工智能疾病分析系統(tǒng),橫向,負責人;7.2020.1-2022.12 海陸空智能無人系統(tǒng)-火星車目標跟蹤系統(tǒng),科技部國家重點研發(fā)計劃,課題分項目負責人;8.2021.1-2022.12 認知智能移動機器人平臺研究,橫向,負責人;9 基于自然語言處理的領域本體系統(tǒng)構建,裝發(fā)預研,負責人。教學成果獲獎情況:智慧樹2021年高校思政精品課程卓越獎(個人),智慧樹"2021年雙一流高校學科建設精品課程”,省級線上一流課程。
第1章 緒論 1
1.1 移動機器人的基本概念 2
1.1.1 機器人的定義 2
1.1.2 移動機器人概述 2
1.2 移動機器人的發(fā)展 3
1.3 移動機器人的分類 7
1.3.1 按照應用場景分類 7
1.3.2 按照移動機構分類 9
1.4 移動機器人的關鍵技術 12
1.4.1 環(huán)境建模 12
1.4.2 自主定位 13
1.4.3 導航規(guī)劃 14
1.5 本章小結 15
習題1 16
第2章 移動機器人的結構 17
2.1 引言 18
2.2 控制器 18
2.2.1 單片機 19
2.2.2 嵌入式控制器 19
2.2.3 工控機 19
2.3 驅動器 20
2.3.1 常用的驅動器 20
2.3.2 直流電機 21
2.3.3 伺服電機 23
2.3.4 步進電機 24
2.4 傳感器 24
2.4.1 傳感器及其分類 25
2.4.2 內部傳感器 26
2.4.3 外部傳感器 28
2.5 本章小結 33
習題2 33
第3章 移動機器人的數學模型 35
3.1 移動機器人的運動學模型 35
3.1.1 移動機器人坐標系 36
3.1.2 雙輪差速移動機器人的運動學模型 38
3.1.3 全方位移動機器人的運動學模型 39
3.2 移動機器人的動力學模型 42
3.2.1 雙輪差速移動機器人的動力學模型 42
3.2.2 全方位移動機器人的動力學模型 43
3.3 本章小結 47
習題3 47
第4章 移動機器人定位 48
4.1 環(huán)境地圖構建方法 49
4.1.1 幾何特征地圖 50
4.1.2 拓撲地圖 50
4.1.3 點云地圖 51
4.1.4 八叉樹地圖 53
4.1.5 柵格地圖 55
4.2 定位問題的分類 56
4.2.1 局部定位與全局定位 56
4.2.2 靜態(tài)環(huán)境定位與動態(tài)環(huán)境定位 57
4.2.3 被動定位與主動定位 57
4.2.4 單機器人定位與多機器人定位 58
4.3 定位的常用方法 58
4.3.1 GPS定位 58
4.3.2 基于地圖的定位 60
4.3.3 基于概率方法的定位 61
4.4 本章小結 67
習題4 67
第5章 移動機器人路徑規(guī)劃 68
5.1 引言 69
5.2 路徑規(guī)劃的傳統(tǒng)算法 70
5.2.1 全局路徑規(guī)劃 70
5.2.2 局部路徑規(guī)劃 80
5.3 基于采樣的路徑規(guī)劃 86
5.3.1 概率路圖法 86
5.3.2 快速擴展隨機樹法 88
5.4 現代智能路徑規(guī)劃 90
5.4.1 模糊邏輯算法 90
5.4.2 神經網絡算法 92
5.4.3 遺傳算法 92
5.4.4 蟻群算法 94
5.4.5 粒子群優(yōu)化算法 95
5.4.6 禁忌搜索算法 96
5.5 案例分析:煙花算法 96
5.5.1 基本煙花算法 97
5.5.2 基本煙花算法在路徑規(guī)劃中的實現 101
5.6 本章小結 105
習題5 105
第6章 激光SLAM 106
6.1 SLAM的概念及分類 107
6.2 SLAM的數學表述 110
6.2.1 基本概念 110
6.2.2 SLAM問題的數學表述 111
6.3 濾波激光SLAM 113
6.3.1 激光SLAM系統(tǒng)模型 114
6.3.2 貝葉斯濾波 115
6.3.3 擴展卡爾曼濾波SLAM算法 116
6.3.4 粒子濾波 118
6.4 Gmapping算法 120
6.4.1 FastSLAM算法 120
6.4.2 Gmapping算法概述 121
6.4.3 Gmapping算法流程 123
6.5 圖優(yōu)化SLAM算法 131
6.5.1 圖優(yōu)化SLAM算法概述 131
6.5.2 圖優(yōu)化SLAM算法原理 132
6.6 Cartographer算法 134
6.6.1 激光掃描匹配 135
6.6.2 閉環(huán)檢測 136
6.6.3 位姿圖優(yōu)化 138
6.7 激光SLAM的案例分析 140
6.7.1 傳感器模型 141
6.7.2 基于粒子濾波的移動機器人定位 143
6.7.3 環(huán)境地圖構建 147
6.8 本章小結 151
習題6 152
第7章 視覺SLAM 153
7.1 視覺SLAM概述 154
7.1.1 視覺SLAM的概念與框架 154
7.1.2 視覺SLAM的主要算法 155
7.2 視覺前端——視覺里程計 157
7.2.1 視覺里程計的數學模型 157
7.2.2 特征點法 160
7.2.3 直接法 170
7.3 后端優(yōu)化 174
7.3.1 基本概念 174
7.3.2 狀態(tài)估計問題 174
7.3.3 非線性最小二乘 175
7.3.4 位姿圖優(yōu)化 179
7.4 回環(huán)檢測 181
7.4.1 基本概念 181
7.4.2 詞袋模型 181
7.4.3 評價指標——準確率和召回率 184
7.5 案例分析:ORB-SLAM2算法 184
7.5.1 ORB-SLAM概述 184
7.5.2 ORB-SLAM2基本原理 186
7.6 案例分析:動態(tài)視覺SLAM 188
7.6.1 動態(tài)點的識別 188
7.6.2 動態(tài)視覺SLAM的整體框架 194
7.6.3 后端優(yōu)化 197
7.6.4 動態(tài)環(huán)境下的三維地圖構建 201
7.7 本章小結 205
習題7 205
第8章 機器人操作系統(tǒng) 207
8.1 ROS簡介 208
8.1.1 ROS的發(fā)展 208
8.1.2 ROS的安裝 208
8.1.3 配置ROS 210
8.1.4 測試ROS 210
8.2 catkin文件系統(tǒng) 211
8.2.1 catkin編譯系統(tǒng) 211
8.2.2 catkin工作空間 212
8.2.3 package功能包 213
8.2.4 常見文件類型 215
8.3 ROS通信機制 217
8.3.1 topic 217
8.3.2 service 218
8.3.3 action 219
8.4 ROS工具 220
8.4.1 仿真工具Gazebo 220
8.4.2 三維可視化工具RViz 220
8.4.3 ROS GUI開發(fā)工具rqt 220
8.5 本章小結 221
習題8 221
第9章 移動機器人仿真開發(fā) 223
9.1 搭建移動機器人模型 224
9.2 搭建仿真物理環(huán)境模型 235
9.3 定位與導航 238
9.3.1 鍵盤控制 238
9.3.2 定位與建圖 239
9.3.3 導航 242
9.3.4 自主探索 244
9.4 本章小結 247
習題9 247