ROS与ROS2比较

ROS2新特性

  1. ROS2全面支持三种平台

ØUbuntu 16.04(Xenial)

ØMac OS X 10.12(Sierra)

ØWindows 10
2.实现了分布式架构

ROS 1主要构建于Linux系统之上,主要支持Ubuntu。而ROS 2采用全新的架构,底层基于DDS(Data Distribution Service)通信机制,支持实时性、嵌入式、分布式、多操作系统。ROS 2支持的系统包括Linux、windows、Mac、RTOS,甚至是单片机等没有操作系统的裸机。
 
ROS 1的通讯系统基于TCPROS/UDPROS,强依赖于master节点的处理,而ROS 2的通讯系统是基于DDS,进而取消了master,同时在ROS2内部提供了DDS的抽象层实现,有了这个抽象层,用户就可以不去关注底层的DDS使用了哪个商家的API。
ROS 2目前已经在Ubuntu Xenial,OS X El Capitan以及Windows 10上进行了CI测试和支持

(DDS详细介绍:https://www.ncnynl.com/archives/201708/1939.html)
3.使用新版本的编程语言

ØROS 2广泛使用C ++ 11。而ROS 1的核心主要使用C ++ 03,在其API并没有使用C++ 11功能。

ØROS 2的Python版本至少为3.5,ROS 1的Python版本为2.7
4.使用了新的编译系统AmentROSCatkin
5.ROS1可以通过rosbridgeROS 2通信

 

 

ROS应用的缺陷

 

相比ROS1,ROS2带来了几个好处。一个好处是托管启动,你可以指定节点启动顺序。另一个好处是数据分发服务(DDS)通信协议,它可以以零拷贝的方式传递消息,节省了CPU和内存资源。在开发方面,他们花了更多的精力来增加测试覆盖率,提供更多更好理解的文档,以及更多持续集成,以便实现软件的认证。

 

说了那么多ROS2的优点,但是在版本稳定性,和社区支持程度(尤其是相关程序包,如MoveIt及相关教程)来讲还是不如ROS,对于独立开发者或者科研人员来讲,个人觉得还是先从ROS基础进行原型开发,开发成熟之后再考虑代码移植(ROS->ROS2)或者平台移植(Linux->Windows)问题。

  • 10
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值