环境安装
M5版本:
注意:安装虚拟机系统时,请安装Ubuntu 20.04版本的系统,安装方法与ubuntu 18.04一致。
在Linux中安装不同版本的ubuntu系统,可参考 13.1.1 环境搭建 章节。
1 ROS2 环境搭建
1.1 ROS2 安装
基本的开发环境搭建需要安装机器人操作系统 ROS2、MoveIt2 以及 git 版本管理器,以下分别介绍其安装方法及流程。
myCobot 280-M5、myCobot 320-M5、myPalletizer 260-M5 和 mechArm 270-M5 的设备可参考以下介绍的安装方式及流程。myCobot 280-PI、myCobot 320-PI、myPalletizer 260-PI 和 mechArm 270-PI 的设备仅仅需要执行 mycobot_ros2 安装包的安装。
1.1.1 版本选择
ROS2 跟 ubuntu 有一一对应的关系,不同版本的 ubuntu 对应不同版本的 ROS2,参考网站见下:http://docs.ros.org/en/foxy/Releases.html
这里给出对应Ubuntu支持的 ROS2 版本:
ROS2版本 | 发布日期 | 维护截止日期 | Ubuntu版本 |
---|---|---|---|
Foxy | 2020 年 6 月 5 日 | 2023 年 5 月 | Ubuntu 20.04(Focal Fossa) |
Galactic | 2021 年 5 月 23 日 | 2022 年 11 月 | Ubuntu 20.04(Focal Fossa) |
Humble | 2022 年 5 月 23 日 | 2027 年 5 月 | Ubuntu 22.04(Jammy Jellyfish) |
请根据自己安装的Ubuntu版本进行对应ROS2版本的安装
如果版本不同,下载将会失败.在这里我们选择的系统为 Ubuntu 20.04 (推荐), 对应 ROS2 版本为 ROS2 Foxy
NOTE: 目前我们不提供 windows 安装 ROS2 的任何参考, 若有需要请参考 http://docs.ros.org/en/foxy/Installation/Alternatives/Windows-Development-Setup.html
1.1.2 开始安装
1 添加源
Ubuntu 本身的软件源列表中没有 ROS2 的软件源,所以需要先将 ROS2 软件源配置到软件列表仓库中,才能下载 ROS2 。打开一个控制台终端(快捷键Ctrl+Alt+T),输入如下指令:
- 官方源:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
- 若下载速度缓慢,推荐就近选择一个镜像源替换上面的命令。例如,huawei cloud为:
echo "deb [arch=$(dpkg --print-architecture)] https://repo.huaweicloud.com/ros2/ubuntu/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
2 设置秘钥
配置公网秘钥,这一步是为了让系统确认我们的路径是安全的的,这样下载文件才没有问题,不然下载后会被立刻删掉:
sudo apt install curl gnupg2 -y
curl -s https://gitee.com/ohhuo/rosdistro/raw/master/ros.asc | sudo apt-key add -
3 安装
在加入了新的软件源后,需要更新软件源列表,打开一个控制台终端(快捷键Ctrl+Alt+T),输入如下指令:
sudo apt-get update
执行安装 ROS2,打开一个控制台终端(快捷键Ctrl+Alt+T),请按照自己的Ubuntu版本选择输入以下指令:
# Ubuntu 20.04 foxy版本
sudo apt install ros-foxy-desktop
# Ubuntu 20.04 galactic版本
sudo apt install ros-galactic-desktop
# Ubuntu 22.04 humble版本
sudo apt install ros-humble-desktop
安装过程耗时比较长,需要耐心等待
安装完成后刷新环境变量:
source /opt/ros/foxy/setup.bash
1.1.3 设置ros2环境
为了避免每次关掉终端窗口后都需要重新生效 ROS2 功能路径,我们可以把路径配置到环境变量中,这样在每次打开新的终端时便可自动生效 ROS2 功能路径,在终端依次执行以下命令,打开一个控制台终端(快捷键Ctrl+Alt+T)执行以下命令:
# Ubuntu 20.04 foxy版本
# 将 ros 环境加入到当前控制台的环境变量
echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
# Ubuntu 20.04 galactic版本
echo "source /opt/ros/galactic/setup.bash" >> ~/.bashrc
# Ubuntu 22.04 humble版本
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc
安装 ROS2 额外依赖项
在终端输入以下命令安装ROS2额外依赖项,打开一个控制台终端(快捷键Ctrl+Alt+T):
sudo apt install python3-argcomplete -y
sudo apt install ros-foxy-xacro
sudo apt-get install python3-colcon-common-extensions
# Ubuntu 20.04 foxy版本
sudo apt install ros-foxy-joint-state-publisher-gui
# Ubuntu 20.04 galactic版本
sudo apt install ros-galactic-joint-state-publisher-gui
# Ubuntu 22.04 humble版本
sudo apt install ros-humble-joint-state-publisher-gui
1.1.4 验证安装
为了验证 ROS2 是否安装成功,打开一个控制台终端(快捷键Ctrl+Alt+T),在终端执行以下命令:
ros2
当显示如下界面,则表示 ROS2 安装成功
2 MoveIt2 安装
MoveIt2 是 ros2 中一系列移动操作的功能包的组成,主要包含运动规划,碰撞检测,运动学,3D 感知,操作控制等功能。
2.1 更新软件源列表
打开一个控制台终端(快捷键Ctrl+Alt+T),在终端窗口输入以下命令,以更新软件源列表:
sudo apt-get update
2.2 安装 MoveIt2
打开一个控制台终端(快捷键Ctrl+Alt+T),在终端窗口输入以下命令,执行 MoveIt2 的安装:
# Ubuntu 20.04 foxy版本
sudo apt-get install ros-foxy-moveit
# Ubuntu 20.04 galactic版本
sudo apt-get install ros-galactic-moveit
# Ubuntu 22.04 galactic版本
sudo apt-get install ros-humble-moveit
3 git 安装
3.1 更新软件源列表
打开一个控制台终端(快捷键Ctrl+Alt+T),在终端窗口输入以下命令,以更新软件源列表:
sudo apt-get update
3.2 安装 git
打开一个控制台终端(快捷键Ctrl+Alt+T),在终端窗口输入以下命令,执行 git 的安装:
sudo apt-get install git
3.3 验证安装
读取 git 版本,打开一个控制台终端(快捷键Ctrl+Alt+T),在终端窗口输入以下命令:
git --version
在终端中可以显示 git 版本号,如下,即为安装成功。
4 mycobot_ros2 安装
mycobot_ros2
是 ElephantRobotics 推出的,适配旗下桌面型六轴机械臂 mycobot系列 的ROS2 包。
项目地址:http://github.com/elephantrobotics/mycobot_ros2
4.1 前提
在安装包之前,请保证拥有 ros2 工作空间。
这里我们给出创建工作空间的样例命令,打开一个控制台终端(快捷键Ctrl+Alt+T),在命令行输入以下命令:
mkdir -p ~/colcon_ws/src # 创建文件夹
添加工作空间的环境
官方默认的 ROS2 工作空间是 colcon_ws
。
echo "source ~/colcon_ws/install/setup.bash" >> ~/.bashrc
source ~/.bashrc
4.2 安装
NOTE:
- 本包依赖于ROS2和MoveIT2,使用前确保以成功安装ROS2和MoveIT2。
- 本包与真实机械臂的交互依赖于PythonApi -
pymycobot
- Api项目地为:https://github.com/elephantrobotics/pymycobot
快速安装:
pip install pymycobot --upgrade
执行pip install pymycobot --upgrade命令时,若出现如下图错误提示:
根据提示输入以下命令安装pip
sudo apt install python-pip
如果你的Ubuntu系统是20.04版本,请执行命令
sudo apt install python3-pip
安装pip pip安装完成后,终端再次执行pip install pymycobot --upgrade
安装方式依赖于Git,请确保电脑中已安装Git。
官方默认的 ROS2 工作区是 colcon_ws
。
cd colcon_ws/src # 进入工作区的src文件夹中
# 克隆github上的代码
git clone --depth 1 https://github.com/elephantrobotics/mycobot_ros2.git
cd .. # 返回工作区
colcon build --symlink-install # 构建工作区中的代码,--symlink-install:避免每次调整 python 脚本时都需要重新编译
source install/setup.bash # 添加环境变量
树莓派版本:
树莓派版本自带Ubuntu(V-20.04)系统,内置开发环境,无需搭建和管理,更新mycobot_ros2
包即可。
mycobot_ros2
是大象机器人推出的适用于其mycobot系列桌面六轴机械臂的ROS2包。
ROS2项目地址: http://github.com/elephantrobotics/mycobot_ros2
机械臂API驱动库地址: https://github.com/elephantrobotics/pymycobot
1 更新 mycobot_ros2 包
为了保证用户能及时使用最新的官方包,可以通过文件管理器进入/home/er/colcon_ws/src
文件夹,打开控制台终端( 快捷键 Ctrl+Alt+T ) ,输入以下命令进行更新:
# 克隆github上的代码
cd colcon_ws/src # 进入工作区的src文件夹中
# 克隆github上的代码
git clone --depth 1 https://github.com/elephantrobotics/mycobot_ros2.git
cd .. # 返回工作区
colcon build --symlink-install # 构建工作区中的代码,--symlink-install:避免每次调整 python 脚本时都需要重新编译
source install/setup.bash # 添加环境变量
注意: 如果在/home/er/colcon_ws/src(相当于~/colcon_ws/src)
目录下已经存在mycobot_ros2
文件夹,则需要先删除原来的mycobot_ros2
,然后再执行上述命令。 其中,目录路径中的er
为系统的用户名。 如有不一致,请修改。
至此ROS2环境搭建完成,ROS2的使用请参考13.2.3 Rviz介绍及使用。