DDS在ROS2中的應用
DDS在ROS2系統(tǒng)中的位置至關(guān)重要,所有上層建設都建立在DDS之上。在這個ROS2的架構(gòu)圖中,藍色和紅色部分就是DDS。
剛才我們也提到,DDS是一種通信的標準,就像4G、5G一樣,既然是標準,那大家都可以按照這個標準來實現(xiàn)對應的功能,所以華為、高通都有很多5G的技術(shù)專利,DDS也是一樣,能夠按照DDS標準實現(xiàn)的通信系統(tǒng)很多,這里每一個紅色模塊,就是某一企業(yè)或組織實現(xiàn)的一種DDS系統(tǒng)。
既然可選用的DDS這么多,那我們該用哪一個呢?具體而言,他們肯定都符合基本標準,但還是會有性能上的差別,ROS2的原則就是盡量兼容,讓用戶根據(jù)使用場景選擇,比如個人開發(fā),我們選擇一個開源版本的DDS就行,如果是工業(yè)應用,那可能得選擇一個商業(yè)授權(quán)的版本了。
為了實現(xiàn)對多個DDS的兼容,ROS設計了一個Middleware中間件,也就是一個統(tǒng)一的標準,不管我們用那個DDS,保證上層編程使用的函數(shù)接口都是一樣的。此時兼容性的問題就轉(zhuǎn)移給了DDS廠商,如果他們想讓自己的DDS系統(tǒng)進入ROS生態(tài),就得按照ROS的接口標準,開發(fā)一個驅(qū)動,也就是這個部分。
無論如何,ROS的宗旨不變,要提高軟件代碼的復用性,下邊DDS任你邊,上邊的軟件沒影響。
在ROS的四大組成部分中,由于DDS的加入,大大提高了分布式通信系統(tǒng)的綜合能力,這樣我們在開發(fā)機器人的過程中,就不需要糾結(jié)通信的問題,可以把更多時間放在其他部分的應用開發(fā)上。
-
機器人
+關(guān)注
關(guān)注
213文章
29537瀏覽量
211761 -
通信
+關(guān)注
關(guān)注
18文章
6182瀏覽量
137427 -
DDS
+關(guān)注
關(guān)注
22文章
671瀏覽量
154107 -
ROS
+關(guān)注
關(guān)注
1文章
285瀏覽量
17591
發(fā)布評論請先 登錄
系統(tǒng)鏡像Ubuntu_ROS2中ROS2是什么意思,帶有ROS2開發(fā)環(huán)境嗎?
如何在ROS2中運行小烏龜呢
RT-Thread實時操作系統(tǒng)與ROS2是怎樣進行通信的
基于無線wifi網(wǎng)絡的X3派和PC虛擬機通過ROS2實現(xiàn)跨設備通信
教你一步步創(chuàng)建自己的ROS2工作空間應用
【昉·星光 2 高性能RISC-V單板計算機體驗】四:在 VisionFive2 上安裝 ROS2 humble
【昉·星光 2 高性能RISC-V單板計算機體驗】五:在 VisionFive2 上體驗 ROS2 humble
Linux嵌入式開發(fā)筆記(六)在ROS2中運行小烏龜實例

了解ROS2是什么
ros1和ros2的通信模型

ROS2中自帶例程測試

在TogetherROS中如何安裝ROS2功能包

評論