精通ROS機(jī)器人編程(原書第3版)
-
>
(精)方力鈞作品圖錄
-
>
《藏書報(bào)》2021合訂本
-
>
中外性文物大觀
-
>
馬克思主義經(jīng)典著作解讀叢書·探索人類解放的新路徑《1844年經(jīng)濟(jì)學(xué)哲學(xué)手稿》解讀
-
>
襄陽(yáng)府志(九品)
-
>
奇思妙想創(chuàng)意玩具書(精裝4冊(cè))
-
>
大慈恩寺
精通ROS機(jī)器人編程(原書第3版) 版權(quán)信息
- ISBN:9787111750383
- 條形碼:9787111750383 ; 978-7-111-75038-3
- 裝幀:平裝-膠訂
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:
精通ROS機(jī)器人編程(原書第3版) 本書特色
機(jī)器人操作系統(tǒng)(ROS)是一個(gè)用于復(fù)雜機(jī)器人編程的軟件框架,你無(wú)須從頭開始編寫代碼,即可用它開發(fā)用于構(gòu)建復(fù)雜機(jī)器人的軟件,從而節(jié)省寶貴的開發(fā)時(shí)間。本書通過通俗易懂的實(shí)用示例和對(duì)基本概念的逐步解釋,全面介紹了可應(yīng)用于ROS 機(jī)器人項(xiàng)目的高級(jí)概念。 本書首先幫助你掌握使用ROS對(duì)機(jī)器人進(jìn)行編程所需的基本概念。然后帶你探索開發(fā)仿真機(jī)器人和實(shí)際機(jī)器人,以及從頭開始應(yīng)用導(dǎo)航和操縱等高級(jí)功能。隨著閱讀的深入,你將學(xué)習(xí)如何創(chuàng)建 ROS 控制器和插件,并探索 ROS 的工業(yè)應(yīng)用程序及其與空中機(jī)器人的交互。*后,你將了解高效使用 ROS 的*佳實(shí)踐和方法。 *終,你將學(xué)會(huì)如何在 ROS 中創(chuàng)建各種應(yīng)用程序,并構(gòu)建自己的**個(gè)ROS機(jī)器人。 閱讀本書,你將學(xué)到: ·使用7自由度機(jī)械臂和差動(dòng)輪式移動(dòng)機(jī)器人創(chuàng)建機(jī)器人模型。 ·使用Gazebo、CoppeliaSim和Webots等機(jī)器人模擬器。 ·使用SLAM和AMCL軟件包實(shí)現(xiàn)差動(dòng)驅(qū)動(dòng)機(jī)器人的自主導(dǎo)航。 ·使用ROS與空中機(jī)器人進(jìn)行并對(duì)它進(jìn)行仿真。 ·探索ROS pluginlib、ROS nodelets 和 Gazebo等插件。 ·連接Arduino、機(jī)器人傳感器和高端執(zhí)行器等I/O板。
精通ROS機(jī)器人編程(原書第3版) 內(nèi)容簡(jiǎn)介
本書提供了實(shí)用且易于理解的示例,對(duì)ROS機(jī)器人編程的高級(jí)概念進(jìn)行了全面的介紹。本書首先介紹用ROS進(jìn)行機(jī)器人編程所需的基本概念和ROS框架,討論了如何用運(yùn)動(dòng)規(guī)劃庫(kù)和ROS導(dǎo)航棧對(duì)機(jī)器人進(jìn)行仿真和交互,還討論了ROS插件、控制器和節(jié)點(diǎn)、各種ROS接口(如何把I/O開發(fā)板、傳感器和執(zhí)行器等與ROS連接起來),以及如何用ROS和ROS-Industrial對(duì)復(fù)雜機(jī)器人進(jìn)行仿真。*后,本書介紹了ROS的故障排除和很好實(shí)踐。
精通ROS機(jī)器人編程(原書第3版) 目錄
前言
作者簡(jiǎn)介
審校者簡(jiǎn)介
**部分 ROS編程基本技能
第1章 ROS簡(jiǎn)介 2
1.1 為什么選擇ROS 2
1.2 理解ROS文件系統(tǒng)級(jí)別 3
1.2.1 ROS功能包 4
1.2.2 ROS元功能包 5
1.2.3 ROS消息 6
1.2.4 ROS服務(wù) 7
1.3 理解ROS計(jì)算圖級(jí)別 8
1.3.1 ROS節(jié)點(diǎn) 9
1.3.2 ROS信息 11
1.3.3 ROS主題 11
1.3.4 ROS服務(wù) 12
1.3.5 ROS bag文件 12
1.3.6 ROS節(jié)點(diǎn)管理器 13
1.3.7 使用ROS參數(shù) 14
1.4 ROS社區(qū)級(jí)別 15
1.5 準(zhǔn)備工作 15
1.5.1 ROS發(fā)行版 15
1.5.2 運(yùn)行ROS節(jié)點(diǎn)管理器和
ROS參數(shù)服務(wù)器 16
1.5.3 檢查roscore命令的輸出 18
1.6 總結(jié) 19
1.7 問題 19
第2章 ROS編程入門 20
2.1 創(chuàng)建ROS功能包 20
2.1.1 使用ROS主題 22
2.1.2 創(chuàng)建ROS節(jié)點(diǎn) 22
2.1.3 編譯節(jié)點(diǎn) 25
2.2 添加自定義的.msg文件和.srv
文件 26
2.3 使用ROS 服務(wù) 29
2.3.1 使用ROS actionlib 33
2.3.2 編譯ROS動(dòng)作服務(wù)器和
客戶端 36
2.4 創(chuàng)建啟動(dòng)文件 38
2.5 主題、服務(wù)和actionlib的應(yīng)用 40
2.6 總結(jié) 40
2.7 問題 41
第二部分 ROS機(jī)器人仿真
第3章 使用ROS進(jìn)行3D建!44
3.1 用于機(jī)器人建模的ROS軟件包 44
3.2 使用URDF理解機(jī)器人建!45
3.3 為機(jī)器人描述創(chuàng)建ROS軟件包 47
3.4 創(chuàng)建我們的**個(gè)URDF模型 48
3.5 解析URDF文件 49
3.6 在RViz中可視化3D機(jī)器人模型 51
3.7 向URDF模型添加物理屬性和碰撞
屬性 53
3.8 使用xacro理解機(jī)器人建!54
3.8.1 使用屬性 55
3.8.2 使用數(shù)學(xué)表達(dá)式 55
3.8.3 使用宏 55
3.9 將xacro轉(zhuǎn)換為URDF 56
3.10 為7-DOF機(jī)械臂創(chuàng)建機(jī)器人
描述 56
3.11 解析7-DOF機(jī)械臂的xacro
模型 58
3.11.1 使用常量 58
3.11.2 使用宏 58
3.11.3 包含其他xacro文件 59
3.11.4 在連桿中使用網(wǎng)格模型 59
3.11.5 使用機(jī)器人夾爪 60
3.11.6 在RViz中查看7-DOF
機(jī)械臂 61
3.12 為差速驅(qū)動(dòng)機(jī)器人創(chuàng)建機(jī)器人
模型 63
3.13 總結(jié) 66
3.14 問題 67
第4章 使用ROS和Gazebo
進(jìn)行機(jī)器人仿真 68
4.1 使用Gazebo 和ROS仿真機(jī)械臂 68
4.2 為Gazebo創(chuàng)建機(jī)械臂仿真模型 69
4.2.1 為Gazebo機(jī)器人模型添加
顏色和紋理 70
4.2.2 添加transmission標(biāo)簽來
驅(qū)動(dòng)模型 71
4.3 添加gazebo_ros_control插件 71
4.4 仿真裝有Xtion Pro的機(jī)械臂 73
4.5 在Gazebo中使用ROS控制器
移動(dòng)機(jī)器人關(guān)節(jié) 76
4.5.1 理解ros_control
軟件包 76
4.5.2 不同類型的ROS控制器與
硬件接口 76
4.5.3 ROS控制器如何與Gazebo
交互 77
4.5.4 將關(guān)節(jié)狀態(tài)控制器和關(guān)節(jié)
位置控制器連接到機(jī)械臂 78
4.5.5 在Gazebo中啟動(dòng)ROS
控制器 79
4.5.6 移動(dòng)機(jī)器人關(guān)節(jié) 81
4.6 在Gazebo中仿真差速輪式
機(jī)器人 82
4.6.1 向Gazebo中添加激光
雷達(dá) 83
4.6.2 在Gazebo中控制機(jī)器人
移動(dòng) 85
4.6.3 為啟動(dòng)文件添加關(guān)節(jié)狀態(tài)
發(fā)布者 86
4.7 添加ROS遙控節(jié)點(diǎn) 86
4.8 總結(jié) 88
4.9 問題 88
第5章 使用ROS、CoppeliaSim和Webots進(jìn)行機(jī)器人仿真 89
5.1 使用ROS配置CoppeliaSim 89
5.1.1 理解RosInterface插件 92
5.1.2 處理ROS消息 95
5.2 使用CoppeliaSim和ROS仿真機(jī)
械臂 96
5.3 使用ROS設(shè)置Webots 99
5.3.1 Webots仿真器簡(jiǎn)介 100
5.3.2 使用Webots仿真移動(dòng)
機(jī)器人 101
5.4 編寫**個(gè)控制器 103
5.5 使用webots_ros編寫遙控節(jié)點(diǎn) 107
5.6 總結(jié) 110
5.7 問題 111
第6章 使用ROS MoveIt!與Navigation!112
6.1 MoveIt!架構(gòu) 113
6.1.1 move_group節(jié)點(diǎn) 113
6.1.2 基于MoveIt!的運(yùn)動(dòng)規(guī)劃 114
6.1.3 運(yùn)動(dòng)規(guī)劃請(qǐng)求適配器 115
6.1.4 MoveIt!規(guī)劃場(chǎng)景 116
6.1.5 MoveIt!運(yùn)動(dòng)學(xué)處理 117
6.1.6 MoveIt!碰撞檢測(cè) 117
6.2 基于設(shè)置助手生成MoveIt!
配置包 117
6.3 在RViz中使用MoveIt!配置包
進(jìn)行機(jī)器人運(yùn)動(dòng)規(guī)劃 123
6.3.1 使用RViz的運(yùn)動(dòng)規(guī)劃
插件 124
6.3.2 MoveIt!配置包與Gazebo
交互 127
6.4 理解ROS導(dǎo)航!132
6.4.1 導(dǎo)航棧的硬件需求 132
6.4.2 使用導(dǎo)航軟件包 133
6.4.3 使用導(dǎo)航!134
6.5 使用SLAM構(gòu)建地圖 135
6.5.1 為gmapping創(chuàng)建啟動(dòng)
文件 136
6.5.2 在差速驅(qū)動(dòng)機(jī)器人上運(yùn)行SLAM 137
6.5.3 基于amcl和靜態(tài)地圖實(shí)現(xiàn)
自主導(dǎo)航 140
6.5.4 創(chuàng)建amcl啟動(dòng)文件 140
6.6 總結(jié) 143
6.7 問題 143
第7章 探索ROS MoveIt!的高級(jí)
功能 144
7.1 使用move_group的C 接口
進(jìn)行運(yùn)動(dòng)規(guī)劃 144
7.1.1 使用MoveIt! C API規(guī)劃
隨機(jī)路徑 144
7.1.2 使用MoveIt! C API規(guī)劃
自定義路徑 145
7.1.3 使用MoveIt!進(jìn)行機(jī)械臂的
碰撞檢測(cè) 147
7.2 使用MoveIt!和Gazebo進(jìn)行
感知 153
7.3 使用MoveIt!操作對(duì)象 158
7.3.1 使用MoveIt!執(zhí)行拾取和
放置任務(wù) 158
7.3.2 在Gazebo和真實(shí)的機(jī)器人
中應(yīng)用抓取和放置動(dòng)作 162
7.4 了解用于機(jī)器人硬件接口的DYNAMIXEL ROS伺服控制器 162
7.4.1 DYNAMIXEL伺服舵機(jī) 163
7.4.2 DYNAMIXEL-ROS接口 164
7.5 7-DOF機(jī)械臂與ROS MoveIt! 164
7.5.1 為COOL機(jī)械臂創(chuàng)建一個(gè)
控制器軟件包 165
7.5.2 COOL機(jī)械臂的MoveIt!
配置 168
7.6 總結(jié) 170
7.7 問題 170
第8章 ROS在空中機(jī)器人上的
應(yīng)用 171
8.1 使用空中機(jī)器人 171
8.1.1 UAV硬件 172
8.1.2 Pixhawk自動(dòng)駕駛儀 172
8.2 使用PX4飛行控制!173
8.2.1 PX4固件架構(gòu) 176
8.2.2 PX4 SITL 178
8.3 PC/自動(dòng)駕駛儀通信 179
8.4 編寫ROS-PX4應(yīng)用程序 181
8.4.1 編寫軌跡流線 186
8.4.2 PX4的外部位姿估計(jì) 187
8.5 使用RotorS仿真框架 188
8.5.1 安裝RotorS 188
8.5.2 RotorS軟件包 190
8.5.3 創(chuàng)建一種新的無(wú)人機(jī)
模型 192
8.5.4 與RotorS電機(jī)模型交互 199
8.6 總結(jié) 200
8.7 問題 200
第三部分 ROS機(jī)器人硬件
原型開發(fā)
第9章 將I/O板傳感器和執(zhí)行器
連接到ROS 202
9.1 理解Arduino-ROS接口 202
9.2 Arduino-ROS接口 203
9.2.1 理解ROS中的
rosserial包 203
9.2.2 理解Arduino中的ROS
節(jié)點(diǎn)API 207
9.2.3 ROS-Arduino發(fā)布者和
訂閱者示例 210
9.2.4 ROS-Arduino示例:用按鈕
閃爍LED 213
9.2.5 ROS-Arduino示例:加速度
計(jì)ADXL 335 215
9.2.6 ROS-Arduino示例:超聲波
距離傳感器 216
9.2.7 ROS-Arduino示例:里程計(jì)
數(shù)據(jù)發(fā)布器 220
9.3 將非Arduino板連接到ROS 222
9.3.1 設(shè)置Odroid-C4、樹莓派4
和Jetson Nano用于安裝
ROS 222
9.3.2 在樹莓派4上使用ROS
閃爍LED 228
9.3.3 在樹莓派2上使用ROS
通過按鈕閃爍LED 230
9.3.4 在樹莓派4上運(yùn)行示例 233
9.4 將DYNAMIXEL執(zhí)行器連接到
ROS 234
9.5 總結(jié) 235
9.6 問題 235
第10章 使用ROS、OpenCV和PCL編程視覺傳感器 236
10.1 軟硬件需求 236
10.2 理解ROS-OpenCV接口
軟件包 236
10.3 理解ROS-PCL接口軟件包 237
10.4 連接ROS與USB網(wǎng)絡(luò)攝像頭 239
10.5 校準(zhǔn)ROS攝像機(jī) 241
10.6 將Kinect和Asus Xtion Pro與
ROS連接 249
10.7 連接Intel RealSense攝像機(jī)與
ROS 251
10.8 連接Hokuyo激光雷達(dá)與ROS 255
10.9 使用點(diǎn)云數(shù)據(jù) 257
10.9.1 如何發(fā)布點(diǎn)云 257
10.9.2 如何訂閱和處理點(diǎn)云 259
10.9.3 從PCD文件讀取和
發(fā)布點(diǎn)云 262
10.10 總結(jié) 264
10.11 問題 265
第11章 在ROS中構(gòu)建
與連接差速驅(qū)動(dòng)
移動(dòng)機(jī)器人硬件 266
11.1 技術(shù)要求 266
11.1.1 軟件要求 267
11.1.2 網(wǎng)絡(luò)設(shè)置 268
11.1.3 硬件要求 268
11.2 一款DIY自主移動(dòng)機(jī)器人—
Remo簡(jiǎn)介 268
11.2.1 Remo硬件組件 269
11.2.2 ROS Navigation Stack的
軟件需求 271
11.3 為差速驅(qū)動(dòng)機(jī)器人開發(fā)底層
控制器和ROS Control高級(jí)
硬件接口 272
11.3.1 為Remo實(shí)現(xiàn)底層基本
控制器 274
11.3.2 用于差速驅(qū)動(dòng)機(jī)器人
的ROS Control高級(jí)
硬件接口 278
11.3.3 Remo機(jī)器人的ROS
節(jié)點(diǎn)和主題概述 280
11.4 配置和使用Navigation Stack 283
11.4.1 配置gmapping節(jié)點(diǎn)并
創(chuàng)建地圖 284
11.4.2 使用gmapping節(jié)點(diǎn) 284
11.4.3 配置move_base節(jié)點(diǎn) 285
11.4.4 配置AMCL節(jié)點(diǎn) 286
11.4.5 AMCL規(guī)劃 287
11.4.6 在仿真環(huán)境中使用Remo
機(jī)器人 289
11.5 總結(jié) 291
11.6 問題 291
第四部分 高級(jí)ROS編程
第12章 使用pluginlib、nodelet
和Gazebo插件 294
12.1 理解pluginlib 294
12.2 理解ROS小節(jié)點(diǎn) 300
12.3 理解并創(chuàng)建Gazebo插件 306
12.4 總結(jié) 309
12.5 問題 310
第13章 編寫ROS控制器
和可視化插
精通ROS機(jī)器人編程(原書第3版) 作者簡(jiǎn)介
朗坦·約瑟夫(Lentin Joseph)是一名來自印度的作家、創(chuàng)業(yè)者。他是印度Qbotics實(shí)驗(yàn)室的創(chuàng)始人兼CEO,在機(jī)器人領(lǐng)域已經(jīng)有7年的從業(yè)經(jīng)驗(yàn),主要研究方向包括機(jī)器人操作系統(tǒng)(ROS)、OpenCV、PCL等。
喬納森·卡卡切(Jonathan Cacace)在意大利那不勒斯腓特烈二世大學(xué)獲計(jì)算機(jī)科學(xué)碩士學(xué)位及信息與自動(dòng)化工程博士學(xué)位。目前,喬納森是那不勒斯腓特烈二世大學(xué)PRISMA實(shí)驗(yàn)室的博士后,主要研究工業(yè)機(jī)器人和服務(wù)機(jī)器人,曾經(jīng)開發(fā)了幾款基于ROS且集成了機(jī)器人感知控制的機(jī)器人應(yīng)用。
- >
唐代進(jìn)士錄
- >
新文學(xué)天穹兩巨星--魯迅與胡適/紅燭學(xué)術(shù)叢書(紅燭學(xué)術(shù)叢書)
- >
莉莉和章魚
- >
我從未如此眷戀人間
- >
大紅狗在馬戲團(tuán)-大紅狗克里弗-助人
- >
經(jīng)典常談
- >
推拿
- >
詩(shī)經(jīng)-先民的歌唱