ROS学习(1)——ROS1和ROS2的区别

        因为机器人是一个系统工程,它包括了机械臂结构,电子电路,驱动程序,通信框架,组装集成,调试和各种感知决策算法等方面,任何一个人甚至是一个公司都不可能完成机器人系统的研发工作 。但是我们又希望自己能造出一个机器人跑一跑,验证一下自己的算法,所以我们就需要一个软件平台能够把机器人的各个部件做一个集成,这个平台就是ROS。那么至于机器人的每个部件(摄像头,电机等)就交给专业的人去做。

        最开始出现的是ROS1,是2007年机器人公司Willow Garage和斯坦福人工智能实验室合作开发的,每年都在Ubuntuxx.04版本发布一个月之后的五月份发布新版本。比较有意思的是ROS的发布日期刚好是在5月23号,这一天是世界乌龟日(World Turtle Day),用过ros的小伙伴应该都了解ros的每个版本的海报都是一只别具特色的小乌龟,ros的官方仿真教程turtlesim就是一只小乌龟在跑啊跑(会心一笑)。

       OS

       在ROSCon2014上,ROS正式发布了新一代的ROS设计架构,2018年正式推出ROS2的第一个正式版本。可以说ROS2是ROS1脱胎换骨之后的样子。那么我们已经有ROS1了,为什么还要发布ROS2呢,把ROS1一直改进改进不就好了么?接下来我们就来了解一下为什么一定要推出ROS2,以及ROS1和ROS2的区别在哪里。

ROS1的介绍

ROS1采用分布式框架,其架构可以分为三个层次:基于Linux系统的OS层,实现ROS核心通信机制以及众多机器人开发库的中间层;在ROS Master的管理下保证功能节点的正常运行的应用层。

ROS1的通信机制是每个节点通过ROS Master发送和接收话题消息。

 

 但是ROS1存在以下几个问题:

  • 无实时性(real-time)
  • 嵌入式设备不友好
  • 对于网络通信的重依赖(需要高带宽且稳定的网络连接)
  • 多用于学术应用
  •  原生的 ROS 仅支持单机器人
  •  超高的灵活性带来的不规范的编程模式

总的来说,ROS1比较适用于单个机器人,很多方面存在一些限制,对于多机器人系统,跨平台,实时性强,网络安全要求高,产品化的场景下(如自动驾驶汽车,多机械臂协同),ROS1就不能很好的胜任了。

 ROS2

ROS2和ROS1的系统框架对比如下图所示,最大的区别就在于ROS2没有Master了。

ROS1中Master相当于一个团队的核心成员,如果没有了Master或者是Master出现了问题,就会无法实现节点中的通信,这样这个系统很不稳定。所以采用类似去中心化的方式,ROS2中就没有了Master节点,ROS2中采用discovery——自发现机制,让节点和节点之间无需通过Master,互相找到彼此,从而建立稳定的通信连接。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROS1和ROS2之间的核心概念相似,因此在ROS1中的经验越多,学习ROS2所花的时间就越少。然而,ROS1和ROS2在工业生产方面存在一些区别ROS1已经被广泛应用于教育和科研领域,但在工业生产中存在一些限制。而ROS2致力于解决这些限制,并提供更可靠、灵活和适用于工业环境的解决方案。 关于ROS1和ROS2如何选择的文章非常多,因为它们在很多方面都有不同的特点。但由于时间限制,我无法一一列举所有区别。总的来说,ROS1是成熟而稳定的系统,而ROS2尚未完全成熟,但它在逐渐发展和改进中。因此,选择ROS1还是ROS2取决于具体的应用需求和项目要求。如果您的项目需要一个经过验证的、稳定的系统,那么ROS1可能是一个不错的选择。如果您对新技术和功能有兴趣,并且愿意承担一些不成熟和可能的风险,那么ROS2可能是一个更好的选择。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [ROS1和ROS2如何选?(机器人操作系统2021)](https://blog.csdn.net/ZhangRelay/article/details/119878691)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值