/psyonic_ros2_control

ROS 2 control driver for the PSYONIC Ability Hand.

Primary LanguageC++

Psyonic Hand ROS2 Control Package

ROS2 control driver for the Psyonic Ability Hand, compatible with MoveIt2 and real hardware, with built-in force sensing support. This package is part of the upcoming DexMobile project — a dual-arm mobile manipulation platform. Full system release coming soon.

psyonic

*This project is funded by NSF #2420355

Features

  • 🦾 6-DOF hand control (4 fingers + 2-DOF thumb)
  • 📊 30 FSR force sensors
  • 🎯 Trajectory following at 125Hz
  • 🖥️ Mock hardware support

System Requirements

  • ✅ ROS2 Jazzy
  • ✅ Ubuntu 24.04 LTS

Quick Start

Installation

mkdir -p ~/psyonic_ws/src && cd ~/psyonic_ws/src
git clone https://github.com/Marsenrage/psyonic_ros2_control.git
cd ~/psyonic_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build && source install/setup.bash

Usage

Simulation:

ros2 launch psyonic_bring_up psyonic_bringup.launch.py use_mock_psyonic:=true

Real Hardware:

ros2 launch psyonic_bring_up psyonic_bringup.launch.py use_mock_psyonic:=false

Test:

python3 src/psyonic_ros2_control/psyonic_bring_up/scripts/test_psyonic_hand.py 

Configuration

Parameter Default Description
use_mock_psyonic false Use simulation
device_name /dev/ttyUSB0 Serial device
baud_rate 460800 Serial baud rate

API

Topics:

  • /left_hand/joint_states - Joint positions/velocities/efforts
  • /psyonic_hand/fsr_sensors - Force sensor data (30 values)

Action:

  • /left_hand/psyonic_left_hand/follow_joint_trajectory - Send position commands

Troubleshooting

Serial permissions:

sudo chmod 666 /dev/ttyUSB0
sudo usermod -a -G dialout $USER  # then logout/login

Check controllers:

ros2 control list_controllers

License

Apache 2.0 License