DDS在ROS2中的應用
DDS在ROS2系統(tǒng)中的位置至關重要,所有上層建設都建立在DDS之上。在這個ROS2的架構圖中,藍色和紅色部分就是DDS。
剛才我們也提到,DDS是一種通信的標準,就像4G、5G一樣,既然是標準,那大家都可以按照這個標準來實現(xiàn)對應的功能,所以華為、高通都有很多5G的技術專利,DDS也是一樣,能夠按照DDS標準實現(xiàn)的通信系統(tǒng)很多,這里每一個紅色模塊,就是某一企業(yè)或組織實現(xiàn)的一種DDS系統(tǒng)。
既然可選用的DDS這么多,那我們該用哪一個呢?具體而言,他們肯定都符合基本標準,但還是會有性能上的差別,ROS2的原則就是盡量兼容,讓用戶根據(jù)使用場景選擇,比如個人開發(fā),我們選擇一個開源版本的DDS就行,如果是工業(yè)應用,那可能得選擇一個商業(yè)授權的版本了。
為了實現(xiàn)對多個DDS的兼容,ROS設計了一個Middleware中間件,也就是一個統(tǒng)一的標準,不管我們用那個DDS,保證上層編程使用的函數(shù)接口都是一樣的。此時兼容性的問題就轉移給了DDS廠商,如果他們想讓自己的DDS系統(tǒng)進入ROS生態(tài),就得按照ROS的接口標準,開發(fā)一個驅動,也就是這個部分。
無論如何,ROS的宗旨不變,要提高軟件代碼的復用性,下邊DDS任你邊,上邊的軟件沒影響。
在ROS的四大組成部分中,由于DDS的加入,大大提高了分布式通信系統(tǒng)的綜合能力,這樣我們在開發(fā)機器人的過程中,就不需要糾結通信的問題,可以把更多時間放在其他部分的應用開發(fā)上。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
相關推薦
請問一下,百度文庫資料里面,下圖所示的系統(tǒng)鏡像Ubuntu_ROS2中ROS2是什么意思,帶有ROS2開發(fā)環(huán)境嗎?與前面4GB版本的鏡像有什么區(qū)別?
發(fā)表于 03-01 23:06
ros2的烏龜仿真turtlesim,介紹topic,service,action等元素及其使用,介紹ros的基本操作
發(fā)表于 08-30 08:24
在ROS2中運行小烏龜,其實主要就是安裝兩個工具,turtlesim和rqt。A: 安裝turtlesim。輸入【sudo apt update】輸入【sudo apt install
發(fā)表于 11-05 06:08
的 teleop 軟件包用鍵盤遠程控制 Kobuki 機器人了:[img][/img]ROS2 (micro_ros)前面提到,第二代 ROS 主機之間的通信是建立在
發(fā)表于 04-01 11:38
地平線的TogetherROS)的設備,設備的IP地址在同一網(wǎng)段,并且ROS_DOMAIN_ID相同(如果不設置,默認是0),即可實現(xiàn)設備之間通過ROS2通信。原作者:zhuk
發(fā)表于 07-13 15:13
,IP地址替換為自己的實際IP地址。ssh root@192.168.31.1922、在X3派中執(zhí)行下面的命令腳本進行系統(tǒng)的更新以及ROS2編譯環(huán)境依賴安裝apt -y update &
發(fā)表于 11-24 15:00
/suitesparse-devel-5.10.1-2.oe2203.riscv64.rpm
安裝 ROS2 humble
packages.list(見附件)中列了現(xiàn)階段已經(jīng)支持的軟件包,可以
發(fā)表于 09-04 03:33
在 VisionFive2 上體驗 ROS2 humble
一、系統(tǒng)準備
參考 在 VisionFive2 上安裝
發(fā)表于 09-04 04:59
在ROS2中運行小烏龜,其實主要就是安裝兩個工具,turtlesim和rqt。A: 安裝turtlesim。輸入【sudo apt update】輸入【sudo apt install
發(fā)表于 11-02 15:21
?10次下載
Window10怎么安裝ROS2,以下的操作都要管理員的權限,我可以提前劇透,我應該應該是沒有安裝上DDS,應該是算安裝好了80%的樣子。
發(fā)表于 02-22 10:12
?863次閱讀
ROS2是從底層構建時便考慮使其適用于商業(yè)用途,它是機器人操作系統(tǒng)現(xiàn)有框架的重構,經(jīng)過優(yōu)化以適用于工業(yè)應用,開發(fā)可在新的應用中進行擴展,如移動機器人、無人機群和自動駕駛汽車。
發(fā)表于 02-28 13:38
?2.1w次閱讀
,循環(huán)發(fā)布任意數(shù)據(jù),在另外一個終端中,如果我們使用reliable模型訂閱同一話題,無法實現(xiàn)數(shù)據(jù)通信,如果修改為同樣的best_effort,才能實現(xiàn)數(shù)據(jù)傳輸。 $ ros2 topic pub
發(fā)表于 11-24 18:03
?829次閱讀
數(shù)據(jù) ROS2: 參與者(DomainParticipant):一個參與者Participant就是一個容器,對應于一個使用DDS的用戶,任何DDS的用戶都必須通過Participant來訪問全局
發(fā)表于 11-27 11:26
?706次閱讀
的一個例程。 和剛才一樣打開兩個終端,這里我們需要source一下ROS里的環(huán)境變量。 該環(huán)境變量我們剛才已經(jīng)設置了過軟連接,所以配置過程中它也會配置ROS2的功能包路徑。 在終端1輸
發(fā)表于 11-28 16:29
?838次閱讀
安裝ROS2功能包 接下來,還有一個很重要的配置,那就是安裝ROS2功能包,我們說TogetherROS是基于ROS2深度優(yōu)化的,很多模塊還是會復用ROS2
發(fā)表于 12-01 16:02
?859次閱讀
評論