官术网_书友最值得收藏!

2.3 ROS-2基礎

在ROS-1中,用戶代碼將連接到ROS客戶端庫(例如rospy或roscpp),它們將直接與網絡中的其他節點通信;而在ROS-2中,ROS客戶端庫就像一個抽象層,使用其他節點通過DDS實現連接到網絡中進行通信的另一層。ROS-1與ROS-2的簡單對比如圖2.2所示。

圖2.2 ROS-1與ROS-2的簡單對比

如圖2.2所示,在ROS-2中,操作系統層與底層硬件層的通信是通過DDS實現完成的。圖中的DDS組件由相應供應商實現,供應商不同則具體實現不同。

抽象DDS層組件與ROS-2客戶端庫連接,并通過DDS實現幫助用戶連接代碼。通過這樣的分層抽象,用戶無須感知DDS API的存在就可以與操作系統連接。此外,ROS-1和ROS-2的區別還在于ROS-1使用了自定義傳輸協議以及自定義中心發現機制,因此需要使用master,而ROS-2則具有抽象的DDS層,通過該層可以實現序列化、傳輸和發現等功能。

主站蜘蛛池模板: 阜南县| 安阳市| 麦盖提县| 阳泉市| 屏山县| 柳林县| 高密市| 平武县| 宁南县| 屯门区| 犍为县| 乌鲁木齐县| 宜丰县| 高唐县| 安顺市| 应用必备| 襄汾县| 克拉玛依市| 治多县| 余庆县| 枞阳县| 奉化市| 晋城| 新和县| 镇远县| 唐河县| 芦溪县| 商都县| 平原县| 沧源| 那曲县| 徐水县| 中江县| 邯郸县| 汉川市| 抚松县| 吴堡县| 泰州市| 灵山县| 托克逊县| 通州市|