当前位置:首页 > 系统教程 > 正文

Ubuntu系统安装ROS/ROS2与Gazebo完整教程(适用于Ubuntu 20.04和22.04)

Ubuntu系统安装ROS/ROS2与Gazebo完整教程(适用于Ubuntu 20.04和22.04)

欢迎阅读本教程,本文将详细指导您在Ubuntu系统上安装ROS(Robot Operating System)和ROS2,以及Gazebo仿真环境。无论您是机器人开发初学者还是经验丰富的工程师,本教程都将帮助您快速搭建开发环境。本教程适用于Ubuntu 20.04和Ubuntu 22.04版本。

一、前言:为什么选择ROS/ROS2和Gazebo?

ROS(机器人操作系统)是一个灵活的框架,用于编写机器人软件。ROS2是ROS的下一代版本,提供了更好的实时性和分布式系统支持。Gazebo是一个强大的机器人仿真工具,与ROS/ROS2无缝集成,允许您在虚拟环境中测试机器人算法。完成ROS安装ROS2安装后,您将能够利用Gazebo仿真进行机器人开发。

二、系统要求与准备

在开始安装之前,请确保您的系统是Ubuntu 20.04(Focal Fossa)或Ubuntu 22.04(Jammy Jellyfish)。本Ubuntu教程将覆盖这两个版本。打开终端,更新系统包列表:

    sudo apt updatesudo apt upgrade  

确保网络连接稳定,以便下载必要的软件包。

三、安装ROS(适用于Ubuntu 20.04)

对于Ubuntu 20.04,推荐安装ROS Noetic Ninjemys。以下是步骤:

  1. 设置软件源:sudo sh -c "echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list"
  2. 添加密钥:sudo apt-key adv --keyserver "hkp://keyserver.ubuntu.com:80" --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
  3. 更新包列表:sudo apt update
  4. 安装ROS桌面完整版:sudo apt install ros-noetic-desktop-full
  5. 初始化rosdep:sudo rosdep initrosdep update
  6. 设置环境变量:echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrcsource ~/.bashrc

完成上述步骤后,ROS安装基本完成。您可以通过运行roscore来验证。

四、安装ROS2(适用于Ubuntu 22.04)

对于Ubuntu 22.04,推荐安装ROS2 Humble Hawksbill。以下是步骤:

  1. 设置语言环境:sudo apt update && sudo apt install localessudo locale-gen en_US en_US.UTF-8sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8export LANG=en_US.UTF-8
  2. 添加ROS2软件源:sudo apt install software-properties-commonsudo add-apt-repository universesudo apt update && sudo apt install curl -ysudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
  3. 添加仓库到源列表:echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
  4. 更新包列表并安装ROS2:sudo apt updatesudo apt upgradesudo apt install ros-humble-desktop
  5. 设置环境变量:source /opt/ros/humble/setup.bashecho "source /opt/ros/humble/setup.bash" >> ~/.bashrc

现在,ROS2安装完成。您可以通过运行ros2 run demo_nodes_cpp talker来测试。

五、安装Gazebo

Gazebo通常随ROS桌面完整版一起安装,但如果您需要单独安装或更新,可以按照以下步骤进行。Gazebo仿真环境是机器人开发的关键工具。

Ubuntu系统安装ROS/ROS2与Gazebo完整教程(适用于Ubuntu 20.04和22.04) ROS安装  ROS2安装 Gazebo仿真 Ubuntu教程 第1张
  1. 对于ROS Noetic(Ubuntu 20.04),Gazebo版本为11。安装:sudo apt install gazebo11
  2. 对于ROS2 Humble(Ubuntu 22.04),Gazebo版本为Fortress。安装:sudo apt install gazebo-fortress
  3. 您也可以安装Gazebo的ROS集成包:sudo apt install ros-noetic-gazebo-ros-pkgs # 对于ROS Noeticsudo apt install ros-humble-gazebo-ros-pkgs # 对于ROS2 Humble

安装完成后,启动Gazebo以验证:gazebo

六、验证安装与测试

为了确保一切正常,我们可以运行一个简单的测试。打开终端,对于ROS,运行:

    roscore &   # 启动ROS核心rosrun turtlesim turtlesim_node   # 启动乌龟仿真  

对于ROS2,运行:

    ros2 run demo_nodes_cpp talker &   # 发布消息ros2 run demo_nodes_py listener    # 订阅消息  

在Gazebo中,您可以加载示例世界进行Gazebo仿真测试。

七、常见问题与解决

1. 软件源错误:确保使用正确的Ubuntu版本代号。Ubuntu 20.04是focal,22.04是jammy。

2. 密钥添加失败:尝试使用不同的密钥服务器。

3. 环境变量未生效:重启终端或运行source ~/.bashrc

4. Gazebo无法启动:检查显卡驱动,或尝试使用软件渲染:gazebo --verbose

八、结语

通过本Ubuntu教程,您应该已经成功在Ubuntu 20.04或22.04上完成了ROS安装ROS2安装和Gazebo的安装。现在,您可以开始探索机器人开发的世界,利用Gazebo仿真进行算法测试。如有疑问,请参考官方文档或社区论坛。