-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
機器人設計與制作系列ROS機器人項目開發11例(原書第2版)/機器人設計與制作系列 版權信息
- ISBN:9787111672449
- 條形碼:9787111672449 ; 978-7-111-67244-9
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
機器人設計與制作系列ROS機器人項目開發11例(原書第2版)/機器人設計與制作系列 本書特色
適讀人群 :本書主要面向學生、機器人技術愛好者、相關領域的專業人員。此外,本書還適用于那些對從頭開始學習和編寫運動控制與傳感器感知程序、算法感興趣的人。本書甚至可能有助于初創企業開發新產品,或幫助研究人員利用現有資源創造新的創新成果。本書也適用于那些想在軟件領域工作或成為機器人軟件工程師的人。本書涵蓋的項目使用了ROS發行版ROS Melodic Morenia以及Ubuntu Bionic 18.04操作系統。本書將從基本原理開始介紹ROS-2,并闡述它與ROS-1的不同之處。你將能夠在ROS中建模和構建工業移動機械臂,并在Gazebo 9中進行模擬。然后,你將了解如何使用狀態機處理復雜的機器人應用,以及一次控制多個機器人。本書還將介紹新的流行硬件,如NVIDIA Jetson Nano、華碩Tinkerboard和BeagleBone Black,并介紹其與ROS的接口。你將在構建有趣的ROS項目(如自動駕駛汽車)的同時學習深度學習、強化學習和其他關鍵的人工智能概念。通過學習本書,你將能夠使用ROS建立有趣而復雜的項目。
機器人設計與制作系列ROS機器人項目開發11例(原書第2版)/機器人設計與制作系列 內容簡介
本書共12章,對不同方面的ROS主題進行了較為深入的闡述,包括ROS-1與ROS-2的特性、移動機械臂模擬與應用開發、基于狀態機的復雜任務處理(以餐廳服務員機器人為例)、送貨機器人應用程序開發、多機器人協同、嵌入式平臺ROS應用、強化學習應用、深度學習應用、自動駕駛汽車、基于VR頭盔與手勢識別傳感器的機器人遠程操控、基于OpenCV與伺服系統的人臉識別與跟蹤等。本書使用ROS發行版ROS Melodic Morenia以及Ubuntu Bionic 18.04操作系統進行項目構建。
機器人設計與制作系列ROS機器人項目開發11例(原書第2版)/機器人設計與制作系列 目錄
目 錄 Contents
譯者序
前言
作者簡介
第1章 ROS入門 1
1.1 技術要求 2
1.2 ROS概述 2
1.2.1 ROS發行版 3
1.2.2 支持的操作系統 3
1.2.3 支持的機器人及傳感器 4
1.2.4 為什么選擇ROS 5
1.3 ROS基礎 6
1.3.1 文件系統層級 7
1.3.2 計算圖層級 7
1.3.3 ROS社區層級 9
1.3.4 ROS中的通信 9
1.4 ROS客戶端庫 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上設置ROS 18
1.9 Docker簡介 19
1.9.1 為什么選擇Docker 20
1.9.2 安裝Docker 20
1.10 設置ROS工作空間 23
1.11 ROS在工業界和學術界的機遇 25
1.12 本章小結 25
第2章 ROS-2及其特性簡介 26
2.1 技術要求 27
2.2 ROS-2概述 27
2.2.1 ROS-2發行版 28
2.2.2 支持的操作系統 28
2.2.3 支持的機器人及傳感器 29
2.2.4 為什么選擇ROS-2 29
2.3 ROS-2基礎 30
2.3.1 什么是DDS 30
2.3.2 DDS的實現 30
2.3.3 計算圖 31
2.3.4 ROS-2社區層級 32
2.3.5 ROS-2中的通信 32
2.3.6 ROS-2的變化 33
2.4 ROS-2客戶端庫 33
2.5 ROS-2工具 34
2.5.1 RViz2 34
2.5.2 Rqt 36
2.6 安裝ROS-2 36
2.6.1 開始安裝 37
2.6.2 獲取ROS-2源碼 38
2.6.3 ROS-1、ROS-2以及共存環境設置 41
2.6.4 運行測試節點 42
2.7 設置ROS-2工作空間 44
2.8 編寫ROS-2節點 45
2.8.1 ROS-1代碼示例 45
2.8.2 ROS-2代碼示例 46
2.8.3 ROS-1發布者節點與ROS-2發布者節點的區別 49
2.9 ROS-1和ROS-2的通信 50
2.10 本章小結 52
第3章 構建工業級移動機械臂 53
3.1 技術要求 54
3.2 常見的移動機械臂 54
3.3 移動機械臂應用場景 55
3.4 移動機械臂構建入門 56
3.4.1 單位及坐標系 57
3.4.2 Gazebo及ROS機器人模型格式設定 57
3.5 機器人底座構建 58
3.5.1 機器人底座需求 58
3.5.2 軟件參數 60
3.5.3 機器人底座建模 60
3.5.4 機器人底座模擬 64
3.5.5 機器人底座測試 68
3.6 機械臂構建 70
3.6.1 機械臂需求 71
3.6.2 軟件參數 72
3.6.3 機械臂建模 72
3.6.4 機械臂模擬 74
3.6.5 機械臂測試 77
3.7 系統集成 78
3.7.1 移動機械臂建模 78
3.7.2 移動機械臂模擬與測試 79
3.8 本章小結 80
第4章 基于狀態機的復雜機器人任務處理 81
4.1 技術要求 81
4.2 ROS動作機制簡介 82
4.2.1 服務器–客戶端結構概述 82
4.2.2 actionlib示例:機械臂客戶端 83
4.2.3 基于actionlib的服務器–客戶端示例:電池模擬器 85
4.3 服務員機器人應用示例 90
4.4 狀態機簡介 92
4.5 SMACH簡介 93
4.6 SMACH入門 96
4.6.1 SMACH-ROS的安裝與使用 96
4.6.2 簡單示例 96
4.6.3 餐廳機器人應用示例 98
4.7 本章小結 102
第5章 構建工業級應用程序 103
5.1 技術要求 103
5.2 應用案例:機器人送貨上門 104
5.3 機器人底座智能化 106
5.3.1 添加激光掃描傳感器 106
5.3.2 配置導航棧 108
5.3.3 環境地圖構建 110
5.3.4 機器人底座定位 111
5.4 機械臂智能化 111
5.4.1 Moveit簡介 112
5.4.2 安裝與配置Moveit 113
5.4.3 通過Moveit控制機械臂 117
5.5 應用程序模擬 120
5.5.1 環境地圖構建與保存 120
5.5.2 選擇目標點 120
5.5.3 添加目標點 121
5.5.4 狀態機構建 121
5.6 機器人改進 121
5.7 本章小結 122
第6章 多機器人協同 123
6.1 技術要求 123
6.2 集群機器人基本概念 124
6.3 集群機器人分類 125
6.4 ROS中的多機器人通信 125
6.4.1 單個roscore和公共網絡 126
6.4.2 群組/名稱空間的使用 127
6.4.3 基于群組/名稱空間的多機器人系統構建示例 128
6.5 多master概念簡介 131
6.5.1 multimaster_fkie功能包簡介 132
6.5.2 安裝multimaster_fkie功能包 133
6.5.3 設置multimaster_fkie功能包 133
6.6 多機器人應用示例 136
6.7 本章小結 138
第7章 嵌入式平臺上的ROS應用及其控制 139
7.1 技術要求 139
7.2 嵌入式板基礎知識 140
7.2.1 重要概念介紹 141
7.2.2 機器人領域微控制器和微處理器的區別 142
7.2.3 板卡選型步驟 142
7.3 微控制器板簡介 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 對比表格 147
7.4 單板計算機簡介 147
7.4.1 CPU板 148
7.4.2 GPU板 151
7.5 Debian與Ubuntu 152
7.6 在Tinkerboard S平臺上設置操作系統 153
7.6.1 基礎需求 153
7.6.2 安裝Tinkerboard Debian操作系統 153
7.6.3 安裝Armbian和ROS 154
7.6.4 使用可用的ROS鏡像安裝 156
7.7 在BeagleBone Black平臺上設置ROS 156
7.7.1 基礎需求 156
7.7.2 安裝Debian 操作系統 157
7.7.3 安裝Ubuntu和ROS 158
7.8 在Raspberry Pi 3/4平臺上設置ROS 159
7.8.1 基礎需求 159
7.8.2 安裝Raspbian和ROS 159
7.8.3 安裝Ubuntu和ROS 160
7.9 在Jetson Nano平臺上設置ROS 161
7.10 通過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 嵌入式板基準測試 166
7.12 Alexa入門及連接ROS 168
7.12.1 Alexa 技能構建前提條件 168
7.12.2 創建Alexa技能 169
7.13 本章小結 173
第8章 強化學習與機器人學 174
8.1 技術要求 174
8.2 機器學習概述 175
8.2.1 監督學習 175
8.2.2 無監督學習 175
8.2.3 強化學習 176
8.3 理解強化學習 176
8.3.1 探索與開發 177
8.3.2 強化學習公式 177
8.3.3 強化學習平臺 178
8.3.4 機器人領域的強化學習應用 179
8.4 馬爾可夫決策過程與貝爾曼方程 179
8.5 強化學習算法 181
8.5.1 出租車問題應用示例 181
8.5.2 TD預測 182
8.5.3 TD控制 183
8.6 ROS中的強化學習功能包 189
8.6.1 gym-gazebo 189
8.6.2 gym-gazebo2 194
8.7 本章小結 196
第9章 ROS下基于TensorFlow的深度學習 197
9.1 技術要求 197
9.2 深度學習及其應用簡介 198
9.3 機器人領域的深度學習 198
9.4 深度學習庫 199
9.5 TensorFlow入門 200
9.5.1 在Ubuntu 18.04 LTS上安裝TensorFlow 200
9.5.2 TensorFlow概念 202
9.5.3 在TensorFlow下編寫**行代碼 204
9.6 ROS下基于TensorFlow的圖像識別 206
9.6.1 基礎需求 207
9.6.2 ROS圖像識別節點 207
9.7 scikit-learn簡介 210
9.8 SVM及其在機器人領域的應用簡介 211
9.9 本章小結 214
第10章 ROS下的自動駕駛汽車構建 215
10.1 技術要求 215
10.2 自動駕駛汽車入門 216
10.3 典型自動駕駛汽車基本組件 218
10.3.1 GPS、IMU和車輪編碼器 218
10.3.2 攝像頭 219
10.3.3 超聲波傳感器 219
10.3.4 LIDAR與RADAR 219
10.3.5 自動駕駛汽車的軟件模塊體系結構 221
10.4 ROS下的自動駕駛汽車模擬與交互 222
10.4.1 Velodyne LIDAR模擬 223
10.4.2 ROS下的Velodyne傳感器接口 224
10.4.3 激光掃描儀模擬 225
10.4.4 模擬代碼擴展 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下帶傳感器的自動駕駛汽車模擬 236
10.6 ROS下的DBW汽車接口 241
10.6.1 功能包安裝 241
10.6.2 自動駕駛汽車及傳感器數據可視化 241
10.6.3 基于ROS與DBW通信 243
10.7 Udacity開源自動駕駛汽車項目簡介 243
10.7.1 Udacity的開源自動駕駛汽車模擬器 244
10.7.2 MATLAB ADAS工具箱 246
10.8 本章小結 246
第11章 基于VR頭盔和Leap Motion的機器人遙操作 247
11.1 技術要求 248
11.2 VR頭盔和Leap Motion傳感器入門 248
11.3 項目設計和實施 250
11.4 在Ubuntu 14.04.5上安裝Leap Motion SDK 251
11.4.1 可視化Leap Motion控制器數據 252
11.4.2 使用Leap Motion可視化工具 252
11.4.3 安裝用于Leap Motion控制器的ROS驅動程序 253
11.5 RViz中Leap Motion數據的可視化 255
11.6 使用Leap Motion控制器創建遙操作節點 256
11.7 構建ROS-VR Android應用程序 258
11.8 ROS-VR應用程序的使用及與Gazebo的交互 260
11.9 VR下的TurtleBot模擬 262
11.9.1 安裝TurtleBot模擬器 262
11.9.2 在VR中控制TurtleBot 262
11.10 ROS-VR應用程序故障排除 263
11.11 ROS-VR應用與Leap Motion遙操作功能集成 264
11.12 本章小結 265
第12章 基于ROS、Open CV和Dynamixel伺服系統的人臉識別與跟蹤 266
12.1 技術要求 266
12.2 項目概述 267
12.3 硬件和軟件基礎需求 267
12.4 使用RoboPlus配置Dynamixel伺服系統 271
12.5 Dynamixel與ROS連接 275
12.6 創建人臉跟蹤器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 啟動文件 284
12.7.5 運行人臉跟蹤器節點 285
12.7.6 face_tracker_control功能包 286
12.7.7 平移控制器配置文件 287
12.7.8 伺服系統參數配置文件 287
12.7.9 人臉跟蹤控制器節點 288
12.7.10 創建CMakeLists.txt 289
12.7.11 測試人臉跟蹤器控制功能包 290
12.7.12 節點集成 291
12.7.13 固定支架并設置電路 291
12.7.14 *終運行 292
12.8 本章小結 292
機器人設計與制作系列ROS機器人項目開發11例(原書第2版)/機器人設計與制作系列 作者簡介
拉姆庫瑪·甘地那坦(Ramkumar Gandhinathan)是一名機器人學家和研究者。他從小學六年級開始制造機器人,在機器人領域鉆研已超過15年,親手打造了80多個不同類型的機器人。他在機器人行業有7年的系統性專業工作經驗(4年全職和3年兼職/實習),擁有5年的ROS工作經驗。在他的職業生涯中,他使用ROS構建了超過15個工業機器人解決方案。他對制作無人機也很著迷,是一名無人機駕駛員。他的研究興趣和熱情集中在SLAM、運動規劃、傳感器融合、多機器人通信和系統集成等領域。 郎坦·約瑟夫(Lentin Joseph)是一位來自印度的作家、機器人學家和機器人企業家。他在印度喀拉拉邦的高知市經營一家名為Qbotics Labs的機器人軟件公司。他在機器人領域有8年的工作經驗,主要致力于ROS、OpenCV和PCL領域。他寫過幾本關于ROS的書,分別是《機器人系統設計與制作:Python語言實現》《精通ROS機器人編程》《ROS機器人項目開發11例》以及《機器人操作系統(ROS)入門必備:機器人編程一學就會》。他在印度獲得了機器人學和自動化專業碩士學位,并在美國卡內基–梅隆大學的機器人研究所工作。他也是TEDx演講者。
- >
巴金-再思錄
- >
伯納黛特,你要去哪(2021新版)
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
羅曼·羅蘭讀書隨筆-精裝
- >
【精裝繪本】畫給孩子的中國神話
- >
推拿
- >
我從未如此眷戀人間
- >
自卑與超越