随着机器人操作系统的发展,ROS1(如Noetic)和ROS2(如Humble)并存于许多项目中。对于开发者和研究人员,常常需要在同一台Ubuntu 22.04系统上同时使用两者,例如迁移旧项目或测试新功能。本教程将详细介绍ROS1 Noetic安装和ROS2 Humble安装的兼容方法,让您轻松实现Ubuntu22.04 ROS兼容环境。
确保您的系统是Ubuntu 22.04 LTS(64位),并已更新到最新:
sudo apt update && sudo apt upgrade -y
安装必要工具:
sudo apt install -y curl gnupg lsb-release software-properties-common
ROS1 Noetic是专门为Ubuntu 20.04设计的,但在Ubuntu 22.04上通过官方源仍可完美运行,这也是实现ROS多版本共存的关键一步。
sudo sh -c "echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list"
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo apt updatesudo apt install -y ros-noetic-desktop-full
sudo rosdep initrosdep update
source /opt/ros/noetic/setup.bash
ROS2 Humble是Ubuntu 22.04的原生版本,安装相对简单。
sudo apt update && sudo apt install localessudo locale-gen en_US en_US.UTF-8
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpgsudo sh -c "echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros2.list"
sudo apt updatesudo apt install -y ros-humble-desktop
sudo apt install -y python3-argcomplete
为了避免每次手动source,我们可以在~/.bashrc中设置别名,快速切换ROS版本,这也是实现Ubuntu22.04 ROS兼容的核心技巧。
echo "alias setros1="source /opt/ros/noetic/setup.bash"" >> ~/.bashrcecho "alias setros2="source /opt/ros/humble/setup.bash"" >> ~/.bashrcecho "alias setrosall="source /opt/ros/noetic/setup.bash; source /opt/ros/humble/setup.bash"" >> ~/.bashrcsource ~/.bashrc
之后在终端输入setros1即可切换到ROS1环境,输入setros2切换到ROS2环境。如果某些工作区需要同时使用两个版本的库,可以使用setrosall,但要注意可能存在环境变量冲突,建议分开使用。
setros1roscore
新开终端,运行小乌龟:
setros1rosrun turtlesim turtlesim_node
再开一终端:
setros1rosrun turtlesim turtle_teleop_key
setros2ros2 run turtlesim turtlesim_node
新终端:
setros2ros2 run turtlesim turtle_teleop_key
sudo apt --fix-broken install,并确保Ubuntu 22.04的源已正确添加。setros2,且正确安装了ros-humble-desktop。至此,您已经成功在Ubuntu 22.04上实现了ROS1 Noetic与ROS2 Humble的兼容安装,可以自由地在两个版本间切换,为您的机器人开发提供强大支持。
本文由主机测评网于2026-03-16发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:http://www.vpshk.cn/20260331620.html