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

[ROS2] --- ROS diff ROS2

1 ROS存在的问题

  • 一旦Ros Master主节点挂掉后,就会造成整个系统通信的异常,
  • 通信基于TCP实现,实时性差、系统开销大
  • 对Python3支持不友好,需要重新编译
  • 消息机制不兼容
  • 没有加密机制、安全性不高

2 ROS and ROS2架构对比

ROS和ROS2架构如下图所示:
在这里插入图片描述

2.1 OS层

从原来的只支持linux平台变成了支持windows、mac甚至是嵌入式RTOS平台。

2.2 MiddleWare中间件层

中间层ROS2到底相对于ROS做了哪些优化呢?

  • 去中心化master,ROS和ROS2中间件不同之处在于,ROS2取消了master节点。
    去中心化后,各个节点之间可以通过DDS的节点相互发现,各个节点都是平等的,且可以1对1、1对n、n对n进行互相通信。
  • 不造通信的轮子,通信直接更换为DDS进行实现
    采用DDS通信,使得ROS2的实时性、可靠性和连续性上都有了增强。

2.3 应用层

对于应用层来说ROS2也做了很大的改进,上面那张图没有体现出来。

ROS2进行改进有:

  • Python2到Python3的支持
  • 编译系统的改进(catkin到ament)
  • C++标准更新到c++11
  • 可以使用相同 API 的进程间和进程内通信

3 ROS2新概念例举

可用Python编写的Launch文件
多机器人协同通信支持
支持安全加密通信
同一个进程支持多个节点、
支持Qos服务质量
支持节点生命周期管理
高效的进程间通信

相关文章:

  • Python 3 使用 write()、writelines() 函数写入文件
  • SQL Server对象类型(8)——4.8.约束(Constraint)
  • 个人硬件测试用例入门设计
  • 跟我学c++高级篇——动态反射之二动态列表
  • python动态圣诞下雪图
  • C-语言每日刷题
  • MySQL基础『数据类型』
  • echarts 地图
  • 微信扫码登录修改二维码的样式
  • git的安装及ssh配置(Linux)
  • Linux中top命令输出日志分析?
  • Kubernetes学习笔记-Part.01 Kubernets与docker
  • 如何使用群晖管家结合内网穿透实现公网远程访问本地黑群晖
  • Docker快速入门(docker加速,镜像,容器,数据卷常见命令操作整理)
  • 用C++语言编写的图书馆系统代码,包括图书录入、查询、插入、修改、删除和添加功能
  • RNN:文本生成
  • DAPP开发【02】Remix使用
  • Python----练习:使用面向对象实现报名系统开发
  • The template root requires exactly one element
  • 世微AP5125 DC-DC降压恒流 LED车灯电源驱动IC SOT23-6
  • 金正恩观摩朝鲜人民军各兵种战术综合训练
  • 中国女足将于5月17日至6月2日赴美国集训并参加邀请赛
  • 扶桑谈|从石破茂“越菲行”看日本周边外交布局战略新动向
  • 香港暂停进口美国北达科他州一地区禽肉及禽类产品
  • 新城市志|上海再攻坚,营商环境没有最好只有更好
  • 名帅大挪移提前开启,意属皇马的阿隆索会是齐达内第二吗