定 價(jià):¥59.80
作 者: | 李德 著 |
出版社: | 清華大學(xué)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787302613220 | 出版時(shí)間: | 2022-09-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 244 | 字?jǐn)?shù): |
第1部分 基礎(chǔ)知識(shí)
第1章 輪式機(jī)器人的基礎(chǔ)知識(shí) 2
1.1 輪式機(jī)器人的定義與應(yīng)用 2
1.2 輪式機(jī)器人的結(jié)構(gòu)3
1.3 機(jī)器人的驅(qū)動(dòng)方式4
1.4 本章總結(jié)5
第2章 機(jī)器人的構(gòu)成 6
2.1 機(jī)器人的規(guī)劃6
2.2 輪式機(jī)器人的轉(zhuǎn)向結(jié)構(gòu) 8
2.2.1 輪式機(jī)器人的差速轉(zhuǎn)向 8
2.2.2 輪式機(jī)器人的獨(dú)立舵機(jī)轉(zhuǎn)向 9
2.2.3 阿克曼轉(zhuǎn)向結(jié)構(gòu) 11
2.2.4 輪式機(jī)器人轉(zhuǎn)向比較 11
2.2.5 差速機(jī)器人里程計(jì)運(yùn)動(dòng)模型 12
2.3 輪式機(jī)器人電動(dòng)機(jī)的選型 13
2.3.1 輪式機(jī)器人:電動(dòng)機(jī)性能 13
2.3.2 輪式機(jī)器人:GA370電動(dòng)機(jī)參數(shù)計(jì)算 14
2.4 機(jī)器人的驅(qū)動(dòng)模塊15
2.4.1 驅(qū)動(dòng)芯片L298N性能 15
2.4.2 驅(qū)動(dòng)模塊 L298N的使用方法 16
2.4.3 驅(qū)動(dòng)板TB6612FNG的使用方法 17
2.5 輪式機(jī)器人的大腦:控制器選型 18
2.6 輪式機(jī)器人底盤DIY 19
2.6.1 DIY的兩種方法 19
2.6.2 輪式機(jī)器人DIY改裝法 21
2.7 輪式機(jī)器人總結(jié)23
2.7.1 輪式機(jī)器人整體框圖 23
2.7.2 輪式機(jī)器人開發(fā)中涉及的軟件列表 23
2.8 本章總結(jié)24
第3章 輪式機(jī)器人的軟件提升 25
3.1 Keil軟件 25
3.1.1 Keil軟件的安裝 25
3.1.2 Keil 5軟件的使用 27
3.2 Linux基礎(chǔ)知識(shí) 28
3.2.1 Linux的Shell 28
3.2.2 編寫程序與腳本 31
3.3 網(wǎng)絡(luò)基礎(chǔ)知識(shí)32
3.3.1 基礎(chǔ)通信 32
3.3.2 MQTT協(xié)議 33
3.3.3 Linux安裝Mosquitto 36
3.3.4 MQTT測(cè)試工具 37
3.3.5 HTTP POST方法 38
3.4 算法39
3.4.1 PID控制算法 39
3.4.2 移位濾波均值算法 44
3.4.3 高、低通濾波和互補(bǔ)濾波器 45
3.4.4 初識(shí)貝葉斯 48
3.4.5 二值貝葉斯濾波 49
3.4.6 卡爾曼濾波 51
3.5 本章總結(jié)58
第2部分 技術(shù)提升
第4章 輪式機(jī)器人的底盤控制器:STM32開發(fā) 60
4.1 底盤控制器的對(duì)外神經(jīng)元:輸出PWM 61
4.1.1 使用Keil模擬PWM輸出 61
4.1.2 機(jī)器人中使用的PWM 66
4.2 底盤控制器的運(yùn)動(dòng)神經(jīng)元:驅(qū)動(dòng)控制 66
4.2.1 驅(qū)動(dòng)控制器的連接 66
目 錄
- V -
4.2.2 驅(qū)動(dòng)源碼分析 66
4.3 底盤控制器的捕獲神經(jīng)元:PWM捕獲測(cè)速 68
4.3.1 硬件 68
4.3.2 測(cè)速源碼分析 69
4.4 底盤控制器的中樞神經(jīng)元:串口通信控制指令 71
4.5 底盤控制器的觸覺神經(jīng)元:ADC電池電壓監(jiān)測(cè) 75
4.5.1 硬件連接 75
4.5.2 源碼分析 75
4.6 底盤控制器的發(fā)光控制神經(jīng)元:LED控制 77
4.6.1 硬件連接 77
4.6.2 源碼分析 77
4.7 本章總結(jié)78
第5章 輪式機(jī)器人的主控制器:樹莓派開發(fā) 79
5.1 樹莓派簡(jiǎn)介79
5.2 樹莓派資源80
5.3 輪式機(jī)器人的交互窗口:樹莓派Shell 80
5.4 輪式機(jī)器人上網(wǎng)接口:Socket通信 83
5.5 輪式機(jī)器人從控制器通信接口:樹莓派串口 83
5.5.1 樹莓派串口配置 83
5.5.2 樹莓派USB轉(zhuǎn)串口 86
5.5.3 綁定串口 87
5.6 輪式機(jī)器人無線聯(lián)網(wǎng)接口:樹莓派的WiFi功能 88
5.6.1 樹莓派WiFi連接路由器 88
5.6.2 樹莓派WiFi做AP熱點(diǎn) 89
5.7 機(jī)器人和手機(jī)App通信接口:樹莓派藍(lán)牙 93
5.7.1 了解藍(lán)牙 93
5.7.2 使用Socket功能進(jìn)行藍(lán)牙通信 95
5.8 輪式機(jī)器人野外上網(wǎng)接口:4G模塊 96
5.8.1 USB-4G模塊的配置 97
5.8.2 USB-4G轉(zhuǎn)WiFi 97
5.9 輪式機(jī)器人的指南針:RTIMU模塊開發(fā) 98
5.9.1 RTIMULib庫介紹 98
5.9.2 RTIMULib庫的編譯和測(cè)試 99
5.9.3 基于RTIMULib的地磁計(jì)校準(zhǔn) 101
5.9.4 基于RTIMULib的加速計(jì)校準(zhǔn) 104
5.9.5 基于RTIMULib的陀螺儀校準(zhǔn) 104
5.10 輪式機(jī)器人的Web搭建 104
5.11 輪式機(jī)器人樹莓派固件燒錄 113
5.12 本章總結(jié) 114
第6章 輪式機(jī)器人的其他神經(jīng)元:傳感器開發(fā) 115
6.1 DS18B20溫度傳感器開發(fā) 115
6.1.1 DS18B20溫度傳感器的接口定義 115
6.1.2 代碼實(shí)現(xiàn) 116
6.2 GPS戶外定位傳感器 118
6.2.1 定位模塊的接口定義 118
6.2.2 NMEA-0183協(xié)議 118
6.2.3 協(xié)議解析流程及實(shí)現(xiàn) 119
6.3 激光雷達(dá)傳感器121
6.3.1 激光雷達(dá)介紹 122
6.3.2 激光雷達(dá)協(xié)議 123
6.4 攝像頭圖像傳感器127
6.4.1 攝像頭的使用 128
6.4.2 視覺循跡機(jī)器人實(shí)例 128
6.5 本章總結(jié)129
第7章 輪式機(jī)器人的云:物聯(lián)網(wǎng)云平臺(tái) 130
7.1 微型服務(wù)云平臺(tái)簡(jiǎn)介130
7.2 搭建局域網(wǎng)的Server 130
7.2.1 安裝PhpStudy 131
7.2.2 搭建第一個(gè)物聯(lián)網(wǎng)云 132
7.3 阿里云服務(wù)器133
7.3.1 阿里云服務(wù)器選型 133
7.3.2 搭建LNMP服務(wù)器 135
7.3.3 LAMP服務(wù)器的搭建 138
7.4 JavaScript建立簡(jiǎn)單的MQTT通信 140
7.5 本章總結(jié)143
第8章 輪式機(jī)器人路徑規(guī)劃 144
8.1 機(jī)器人路徑規(guī)劃144
8.2 機(jī)器人全局規(guī)劃145
8.2.1 機(jī)器人柵格建圖概述 145
8.2.2 借助OpenCV畫軌跡 146
8.2.3 柵格地圖的建圖過程 151
8.2.4 機(jī)器人全局整合規(guī)劃 157
8.2.5 A*算法 159
8.3 機(jī)器人局部決策170
8.3.1 DWA算法 170
8.3.2 VFH避障算法 173
8.4 本章總結(jié)177
第9章 輪式機(jī)器人路徑的定位和導(dǎo)航 178
9.1 輪式機(jī)器人路徑跟隨178
9.1.1 MovePose和PID整定 178
9.1.2 PurePuresuit跟隨算法182
9.1.3 路徑跟隨與測(cè)試 185
9.2 輪式機(jī)器人定位匹配189
9.2.1 粒子濾波 189
9.2.2 粒子濾波定位(蒙特卡羅定位) 190
9.3 GNSS定位導(dǎo)航 190
9.4 本章總結(jié)192
第3部分 實(shí)戰(zhàn)案例
第10章 機(jī)器人定位終端實(shí)例 194
10.1 機(jī)器人實(shí)體終端:模塊構(gòu)成 194
10.2 輪式機(jī)器人通信:STM32和樹莓派之間的通信協(xié)議 195
10.3 機(jī)器人與云平臺(tái)通信:MQTT通信協(xié)議 197
10.4 輪式機(jī)器人:配置網(wǎng)絡(luò) 198
10.5 輪式機(jī)器人軟件說明 202
10.5.1 軟件框架 202
10.5.2 控制App:navigation 203
10.5.3 硬件信息確認(rèn) 205
10.6 輪式機(jī)器人的人機(jī)交互 205
10.7 輪式機(jī)器人云平臺(tái)功能介紹 206
10.7.1 添加設(shè)備 206
10.7.2 設(shè)備信息 207
10.7.3 趣味玩法 207
10.7.4 路徑規(guī)劃 209
10.8 手動(dòng)規(guī)劃路徑的原理及操作 210
10.9 本章總結(jié) 211
第11章 BreezySLAM室內(nèi)定位導(dǎo)航機(jī)器人實(shí)例 212
11.1 BreezySLAM的安裝 212
11.2 BreezySLAM測(cè)試 214
11.3 BreezySLAM源碼分析 217
11.4 硬件搭建 221
11.5 軟件實(shí)現(xiàn) 221
11.6 測(cè)試運(yùn)行 227
11.7 本章總結(jié) 227
第12章 ROS機(jī)器人開發(fā)實(shí)例 228
12.1 ROS介紹 228
12.2 ROS工具包 229
12.3 Ubuntu環(huán)境下安裝ROS 230
12.4 發(fā)布GPS定位 node 233
12.5 發(fā)布imu node 234
12.6 STM32 通信node 235
12.7 Qt for ROS 界面 238
12.8 本章總結(jié) 243