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

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

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

定 價(jià):¥99.00

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

購(gòu)買這本書可以去


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

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

  卡羅爾·費(fèi)爾柴爾德(Carol Fairchild) 費(fèi)爾柴爾德機(jī)器人公司的所有人、首席工程師,該公司致力于機(jī)器人技術(shù)的開發(fā)與集成。她是休斯頓大學(xué)明湖分校巴克斯特機(jī)器人實(shí)驗(yàn)室的一名研究人員和兼職教授。她的研究領(lǐng)域主要是基于Baxter機(jī)器人的擴(kuò)展應(yīng)用開發(fā)。她在得州農(nóng)工大學(xué)獲得工程技術(shù)學(xué)士學(xué)位,在休斯頓大學(xué)明湖分校獲得計(jì)算機(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ī)器人大賽的裁判與安全顧問(wèn)。他已經(jīng)出版的專著、合著書籍有18本,主題包括微處理器技術(shù)、MATLAB與仿真以及美國(guó)國(guó)家電氣規(guī)程等。

圖書目錄

譯者序
前言
作者簡(jiǎn)介
審校者簡(jiǎn)介
第1章 ROS初體驗(yàn) 1
1.1 ROS的用途以及學(xué)習(xí)ROS的好處 1
1.2 哪些機(jī)器人采用了ROS 2
1.3 安裝并啟動(dòng)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)境測(cè)試 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é)點(diǎn)、話題與消息 10
1.6.1 ROS節(jié)點(diǎn) 11
1.6.2 ROS話題 11
1.6.3 ROS消息 11
1.6.4 ROS節(jié)點(diǎn)管理器 12
1.6.5 確定節(jié)點(diǎn)和話題的ROS命令 13
1.7 第一個(gè)ROS機(jī)器人模擬程序turtlesim 15
1.7.1 啟動(dòng)turtlesim節(jié)點(diǎn) 15
1.7.2 turtlesim節(jié)點(diǎn) 16
1.7.3 turtlesim話題與消息 18
1.7.4 通過(guò)發(fā)布/turtle1/cmd_vel話題控制烏龜運(yùn)動(dòng) 20
1.7.5 通過(guò)鍵盤或游戲手柄控制烏龜移動(dòng) 22
1.7.6 turtlesim的參數(shù)服務(wù)器 22
1.7.7 控制烏龜移動(dòng)的ROS服務(wù) 24
1.8 ROS命令小結(jié) 25
1.9 本章小結(jié) 26
第2章 構(gòu)建一個(gè)模擬的兩輪ROS機(jī)器人 27
2.1 Rviz簡(jiǎn)介 27
2.1.1 安裝和啟動(dòng)Rviz 28
2.1.2 熟悉Rviz界面 29
2.2 生成并構(gòu)建ROS功能包 32
2.3 構(gòu)建差分驅(qū)動(dòng)的機(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 移動(dòng)輪子 43
2.3.8 tf和robot_state_publisher簡(jiǎn)介 44
2.3.9 添加物理學(xué)屬性 45
2.3.10 試用URDF工具 46
2.4 Gazebo 47
2.4.1 安裝并啟動(dòng)Gazebo 48
2.4.2 使用roslaunch啟動(dòng)Gazebo 49
2.4.3 熟悉Gazebo界面 50
2.4.4 機(jī)器人URDF的修改 54
2.4.5 Gazebo模型驗(yàn)證 55
2.4.6 在Gazebo中查看URDF 56
2.4.7 機(jī)器人模型調(diào)整 57
2.4.8 移動(dòng)機(jī)器人模型 58
2.4.9 其他的機(jī)器人模擬環(huán)境 59
2.5 本章小結(jié) 60
第3章 TurtleBot機(jī)器人操控 61
3.1 TurtleBot 2機(jī)器人簡(jiǎn)介 61
3.2 下載TurtleBot 2模擬器軟件 63
3.3 在Gazebo中啟動(dòng)TurtleBot 2模擬器 63
3.3.1 常見問(wèn)題與故障排除 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ì)算機(jī) 71
3.5.1 網(wǎng)絡(luò)類型 71
3.5.2 網(wǎng)絡(luò)地址 72
3.5.3 遠(yuǎn)程計(jì)算機(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)測(cè)試 75
3.6 TurtleBot 2機(jī)器人的硬件規(guī)格參數(shù) 76
3.7 移動(dòng)真實(shí)的TurtleBot 2機(jī)器人 78
3.7.1 采用鍵盤遠(yuǎn)程控制TurtleBot 2機(jī)器人移動(dòng) 78
3.7.2 采用ROS命令控制TurtleBot 2機(jī)器人移動(dòng) 79
3.7.3 編寫第一個(gè)Python腳本程序控制TurtleBot 2機(jī)器人移動(dòng) 80
3.8 rqt工具簡(jiǎn)介 83
3.8.1 rqt_graph 83
3.8.2 rqt的消息發(fā)布與話題監(jiān)控 86
3.9 TurtleBot機(jī)器人的測(cè)程 87
3.9.1 模擬的TurtleBot 2機(jī)器人的測(cè)程 91
3.9.2 Rviz下真實(shí)的TurtleBot 2機(jī)器人的測(cè)程顯示 93
3.10 TurtleBot機(jī)器人的自動(dòng)充電 95
3.11 TurtleBot 3介紹 96
3.12 下載TurtleBot 3模擬軟件 98
3.13 在Rviz中啟動(dòng)TurtleBot 3模擬軟件 99
3.14 在Gazebo中啟動(dòng)TurtleBot 3模擬軟件 100
3.15 硬件裝配與測(cè)試 103
3.16 下載TurtleBot 3機(jī)器人軟件包 103
3.16.1 在遠(yuǎn)程計(jì)算機(jī)上安裝軟件 103
3.16.2 在SBC上安裝軟件 104
3.17 TurtleBot 3與遠(yuǎn)程計(jì)算機(jī)的網(wǎng)絡(luò)連接 107
3.17.1 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)設(shè)置 108
3.17.2 TurtleBot 3網(wǎng)絡(luò)設(shè)置 108
3.17.3 SSH通信測(cè)試 110
3.17.4 網(wǎng)絡(luò)連接的故障處理 110
3.18 控制真實(shí)的TurtleBot 3移動(dòng) 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傳感器對(duì)比 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ù)語(yǔ)定義 125
4.3 獨(dú)立模式下測(cè)試3D傳感器 125
4.4 運(yùn)行ROS節(jié)點(diǎn)進(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ī)器人實(shí)現(xiàn)自主導(dǎo)航 136
4.5.3 導(dǎo)航至指定目標(biāo)點(diǎn) 142
4.5.4 基于Python腳本與地圖實(shí)現(xiàn)航路點(diǎ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的特點(diǎn) 156
5.2 采用Xacro建立一個(gè)關(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簡(jiǎn)介 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中啟動(dòng)Baxter模擬器 195
6.4.1 啟動(dòng)Baxter模擬器 196
6.4.2 “熱身”練習(xí) 199
6.4.3 彎曲Baxter手臂 200
6.5 Baxter手臂與正向運(yùn)動(dòng) 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!簡(jiǎn)介 217
6.6.1 使用MoveIt!對(duì)Baxter手臂進(jìn)行運(yùn)動(dòng)規(guī)劃 219
6.6.2 在場(chǎng)景中添加物體 220
6.6.3 采用MoveIt!進(jìn)行避障運(yùn)動(dòng)規(guī)劃 222
6.7 配置真實(shí)的Baxter機(jī)器人 223
6.8 控制真實(shí)的Baxter機(jī)器人 225
6.8.1 控制關(guān)節(jié)到達(dá)航路點(diǎn) 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 反向運(yùn)動(dòng) 228
6.10 使用狀態(tài)機(jī)實(shí)現(xiàn)YMCA 231
6.11 本章小結(jié) 236
第7章 空中機(jī)器人基本操控 237
7.1 四旋翼飛行器簡(jiǎn)介 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 慣性測(cè)量單元 243
7.2.2 四旋翼飛行器狀態(tài)傳感器 243
7.3 飛行前的準(zhǔn)備工作 244
7.3.1 四旋翼飛行器檢測(cè) 244
7.3.2 飛行前檢測(cè)列表 245
7.3.3 飛行中的注意事項(xiàng) 245
7.3.4 需要遵循的規(guī)則和條例 245
7.4 在無(wú)人機(jī)中使用ROS 246
7.5 Hector四旋翼飛行器 246
7.5.1 下載Hector四旋翼飛行器 248
7.5.2 在Gazebo中啟動(dòng)Hector四旋翼飛行器 249
7.6 Crazyflie 2.0簡(jiǎn)介 256
7.6.1 無(wú)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 在運(yùn)動(dòng)捕獲系統(tǒng)下飛行 265
7.6.7 控制多個(gè)Crazyflie飛行 266
7.7 Bebop簡(jiǎn)介 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 測(cè)試游戲控制器 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ù)語(yǔ)定義 282
8.2.4 ROS-Android開發(fā)環(huán)境介紹 283
8.3 在Arduino或樹莓派上創(chuàng)建ROS節(jié)點(diǎn) 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 探測(cè)Crazyflie與目標(biāo) 311
9.3.2 使用Kinect與OpenCV 314
9.3.3 對(duì)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)驗(yàn) 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 運(yùn)行Baxter模擬器和MATLAB 332
10.2.3 控制Baxter運(yùn)動(dòng) 334
10.3 本章小結(jié) 337

本目錄推薦

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