ros2学习之教程-入门: CLI Tools(命令行工具)配置环境

文章目录

① 背景

ROS 2依赖于使用shell环境组合工作空间的概念。“工作区”是一个ROS术语,表示您在系统中使用ROS 2开发的位置。核心ROS 2工作区称为底层。后续的本地工作区称为覆盖。在使用ROS 2开发时,通常会同时激活多个工作区。
工作去通过setup.bash 进行设置和切换,跟ros1 一样的操作 只是自己的工作空间路径变了,不是devel变成install

② 前提

确保已经安装了ros2,如果没有参考我的博客:https://blog.csdn.net/weixin_36628778/article/details/105170234

③ 任务

Ⅰsource setup 文件

可以每次使用的时候source setup.bash

source /opt/ros/<distro>/setup.bash

比如现在用的ROS2 是dashing

source /opt/ros/dashing/setup.bash

Ⅱ 在shell启动文件中加命令

如果嫌上面每次开一个终端,都要输入命令比较麻烦的话,可以吧上面的命令加到启动脚本里,shell 的是.bashrc,zsh 是.zshrc

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

我们需要设置

  • bash
echo "source /opt/ros/dashing/setup.bash" >> ~/.bashrc
  • zsh
echo "source /opt/ros/dashing/setup.zsh" >> ~/.zshrc

Ⅲ 检测环境变量

跟ROS1 的操作一样的

printenv | grep  ROS

这个样子
ros2学习之教程-入门: CLI Tools(命令行工具)配置环境

ROS_DOMAIN_ID 变量

这个是多机通讯的变量,相当于交换机的vlanid ,当你局域网想区分出多个ROS集群的时候,每个ROS2集群之间不想相互干扰,需要设置这个ID 选择一个整数

对于eProsima Fast RTPS上的默认RMW,从ROS 2 Eloquent开始,此整数必须介于0-232之间,才能成功启动ROS 2守护守护进程。

如果通讯不了的话,可以通过这个网站来排查:https://index.ros.org/doc/ros2/Troubleshooting/

命令:

export ROS_DOMAIN_ID=<your_domain_id>

或者添加到启动脚本

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

④ 总结

使用之前必须要配置使用的环境,两种方式,一是每次打开shell,搞一次,二是把命令写道启动文件中.bashrc 中,墙裂推荐第二种

上一篇:SqlServer_存储过程


下一篇:使用python结合redis 开发ros2节点