ROS機器人編程實踐

ROS機器人編程實踐 下載 mobi epub pdf 電子書 2024


簡體網頁||繁體網頁
[美] 摩根·奎格利(Morgan Quigley),布萊恩·格剋(Brian,G 著,張天雷 李博 謝遠帆 大偉 曉健譯 譯



點擊這裡下載
    

想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

發表於2024-11-26

類似圖書 點擊查看全場最低價


圖書介紹

齣版社: 機械工業齣版社
ISBN:9787111585299
版次:1
商品編碼:12272539
品牌:機工齣版
包裝:平裝
叢書名: O'Reilly精品圖書係列
開本:16開
齣版時間:2018-01-01
用紙:膠版紙
頁數:364


相關圖書





圖書描述

內容簡介

本書通過將ROS社區的寶貴開發經驗和現實案例相結閤,為你在機器人開發過程中遇到的問題提供切實可行的指南。不論你是機器人俱樂部的學生,還是專業的機器人科學傢和工程師,都可以在本書中找到你想要的內容。書中的每部分都提供瞭使用ROS工具實現各類機器人係統的完整解決方案,不僅包括實現各種單一機器人任務,也包括將不同模塊結閤完成組閤任務。在本書中,隻要你熟悉Python,就可以開始動手實踐。

目錄

目錄
前言 1
第一部分 基礎知識
第1章 概述 9
簡史 9
理念 10
安裝 11
小結 12
第2章 預備知識 13
ROS圖 13
roscore 15
catkin、工作區以及ROS程序包 16
rosrun 19
命名、命名空間以及重映射 24
roslaunch 25
tab鍵 26
tf:坐標係轉換 27
小結 30
第3章 話題 31
將消息發布到話題上 32
訂閱一個話題 36
鎖存話題 38
定義自己的消息類型 39
讓發布者和訂閱者協同工作 46
小結 47
第4章 服務 48
定義服務 48
實現服務 51
使用服務 54
小結 56
第5章 動作 57
動作的定義 58
實現一個基本的動作服務器 59
動作的使用 62
實現一個更復雜的動作服務器 64
使用更復雜的動作 66
小結 69
第6章 機器人與仿真器 71
子係統 71
機器人係統舉例 79
仿真器 83
小結 86
第7章 Wander-bot 88
創建包 88
讀取傳感器數據 91
感知環境並移動:Wander-bot 94
小結 96
第二部分 使用ROS驅動機器人行走
第8章 遙控機器人 99
開發模式 100
鍵盤驅動 100
運動生成器 102
參數服務器 107
速度斜坡麯綫 109
開車 111
rviz 113
小結 120
第9章 創建環境地圖 121
ROS中的地圖 121
使用rosbag記錄數據 124
創建地圖 125
啓動地圖服務器以及查看地圖 131
小結 133
第10章 在真實環境中的導航 135
在地圖中定位機器人 135
使用ROS的導航軟件包 139
在代碼中進行導航 144
小結 145
第11章 下棋機器人 146
關節、連接以及傳動鏈 147
成功的關鍵 150
安裝和運行一颱仿真R2 152
在命令行中移動R2 155
在棋盤上移動R2的機械臂 156
操作機械手 158
對棋盤建模 159
重演著名的棋局 163
小結 167
第三部分 感知和行為
第12章 循綫機器人 171
采集圖像 171
檢測指示綫 177
循綫運動 182
小結 184
第13章 巡航 185
簡單巡航 185
狀態機 186
用smach構建狀態機 188
用狀態機實現巡航 195
小結 198
第14章 倉儲機器人 199
倉庫模擬環境 199
駛入隔間 210
拾取物體 214
小結 224
第四部分 添加自定義ROS組件
第15章 添加你自己的傳感器和執行器 227
添加你自己的傳感器 227
添加你自己的執行器 234
小結 240
第16章 添加你自己的移動機器人:第一部分 242
小龜機器人 242
ROS 消息接口 244
硬件驅動 247
使用 URDF對機器人建模247
在 Gazebo 中進行仿真 255
小結 261
第17章 添加你自己的移動機器人:第二部分 262
驗證坐標變換信息 262
添加激光傳感器 266
配置導航程序棧 270
使用 rviz 定位和控製導航中的機器人 275
小結 278
第18章 添加你自己的機械臂 279
獵豹機械臂 279
ROS 消息接口 281
硬件驅動 282
對機器人建模:使用 URDF 282
在 Gazebo 中進行仿真 287
驗證坐標變換信息 294
配置 MoveIt 297
使用 rviz 控製機械臂 301
小結 303
第19章 添加軟件庫 305
讓你的機器人開口說話:使用 pyttsx305
小結 312
第五部分 ROS使用小知識
第20章 ROS小工具 315
主機及其相關組件:roscore315
參數管理:rosparam 316
文件係統導航:roscd 317
節點啓動:rosrun 318
多節點啓動:roslaunch 318
多節點係統測試:rostest 321
係統監控:rosnode、rostopic、rosmsg、rosservice和rossrv 324
小結 327
第21章 機器人行為調試 329
日誌消息: /rosout和rqt_console 329
節點、話題和連接:rqt_graph和rosnode 336
傳感器融閤: 使用 rviz 343
繪製數據圖錶:使用 rqt_plot 344
數據記錄和分析: 使用rosbag和rqt_bag 346
小結 350
第22章 ROS在綫社區 351
社區的禮儀 351
ROS 維基 352
ROS Answers: 一個 ROS 問答社區 353
bug 追蹤與新特性請求 354
郵件列錶與ROS興趣小組 354
查找和分享代碼 354
小結 355
第23章 用C++編寫ROS程序 356
C++(或其他語言)的使用場景 356
使用catkin編譯C++ 357
在Python和C++之間來迴移植程序 359
小結 364

前言/序言

前言ROS(Robot Operating System,機器人操作係統),是一個讓機器人能夠運作起來的開源程序框架。ROS誕生的初衷是能夠為那些製作和使用機器人的人提供通用的軟件平颱。這個平颱能夠讓人們更加便捷地分享代碼與想法,這意味著你不再需要花費經年纍月的時間去編寫軟件框架就能讓你的機器人動起來!
ROS取得瞭巨大的成功。截止撰寫本書之時,官方發行的ROS版本中有超過2000個軟件包,並被600多人編寫和維護。ROS支持大約80個市場上可以買到的機器人,我們還可以在至少1850篇學術文獻中找到ROS的蹤影。從此我們不再需要從零開始編寫所有程序,特彆是當要對眾多ROS所支持的機器人中的一個進行開發時,我們可以更加專注於機器人技術本身,而不是“位操作”或者設備驅動。
ROS由許多部分所組成,包含如下這些:
1. 一係列可以讓你從傳感器讀取數據以及嚮電動機等執行機構發送指令的驅動程序,而且這些數據的格式都經過良好的抽象與定義。ROS支持非常多的主流硬件,包括越來越多市場上可以買到的機器人係統。
2. 海量且日漸增多的基本機器人算法,讓你能夠輕鬆構建世界地圖、在其中穿梭、錶示並解析傳感器數據、規劃動作、操縱物體,以及實現許多其他功能。ROS在機器人研究社區中飽受歡迎,因此許多最前沿的算法現在都可以在ROS中找到。
3. 充足的計算基礎設施,使數據能夠四處傳遞,讓眾多模塊可以連接成一個復雜的機器人係統並幫助你整閤算法。ROS天生的分布式架構讓你能夠輕鬆地將計算壓力無縫地分擔到多颱計算機上。
4. 一係列實用工具,使得對機器人及算法的可視化、錯誤行為的調試以及傳感器數據的錄製都變得非常容易。對機器人程序的調試是極為睏難的,因此也正是這一係列豐富的工具使得ROS如此強大。
5. 最後,ROS具有比其本身更為龐大的ROS生態係統,它的擴展資源眾多,包含瞭一個記錄整個框架方方麵麵的wiki文檔,一個專門用於提問與解答的網站,通過該網站你可以尋求幫助並分享自己的所學,以及一個充滿使用者與開發者的欣欣嚮榮的社區。
那麼,為什麼你需要學習ROS呢?最簡單的答案就是,它將會為你節省時間。ROS包含瞭機器人軟件係統的所有部分,沒有它,你就隻能自己一一編寫。ROS使你能夠更加專注於係統中你最關心的部分,而無須操心那些你不那麼關注的部分。
為什麼你需要讀這本書?ROS的wiki文檔中包含瞭大量內容,涉及框架中許多方麵的詳細教程。一個活躍的用戶社區(http://answers.ros.org)隨時準備解答你的問題。為什麼不直接通過這些資源學習ROS? 在本書中我們所做的就是以一種更加有序的方式將這些知識呈現給你,並給齣容易理解的實例,使你知道如何使用ROS讓你的實物或仿真機器人去做些有趣的事。我們還嘗試通過提供技巧和提示來給予你各種指導,比如如何整閤代碼,如何在機器人行為不閤預期時調試代碼以及如何成為ROS社區的一員。
如果你不是資深程序員,學習ROS會有些吃力,係統中包含瞭分布式計算、多綫程、事件驅動的編程以及深藏在係統底層的一大堆概念。如果你不怎麼懂這些內容,你的學習麯綫將會非常陡峭。本書通過介紹ROS的基本概念並給齣在實物或仿真機器人中的常見應用實例來盡可能地使這條學習麯綫變得平緩一些。
誰應該閱讀本書如果你想讓你的機器人在現實世界中做一些事情,而又不想把時間浪費在“重新發明輪子”上,那麼這本書就是為你準備的。ROS包含瞭讓機器人運轉起來所需要的基礎架構以及用來驅動機器人做一些有趣事情的足夠多的算法。
如果你對某些特彆的方麵比如路徑規劃等感興趣,並且想在完整的機器人係統背景下研究它們,那麼這本書就是為你準備的。本書將展示如何使用ROS提供的基礎架構和算法來驅動機器人做一些有趣的事情以及如何用你自己的算法替換掉現有的算法。
如果你想要瞭解ROS基本的運轉機製和用法,想要瞭解ROS大概能做哪些事情,但是又苦於wiki的內容太過龐雜,那麼這本書也是為你準備的。我們將帶領你瞭解ROS的運轉機製和一些簡單的工具。我們也會提供一些具體的、完整的例子,你可以基於這些例子進行開發,修改它們來實現自己的想法。
誰不適閤閱讀本書雖然我們不想拒絕任何人閱讀本書,但是本書並不是對所有人都適用的資源。我們對你使用的機器人做瞭一些隱含的假設。它們應該運行Linux,有很好的計算資源(至少相當於一颱筆記本電腦)。它們有先進的傳感器,比如Microsoft Kinect。它們應該是放在地上的,並且可能需要在實際環境中移動。如果你的機器人不滿足上述這些要求,那麼本書中的例子就不能立刻成功運行,盡管程序和工具本身並沒有問題。
本書主要是關於ROS的,並不是關於機器人學的。盡管你可以從本書中學到一點機器人學相關的知識,但是我們不會深入地探討ROS中包含的很多算法。如果你想獲取更多關於機器人學的介紹,那麼這本書不是為你準備的。
你將學到什麼本書想要廣泛地介紹如何使用ROS對機器人進行編程。本書涵蓋構成ROS核心的基本運轉機製和簡單工具,並將展示如何使用它們創建控製機器人的軟件。我們將展示一些具體的例子,這些例子講述瞭如何使用ROS控製你的機器人做一些有趣的事情。同時,我們將給齣一些如何基於這些例子來創建你自己的機器人的建議。
除瞭技術內容之外,我們還將展示如何使用ROS巨大的生態係統,比如wiki和問答社區,以及如何成為全球ROS社區的一員,與全世界的其他機器人愛好者分享代碼和新知識。
預備知識在閱讀和使用本書之前,你必須瞭解幾件事情。由於ROS是一個軟件框架,因此為瞭更好地瞭解ROS你非常有必要瞭解如何編程。雖然在ROS中可以使用很多種語言,但是在本書中我們使用Python。如果你不瞭解Python,那麼很多代碼對你來說就沒多大意義瞭。幸運的是,Python是一門易於學習的語言!有很多很不錯的書和免費的網站,你可以使用這些資源來學習Python,Python的官方網站是http://python.org。
最適閤運行ROS的環境是Ubuntu Linux,有一些Linux的經驗能夠讓學習輕鬆一點。我們在講述過程中將會介紹一些必要的Linux相關內容,但是對文件係統、bash命令行以及至少一種編輯器有一些基本的瞭解將有利於你將更多的精力放在ROS相關的內容上。
盡管不是必要的,但是對機器人學有基本的瞭解也將有所幫助。瞭解一些機器人學所使用的基本數學知識,比如坐標變換、傳動鏈等,對理解書中所講述的一些ROS機製也很有幫助。再次強調,我們將簡要介紹這些內容,但是如果你不熟悉這些東西,你可能要額外地學習、深入機器人學的相關文獻來補充相關背景。
排版約定斜體錶示新的術語、網址、郵件地址、目錄、路徑名、文件名以及文件擴展名。
等寬字體(Constant width)錶示程序代碼,在正文中齣現的代碼中的元素,如變量名、函數名、命名空間、數據類型、環境變量、語句以及關鍵詞等,也用來錶示命令、命令行工具以及ROS的包、節點、話題等。
等寬加粗(Constant width bold)錶示命令以及其他一些需要用戶完全按照字麵輸入的文字。
等寬斜體(Constant width italic)錶示需要用戶根據自身情況替換的文字以及由上下文決定的一些值。
這個圖標錶示一般的注釋。
這個圖標錶示建議或者小貼士。
這個圖標錶示警告。
代碼示例的使用一些補充材料(代碼示例、練習等)可以從地址https://github.com/osrf/rosbook獲取。
本書的目的是幫助你完成工作。為瞭達到這個目的,上述鏈接指嚮的代碼倉庫中的代碼根據Apache 2.0許可證是可用的,這一許可證允許你重用代碼。
我們希望但是不強製你引用本書。一條引用通常包含書名、作者、齣版商以及ISBN,如“Programming Robots with ROS by Morgan Quigley, Brian Gerkey, and William D. Smart (O扲eilly). Copyright 2015 Morgan Quigley, Brian Gerkey, and William D. Smart, 978-1-4493-2389-9”。
如果你感覺你對代碼的利用超齣瞭正常使用範圍或上述許可範圍,請聯係我們:permissions@oreilly.com。
Safari在綫電子書Safari Book Online是一個在綫的電子圖書館,收錄瞭大量當下熱門的電子圖書及配套的影像資料,涵蓋商業的技術領域的各個方麵。得到瞭技術專傢、軟件開發人員、網頁設計師和商業人士的廣泛使用和認可。通過它,你可以獲取研究資料、解決難題、學習新知識和接受技術培訓等。
Safari Books Online針對企業、政府和教育機構提供瞭不同的購買計劃,你可以根據實際需求進行選購。
購買Safari Books Online服務後,你就可以通過在綫數據庫搜索訪問數以韆計的書籍、培訓視頻甚至是預齣版的樣書。這些資料來自於包括O扲eilly Media、Prentice Hall Professional、Addison-Wesley Professional、Microsoft Press、Sams、Que、Peachpit Press、Focal Press、Cisco Press、John Wiley & Sons、Syngress、Morgan Kaufmann、IBM Redbooks、Packt、Adobe Press、FT Press、Apress、Manning、New Riders、McGraw-Hill、Jones & Bartlett、Course Technology等齣版社。
如何聯係我們美國:
O扲eilly Media,Inc.1005 Gravenstein Highway NorthSebastopol,CA 95472中國:
北京市西城區西直門南大街2號成銘大廈C座807室(100035)奧萊利技術谘詢(北京)有限公司本書也有一個配套網站,網站上的內容包括勘誤錶、代碼示例以及一些與本書相關的額外信息。網站的地址是:http://bit.ly/prog_robots_w_ros。
如果有關於本書的技術性疑問,請發電子郵件至bookquestions@oreilly.com。
關於本書的更多信息,如相關課程、會議、新聞等,請訪問我們的網站http://www.oreilly.com。
緻謝首先,也是最重要的,我們要感謝O扲eilly的三位編輯Mike Loukides、Meg Blanchette 以及Dawn Schanafelt。在本書寫作過程中,他們錶現齣瞭極大的耐心和極高的責任心。我們還要感謝所有為本書提供反饋的人,尤其是Andreas Bihlmaier、Jon Bohren、Zach Dodds和Kat Scott。他們的評論和建議讓本書變得更好。
當然,我們還要感謝所有幫助我們調試從而使ROS在我們的機器人上正常運行的人。Mike Ferguson提供瞭Fetch示例。來自開源機器人基金會(Open Source Robotics Foundation,OSRF)的Stev
ROS機器人編程實踐 下載 mobi epub pdf txt 電子書 格式

ROS機器人編程實踐 mobi 下載 pdf 下載 pub 下載 txt 電子書 下載 2024

ROS機器人編程實踐 下載 mobi pdf epub txt 電子書 格式 2024

ROS機器人編程實踐 下載 mobi epub pdf 電子書
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

用戶評價

評分

準備學習ros,作為入門學習的很好

評分

還可以吧,湊閤,下次考慮再買

評分

基於indigo版,主要針對實例進行講解,內容偏操作.

評分

正在讀,寫的很不錯!

評分

很不錯,質量很好,例子通俗易懂

評分

買瞭好多次瞭,挺好的,下次再買

評分

買瞭好多次瞭,挺好的,下次再買

評分

還可以吧,湊閤,下次考慮再買

評分

送貨速度快,産品質量好。

類似圖書 點擊查看全場最低價

ROS機器人編程實踐 mobi epub pdf txt 電子書 格式下載 2024


分享鏈接




相關圖書


本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

友情鏈接

© 2024 book.teaonline.club All Rights Reserved. 圖書大百科 版權所有