ROS2在ROS1 的基础的改进点

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
TODO:写完再整理


前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

开发管理相关博客专栏:
https://blog.csdn.net/qq_35635374/article/details/138258301

开发经验及方法博客专栏:
https://blog.csdn.net/qq_35635374/article/details/138256324

嵌入式系统平台硬软件底层开发相关博客专栏:
https://blog.csdn.net/qq_35635374/article/details/138229695

机器人导航系统架构及业务模块组合策略的相关博客专栏:
https://blog.csdn.net/qq_35635374/article/details/138202210

运动学与动力学基础知识相关博客专栏:
https://blog.csdn.net/qq_35635374/article/details/138201806

机器人传感器及感知相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138507260

机器人定位相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138199360

机器人地图建立相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138199063

机器人动作策略规划相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138175048

机器人全局路径规划相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138174918

机器人局部轨迹规划相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138174730

机器人轨迹跟踪控制相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138168913

本文先对ROS2在ROS1 的基础的改进点做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、为什么要推出ROS2【重构ROS1】

ROS设计了一整套通信机制(话题、服务、参数、动作)
在这里插入图片描述

随着ROS不断的添加新功能,ROS变得越来越臃肿,祖传代码也越来越多。ROS开发人员发现在原有的ROS架构上修修补补十分消耗头发,ROS官方也重新设计制作了ROS2。

.
.

二、ROS1存在的问题

1、主节点不稳定就会造成整个系统通信的异常
2、通信基于TCP实现,实时性差、系统开销大
3、对Python3支持不友好,需要重新编译
4、消息机制不兼容
5、没有加密机制、安全性不高

.
.

三、ROS1与ROS2架构对比

在这里插入图片描述

.
.

四、ROS2新概念例举

1、可用Python编写的Launch文件
2、多机器人协同通信支持
3、支持安全加密通信
4、同一个进程支持多个节点
5、使用ament进行包管理
6、支持Qos服务质量
7、支持节点生命周期管理
8、高效的进程间通信

.
.

五、ROS安装版本(foxy–ubuntu 20.04)

1、ROS安装方式

(1)快速安装
wget http://fishros.com/install -O fishros && bash fishros

(2)手动安装
参考教程
https://fishros.com/d2lros2/#/chapt2/2.3ROS2的安装

注意:ROS1和ROS2不能混装

.
.

六、一些基本的操作

1、学会通过命令行安装软件和ROS2相关的包

几乎和ROS1的方法是一致的

.

2、启动一个节点

source install/setup.bash
ros2 run <package_name> <executable_name>
ros2 run 包名字 可执行文件名字

.

3、Colcon编译器

ROS2默认是没有安装colcon的吗,手动安装指令

sudo apt-get install python3-colcon-common-extensions

编译工程

colcon build

.
.

4、ROS2的launch文件改进

ROS2的launch文件有三种格式,python、xml、yaml。其中ROS2官方推荐的时python方式编写launch文件。 原因在于,相较于XML和YAML,Python是一个编程语言,更加的灵活,我们可以利用Python的很多库来做一些其他工作(比如创建一些初始化的目录等)


参考资料

学习文档
fishros.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

盒子君~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值