Wiki

Only released in EOL distros:  

Package Summary

A set of interactive markers for various methods of remote teleoperation manipulation of 6-DOF robot end-effectors

About

The remote_manipulation_markers package contains interactive marker servers for a set of remote manipulation interaction approaches. The approaches include Free Positioning, Constrained Positioning, and Point-and-Click. These interactive marker servers are intended for use with rviz or with Robot Web Tools interfaces.

Remote Manipulation Interaction Approaches

This package includes three approaches: Free Positioning (FP), Constrained Positioning (CP), and Point-and-Click (P&C). The three approaches are shown below, with interaction points for setting initial poses shown in yellow, and interaction points for adjusting poses shown in blue.

interaction.png

Free positioning uses a ring-and-arrow marker which can be clicked and dragged to individually adjust translation along and rotation about each Cartesian axis. Constrained positioning uses a sphere marker to first set a grasp point, followed by setting an approach angle by clicking on the surface of the sphere. The approach angle is constrained to pass through the grasp point. Point-and-click makes use of autonomous grasp calculation, and involves the user selecting a previously calculated grasp for execution from a list of potential grasps. Further details on these can be found in A Comparison of Remote Robot Teleoperation Interfaces for General Object Manipulation, published in HRI 2017. The approaches are designed for both 2D and 3D visualization modes. For full details and a comparison of the efficiency and effectiveness of each approach in both 2D and 3D visualization modes, see our IJRR 2019 article Leveraging depth data in remote robot teleoperation interfaces for general object manipulation. Videos of the approaches in action can be found here and here.

Messages and Services

Newly proposed, mistyped, or obsolete package. Could not find package "remote_manipulation_markers" in rosdoc: /var/www/docs.ros.org/en/api/remote_manipulation_markers/manifest.yaml

Nodes

free_positioning

'free_positioning' contains the interactive marker server for the Free Positioning interaction approach, i.e. a 6-DOF marker that can be moved in free space with no constraints.

Action Goal

execute_grasp/goal (remote_manipulation_markers/SpecifiedGraspGoal)

Action Result

execute_grasp/result (remote_manipulation_markers/SpecifiedGraspResult)

Action Feedback

execute_grasp/feedback (remote_manipulation_markers/SpecifiedGraspFeedback)

Actions Called

grasp (rail_manipulation_msgs/PickupAction)

Published Topics

gripper_marker_pose (geometry_msgs/PoseStamped)

Services

reset_marker_pose (std_srvs/Empty)

Parameters

base_link (string, default: "base_link") eef_link (string, default: "eef_link") grasp_topic (string, default: "grasp")

constrained_positioning

'constrained_positioning' contains the interactive marker server for the Constrained Positioning interaction approach, i.e. a set of markers for specifying a grasp point and an approach angle.

Action Goal

execute_grasp/goal (remote_manipulation_markers/SpecifiedGraspGoal)

Action Result

execute_grasp/result (remote_manipulation_markers/SpecifiedGraspResult)

Action Feedback

execute_grasp/feedback (remote_manipulation_markers/SpecifiedGraspFeedback)

Actions Called

grasp (rail_manipulation_msgs/PickupAction)

Published Topics

gripper_marker_pose (geometry_msgs/PoseStamped)

Services

clear_gripper_marker (std_srvs/Empty) clear_full_marker (std_srvs/Empty) create_sphere (remote_manipulation_markers/CreateSphere)

Parameters

grasp_topic (string, default: "grasp")

point_and_click

'point_and_click' contains the interactive marker server for the Point-and-Click interaction approach, i.e. functionality for displaying and cycling through a set of calculated end-effector poses.

Action Goal

execute_grasp/goal (remote_manipulation_markers/SpecifiedGraspGoal)

Action Result

execute_grasp/result (remote_manipulation_markers/SpecifiedGraspResult)

Action Feedback

execute_grasp/feedback (remote_manipulation_markers/SpecifiedGraspFeedback)

Actions Called

grasp (rail_manipulation_msgs/PickupAction)

Subscribed Topics

/grasp_sampler/sampled_grasps (geometry_msgs/PoseArray)

Services

cycle_grasps (remote_manipulation_markers/CycleGrasps)

Parameters

grasp_topic (string, default: "grasp") calculated_poses_topic (string, default: "grasp_sampler/sampled_grasps")

gripper_marker_vis

A marker server that displays a non-interactable gripper marker at the gripper location specified by one of the other interaction approaches. This can be used with the Free Positioning and Constrained Positioning approaches, and will link the gripper pose to that of the free positioning or constrained positioning markers.

Subscribed Topics

/free_positioning/gripper_marker_pose (geometry_msgs/PoseStamped)

Parameters

marker_node_name (string, default: "free_positioning")

Installation

To install the remote_manipulation_markers package, you can install from source with the following commands:

Startup

Each of the methods can be launched with its own launch file, as follows:

Note that free_positioning.launch and constrained_positioning.launch include a boolean parameter run_separate_vis. Setting run_seperate_vis to true will launch a gripper_marker_vis node that corresponds to the free or constrained positioning node.

Citation

If you use this package in your work, please cite our IJRR article:

David Kent, Carl Saldanha, and Sonia Chernova. Leveraging Depth Data in Remote Robot Teleoperation Interfaces for General Object Manipulation. The International Journal of Robotics Research, 2019.

Wiki: remote_manipulation_markers (last edited 2019-12-05 18:57:57 by davidkent)