Interface¶
This diagram shows the layers a user command goes through to finally be translated into movement on the robot. (Open the image in a new tab to see with greater resolution)
The following ROS components are utilized by Armer to allow the user to command with an arm.
For more details on how to use these interfaces see the tutorials.
Subscribed Topics¶
- /arm/cartesian/velocity geometry_msgs/TwistStamped
Moves the end-effector in Cartesian space w.r.t. the target frame_id (base frame if no frame_id is set).
- /arm/joint/velocity armer_msgs/JointVelocity
Moves the joints of the manipulator at the requested velocity.
Published Topics¶
- /arm/state armer_msgs/ManipulatorState
Provides information on the current state of the manipulator including the pose of the end-effector w.r.t. to the base link, whether the manipulator is experiencing a cartesian contact and collision as a bit-wised error state flag.
Services¶
- /arm/home std_srvs/Empty
Moves the robot back to its initial ready pose.
- /arm/recover std_srvs/Empty
Recovers from collision or limit violation error states that will put the robot into a non-operable state.
- /arm/stop std_srvs/Empty
Stops the current motion of the current.
- /arm/get_named_poses armer_msgs/GetNamedPoses
Gets a list of currently stored named poses (includes both moveit and Armer stored named poses).
- /arm/set_named_pose armer_msgs/AddNamedPose
Saves the current joint configuration of the robot with the provided pose name.
- /arm/remove_named_pose armer_msgs/RemoveNamedPose
Removes the joint configuration of the provided pose name.
- /arm/set_cartesian_impedance armer_msgs/SetCartesianImpedance
Adjusts the impedance of the end-effector position in Cartesian space.
- /arm/add_named_pose_config armer_msgs/AddNamedPoseConfig
Instructs Armer to load named poses stored in the indicated config file.
- /arm/get_named_pose_configs armer_msgs/GetNamedPoseConfigs
Gets the list of config files to check for named poses.
- /arm/remove_named_pose_config armer_msgs/RemoveNamedPoseConfig
Instructs Armer to remove named poses stored in the indicated config file.
Action Servers¶
- /arm/cartesian/pose armer_msgs/MoveToPose.action
Moves the end-effector to the requested goal pose w.r.t. the indicated frame id.
- /arm/cartesian/servo_pose armer_msgs/ServoToPose.action
Servos the end-effector to the requested goal pose with real time object avoidance.
- /arm/joint/named armer_msgs/MoveToNamedPose.action
Moves the end-effector to a pre-defined joint configuration.
- /arm/joint/pose armer_msgs/MoveToJointPoseAction.action
Moves the joints of the robot to the indicated positions (radians).