PSI 手套 ROS2 SDK 使用手册
ψ-SynGlove Air ROS2 驱动与可视化文档。
📋 目录
1. 硬件安装方法说明
本文适用于 ψ-SynGlove Air(Air Hand V2):22 路关节 ADC 采集,五指可选配 LRA 线性马达 触觉反馈。
SDK 源码:psi-air-glove-SDK/psi-air-glove-SDK/ros2_sdk/(包 psi_glove_ros2、psi_glove_visualizer)。
1.1 硬件清单
- PSI 数据手套(左手/右手)
- USB 数据线
1.2 硬件连接步骤
- USB 连接手套与计算机
- Linux 确认设备:
ls /dev/ttyACM* - 串口权限:
sudo usermod -a -G dialout $USER
1.3 与驱动的关系
驱动通过 left_port / right_port 参数指定串口,默认 auto_connect:=true。
2. SDK安装和配置方法
2.1 系统要求
ROS2(Humble 等)、GCC 9+、yaml-cpp;可视化包另需 Python 与 mujoco。
2.2 编译
bash
cd ~/ros2_ws/src
# 链接或复制 ros2_sdk 下包到 src/
colcon build --packages-select psi_glove_ros2 psi_glove_visualizer
source install/setup.bash2.3 配置
psi_glove_ros2/config/default_config.yaml — 左右手各指 min/max 校准。
2.4 启动
bash
ros2 launch psi_glove_ros2 psi_glove.launch.py \
left_port:=/dev/ttyACM0 right_port:=/dev/ttyACM13. 例程编译和调用方法
3.1 例程列表
| 例程名称 | 路径 | 功能说明 |
|---|---|---|
| 驱动启动 | launch/psi_glove.launch.py | 双手套采集 |
| 订阅示例 | examples/subscriber_example.py | 订阅 /psi_glove_left |
| 可视化 | psi_glove_visualizer/launch/visualizer.launch.py | MuJoCo |
| 简单订阅 | psi_glove_visualizer/examples/simple_subscriber.py | 轻量示例 |
3.2 运行
bash
ros2 launch psi_glove_ros2 psi_glove.launch.py left_port:=/dev/ttyACM0
ros2 topic echo /psi_glove_left
ros2 service call /play_lra psi_glove_ros2/srv/PlayLra \
"{hand: 'left', modes: [5,0,0,0,0], amplitudes: [32,0,0,0,0]}"4. SDK接口调用说明
4.1 话题
| 话题 | 说明 |
|---|---|
left_topic / right_topic | 校准后关节角(可配置,默认 /ruiyan_hand/.../set_angles) |
psi_glove_left / psi_glove_right | 原始 22 路 ADC |
4.2 参数
left_port、right_port、baudrate、frequency、config_file、auto_connect 等(见 launch)。
4.3 PlayLra 服务
hand: "left" | "right";modes[5]、amplitudes[5]。
4.4 不包含
- Python 离线 wheel、
FingertipPoseCalculator - C++ OpenCV 可视化器(ROS 侧用
psi_glove_visualizer)
5. SDK打印内容说明
节点启动打印端口、频率、配置路径;subscriber_example 打印帧与关节采样;play_lra 返回 success/message。
6. 连接状态查询与故障排查
bash
ros2 topic hz /psi_glove_left
ros2 service list | grep play_lra常见问题:串口权限、YAML 未安装到 share、校准范围、play_lra 数组长度必须为 5。
