1. ROS2环境搭建与工作空间创建

任务目标

在Ubuntu 22.04上安装ROS2 Humble,创建并构建一个ROS2工作空间,最终通过核心命令验证安装与配置正确。

环境准备

  • 操作系统:Ubuntu 22.04 LTS(64位)
  • 已配置网络连接,可访问Ubuntu软件源
  • 系统已安装curl和software-properties-common(如未安装,先执行sudo apt update && sudo apt install -y curl software-properties-common)

安装ROS2 Humble

依次执行以下命令完成ROS2 Humble的安装:

# 1. 设置软件源
sudo add-apt-repository universe
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

# 2. 安装ROS2 Humble桌面版(包含常用工具和可视化工具)
sudo apt update
sudo apt install -y ros-humble-desktop

# 3. 安装编译工具和依赖
sudo apt install -y python3-argcomplete python3-colcon-common-extensions python3-vcstool git

配置环境变量

将ROS2环境变量写入~/.bashrc,使每次打开终端自动加载:

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

创建工作空间并构建

# 创建ROS2工作空间目录结构
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws

# 构建工作空间(当前src为空,仅生成build/install/log目录结构)
colcon build

验证安装

执行以下命令验证ROS2核心功能是否正常:

# 验证环境变量
echo $ROS_DISTRO
# 预期输出:humble

# 验证核心命令可用
ros2 --help
# 预期输出:显示ros2命令的帮助信息

# 验证话题通信(启动一个发布节点,再启动一个订阅节点)
ros2 run demo_nodes_cpp talker &
sleep 2
ros2 run demo_nodes_cpp listener
# 预期输出:listener终端持续显示 "I heard: [Hello World: N]"

当listener节点持续收到talker发布的消息时,说明ROS2通信正常。按Ctrl+C终止节点。

验证工作空间构建

cd ~/ros2_ws
ls install/
# 预期输出:包含 setup.bash、setup.sh 等文件,说明构建成功

# 将工作空间环境变量加入bashrc(可选,便于后续开发)
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc

常见问题

  • 安装时提示无法定位软件包:执行sudo apt update后重试,确认软件源配置正确。
  • ros2命令找不到:确认已执行source /opt/ros/humble/setup.bash,且echo $ROS_DISTRO输出为humble。
  • colcon构建失败:检查是否已安装python3-colcon-common-extensions,并确认在~/ros2_ws目录下执行。