RoArm-M2-S 3. 驱动节点控制现实中的机械臂
| ||||||||||||||||||||||
|
3. 驱动节点控制现实中的机械臂
3.1 查看机械臂连接时的串口设备
- 在 Ubuntu 虚拟机电脑中按 Ctrl+Alt+T 打开终端,查看当前 Ubuntu 的串口设备。此时不需要用 USB 线将机械臂与电脑相连。
- 首先将机械臂接通电源,打开机械臂驱动板上的电源开关,用 USB 线将机械臂与电脑连接起来,注意要连接机械臂驱动板中间的 Type-C 接口(边缘的 Type-C 接口是与雷达通信的接口,不与 ESP32 进行通信)。
- 点击 Oracle VM VirtualBox 上方的“设备”→“USB”→带有 CP210x 字样的设备名称,该设备名称前出现 √,则代表机械臂连接到虚拟机上。
- 再次在终端中查看当前的 Ubuntu 串口设备,可以看见此时多出来一个 /dev/ttyUSB0 的设备名,这个代表机械臂连接的端口号。
ls /dev/tty*
如果连接机械臂的串口设备时,右边弹出不能挂载到这个设备的提示框,此时将虚拟机的系统关机。 首先确保你的主机(Windows 系统)可以检测到机械臂的 USB 设备。 在这个系统镜像的设置里面,找到 USB 设备,勾选 启用 USB 控制器,选择 USB 3.0(xHCI) 控制器,然后点击右侧第二个 icon 添加一个 USB 筛选器,选择带有 CP210x 字样的设备,点击确定。 再次运行这个镜像,点击窗口上方的 设备 → USB → 查看带有 CP2102N USB 字样的设备前面是否有对号,有则代表挂载成功。
3.2 更改串口设备
在我们的例程中,默认串口设备名称为 /dev/ttyUSB0。如果上一小节查看到的机械臂串口设备名称为 /dev/ttyUSB0,则可以直接跳过本小节,直接进行下一小节的学习。
如果你查到的串口设备名称不是 /dev/ttyUSB0,则需要更改串口设备名称。打开 ~/roarm_ws_em0/src/roarm_main/roarm_driver/roarm_driver/ 这个目录下的 roarm_driver.py 脚本文件,如下图将 /dev/ttyUSB0 改为你的机械臂查看到的串口设备名称。更改完后点击右上角的“Save”保存后关闭该文件。
3.3 运行机械臂驱动节点
-
在 Ubuntu 中使用 Python 脚本与串口设备通信,需要给串口设备读写权限,在虚拟机终端中输入以下指令来赋予串口权限:
sudo chmod 666 /dev/ttyUSB0 (密码为系统默认密码:ws) 如果该指令报错,则参考 3.1 和 3.2 小节确定串口设备号是否正确以及机械臂是否与虚拟机系统连接。
-
接着编译机械臂 ROS2 的功能包,编译功能包需要在对应的工作空间下进行编译:
cd ~/roarm_ws_em0/ colcon build source install/setup.bash
-
按 Ctrl+Alt+T 打开一个新的终端窗口,进入机械臂 ROS2 的工作空间,运行 ROS2 的机械臂驱动节点:
cd ~/roarm_ws_em0/ ros2 run roarm_driver roarm_driver
反馈如下即代表运行成功,此时 ROS2 模型关节界面未打开,因此没有其它的反馈:
成功运行机械臂驱动节点的终端界面不要关闭,接着根据 3.4 小节的内容打开 ROS2 中机械臂模型关节界面。在后续教程的操作中,都需要保持机械臂驱动节点的运行,若不小心结束了该进程,需要重新运行机械臂驱动节点。
3.4 查看机械臂模型关节
这里是使用 ROS2 Rviz2 工具来展示机械臂模型和关节角度控制面板的。Rviz2 是 ROS2 的可视化工具,它可以用于展示和调试机器人模型、传感器数据、规划路径等多种信息。通过 Rviz2,我们可以直观地看到机械臂的运动状态和当前位置。此外,Rviz2 还提供了一些工具,如 3D 视图、时间轴、参数调整等,帮助我们更好地理解机器人的行为。
注意:执行该指令后,机械臂将会转动(大臂小臂竖直向上),请勿在机械臂周围放置易碎品,远离儿童。
按 Ctrl+Alt+T 打开一个新的终端窗口,进入机械臂 ROS2 的工作空间,启动 Rviz2 模型界面:
cd ~/roarm_ws_em0/ ros2 launch roarm_description display.launch.py
在启动 Rviz2 后,Rviz2 中的机器人 URDF 会将机械臂的每个关节角度发布到驱动节点中,驱动节点会将这些关节角度编辑为对应 JSON 格式的控制指令发送给机械臂,因此机械臂会转动。
运行机械臂驱动节点和查看机械臂模型关节终端界面,左边为机械臂驱动节点运行界面,右边为查看 Rviz2 机械臂模型关节界面:
点击左侧的齿轮图标,关节角度控制面板会出现在 Rviz2 模型界面上方:
- 可以通过拖拽控制面板上的滑块,来控制机械臂各个关节转动;
- Center —— 恢复至 Rviz2 模型界面启动时的初始位置;
- Randomize —— 机械臂随机运动至某位置。
3.5 Rviz2 中机械臂视角操作
在 Rviz2 中,可以使用鼠标来调整观察机器人模型的视角。
- 左键点击并拖动,可以在水平面内移动视角。
- 右键点击并拖动,可以改变观察的方向和角度。
- 滚动鼠标滚轮,可以调整观察的距离,即放大或缩小视图。
- 按下鼠标中键(即滚轮键)并拖动,可以在垂直视角方向的平面上移动。
使用这些操作,你可以从任何角度和距离观察机器人模型。