ROS 简介

ROS 是机器人操作系统(Robot Operating System)的英文缩写。 ROS 是用于编写机器人软件程序的一种具有高度灵活性的软件架构。

ROS 是开源的,是用于机器人控制的一种后操作系统,或者说次级操作系统。它提供类似操作系统所提供的功能,包含硬件抽象描述、底层驱动程序管理、共用功能的执行、程序间的消息传递、程序发行包管理,它也提供一些工具程序和库用于获取、建 立、编写和运行多机整合的程序。

ROS 的首要设计目标是在机器人研发领域提高代码复用率。ROS 是一个分布式的进程(也就是 “节点” )框架,这些进程被封装在易于被分享和发布的程序包和功能包中。ROS 也支持一种类似于代码储存库的联合系统,这个系统也可以实现工程的协作及发布。这个设计可以使一个工程的开发实现从文件系统到用户接口完全独立决策(不受 ROS 限制)。同时,所有的工程都可以被 ROS 的基础工具整合在一起。

注意

  • 通过使用 mystudio 烧录相应的固件。其中,在basic中烧录minirobot,选择transponder功能,在atom中烧录最新版的atomMain。
  • myBuddy 自带Ubuntu 20.04 系统,已经内置了ROS1、ROS2开发环境,直接使用即可。
  • 若通过远程Python Socket连接myBuddy使用ROS,则需在远程PC端搭建ROS相关环境,具体可参照 12.1.2 环境搭建
  • ROS1版本支持: Ubuntu 20.04 / ROS1 Noetic
  • ROS2版本支持:Ubuntu 20.04 / ROS2 Foxy / Galactic (myBuddy已内置Galactic版本)

ROS 在myBuddy中的应用

为实现通过ROS来驱动 myBuddy,接下来将介绍Rviz和Moveit两种工具。

  • Rviz 是ROS中一款三维可视化平台,能够实现对外部信息的图形化显示,另外还可以通过 rviz 给机械臂发布控制信息,从而实现对机器人的监测与控制。Rviz 小节将介绍 myBuddy 的两种控制方式:滑块控制和移动跟随。
  • Moveit 是ROS中的一个集成开发平台,由多种用于操纵机械臂的功能包组成,包括:运动规划、操作、控制、逆运动学、3D感知和碰撞检测等。Moveit 小节将介绍 myBuddy 的四种控制组:通过控制组来实现对左臂,右臂以及腰部的部分和整体控制。

mycobot_ros安装与更新

mycobot_ros 是 ElephantRobotics 推出的,适配旗下各类型桌面型机械臂的 ROS 包。 项目地址:https://github.com/elephantrobotics/mycobot_ros

下文将以 <ros-workspace> 来代指电脑中ROS的工作空间路径,官方默认是catkin_ws,请确保在执行下面命令时将<ros-workspace>替换为你本机的真实路径。

点击桌面上的ROS1 Shell图标或者桌面下方栏的对应图标,打开ROS1环境终端:

然后输入以下指令:

cd ~/<ros-workspace>/src  # 进入工作区的src文件夹中
# 克隆github上的代码
git clone https://github.com/elephantrobotics/mycobot_ros.git
cd ..       # 返回工作区
catkin_make # 构建工作区中的代码
source devel/setup.bash # 添加环境变量

注意:/home/ubuntu/catkin_ws/src (等效于 ~/catkin_ws/src)目录中已经存在mycobot_ros文件夹,则需要先删除原有的 mycobot_ros,再执行以上命令。其中,目录路径中的ubuntu为虚拟机的用户名,若不一致请修改。

mycobot_ros2安装与更新

mycobot_ros2 是 ElephantRobotics 推出的,适配旗下各类型桌面型机械臂的 ROS 包。 项目地址:https://github.com/elephantrobotics/mycobot_ros2

下文将以 <ros2-workspace> 来代指电脑中ROS2的工作空间路径,官方默认是colcon_ws,请确保在执行下面命令时将<ros2-workspace>替换为你本机的真实路径。

点击桌面上的ROS2 Shell图标或者桌面下方栏的对应图标,打开ROS2环境终端:

然后输入以下指令:

cd ~/<ros2-workspace>/src  # 进入工作区的src文件夹中
# 克隆github上的代码
git clone 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,再执行以上命令。

results matching ""

    No results matching ""