当前位置: 首页 > news >正文

ROS 2什么是QoS?

导航

ROS 2 的 QoS(Quality of Service)策略通过多维度组合,实现对通信质量的精准控制。合理配置 QoS 对机器人系统的可靠性、实时性和资源利用至关重要。

本文将按策略维度整理核心策略及应用场景,并给出组合示例。


一、可靠性策略(Reliability Policy)

核心作用:控制消息是否必须送达,解决“数据丢失容忍度”问题。

策略名称 核心逻辑 适用场景举例
Reliable(可靠) 通信层会重传未被接收方确认的消息,直到接收方确认收到,确保消息不丢失 机器人急停指令、设备控制信号、Action 任务反馈
Best Effort(尽力) 通信层仅发送一次消息,不重传、不确认,允许消息丢失,优先保证传输效率 高频传感器数据(如相机图像、激光雷达点云)、实时日志流

二、持久性策略(Durability Policy)

核心作用:控制新订阅者或请求者能否获取其加入前已发送的历史消息,解决“晚加入节点的数据同步”问题。

策略名称 核心逻辑 适用场景举例
Transient Local(本地暂存) 发布方/服务端在本地暂存最新的 N 条消息(默认 1 条),新订阅者加入时主动推送历史消息 机器人初始位姿(AMCL 定位结果)、设备参数配置
Volatile(易失) 仅传输发布时已存在订阅者的消息,新订阅者无法获取加入前的历史消息,不暂存数据 实时运动控制指令、动态传感器流(IMU 角速度)
Transient(全局暂存) 依赖 ROS 2 发现服务(Discovery)暂存消息,支持跨节点/跨主机历史消息同步(较少使用) 分布式系统中需全局共享的静态配置(如地图元数据)

三、历史记录策略(History Policy)

核心作用:控制发布方/服务端暂存历史消息的数量,避免内存占用过多。

策略名称 核心逻辑 适用场景举例
Keep Last(保留最新 N 条) 仅暂存最新 N 条消息(N 可自定义),旧消息自动丢弃 需保留短期历史的高频数据,如最近 10 帧相机图像用于回退
Keep All(保留所有) 暂存所有未被接收的消息(仅在可靠性策略为 Reliable 时生效),高频消息可能导致内存溢出 低频率、关键且需完整追溯的数据,如设备故障日志

说明Depth(队列深度)与 History Policy 配合使用,决定缓存行为。


四、时间控制策略(Time-Based Policies)

核心作用:通过时间阈值限制消息有效期或通信响应时间,避免“过期数据”影响系统逻辑。

策略名称 核心逻辑 适用场景举例
Lifespan(消息生命周期) 设定消息有效时长(如 lifespan(1s)),超过时长的消息即使未送达也会被丢弃 实时性要求高的数据,如 1 秒前的激光雷达数据对当前避障无意义
Deadline(通信截止时间) 设定发布方发送消息的最大间隔或服务/Action响应最大延迟,超时会触发回调提醒 周期性任务监控,如要求传感器每 500ms 至少发 1 次数据,超时报警

五、深度策略(Depth Policy)

核心作用:控制发布方队列缓存消息的最大数量,避免队列溢出。

策略名称 核心逻辑 适用场景举例
Depth(队列深度) 设定发布方本地消息队列最大容量(如 depth(5)),队列满时新消息覆盖旧消息或丢弃 高频低优先级数据,如实时温度采集,缓存 5 条即可

六、策略组合示例

实际开发中,QoS 策略需根据场景组合使用:

应用场景 QoS 配置示例
机器人急停指令 Reliable + Transient Local + Lifespan(2s)
相机实时图像 Best Effort + Volatile + Depth(3)
传感器短期历史缓存 Reliable + Transient Local + Keep Last(10)

注意:不同 DDS 中间件可能对 QoS 支持有差异,实际部署时需结合中间件文档确认。


七、总结

  1. ROS 2 QoS 是多维度策略组合,用于精确控制通信质量。

  2. 核心策略维度:可靠性、持久性、历史记录、时间控制、深度

  3. 实际使用中应根据数据特性、实时性和系统拓扑组合策略。

  4. 配置 QoS 时需注意中间件限制和线程安全(如多线程订阅)。

http://www.rkmt.cn/news/23071.html

相关文章:

  • Nessus Professional 10.10 Auto Installer for macOS Tahoe
  • 2025年木饰面板行业Top10供应商终极评测及选择指南
  • 2025 年调节阀厂家最新推荐榜:衬氟 / 气动 / 电动全类型技术领先企业权威盘点,采购优选指南
  • 2025秋_14
  • Codeforces Round 966 (Div. 3) 题解
  • 探索 PHP-FPM 进程池的最佳配置方案:参数解析、场景适配与问题解决
  • 生活随感:和谐生活,你我共「营」 - tfel
  • 10.17 NOIP 模拟赛 T1. 并非贪心
  • 基于 JuiceFS 构建 AI 推理:多模态复杂 I/O、跨云与多租户支持
  • 【转】[C#] GlobalUsing 的使用
  • C++基本编程1——数位分离问题
  • 存储过程循环替代游标
  • 2025 消防培训学校最新推荐榜:实训实力解析,附选择指南消防考证培训学校推荐
  • JavaScript 中处理日期格式化
  • 2025年在线粘度计厂家推荐排行榜,实验室在线粘度计,工业在线粘度计,高精度在线粘度计公司推荐!
  • 2025年网格川字塑料托盘厂家推荐排行榜,耐用抗压,仓储物流首选!
  • 基于MATLAB的FIR和IIR低通/带通滤波器实现
  • 2025年沸腾制粒机厂家权威推荐榜:沸腾制粒/湿法混合/摇摆制粒机,专业性能与客户口碑深度解析及优质品牌推荐!
  • 2025年柴油发电机组厂家权威推荐榜:静音高效与持久耐用的行业首选!
  • 设备二维码图片下载
  • neural network中的tensor是什么?
  • 2025年工厂维保,工厂机电维修,工厂应急维修,工厂运维服务厂家推荐排行榜,专业高效与全方位保障之选!
  • 2025/10/17
  • 有没有人坐11.1号晚上9点的火车返回衡水,大家要一起走么
  • Cursor国内用户无法使用模型(Model not avilable)解决方案
  • 2025年10月超声波清洗机厂家推荐:榜单透视与选购要点
  • 2025年混合机厂家推荐排行榜,槽型/卧式槽型/双螺旋锥形/螺杆锥形/高速/立式高速/方锥/方锥型/螺带/卧式螺带/V型/双锥/一维/一维运动/二维/二维运动/三维运动/三维混合机公司推荐
  • 2025年网络推广/网络营销/网络营销推广服务商权威推荐榜单,专业策略与高效转化口碑之选!
  • Avaloni11开发笔记
  • 题解:P12550 [UOI 2025] Reversal ABC