ROS2-Beginner:CLI tools-1、环境配置
1、环境配置
目标:本教程告诉读者怎样准备ROS2环境
背景:ROS2依赖于使用shell环境组合工作空间的概念,“工作区”是一个ROS术语,表示您使用ROS 2进行开发的系统上的位置。ROS 2的核心工作空间称为底层(underlay)。后续的局部工作空间称为覆盖(overlays)。当使用ROS2进行开发时,通常会同时有几个工作区处于活动状态。
组合工作区使得针对不同版本的ROS2或针对不同的包集进行开发变得更容易。它还允许在同一台计算机上安装几个ROS 2发行版(或“发行版”,例如Dashing和Eloquent),并在它们之间切换。
这是通过每次打开一个新的shell时寻找安装文件来实现的,或者通过将源命令添加到shell启动脚本中一次来实现的。如果没有源设置文件,您将无法访问ROS 2命令,也无法找到或使用ROS 2包。换句话说,你将无法使用ROS 2。
如果从源代码安装,您也将无法使用sudo-apt-install-ros-<distro>-<package>命令(在初级教程中经常使用)。
任务
1、source setup文件
您需要在打开的每个新shell上运行此命令才能访问ROS 2命令,如下所示:
# Replace ".bash" with your shell if you're not using bash # Possible values are: setup.bash, setup.sh, setup.zsh source /opt/ros/humble/setup.bash 视自己安装的位置而定
2、将setup文件添加到启动脚本
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
3、查看环境变量
终端输入 printenv | grep -i ROS ROS_VERSION=2 ROS_PYTHON_VERSION=3 ROS_DISTRO=humble
3.1 ROS_DOMAIN_ID变量
查看有关ROS域ID的文章,可见domain ID
一旦确定了ROS2节点组的唯一整数,就可以使用以下命令设置环境变量:
export ROS_DOMAIN_ID=<your_domain_id>
要在shell会话之间保持此设置,可以将命令添加到shell启动脚本中:
echo "export ROS_DOMAIN_ID=<your_domain_id>" >> ~/.bashrc
3.2 ROS_LOCALHOST_ONLY变量
默认请款下,ROS2的通信是不限于localhost的。ROS_LOCALHOST_ONLY环境变量允许你限制ROS2通信只在局部localhost下。这意味着你的ROS2系统,话题,服务,以及action在局域网中的其他电脑不可见。在某些设置中使用ROS_LOCALHOST_ONLY是有帮助的。例如教室,其中多个机器人可能发布到同一主题,导致奇怪的行为。可以使用以下命令设置环境变量:
export ROS_LOCALHOST_ONLY=1
长期有效:
echo "export ROS_LOCALHOST_ONLY=1" >> ~/.bashrc
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】