ros2官方教程学习笔记配置ROS 2环境篇

安装好ros2过后开始官方教程,这里记录官网教程的学习笔记,具体详细可以查看官网链接

背景

不管ros1还是ros2都是通过source完成特定版本运行环境的配置。在运行ros之前需要source相应的配置脚本,如果不source就没办法运行,虽然看上去有点麻烦,但是这样有个好处就是可以在ros的多个版本之间进行比较方便的切换

前提条件

前提条件只需要安装ros2,安装教程见我上一篇博客

任务

我们以eloquent+bash为例其他版本类似

source安装文件

我们打开一个终端通过

source /opt/ros/eloquent/setup.bash

就可以将ros2的eloquent版本的配置引入终端了,换句话说我们就可以正常使用ros2了

将配置脚本添加到Shell的启动脚本中

对于ros重度使用患者,我们不希望每次都运行这个命令,最方便的就是加入到shell的启动脚本中,通常加入到.bashrc中,这样每次打开一个终端都会自动自动执行source这个命令

echo "source /opt/ros/eloquent/setup.bash" >> ~/.bashrc

注意记得把.bashrc中关于ros1的全部注释掉,否则每次打开终端就报下面的警告

ROS_DISTRO was set to 'melodic' before. Please make sure that the environment does not mix paths from different distributions.

检查环境变量

新打开一个终端,执行下面命令查看当前环境的环境变量

env | grep ROS

如果有下面这些值就证明当前环境OK了

ROS_DISTRO=eloquent
ROS_LOCALHOST_ONLY=0
ROS_PYTHON_VERSION=3
ROS_VERSION=2

ROS_DOMAIN_ID变量

这一步操作针对多台电脑上运行ROS2的用户,如果没有这个需求的用户可以跳过。
如果进行组网需要多台电脑一起运行ros2需要将每台电脑设置在不同的域,这一点和ros1的ROS_MASTER_URI 差不多,只不过ros2没有master的概念了。
每台电脑需要设置一个独一无二的整数变量ROS_DOMAIN_ID,至于变量设置为多少自己随意

export ROS_DOMAIN_ID=<your_domain_id>

如果一直要保留这个设置可以考虑写入.bashrc

echo "export ROS_DOMAIN_ID=<your_domain_id>" >> ~/.bashrc

总结

在使用之前需要source,重度使用患者可以考虑加入.bashrc

发布了63 篇原创文章 · 获赞 50 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_38649880/article/details/104388239