RoArm-M2-S 10. Ubuntu 22.04 安装 ROS2 Humble 教程
| ||||||||||||||||||||||
|
10. Ubuntu 22.04 安装 ROS2 Humble 教程
本章节所介绍的安装方法需考虑网络环境,在网络环境受限的地区本章教程的安装过程大概率不能被正确执行,用户可以尝试更换镜像源来解决,但镜像源质量也存在参差不齐,无法确保能够完美解决问题。因此本章教程不推荐新手使用,建议新手直接使用我们制作好的镜像,参考第一章节 新手安装 ROS2 教程。
不同版本的 Ubuntu 对应不同版本的 ROS2,我们这里安装的 ROS2 是 Humble 版本的,所以 Ubuntu 镜像下载 22.04 版本的。点击 Ubuntu22.04 镜像下载并在 Oracle 上安装,本教程接下来的内容操作都是在 Ubuntu 上的终端里完成的。
10.1 安装 Ubuntu 镜像
默认你已经根据第一章节里的内容安装好了 Oracle VM VirtualBox 虚拟机。
-
在左边工具栏处,点击“新建”。
-
设置名称,类型设置为“Linux”,版本设置为“Ubuntu(64-bit)”,点击“下一步”。
-
内存大小和处理器数量可以自己设置,我这里为默认设置,接着点击“下一步”。
-
选择“现在创建虚拟硬盘”,磁盘空间大小可以自己设置,我这里也是默认,点击“下一步”会显示新虚拟电脑的配置,点击“完成”表示虚拟电脑创建成功。
-
双击左边栏中刚刚创建的虚拟电脑启动,启动后会提示“未能启动虚拟电脑,需要加载虚拟光盘安装系统”,在“光驱”位置添加你下载好的 ubuntu22.04 镜像,点击“挂载并尝试启动”。
10.2 ROS 2 Humble 安装
10.2.1 设置源
您需要将 ROS 2 apt 存储库添加到您的系统中。
首先确保 Ubuntu Universe 存储库已启用:
sudo apt install software-properties-common sudo add-apt-repository universe
针对国内用户,为了避免DNS污染,在ubuntu中打开终端输入:
sudo nano /etc/hosts
添加以下内容后按Ctrl+X进行保存:
185.199.111.133 raw.githubusercontent.com 185.199.110.133 raw.githubusercontent.com 185.199.109.133 raw.githubusercontent.com 185.199.108.133 raw.githubusercontent.com 199.232.28.133 raw.githubusercontent.com 20.205.243.166 github.com
现在使用 apt 添加 ROS 2 GPG 密钥:
sudo apt update && sudo apt install curl -y 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
10.2.2 安装 ROS 2 软件包
设置存储库后更新 apt 存储库缓存:
sudo apt update
ROS 2 软件包构建在经常更新的 Ubuntu 系统上。始终建议您在安装新软件包之前确保系统是最新的:
sudo apt upgrade
安装 ROS 2 Humble 版软件包:
sudo apt install ros-humble-desktop
安装编译器和其它构建 ROS 包的开发工具:
sudo apt install ros-dev-tools
安装 net-tools、moveit2、foxglove,卸载 moveit-servo:
sudo apt install net-tools sudo apt install ros-humble-moveit-* sudo apt install ros-humble-foxglove-bridge sudo apt autoremove ros-humble-moveit-servo-*
添加 ROS 2 到 source 源启动脚本,这样不需要每次打开新的 shell 终端获取 setup 文件:
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc source ~/.bashrc
更多有关 ROS 2 Humble 的教程可以参考 ROS 2 官方文档。
10.2.3 安装机械臂 ROS 2 的工作空间包
安装 git 工具:
sudo apt install git
从 GitHub 上克隆该项目:
git clone https://github.com/DUDULRX/roarm_ws_em0.git
10.2.4 安装 Python3 库
- 国内环境:
sudo apt install python3-pip cd ~/roarm_ws_em0 python3 -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
- 国外环境:
sudo apt install python3-pip cd ~/roarm_ws_em0 python3 -m pip install -r requirements.txt
10.3 编译机械臂 ROS 2 软件包
每一次编译都要在机械臂 ROS 2 的工作空间下才能进行。
10.3.1 初次编译
cd ~/roarm_ws_em0 sudo chmod +x build_first.sh . build_first.sh
初次编译过程耗时较长,初次编译通过后此时就可以根据前面教程的内容进行使用机械臂了,在编译过程中有些包会有 stder output 可以忽略掉。
10.3.2 后续编译和使用
每次对某个包的代码做了变更后,都需要重新编译后再使用。
cd ~/roarm_ws_em0 . build_common.sh
仅修改了 roarm-web-app 功能包的编译:
cd ~/roarm_ws_em0 . build_roarm_web_app.sh
10.4 Ubuntu 开启 SSH 服务
sudo apt update sudo apt install net-tools sudo apt install openssh-server sudo service ssh start
之后你就可以使用其它设备通过 SSH 远程连接访问这个 Ubuntu 虚拟机了。