Ubuntu安装ROS2 Humble图文教程(含rosdep配置)
Ubuntu安装ROS2 Humble图文教程(含rosdep配置)
ROS(机器人操作系统)是一个开源的元操作系统,为机器人应用提供了硬件抽象、底层设备控制、常用函数实现、进程间消息传递以及包管理等服务。ROS2作为ROS1的继任者,在保持核心功能的基础上进行了诸多改进,如取消了Master中央节点,采用DDS中间件替代自定义中间件,并使用colcon作为构建系统。
本文将详细介绍在Ubuntu系统上安装ROS2 Humble的步骤,包括两种安装方法(小鱼ROS一键安装和官方Debian包安装)、rosdep配置以及测试步骤。
1. ROS2安装
准备
建议准备一个干净、换好源的Ubuntu 20.04以上的虚拟机(建议使用清华源),本教程以Ubuntu 22.04为例。
查看Ubuntu版本:
lsb_release -a
根据Ubuntu版本选择对应的ROS2版本。对于Ubuntu 22.04,对应的ROS2版本为Humble。
方法一:使用小鱼ROS一键安装(推荐)
要使用小鱼的一键安装系列,需要下载一个鱼香大佬写的脚本,然后执行这个脚本,进行ROS的安装与环境的配置。
下载脚本并执行:
wget http://fishros.com/install -O fishros && . fishros
按照提示选择ROS安装,选择Humble版本,选择Desktop版(包含ROS、RViz、示例和教程),然后等待安装完成。
方法二:使用官方教程(Debian包)
这与小鱼的脚本本质上相似,但小鱼的脚本已经帮你处理了环境依赖、版本选择和网络问题。
设置locale
确保本地语言支持UTF-8:
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
设置源
启用Universe源:
sudo apt install software-properties-common
sudo add-apt-repository universe
添加ROS2 GPG key:
sudo apt update && sudo apt install curl gnupg2 -y
sudo curl -sSL https://gitee.com/tyx6/rosdistro/raw/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
为软件源添加ROS2 repository:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
安装
安装ROS2 Desktop版:
sudo apt update && sudo apt upgrade
sudo apt install ros-humble-desktop
设置环境
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc #使环境生效
2. 配置rosdep(可选)
rosdep用于管理ROS包的系统依赖项,有些功能包源码编译需要rosdep来安装这些系统依赖项。
方法一:使用小鱼ROS一键安装(推荐)
下载脚本并执行:
wget http://fishros.com/install -O fishros && . fishros
选择配置rosdep,安装完成后运行:
rosdepc update
方法二:通过修改文件
安装依赖:
sudo apt install python3-rosdep
自动修改:
wget https://gitee.com/tyx6/mytools/raw/main/ros/Mrosdep.py
sudo python3 Mrosdep.py
手动修改:
修改4个文件,将地址https://raw.githubusercontent.com/…改为https://gitee.com/tyx6/rosdistro/raw/master/:
sudo gedit /usr/lib/python3/dist-packages/rosdep2/sources_list.py
sudo gedit /usr/lib/python3/dist-packages/rosdistro/__init__.py
sudo gedit /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py
sudo gedit /usr/lib/python3/dist-packages/rosdep2/rep3.py
开始配置:
sudo rosdep init
rosdep update
3. 测试
在一个终端中,输入命令:
ros2 run demo_nodes_cpp talker
在另一个终端中,输入命令:
ros2 run demo_nodes_py listener
运行结果如下图所示:
参考资料
- ROS Documentation
- Ubuntu (Debian packages) — ROS 2 Documentation: Humble documentation
- rosdep是什么?怎么用 | 鱼香ROS
- 小鱼的一键安装系列 | 鱼香ROS
- Ubuntu 22.04 LTS安装ROS2 (ros-humble-desktop)-CSDN博客
注意:本文发布于2024年8月,部分内容可能已经过时。在实际操作时,请注意检查ROS2的最新版本支持情况和相关工具的更新状态。