第3章 ROS2編程基礎(chǔ)_第1頁
第3章 ROS2編程基礎(chǔ)_第2頁
第3章 ROS2編程基礎(chǔ)_第3頁
第3章 ROS2編程基礎(chǔ)_第4頁
第3章 ROS2編程基礎(chǔ)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

機器人操作系統(tǒng)(ROS2)入門與實踐機器人操作系統(tǒng)(ROS2)入門與實踐第1章LinuxUbuntu入門基礎(chǔ)第2章ROS2安裝與系統(tǒng)架構(gòu)第3章ROS2編程基礎(chǔ)第4章ROS2機器人運動控制第5章激光雷達在ROS2中的使用第6章IMU在ROS2中的使用第7章ROS2中的SLAM環(huán)境建圖第8章ROS2中的NAV2自主導(dǎo)航第9章ROS2中的圖像視覺應(yīng)用第10章ROS2的三維視覺應(yīng)用第11章ROS2的機械臂應(yīng)用第12章基于ROS2的綜合應(yīng)用第3章3.3面向?qū)ο蟮墓?jié)點Node實現(xiàn)

第3章ROS2編程基礎(chǔ)3.2話題Topic和消息Message3.1節(jié)點Node和軟件包Package3.4Launch文件3.5本章小結(jié)

節(jié)點Node和軟件包Package是ROS2的程序的組織形式。其中節(jié)點Node相當(dāng)于一個ROS2的程序文件。當(dāng)我們運行一個ROS2程序的時候,實際上運行的就是一個或者多個節(jié)點文件。軟件包Package是節(jié)點文件的容器,通常是一個包含了一系列配置文件的目錄。而節(jié)點源碼文件,就放在軟件包目錄的某個子文件夾中(一般是src文件夾)。3.1節(jié)點Node和軟件包Package創(chuàng)建軟件包Package和節(jié)點Node的詳細(xì)操作步驟:見教材P56-P66頁

3.2話題Topic和消息Message

在ROS2中,節(jié)點Node之間的通訊最常用的方式是話題Topic和消息Message。其中話題Topic可以理解為一個網(wǎng)絡(luò)聊天室。在這個話題聊天室里發(fā)言的節(jié)點,可以稱為發(fā)布者Publisher。而聊天室中所有看到發(fā)言內(nèi)容的節(jié)點,可以稱為訂閱者Subscriber。

在話題聊天室中傳送的發(fā)言內(nèi)容,就是消息Message。所以上述通訊機制可以概括為:1)發(fā)布者Publisher將要發(fā)生的數(shù)據(jù)打包成消息Message,然后發(fā)送到話題Topic中。2)訂閱者Subscriber訂閱一個話題Topic,從話題中獲取消息Message。然后把消息中的數(shù)據(jù)解析出來,進行后續(xù)的計算和使用。

編寫話題發(fā)布者Publisher、話題訂閱者Subscriber的詳細(xì)操作步驟:見教材P67-P85頁

3.3面向?qū)ο蟮墓?jié)點Node實現(xiàn)

在前面的實驗里,使用的都是過程式編程,可以很清晰的展示節(jié)點的運行過程。但是在大量的開源項目中,最流行的是面向?qū)ο蟮木幊谭绞?。也就是將?jié)點Node封裝成類Class。

話題發(fā)布者Publisher的類封裝、話題訂閱者Subscriber的類封裝的詳細(xì)操作步驟:見教材P85-P91頁

3.4Launch文件

在ROS2中,可以通過Launch文件一次啟動多個節(jié)點,省去了逐個節(jié)點輸入指令啟動的繁瑣。在ROS2中,支持用三種語音來編寫Launch文件,分別是XML、YAML和Python。其中XML的語法和ROS1的Launch文件格式類似;YAML格式的Launch文件使用比較少;而在ROS2的開源社區(qū)中,則以Python語言的Launch文件最為流行。

分別使用XML、YAML和Python這三種語言構(gòu)建Launch文件的詳細(xì)操作步驟:見教材P91-P104頁3.5本章小結(jié)

本章主要是對ROS2的基本程序概念進行介紹和編程。首先詳細(xì)介紹了ROS2程序的組織形式節(jié)點Node和軟件包Package,以及節(jié)點Node之間最常用的通訊方式話題Topic和消息Message的實現(xiàn);

接著,使用面向?qū)ο?/p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論