質量服務策略QoS
DDS為ROS的通信系統提供了哪些特性呢?我們通過這個通信模型圖來看下。
DDS中的基本結構是Domain,Domain將各個應用程序綁定在一起進行通信,回憶下之前我們配置樹莓派和電腦通信的時候,配置的那個DOMAIN ID,就是對全局數據空間的分組定義,只有處于同一個DOMAIN小組中的節點才能互相通信。這樣可以避免無用數據占用的資源。
DDS中另外一個重要特性就是質量服務策略,QoS。
QoS是一種網絡傳輸策略,應用程序指定所需要的網絡傳輸質量行為,QoS服務實現這種行為要求,盡可能地滿足客戶對通信質量的需求,可以理解為數據提供者和接收者之間的合約。
具體會有哪些策略?比如:
DEADLINE策略,表示通信數據必須要在每次截止時間內完成一次通信;
HISTORY策略,表示針對歷史數據的一個緩存大小;
RELIABILITY策略,表示數據通信的模式,配置成BEST_EFFORT,就是盡力傳輸模式,網絡情況不好的時候,也要保證數據流暢,此時可能會導致數據丟失,配置成RELIABLE,就是可信賴模式,可以在通信中盡量保證圖像的完整性,我們可以根據應用功能場景選擇合適的通信模式;
DURABILITY策略,可以配置針對晚加入的節點,也保證有一定的歷史數據發送過去,可以讓新節點快速適應系統。
所有這些策略在ROS系統中都可以通過類似這樣的結構體配置,如果不配置的話,系統也會使用默認的參數。
舉一個機器人的例子便于大家理解。
比如我們遙控一個無人機航拍,如果網絡情況不好的話,遙控器向無人機發送運動指令的過程,可以用reliable通信模式,保證每一個命令都可以順利發送給無人機,但是可能會有一些延時,無人機傳輸圖像的過程可以用best effort模式,保證視頻的流暢性,但是可能會有掉幀。
如果此時出現一個黑客黑入我們的網絡,也沒有關系,我們可以給ROS2的通信數據進行加密,黑客也沒有辦法直接控制無人機。
DDS的加入,讓ROS2的通信系統煥然一新,多眾多樣的通信配置,可以更好的滿足不同場景下的機器人應用。
-
機器人
+關注
關注
211文章
28646瀏覽量
208431 -
通信
+關注
關注
18文章
6072瀏覽量
136432 -
DDS
+關注
關注
21文章
636瀏覽量
152942 -
ROS
+關注
關注
1文章
280瀏覽量
17100
發布評論請先 登錄
相關推薦
ROS系統是什么?ROS系統主要特點有哪些?創龍RK3568J+Debian的ROS2系統案例
![<b class='flag-5'>ROS</b><b class='flag-5'>系統</b>是什么?<b class='flag-5'>ROS</b><b class='flag-5'>系統</b>主要特點有哪些?創龍RK3568J+Debian的<b class='flag-5'>ROS</b>2<b class='flag-5'>系統</b>案例](https://file1.elecfans.com/web2/M00/B3/B4/wKgZomVoMRSAZqN2AAA9TjrVsHY251.jpg)
ROS讓機器人開發更便捷,基于RK3568J+Debian系統發布!
基于串口的STM32通過rosserial和ROS系統通信的代碼
如何在ROS上使用serial包進行串口通信
RT-Thread實時操作系統與ROS2是怎樣進行通信的
ROS讓機器人開發更便捷,基于RK3568J+Debian系統發布!
最新RX65N微控制器,可以支持ROS 2的DDS
![最新RX65N微控制器,可以支持<b class='flag-5'>ROS</b> 2的<b class='flag-5'>DDS</b>](https://file1.elecfans.com//web2/M00/A7/53/wKgZomUMQ-OAQlIOAAAabx78yA8042.jpg)
ROS與STM32通信
![<b class='flag-5'>ROS</b>與STM32<b class='flag-5'>通信</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
ros1和ros2的通信模型
![<b class='flag-5'>ros</b>1和<b class='flag-5'>ros</b>2的<b class='flag-5'>通信</b>模型](https://file1.elecfans.com/web2/M00/B1/5F/wKgaomVkCzqAAIPEAACmpsQgdgo604.jpg)
評論