前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS2在自动驾驶系统中的应用

ROS2在自动驾驶系统中的应用

原创
作者头像
村子里的设计师
发布2023-03-21 13:08:25
7950
发布2023-03-21 13:08:25
举报
文章被收录于专栏:程序设计a

ROS(Robot operating system)是一个通用的机器人操作系统,自动驾驶是其中一个应用领域。ROS1已经比较古老了,自动驾驶公司中提到的ROS通常指ROS2,它采用的是DDS架构。我所在的公司虽然未直接使用ROS2,但是自研的自动驾驶系统采用的也是DDS架构,算是在抽象的ROS2架构之上研发。

DDS(data distribution service)是一种以数据为中心的分布式通信协议。DDS采用的通信方式是多对多的单向数据交互,通信模型为分布式结构,没有中心节点,任意两个节点之间可以相互通信。概括DDS的工作模式,Publisher将数据发布到某个Topic,Subscriber从某个Topic订阅到数据。Publisher和Subscriber可能存在于不同的节点中,一个节点失效不会导致另一个节点崩溃。

RTPS协议(real-time publish subscribe) 是DDS在网络传输层的数据通信商使用到的协议,用于发布者和订阅者之间通过 UDP 等不可靠传输进行通信。这个协议的主要特性是:

  • 为实时应用程序配置的尽力而为和可靠的发布/订阅通信策略
  • 即插即用连接,以便网络的其他成员自动发现新应用程序
  • 模块化和可扩展性,支持网络中复杂和简单设备的持续增长
  • 可配置的网络行为和兼容的传输层:为每个部署选择最佳协议和系统 I/O 通道组合
  • 两个 API 层:一个专注于可用性的高级发布者/订阅者和一个提供对 RTPS 协议内部工作的细粒度访问的低级编写器-阅读器。

参考

https://www.zhihu.com/question/504713458

https://zhuanlan.zhihu.com/p/431734731

https://fiware-tutorials.letsfiware.jp/Fast-RTPS-Micro-RTPS/

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档