注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)人工智能ROS機(jī)器人開發(fā):實用案例分析(原書第2版)

ROS機(jī)器人開發(fā):實用案例分析(原書第2版)

ROS機(jī)器人開發(fā):實用案例分析(原書第2版)

定 價:¥99.00

作 者: [美] 卡羅爾·費爾柴爾德(Carol Fairchild),托馬斯,L.哈曼( 著,吳中紅 石章松 潘麗譯 譯
出版社: 機(jī)械工業(yè)出版社
叢編項: 機(jī)器人設(shè)計與制作系列
標(biāo) 簽: 暫缺

購買這本書可以去


ISBN: 9787111648598 出版時間: 2020-03-01 包裝: 平裝
開本: 16開 頁數(shù): 356 字?jǐn)?shù):  

內(nèi)容簡介

  本書由長期從事ROS機(jī)器人研究與教學(xué)的專家撰寫,深入淺出地對基于ROS的機(jī)器人開發(fā)技術(shù)進(jìn)行了全面介紹,并通過豐富的實例,詳細(xì)講解移動機(jī)器人、飛行機(jī)器人與機(jī)器人手臂等各類機(jī)器人的ROS實現(xiàn)。 本書不僅涵蓋ROS的基礎(chǔ)知識,還循序漸進(jìn)地講解了ROS機(jī)器人的高級應(yīng)用特性。書中首先對ROS的基本配置進(jìn)行介紹,內(nèi)容包括ROS的安裝、基本概念、主要的功能包與工具等。然后對相應(yīng)的故障排查方法進(jìn)行了論述。之后通過模擬的方式,先對Turtlesim的ROS組成模塊進(jìn)行描述,再對其他幾類典型機(jī)器人的ROS組成模塊進(jìn)行相應(yīng)的介紹。對ROS組成模塊的介紹,一般遵循的流程是首先介紹基本的ROS命令,然后對ROS的功能包、節(jié)點、主題以及消息進(jìn)行論述,以此來對ROS機(jī)器人操作系統(tǒng)的整體內(nèi)容進(jìn)行詳細(xì)的闡述。為了對書中選用的機(jī)器人的整體性能進(jìn)行描述,書中還給出了相關(guān)機(jī)器人的技術(shù)資料。

作者簡介

  卡羅爾·費爾柴爾德(Carol Fairchild) 費爾柴爾德機(jī)器人公司的所有人、首席工程師,該公司致力于機(jī)器人技術(shù)的開發(fā)與集成。她是休斯頓大學(xué)明湖分校巴克斯特機(jī)器人實驗室的一名研究人員和兼職教授。她的研究領(lǐng)域主要是基于Baxter機(jī)器人的擴(kuò)展應(yīng)用開發(fā)。她在得州農(nóng)工大學(xué)獲得工程技術(shù)學(xué)士學(xué)位,在休斯頓大學(xué)明湖分校獲得計算機(jī)工程碩士學(xué)位。托馬斯·L. 哈曼(Thomas L. Harman) 休斯頓大學(xué)明湖分校工程系的主任。他的研究領(lǐng)域主要是控制系統(tǒng)、機(jī)器人技術(shù)與微處理器技術(shù)的應(yīng)用等。他和同事關(guān)于機(jī)器人和激光的論文已經(jīng)應(yīng)用在了醫(yī)學(xué)領(lǐng)域。2005年,他當(dāng)選為休斯頓大學(xué)明湖分校的特聘教授。他曾擔(dān)任FIRST機(jī)器人大賽的裁判與安全顧問。他已經(jīng)出版的專著、合著書籍有18本,主題包括微處理器技術(shù)、MATLAB與仿真以及美國國家電氣規(guī)程等。

圖書目錄

譯者序
前言
作者簡介
審校者簡介
第1章 ROS初體驗 1
1.1 ROS的用途以及學(xué)習(xí)ROS的好處 1
1.2 哪些機(jī)器人采用了ROS 2
1.3 安裝并啟動ROS 4
1.3.1 配置Ubuntu系統(tǒng)的軟件源 4
1.3.2 設(shè)置Ubuntu系統(tǒng)軟件源列表 5
1.3.3 設(shè)置Ubuntu系統(tǒng)密鑰 5
1.3.4 安裝ROS Kinetic 5
1.3.5 初始化rosdep 6
1.3.6 環(huán)境設(shè)置 6
1.3.7 安裝 rosinstall 6
1.3.8 故障排除—ROS環(huán)境測試 7
1.4 創(chuàng)建catkin工作空間 7
1.5 ROS的功能包與清單 8
1.5.1 ROS清單 8
1.5.2 探索ROS功能包 8
1.6 ROS節(jié)點、話題與消息 10
1.6.1 ROS節(jié)點 11
1.6.2 ROS話題 11
1.6.3 ROS消息 11
1.6.4 ROS節(jié)點管理器 12
1.6.5 確定節(jié)點和話題的ROS命令 13
1.7 第一個ROS機(jī)器人模擬程序turtlesim 15
1.7.1 啟動turtlesim節(jié)點 15
1.7.2 turtlesim節(jié)點 16
1.7.3 turtlesim話題與消息 18
1.7.4 通過發(fā)布/turtle1/cmd_vel話題控制烏龜運動 20
1.7.5 通過鍵盤或游戲手柄控制烏龜移動 22
1.7.6 turtlesim的參數(shù)服務(wù)器 22
1.7.7 控制烏龜移動的ROS服務(wù) 24
1.8 ROS命令小結(jié) 25
1.9 本章小結(jié) 26
第2章 構(gòu)建一個模擬的兩輪ROS機(jī)器人 27
2.1 Rviz簡介 27
2.1.1 安裝和啟動Rviz 28
2.1.2 熟悉Rviz界面 29
2.2 生成并構(gòu)建ROS功能包 32
2.3 構(gòu)建差分驅(qū)動的機(jī)器人URDF 33
2.3.1 創(chuàng)建機(jī)器人底座 33
2.3.2 使用roslaunch 34
2.3.3 添加輪子 37
2.3.4 添加小腳輪 39
2.3.5 添加顏色 41
2.3.6 添加碰撞屬性 42
2.3.7 移動輪子 43
2.3.8 tf和robot_state_publisher簡介 44
2.3.9 添加物理學(xué)屬性 45
2.3.10 試用URDF工具 46
2.4 Gazebo 47
2.4.1 安裝并啟動Gazebo 48
2.4.2 使用roslaunch啟動Gazebo 49
2.4.3 熟悉Gazebo界面 50
2.4.4 機(jī)器人URDF的修改 54
2.4.5 Gazebo模型驗證 55
2.4.6 在Gazebo中查看URDF 56
2.4.7 機(jī)器人模型調(diào)整 57
2.4.8 移動機(jī)器人模型 58
2.4.9 其他的機(jī)器人模擬環(huán)境 59
2.5 本章小結(jié) 60
第3章 TurtleBot機(jī)器人操控 61
3.1 TurtleBot 2機(jī)器人簡介 61
3.2 下載TurtleBot 2模擬器軟件 63
3.3 在Gazebo中啟動TurtleBot 2模擬器 63
3.3.1 常見問題與故障排除 65
3.3.2 ROS命令與Gazebo 66
3.3.3 模擬環(huán)境下使用鍵盤遠(yuǎn)程控制TurtleBot 2 68
3.4 控制真正的TurtleBot 2機(jī)器人的設(shè)置 69
3.5 連接上網(wǎng)本與遠(yuǎn)程計算機(jī) 71
3.5.1 網(wǎng)絡(luò)類型 71
3.5.2 網(wǎng)絡(luò)地址 72
3.5.3 遠(yuǎn)程計算機(jī)網(wǎng)絡(luò)設(shè)置 73
3.5.4 上網(wǎng)本網(wǎng)絡(luò)設(shè)置 73
3.5.5 SSH連接 74
3.5.6 網(wǎng)絡(luò)設(shè)置小結(jié) 74
3.5.7 排查網(wǎng)絡(luò)連接中的故障 75
3.5.8 TurtleBot 2機(jī)器人系統(tǒng)測試 75
3.6 TurtleBot 2機(jī)器人的硬件規(guī)格參數(shù) 76
3.7 移動真實的TurtleBot 2機(jī)器人 78
3.7.1 采用鍵盤遠(yuǎn)程控制TurtleBot 2機(jī)器人移動 78
3.7.2 采用ROS命令控制TurtleBot 2機(jī)器人移動 79
3.7.3 編寫第一個Python腳本程序控制TurtleBot 2機(jī)器人移動 80
3.8 rqt工具簡介 83
3.8.1 rqt_graph 83
3.8.2 rqt的消息發(fā)布與話題監(jiān)控 86
3.9 TurtleBot機(jī)器人的測程 87
3.9.1 模擬的TurtleBot 2機(jī)器人的測程 91
3.9.2 Rviz下真實的TurtleBot 2機(jī)器人的測程顯示 93
3.10 TurtleBot機(jī)器人的自動充電 95
3.11 TurtleBot 3介紹 96
3.12 下載TurtleBot 3模擬軟件 98
3.13 在Rviz中啟動TurtleBot 3模擬軟件 99
3.14 在Gazebo中啟動TurtleBot 3模擬軟件 100
3.15 硬件裝配與測試 103
3.16 下載TurtleBot 3機(jī)器人軟件包 103
3.16.1 在遠(yuǎn)程計算機(jī)上安裝軟件 103
3.16.2 在SBC上安裝軟件 104
3.17 TurtleBot 3與遠(yuǎn)程計算機(jī)的網(wǎng)絡(luò)連接 107
3.17.1 遠(yuǎn)程計算機(jī)網(wǎng)絡(luò)設(shè)置 108
3.17.2 TurtleBot 3網(wǎng)絡(luò)設(shè)置 108
3.17.3 SSH通信測試 110
3.17.4 網(wǎng)絡(luò)連接的故障處理 110
3.18 控制真實的TurtleBot 3移動 111
3.19 本章小結(jié) 113
第4章 TurtleBot機(jī)器人導(dǎo)航 114
4.1 TurtleBot機(jī)器人的3D視覺系統(tǒng) 115
4.1.1 3D視覺傳感器原理 115
4.1.2 3D傳感器對比 116
4.2 配置TurtleBot機(jī)器人并安裝3D 傳感器軟件 123
4.2.1 Kinect 123
4.2.2 ASUS與PrimeSense 123
4.2.3 Intel RealSense 124
4.2.4 攝像頭軟件結(jié)構(gòu) 124
4.2.5 術(shù)語定義 125
4.3 獨立模式下測試3D傳感器 125
4.4 運行ROS節(jié)點進(jìn)行可視化 126
4.4.1 使用Image Viewer可視化數(shù)據(jù) 126
4.4.2 使用Rviz可視化數(shù)據(jù) 128
4.5 TurtleBot機(jī)器人導(dǎo)航 131
4.5.1 采用TurtleBot 2機(jī)器人構(gòu)建房間地圖 132
4.5.2 采用TurtleBot 2機(jī)器人實現(xiàn)自主導(dǎo)航 136
4.5.3 導(dǎo)航至指定目標(biāo)點 142
4.5.4 基于Python腳本與地圖實現(xiàn)航路點導(dǎo)航 144
4.5.5 TurtleBot 3機(jī)器人的SLAM 151
4.5.6 使用TurtleBot 3進(jìn)行自主導(dǎo)航 152
4.5.7 rqt_reconfigure 153
4.5.8 進(jìn)一步探索ROS導(dǎo)航 155
4.6 本章小結(jié) 155
第5章 構(gòu)建模擬的機(jī)器人手臂 156
5.1 Xacro的特點 156
5.2 采用Xacro建立一個關(guān)節(jié)式機(jī)器人手臂URDF 157
5.2.1 指定名空間 158
5.2.2 使用Xacro屬性標(biāo)簽 158
5.2.3 擴(kuò)展Xacro 161
5.2.4 使用Xacro的包含與宏標(biāo)簽 163
5.2.5 給機(jī)器人手臂添加網(wǎng)格 166
5.3 在Gazebo中控制關(guān)節(jié)式機(jī)器人手臂 171
5.3.1 添加Gazebo特性元素 171
5.3.2 將機(jī)器人手臂固定在世界坐標(biāo)系下 173
5.3.3 在Gazebo中查看機(jī)器人手臂 173
5.3.4 給Xacro添加控制組件 174
5.3.5 采用ROS命令行控制機(jī)器人手臂 178
5.3.6 采用rqt控制機(jī)器人手臂 179
5.4 本章小結(jié) 182
第6章 機(jī)器人手臂搖擺的關(guān)節(jié)控制 183
6.1 Baxter簡介 184
6.1.1 研究型機(jī)器人Baxter 185
6.1.2 Baxter模擬器 186
6.2 Baxter的手臂 186
6.2.1 Baxter的俯仰關(guān)節(jié) 187
6.2.2 Baxter的滾轉(zhuǎn)關(guān)節(jié) 188
6.2.3 Baxter的坐標(biāo)系 188
6.2.4 Baxter手臂的控制模式 189
6.2.5 Baxter手臂的抓手 189
6.2.6 Baxter手臂的傳感器 190
6.3 下載Baxter軟件 190
6.3.1 安裝Baxter SDK軟件 190
6.3.2 安裝Baxter模擬器 192
6.3.3 配置Baxter shell 193
6.3.4 安裝MoveIt! 194
6.4 在Gazebo中啟動Baxter模擬器 195
6.4.1 啟動Baxter模擬器 196
6.4.2 “熱身”練習(xí) 199
6.4.3 彎曲Baxter手臂 200
6.5 Baxter手臂與正向運動 209
6.5.1 關(guān)節(jié)與關(guān)節(jié)狀態(tài)發(fā)布器 209
6.5.2 理解tf 212
6.5.3 直接指定關(guān)節(jié)組件角度 215
6.5.4 Rviz下的tf坐標(biāo)系 216
6.5.5 查看機(jī)器人元素的tf樹 217
6.6 MoveIt!簡介 217
6.6.1 使用MoveIt!對Baxter手臂進(jìn)行運動規(guī)劃 219
6.6.2 在場景中添加物體 220
6.6.3 采用MoveIt!進(jìn)行避障運動規(guī)劃 222
6.7 配置真實的Baxter機(jī)器人 223
6.8 控制真實的Baxter機(jī)器人 225
6.8.1 控制關(guān)節(jié)到達(dá)航路點 225
6.8.2 控制關(guān)節(jié)的力矩彈簧 226
6.8.3 關(guān)節(jié)速度控制演示 227
6.8.4 其他示例 227
6.8.5 視覺伺服和抓取 227
6.9 反向運動 228
6.10 使用狀態(tài)機(jī)實現(xiàn)YMCA 231
6.11 本章小結(jié) 236
第7章 空中機(jī)器人基本操控 237
7.1 四旋翼飛行器簡介 238
7.1.1 風(fēng)靡的四旋翼飛行器 238
7.1.2 滾轉(zhuǎn)角、俯仰角與偏航角 238
7.1.3 四旋翼飛行器原理 239
7.1.4 四旋翼飛行器的組成 241
7.1.5 添加傳感器 241
7.1.6 四旋翼飛行器的通信 242
7.2 四旋翼飛行器的傳感器 243
7.2.1 慣性測量單元 243
7.2.2 四旋翼飛行器狀態(tài)傳感器 243
7.3 飛行前的準(zhǔn)備工作 244
7.3.1 四旋翼飛行器檢測 244
7.3.2 飛行前檢測列表 245
7.3.3 飛行中的注意事項 245
7.3.4 需要遵循的規(guī)則和條例 245
7.4 在無人機(jī)中使用ROS 246
7.5 Hector四旋翼飛行器 246
7.5.1 下載Hector四旋翼飛行器 248
7.5.2 在Gazebo中啟動Hector四旋翼飛行器 249
7.6 Crazyflie 2.0簡介 256
7.6.1 無ROS情況下的Crazyflie控制 257
7.6.2 使用Crazyradio PA進(jìn)行通信 258
7.6.3 加載Crazyflie ROS軟件 259
7.6.4 飛行前的檢查 261
7.6.5 使用teleop操控Crazyflie飛行 262
7.6.6 在運動捕獲系統(tǒng)下飛行 265
7.6.7 控制多個Crazyflie飛行 266
7.7 Bebop簡介 266
7.7.1 加載bebop_autonomy軟件 268
7.7.2 使用命令控制Bebop飛行 270
7.8 本章小結(jié) 271
第8章 使用外部設(shè)備控制機(jī)器人 272
8.1 創(chuàng)建自定義ROS游戲控制器接口 272
8.1.1 測試游戲控制器 273
8.1.2 使用joy ROS功能包 275
8.1.3 使用自定義游戲控制器接口控制turtlesim 275
8.2 創(chuàng)建自定義ROS Android設(shè)備接口 280
8.2.1 安裝Android Studio和工具 280
8.2.2 安裝ROS-Android開發(fā)環(huán)境 281
8.2.3 術(shù)語定義 282
8.2.4 ROS-Android開發(fā)環(huán)境介紹 283
8.3 在Arduino或樹莓派上創(chuàng)建ROS節(jié)點 284
8.3.1 使用Arduino 284
8.3.2 使用樹莓派 294
8.4 本章小結(jié) 295
第9章 操控Crazyflie執(zhí)行飛行任務(wù) 296
9.1 執(zhí)行任務(wù)所需的組件 297
9.1.1 Kinect Windows v2 297
9.1.2 Crazyflie操作 298
9.1.3 任務(wù)軟件結(jié)構(gòu) 298
9.1.4 OpenCV與ROS 300
9.2 安裝任務(wù)所需的軟件 301
9.2.1 安裝libfreenect2 301
9.2.2 安裝iai_kinect2 304
9.2.3 使用iai_kinect2元包 305
9.3 任務(wù)設(shè)置 311
9.3.1 探測Crazyflie與目標(biāo) 311
9.3.2 使用Kinect與OpenCV 314
9.3.3 對Crazyflie進(jìn)行跟蹤 317
9.4 Crazyflie控制 319
9.5 試飛Crazyflie 324
9.5.1 懸停 324
9.5.2 飛往靜止目標(biāo) 326
9.5.3 學(xué)到的經(jīng)驗 327
9.6 本章小結(jié) 328
第10章 基于MATLAB的Baxter控制 329
10.1 安裝MATLAB機(jī)器人系統(tǒng)工具箱 329
10.1.1 MATLAB與機(jī)器人系統(tǒng)工具箱版本檢查 330
10.1.2 機(jī)器人系統(tǒng)工具箱下的ROS命令 330
10.2 機(jī)器人系統(tǒng)工具箱與Baxter模擬器的使用 330
10.2.1 在MATLAB中安裝Baxter消息 330
10.2.2 運行Baxter模擬器和MATLAB 332
10.2.3 控制Baxter運動 334
10.3 本章小結(jié) 337

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號