当前位置: 首页 > 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服务质量
支持节点生命周期管理
高效的进程间通信

相关文章:

  • springboot引用插件jhipster的yml配置跨域问题
  • mysql which is not in SELECT list; this is incompatible with DISTINCT解决方案
  • Windows系统搭建Appium 2 和 Appium Inspector 环境
  • SpringBoot JprotoBuf序列化与反序列化的实现
  • unity学习笔记18
  • docker-compose脚本编写及常用命令
  • 【JavaScript】3.2 JavaScript性能优化
  • 【Azure 架构师学习笔记】- Azure Databricks (1) - 环境搭建
  • 011 OpenCV warpAffine
  • 如何在vs2017及以前版本(vs2010、vs2015)上添加 添加类型库中的MFC类
  • MySQL的安装步骤教程以及基本操作--详细讲解
  • 全微分方程@曲线积分的基本定理(公式)
  • 做一件荒谬的事:用AI推理下一次双色球结果 v0.1
  • Echarts大屏可视化_04 横向柱状图模块的引入和开发
  • 修改element的抽屉<el-drawer的宽度
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • Android 控件背景颜色处理
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • Fundebug计费标准解释:事件数是如何定义的?
  • js中的正则表达式入门
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • Spring-boot 启动时碰到的错误
  • unity如何实现一个固定宽度的orthagraphic相机
  • 从伪并行的 Python 多线程说起
  • 工作手记之html2canvas使用概述
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 你不可错过的前端面试题(一)
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 推荐一个React的管理后台框架
  • 一道面试题引发的“血案”
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • postgresql行列转换函数
  • Python 之网络式编程
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​Spring Boot 分片上传文件
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • !!java web学习笔记(一到五)
  • (4)(4.6) Triducer
  • (C语言)fgets与fputs函数详解
  • (备忘)Java Map 遍历
  • (补)B+树一些思想
  • (附源码)ssm考试题库管理系统 毕业设计 069043
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • ******之网络***——物理***
  • ... 是什么 ?... 有什么用处?
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .Net 高效开发之不可错过的实用工具
  • .Net 应用中使用dot trace进行性能诊断
  • .Net的C#语言取月份数值对应的MonthName值
  • .net反混淆脱壳工具de4dot的使用