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

ROS機(jī)器人項(xiàng)目開(kāi)發(fā)11例(原書(shū)第2版)

ROS機(jī)器人項(xiàng)目開(kāi)發(fā)11例(原書(shū)第2版)

定 價(jià):¥99.00

作 者: [印] 拉姆庫(kù)瑪·甘地那坦(Ramkumar Gandhinathan) 著,潘麗,陳媛媛,徐茜,吳中紅 譯
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 機(jī)器人設(shè)計(jì)與制作系列
標(biāo) 簽: 暫缺

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


ISBN: 9787111672449 出版時(shí)間: 2021-01-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 308 字?jǐn)?shù):  

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

  本書(shū)涵蓋新的ROS發(fā)行版中的項(xiàng)目——ROS Melodic Morenia with Ubuntu Bionic(18.04)。從基本原理開(kāi)始,本書(shū)向你介紹了ROS-2,并幫助你了解它與ROS-1的不同之處。你將能夠在ROS中建模并構(gòu)建工業(yè)移動(dòng)機(jī)械手臂,并在Gazebo 9中進(jìn)行模擬。然后,你將了解如何使用狀態(tài)機(jī)處理復(fù)雜的機(jī)器人應(yīng)用程序,以及一次處理多個(gè)機(jī)器人。本書(shū)還向你介紹了新的、流行的硬件,如Nvidia的Jetson Nano、華碩修補(bǔ)板和Beaglebone Black,并允許你探索與ROS的接口。 第1章主要向初學(xué)者概述ROS的基礎(chǔ)知識(shí)。本章將幫助讀者理解ROS軟件框架的基本思想和概念。 第2章介紹ROS的*新框架——ROS-2?;谠摽蚣?,讀者將能夠使用ROS進(jìn)行實(shí)時(shí)應(yīng)用程序的開(kāi)發(fā)。本章的結(jié)構(gòu)與第1章類似,主要是幫助讀者厘清ROS-1與ROS-2之間的區(qū)別,同時(shí)理解兩個(gè)版本的能力與局限。 第3章介紹怎樣在模擬環(huán)境下構(gòu)建移動(dòng)機(jī)器人以及機(jī)械臂,并將兩者結(jié)合起來(lái),通過(guò)ROS 對(duì)其進(jìn)行控制。 第4章介紹基于狀態(tài)機(jī)進(jìn)行復(fù)雜機(jī)器人任務(wù)處理的技術(shù),這些技術(shù)使得讀者可以在使用機(jī)器人執(zhí)行連續(xù)和復(fù)雜的任務(wù)管理時(shí)進(jìn)行策略調(diào)整。 第5章是第3章、第4章內(nèi)容的綜合應(yīng)用,基于這兩章內(nèi)容構(gòu)建一個(gè)用戶應(yīng)用程序。該應(yīng)用程序的功能是控制移動(dòng)機(jī)械臂運(yùn)送物品。本章將詳細(xì)介紹上述應(yīng)用程序的構(gòu)建過(guò)程。 第6章介紹通過(guò)ROS在多個(gè)機(jī)器人間進(jìn)行通信的方法,其中的機(jī)器人既可以是同類型的,也可以是不同類型的(即異構(gòu)多機(jī)器人系統(tǒng))。在此基礎(chǔ)上,還將介紹對(duì)一組多機(jī)器人進(jìn)行單獨(dú)或同時(shí)控制的方法。 第7章介紹新型的嵌入式控制器及處理器板,例如基于STM32的控制器、Tinkerboard、Jetson Nano以及其他類似產(chǎn)品。本章還將介紹怎樣通過(guò)ROS控制這些板卡的GPIO(General-Purpose Input/Output,通用輸入/輸出接口),以及如何通過(guò)Alexa提供的語(yǔ)音交互功能進(jìn)行語(yǔ)音控制。 第8章介紹機(jī)器人學(xué)領(lǐng)域最重要的學(xué)習(xí)技術(shù)之一——強(qiáng)化學(xué)習(xí)。本章將介紹強(qiáng)化學(xué)習(xí)的內(nèi)涵,并通過(guò)實(shí)例介紹強(qiáng)化學(xué)習(xí)背后的數(shù)學(xué)知識(shí)。此外,還將通過(guò)一系列實(shí)例展示強(qiáng)化學(xué)習(xí)技術(shù)是如何在ROS中進(jìn)行應(yīng)用的。 第9章介紹深度學(xué)習(xí)在機(jī)器人領(lǐng)域的應(yīng)用。本章將介紹如何使用深度學(xué)習(xí)實(shí)現(xiàn)圖像識(shí)別,還將介紹使用SVM(Support Vector Machine,支持向量機(jī))的應(yīng)用程序。 第10章是本書(shū)中最有趣的內(nèi)容之一。本章將展示如何使用ROS和Gazebo構(gòu)建一輛模擬的自動(dòng)駕駛汽車。 第11章展示如何通過(guò)VR頭盔和體感控制器Leap Motion實(shí)現(xiàn)對(duì)機(jī)器人的遠(yuǎn)程操控。本章將介紹VR頭盔的應(yīng)用,這是當(dāng)前流行的技術(shù)之一。 第12章通過(guò)一個(gè)項(xiàng)目展示如何在ROS下使用OpenCV庫(kù)。在本項(xiàng)目中,將構(gòu)建一個(gè)最基本的人臉跟蹤器,實(shí)現(xiàn)攝像頭對(duì)人臉的實(shí)時(shí)跟蹤。本章將使用諸如Dynamixel的智能伺服系統(tǒng)實(shí)現(xiàn)機(jī)器人的旋轉(zhuǎn)。

作者簡(jiǎn)介

  拉姆庫(kù)瑪·甘地那坦(Ramkumar Gandhinathan)是一名機(jī)器人學(xué)家和研究者。他從小學(xué)六年級(jí)開(kāi)始制造機(jī)器人,在機(jī)器人領(lǐng)域鉆研已超過(guò)15年,親手打造了80多個(gè)不同類型的機(jī)器人。他在機(jī)器人行業(yè)有7年的系統(tǒng)性專業(yè)工作經(jīng)驗(yàn)(4年全職和3年兼職/實(shí)習(xí)),擁有5年的ROS工作經(jīng)驗(yàn)。在他的職業(yè)生涯中,他使用ROS構(gòu)建了超過(guò)15個(gè)工業(yè)機(jī)器人解決方案。他對(duì)制作無(wú)人機(jī)也很著迷,是一名無(wú)人機(jī)駕駛員。他的研究興趣和熱情集中在SLAM、運(yùn)動(dòng)規(guī)劃、傳感器融合、多機(jī)器人通信和系統(tǒng)集成等領(lǐng)域。郎坦·約瑟夫(Lentin Joseph)是一位來(lái)自印度的作家、機(jī)器人學(xué)家和機(jī)器人企業(yè)家。他在印度喀拉拉邦的高知市經(jīng)營(yíng)一家名為Qbotics Labs的機(jī)器人軟件公司。他在機(jī)器人領(lǐng)域有8年的工作經(jīng)驗(yàn),主要致力于ROS、OpenCV和PCL領(lǐng)域。他寫(xiě)過(guò)幾本關(guān)于ROS的書(shū),分別是《機(jī)器人系統(tǒng)設(shè)計(jì)與制作:Python語(yǔ)言實(shí)現(xiàn)》《精通ROS機(jī)器人編程》《ROS機(jī)器人項(xiàng)目開(kāi)發(fā)11例》以及《機(jī)器人操作系統(tǒng)(ROS)入門(mén)必備:機(jī)器人編程一學(xué)就會(huì)》。他在印度獲得了機(jī)器人學(xué)和自動(dòng)化專業(yè)碩士學(xué)位,并在美國(guó)卡內(nèi)基–梅隆大學(xué)的機(jī)器人研究所工作。他也是TEDx演講者。

圖書(shū)目錄

目 錄  Contents
譯者序
前言
作者簡(jiǎn)介
第1章 ROS入門(mén) 1
1.1 技術(shù)要求 2
1.2 ROS概述 2
1.2.1 ROS發(fā)行版 3
1.2.2 支持的操作系統(tǒng) 3
1.2.3 支持的機(jī)器人及傳感器 4
1.2.4 為什么選擇ROS 5
1.3 ROS基礎(chǔ) 6
1.3.1 文件系統(tǒng)層級(jí) 7
1.3.2 計(jì)算圖層級(jí) 7
1.3.3 ROS社區(qū)層級(jí) 9
1.3.4 ROS中的通信 9
1.4 ROS客戶端庫(kù) 10
1.5 ROS工具 11
1.5.1 ROS的可視化工具RViz 11
1.5.2 rqt_plot 11
1.5.3 rqt_graph 12
1.6 ROS模擬器 13
1.7 在Ubuntu 18.04 LTS上安裝ROS Melodic 13
1.8 在VirtualBox上設(shè)置ROS 18
1.9 Docker簡(jiǎn)介 19
1.9.1 為什么選擇Docker 20
1.9.2 安裝Docker 20
1.10 設(shè)置ROS工作空間 23
1.11 ROS在工業(yè)界和學(xué)術(shù)界的機(jī)遇 25
1.12 本章小結(jié) 25
第2章 ROS-2及其特性簡(jiǎn)介 26
2.1 技術(shù)要求 27
2.2 ROS-2概述 27
2.2.1 ROS-2發(fā)行版 28
2.2.2 支持的操作系統(tǒng) 28
2.2.3 支持的機(jī)器人及傳感器 29
2.2.4 為什么選擇ROS-2 29
2.3 ROS-2基礎(chǔ) 30
2.3.1 什么是DDS 30
2.3.2 DDS的實(shí)現(xiàn) 30
2.3.3 計(jì)算圖 31
2.3.4 ROS-2社區(qū)層級(jí) 32
2.3.5 ROS-2中的通信 32
2.3.6 ROS-2的變化 33
2.4 ROS-2客戶端庫(kù) 33
2.5 ROS-2工具 34
2.5.1 RViz2 34
2.5.2 Rqt 36
2.6 安裝ROS-2 36
2.6.1 開(kāi)始安裝 37
2.6.2 獲取ROS-2源碼 38
2.6.3 ROS-1、ROS-2以及共存環(huán)境設(shè)置 41
2.6.4 運(yùn)行測(cè)試節(jié)點(diǎn) 42
2.7 設(shè)置ROS-2工作空間 44
2.8 編寫(xiě)ROS-2節(jié)點(diǎn) 45
2.8.1 ROS-1代碼示例 45
2.8.2 ROS-2代碼示例 46
2.8.3 ROS-1發(fā)布者節(jié)點(diǎn)與ROS-2發(fā)布者節(jié)點(diǎn)的區(qū)別 49
2.9 ROS-1和ROS-2的通信 50
2.10 本章小結(jié) 52
第3章 構(gòu)建工業(yè)級(jí)移動(dòng)機(jī)械臂 53
3.1 技術(shù)要求 54
3.2 常見(jiàn)的移動(dòng)機(jī)械臂 54
3.3 移動(dòng)機(jī)械臂應(yīng)用場(chǎng)景 55
3.4 移動(dòng)機(jī)械臂構(gòu)建入門(mén) 56
3.4.1 單位及坐標(biāo)系 57
3.4.2 Gazebo及ROS機(jī)器人模型格式設(shè)定 57
3.5 機(jī)器人底座構(gòu)建 58
3.5.1 機(jī)器人底座需求 58
3.5.2 軟件參數(shù) 60
3.5.3 機(jī)器人底座建模 60
3.5.4 機(jī)器人底座模擬 64
3.5.5 機(jī)器人底座測(cè)試 68
3.6 機(jī)械臂構(gòu)建 70
3.6.1 機(jī)械臂需求 71
3.6.2 軟件參數(shù) 72
3.6.3 機(jī)械臂建模 72
3.6.4 機(jī)械臂模擬 74
3.6.5 機(jī)械臂測(cè)試 77
3.7 系統(tǒng)集成 78
3.7.1 移動(dòng)機(jī)械臂建模 78
3.7.2 移動(dòng)機(jī)械臂模擬與測(cè)試 79
3.8 本章小結(jié) 80
第4章 基于狀態(tài)機(jī)的復(fù)雜機(jī)器人任務(wù)處理 81
4.1 技術(shù)要求 81
4.2 ROS動(dòng)作機(jī)制簡(jiǎn)介 82
4.2.1 服務(wù)器–客戶端結(jié)構(gòu)概述 82
4.2.2 actionlib示例:機(jī)械臂客戶端 83
4.2.3 基于actionlib的服務(wù)器–客戶端示例:電池模擬器 85
4.3 服務(wù)員機(jī)器人應(yīng)用示例 90
4.4 狀態(tài)機(jī)簡(jiǎn)介 92
4.5 SMACH簡(jiǎn)介 93
4.6 SMACH入門(mén) 96
4.6.1 SMACH-ROS的安裝與使用 96
4.6.2 簡(jiǎn)單示例 96
4.6.3 餐廳機(jī)器人應(yīng)用示例 98
4.7 本章小結(jié) 102
第5章 構(gòu)建工業(yè)級(jí)應(yīng)用程序 103
5.1 技術(shù)要求 103
5.2 應(yīng)用案例:機(jī)器人送貨上門(mén) 104
5.3 機(jī)器人底座智能化 106
5.3.1 添加激光掃描傳感器 106
5.3.2 配置導(dǎo)航棧 108
5.3.3 環(huán)境地圖構(gòu)建 110
5.3.4 機(jī)器人底座定位 111
5.4 機(jī)械臂智能化 111
5.4.1 Moveit簡(jiǎn)介 112
5.4.2 安裝與配置Moveit 113
5.4.3 通過(guò)Moveit控制機(jī)械臂 117
5.5 應(yīng)用程序模擬 120
5.5.1 環(huán)境地圖構(gòu)建與保存 120
5.5.2 選擇目標(biāo)點(diǎn) 120
5.5.3 添加目標(biāo)點(diǎn) 121
5.5.4 狀態(tài)機(jī)構(gòu)建 121
5.6 機(jī)器人改進(jìn) 121
5.7 本章小結(jié) 122
第6章 多機(jī)器人協(xié)同 123
6.1 技術(shù)要求 123
6.2 集群機(jī)器人基本概念 124
6.3 集群機(jī)器人分類 125
6.4 ROS中的多機(jī)器人通信 125
6.4.1 單個(gè)roscore和公共網(wǎng)絡(luò) 126
6.4.2 群組/名稱空間的使用 127
6.4.3 基于群組/名稱空間的多機(jī)器人系統(tǒng)構(gòu)建示例 128
6.5 多master概念簡(jiǎn)介 131
6.5.1 multimaster_fkie功能包簡(jiǎn)介 132
6.5.2 安裝multimaster_fkie功能包 133
6.5.3 設(shè)置multimaster_fkie功能包 133
6.6 多機(jī)器人應(yīng)用示例 136
6.7 本章小結(jié) 138
第7章 嵌入式平臺(tái)上的ROS應(yīng)用及其控制 139
7.1 技術(shù)要求 139
7.2 嵌入式板基礎(chǔ)知識(shí) 140
7.2.1 重要概念介紹 141
7.2.2 機(jī)器人領(lǐng)域微控制器和微處理器的區(qū)別 142
7.2.3 板卡選型步驟 142
7.3 微控制器板簡(jiǎn)介 143
7.3.1 Arduino Mega 143
7.3.2 STM32 144
7.3.3 ESP8266 145
7.3.4 ROS支持的嵌入式板 146
7.3.5 對(duì)比表格 147
7.4 單板計(jì)算機(jī)簡(jiǎn)介 147
7.4.1 CPU板 148
7.4.2 GPU板 151
7.5 Debian與Ubuntu 152
7.6 在Tinkerboard S平臺(tái)上設(shè)置操作系統(tǒng) 153
7.6.1 基礎(chǔ)需求 153
7.6.2 安裝Tinkerboard Debian操作系統(tǒng) 153
7.6.3 安裝Armbian和ROS 154
7.6.4 使用可用的ROS鏡像安裝 156
7.7 在BeagleBone Black平臺(tái)上設(shè)置ROS 156
7.7.1 基礎(chǔ)需求 156
7.7.2 安裝Debian 操作系統(tǒng) 157
7.7.3 安裝Ubuntu和ROS 158
7.8 在Raspberry Pi 3/4平臺(tái)上設(shè)置ROS 159
7.8.1 基礎(chǔ)需求 159
7.8.2 安裝Raspbian和ROS 159
7.8.3 安裝Ubuntu和ROS 160
7.9 在Jetson Nano平臺(tái)上設(shè)置ROS 161
7.10 通過(guò)ROS控制GPIO 161
7.10.1 Tinkerboard S 162
7.10.2 BeagleBone Black 163
7.10.3 Raspberry Pi 3/4 164
7.10.4 Jetson Nano 165
7.11 嵌入式板基準(zhǔn)測(cè)試 166
7.12 Alexa入門(mén)及連接ROS 168
7.12.1 Alexa 技能構(gòu)建前提條件 168
7.12.2 創(chuàng)建Alexa技能 169
7.13 本章小結(jié) 173
第8章 強(qiáng)化學(xué)習(xí)與機(jī)器人學(xué) 174
8.1 技術(shù)要求 174
8.2 機(jī)器學(xué)習(xí)概述 175
8.2.1 監(jiān)督學(xué)習(xí) 175
8.2.2 無(wú)監(jiān)督學(xué)習(xí) 175
8.2.3 強(qiáng)化學(xué)習(xí) 176
8.3 理解強(qiáng)化學(xué)習(xí) 176
8.3.1 探索與開(kāi)發(fā) 177
8.3.2 強(qiáng)化學(xué)習(xí)公式 177
8.3.3 強(qiáng)化學(xué)習(xí)平臺(tái) 178
8.3.4 機(jī)器人領(lǐng)域的強(qiáng)化學(xué)習(xí)應(yīng)用 179
8.4 馬爾可夫決策過(guò)程與貝爾曼方程 179
8.5 強(qiáng)化學(xué)習(xí)算法 181
8.5.1 出租車問(wèn)題應(yīng)用示例 181
8.5.2 TD預(yù)測(cè) 182
8.5.3 TD控制 183
8.6 ROS中的強(qiáng)化學(xué)習(xí)功能包 189
8.6.1 gym-gazebo 189
8.6.2 gym-gazebo2 194
8.7 本章小結(jié) 196
第9章 ROS下基于TensorFlow的深度學(xué)習(xí) 197
9.1 技術(shù)要求 197
9.2 深度學(xué)習(xí)及其應(yīng)用簡(jiǎn)介 198
9.3 機(jī)器人領(lǐng)域的深度學(xué)習(xí) 198
9.4 深度學(xué)習(xí)庫(kù) 199
9.5 TensorFlow入門(mén) 200
9.5.1 在Ubuntu 18.04 LTS上安裝TensorFlow 200
9.5.2 TensorFlow概念 202
9.5.3 在TensorFlow下編寫(xiě)第一行代碼 204
9.6 ROS下基于TensorFlow的圖像識(shí)別 206
9.6.1 基礎(chǔ)需求 207
9.6.2 ROS圖像識(shí)別節(jié)點(diǎn) 207
9.7 scikit-learn簡(jiǎn)介 210
9.8 SVM及其在機(jī)器人領(lǐng)域的應(yīng)用簡(jiǎn)介 211
9.9 本章小結(jié) 214
第10章 ROS下的自動(dòng)駕駛汽車構(gòu)建 215
10.1 技術(shù)要求 215
10.2 自動(dòng)駕駛汽車入門(mén) 216
10.3 典型自動(dòng)駕駛汽車基本組件 218
10.3.1 GPS、IMU和車輪編碼器 218
10.3.2 攝像頭 219
10.3.3 超聲波傳感器 219
10.3.4 LIDAR與RADAR 219
10.3.5 自動(dòng)駕駛汽車的軟件模塊體系結(jié)構(gòu) 221
10.4 ROS下的自動(dòng)駕駛汽車模擬與交互 222
10.4.1 Velodyne LIDAR模擬 223
10.4.2 ROS下的Velodyne傳感器接口 224
10.4.3 激光掃描儀模擬 225
10.4.4 模擬代碼擴(kuò)展 226
10.4.5 ROS下的激光掃描儀接口 227
10.4.6 Gazebo下的立體與單目攝像頭模擬 228
10.4.7 ROS下的攝像頭接口 229
10.4.8 Gazebo下的GPS模擬 230
10.4.9 ROS下的GPS接口 231
10.4.10 Gazebo下的IMU模擬 231
10.4.11 ROS下的IMU接口 233
10.4.12 Gazebo下的超聲波傳感器模擬 233
10.4.13 低成本LIDAR傳感器 235
10.5 Gazebo下帶傳感器的自動(dòng)駕駛汽車模擬 236
10.6 ROS下的DBW汽車接口 241
10.6.1 功能包安裝 241
10.6.2 自動(dòng)駕駛汽車及傳感器數(shù)據(jù)可視化 241
10.6.3 基于ROS與DBW通信 243
10.7 Udacity開(kāi)源自動(dòng)駕駛汽車項(xiàng)目簡(jiǎn)介 243
10.7.1 Udacity的開(kāi)源自動(dòng)駕駛汽車模擬器 244
10.7.2 MATLAB ADAS工具箱 246
10.8 本章小結(jié) 246
第11章 基于VR頭盔和Leap Motion的機(jī)器人遙操作 247
11.1 技術(shù)要求 248
11.2 VR頭盔和Leap Motion傳感器入門(mén) 248
11.3 項(xiàng)目設(shè)計(jì)和實(shí)施 250
11.4 在Ubuntu 14.04.5上安裝Leap Motion SDK 251
11.4.1 可視化Leap Motion控制器數(shù)據(jù) 252
11.4.2 使用Leap Motion可視化工具 252
11.4.3 安裝用于Leap Motion控制器的ROS驅(qū)動(dòng)程序 253
11.5 RViz中Leap Motion數(shù)據(jù)的可視化 255
11.6 使用Leap Motion控制器創(chuàng)建遙操作節(jié)點(diǎn) 256
11.7 構(gòu)建ROS-VR Android應(yīng)用程序 258
11.8 ROS-VR應(yīng)用程序的使用及與Gazebo的交互 260
11.9 VR下的TurtleBot模擬 262
11.9.1 安裝TurtleBot模擬器 262
11.9.2 在VR中控制TurtleBot 262
11.10 ROS-VR應(yīng)用程序故障排除 263
11.11 ROS-VR應(yīng)用與Leap Motion遙操作功能集成 264
11.12 本章小結(jié) 265
第12章 基于ROS、Open CV和Dynamixel伺服系統(tǒng)的人臉識(shí)別與跟蹤 266
12.1 技術(shù)要求 266
12.2 項(xiàng)目概述 267
12.3 硬件和軟件基礎(chǔ)需求 267
12.4 使用RoboPlus配置Dynamixel伺服系統(tǒng) 271
12.5 Dynamixel與ROS連接 275
12.6 創(chuàng)建人臉跟蹤器ROS功能包 276
12.7 使用人臉跟蹤ROS功能包 278
12.7.1 理解人臉跟蹤器代碼 279
12.7.2 理解CMakeLists.txt 283
12.7.3 track.yaml文件 284
12.7.4 啟動(dòng)文件 284
12.7.5 運(yùn)行人臉跟蹤器節(jié)點(diǎn) 285
12.7.6 face_tracker_control功能包 286
12.7.7 平移控制器配置文件 287
12.7.8 伺服系統(tǒng)參數(shù)配置文件 287
12.7.9 人臉跟蹤控制器節(jié)點(diǎn) 288
12.7.10 創(chuàng)建CMakeLists.txt 289
12.7.11 測(cè)試人臉跟蹤器控制功能包 290
12.7.12 節(jié)點(diǎn)集成 291
12.7.13 固定支架并設(shè)置電路 291
12.7.14 最終運(yùn)行 292
12.8 本章小結(jié) 292

本目錄推薦

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