schunk_modular_robotics: CANOpen_driver | schunk_description | schunk_libm5api | schunk_powercube_chain | schunk_sdh | schunk_simulated_tactile_sensors

Package Summary

This package provides an interface for operating the schunk dexterous hand (SDH), including the tactile sensors.

Hardware Requirements

To use this package you need a schunk dexterous hand www.schunk-modular-robotics.com with firmware version 0.0.2.18. Other firmware versions may work, but are not officially supported. Alternatively you can use a simulated version without any hardware, see cob_gazebo.

ROS API

The schunk_sdh package provides a configurable node for operating a schunk dexterous hand.

schunk_sdh

The schunk_sdh node takes in trajectory_msgs/JointTrajectory messages and send this directly to the hardware. The joint states can be received by topics and the sdh can be initialized, stopped or recovered via services.

Action Goal

joint_trajectory_action/goal (pr2_controllers_msgs/JointTrajectoryActionGoal)
  • The goal describes the trajectory for the sdh to follow.

Action Result

joint_trajectory_action/result (pr2_controllers_msgs/JointTrajectoryActionResult)
  • empty

Action Feedback

joint_trajectory_action/feedback (pr2_controllers_msgs/JointTrajectoryActionFeedback)
  • empty

Subscribed Topics

command (trajectory_msgs/JointTrajectory)
  • Receives direct commands.

Published Topics

/joint_states (sensor_msgs/JointState)
  • Publishes the joint states of all joints.

Services

init (cob_srvs/Trigger)
  • Initializes the node and connects to the hardware.
stop (cob_srvs/Trigger)
  • Stops immediately all hardware movements.
recover (cob_srvs/Trigger)
  • Recovers the hardware after an emergency stop.
set_operation_mode (cob_srvs/Trigger)
  • Sets the operation mode for the node.

Parameters

~sdhdevicestring (string, default: Required)
  • Device identifier for hand, e.g. /dev/pcan32
~dsadevicestring (string, default: Required)
  • Device identifier for tactile sensors, e.g. /dev/ttyUSB0
~CanBaudrate (int, default: Required)
  • Baudrate of can module, e.g. 1000, 500,...
~JointNames (list of strings, default: Required)
  • List of joint names corresponding to urdf description, e.g. [sdh_thumb_3_joint, sdh_finger_11_joint,...]
~OperationMode (string, default: Required)
  • Operation mode of the modules, e.g. position, velocity
/robot_description (urdf model, default: Required)
  • Urdf model of the robot, including the joints and links describing the sdh

Usage/Examples

This package is not intended to be used directly, but with the corresponding launch and yaml files from e.g. schunk_bringup in the schunk_robots stack. For using only the sdh use

roslaunch schunk_bringup sdh_solo.launch

For including the sdh in your overall launch file use

<include file="$(find schunk_bringup)/components/sdh.launch" />

All hardware configuration is done in the schunk_hardware_config package. A sample parameter file in "schunk_hardware_config/sdh/config/sdh.yaml" could look like this

sdhdevicetype: PCAN
sdhdevicestring: /dev/pcan0
dsadevicestring: /dev/ttyS0
baudrate: 1000000
joint_names: ['sdh_knuckle_joint', 'sdh_thumb_2_joint', 'sdh_thumb_3_joint', 'sdh_finger_12_joint', 'sdh_finger_13_joint', 'sdh_finger_22_joint', 'sdh_finger_23_joint']
OperationMode: position
frequency: 5

Wiki: schunk_sdh (last edited 2012-03-22 11:27:04 by FlorianWeisshardt)