RoArm-M2-S 5. 使用手柄或键盘控制机械臂

来自Waveshare Wiki
跳转至: 导航搜索
RoArm-M2-S
{{{name2}}}
{{{name3}}}
功能简介
特性 RoArm-M2-S 机械臂
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 TTL总线舵机控制接口 I2C UART

5. 使用手柄或键盘控制机械臂

本章节介绍如何使用键盘按键或手柄来控制机械臂,该产品 RoArm-M2-S 出厂时并没有附带手柄,您可以自行购买 Xbox 蓝牙手柄,连接至电脑进行控制。

如果您是跟着前面的教程操作下来的,在开启机械臂控制相关节点之前,需要先关闭上一章节 Moveit2 拖拽交互的例程,在运行Moveit2 拖拽交互例程的终端窗口中,按 Ctrl+C 进行关闭这个进程。机械臂驱动节点的运行终端不需要进行操作关闭,否则不能控制现实中的机械臂。

若您也结束了机械臂驱动节点的运行终端进程,则需要根据 3.3 运行机械臂驱动节点中的内容重新运行。保持机械臂驱动节点的运行,接着再运行机械臂控制相关节点。

  • 在关闭 Moveit2 拖拽交互例程的终端界面中输入以下指令开启机械臂控制的相关节点,会打开一个新的 Rviz2 机械臂模型界面:
ros2 launch moveit_servo demo.launch.py
  • 也可以在新终端界面来运行,在新终端界面运行一定要先进入机械臂 ROS2 的工作空间,再开启机械臂控制的相关节点,如下:
cd roarm_ws_em0
ros2 launch moveit_servo demo.launch.py


5.1 键盘控制机械臂

按 Ctrl+Alt+T 打开一个新的终端窗口,进入机械臂 ROS2 的工作空间,运行以下命令末端关节的控制指令:

cd ~/roarm_ws_em0/
ros2 run roarm_moveit_cmd setgrippercmd

再按 Ctrl+Alt+T 打开一个新的终端窗口,进入机械臂 ROS2 的工作空间,运行以下命令获取来自键盘的控制指令:

cd ~/roarm_ws_em0/
ros2 run roarm_moveit_cmd keyboardcontrol

保持这个终端窗口为激活状态(即确保操作按键时位于该终端窗口界面),通过以下按键来控制机械臂:

  • 坐标控制
    • 方向键 :X 轴正方向运动;
    • 方向键 :X 轴负方向运动;
    • 方向键 :Y 轴正方向运动;
    • 方向键 :Y 轴负方向运动;
    • ; 键:Z 轴正方向;
    • . 键:Z 轴负方向;
  • 关节控制
    • 数字 1 键:底座关节运动;
    • 数字 2 键:肩关节运动;
    • 数字 3 键:肘关节运动;
    • 数字 4 键:夹爪关节运动;
    • 字母 R 键:切换上述关节控制的运动方向。

最后按字母 Q 键退出操作即可。

M2-S键盘控制.png


5.2 手柄控制机械臂

将手柄接收器接入电脑中,点击 Oracle VM VirtualBox 上方的“设备”→“USB”→带有 XBox 字样的设备名称,该设备名称前出现 √,则代表手柄连接到虚拟机上。可以通过以下手柄按键功能来控制机械臂:

  • 左边的关节控制:
    • 左右按键:底座关节运动;
    • 上下按键:肩关节运动;
  • 右边的关节控制:
    • X、B 按键:肘关节运动;
    • Y、A 按键:夹爪关节运动;
  • XY 轴坐标控制:
    • 左右摇臂:Y 轴运动;
    • 上下摇臂:X 轴运动;

RoArm-M2-S ROS2 Humble + Moveit2 教程