Only released in EOL distros:
Package Summary
srs_assisted_grasping
- Author: Zdenek Materna
- License: BSD
- Source: git https://github.com/ipa320/srs_public.git (branch: master)
Package Summary
srs_assisted_grasping
- Author: Zdenek Materna
- License: BSD
- Source: git https://github.com/ipa320/srs_public.git (branch: master)
Package Summary
srs_assisted_grasping
- Author: Zdenek Materna
- License: BSD
- Source: git https://github.com/ipa320/srs_public.git (branch: master)
Contents
Overview
Assisted grasping has been developed to allow safe and robust grasping of unknown or unrecognized objects by SDH gripper equipped with tactile sensors. It has separated API definition (actionlib interface), code and GUI in form of RVIZ plugin.
When calling grasp action there is possibility to specify target configuration (angles) for all joints of the gripper, grasp duration and maximum forces for all tactile pads. Then, for each joint, velocities with acceleration and deceleration ramps are calculated in a way, that all joints will reach target configuration at the same time. If the measured force on a pad will exceed requested maximal force, movement of a corresponding joint will be stopped. With different target configurations and appropriate forces, a wide range of objects can be grasped.
Assisted grasping package also offers node for preprocessing of tactile data by median and Gaussian filter with configurable parameters and node for simulation of velocity mode of SDH.
Grasping node
Topics, parameters
Subscribed Topics
tact_in (schunk_sdh/TactileSensor)- Data for tactile feedback.
- Data for position feedback.
Published Topics
velocity_out (brics_actuator/JointVelocities)- Velocity commands.
Parameters
~max_force (double, default: "1000.0")- Maximal allowed force. Higher values will be limited to this value.
- Maximal velocity (rad/s).
- Length of acceleration ramp in percents of whole trajectory.
- Length of deceleration ramp in percents of whole trajectory.
- Rate of internal controller. Also commands are published at this rate.
Node also requires list of joints with some additional information. This can be done easily in YAML file:
joints: - joint: sdh_knuckle_joint has_tactile_pad: false static: true - joint: sdh_thumb_2_joint has_tactile_pad: true static: false - joint: sdh_thumb_3_joint has_tactile_pad: true static: false - joint: sdh_finger_12_joint has_tactile_pad: true static: false - joint: sdh_finger_13_joint has_tactile_pad: true static: false - joint: sdh_finger_22_joint has_tactile_pad: true static: false - joint: sdh_finger_23_joint has_tactile_pad: true static: false
Actionlib API
Action Subscribed Topics
/reactive_grasping_action/goal (srs_assisted_grasping_msgs/ReactiveGraspingActionGoal)
- Target configuration of joints, maximal allowed force for each tactile pad and time to reach target configuration.
- A request to cancel given goal.
Action Published Topics
/reactive_grasping_action/feedback (srs_assisted_grasping_msgs/ReactiveGraspingActionFeedback)
- Feedback is empty.
- Status.
- Current joint values, forces and real time to stop for all joints.
Tactile filter
TBD
Simulated velocity mode
TBD