control_msgs icon indicating copy to clipboard operation
control_msgs copied to clipboard

Multi-Joint End Effector Action

Open davetcoleman opened this issue 10 years ago • 6 comments
trafficstars

At my lab and many other places people need an improved GripperCommand action that can handle multiple joints. I saw this being discussed online with ROS very recently, but I cannot find it despite much searching. So I'm asking here what people's thoughts are on this idea? It seems like simply adding [] after many/all of the variables in the GripperCommand action would be sufficient, but we're not sure yet. I might call it EndEffectorCommand and add it to this repo. @adolfo-rt @mikeferguson @tfoote @isucan @jbohren @mcevoyandy

davetcoleman avatar Mar 10 '15 15:03 davetcoleman

What are you expecting from such a message?

The FollowJointTrajectory spec has almost everything I currently would like to ask for. What I'm currently missing is information in the feedback and result on the status of individual joints, to allow discriminating between moving, reached effort goal, and reached position goal.

adolfo-rt avatar Mar 10 '15 17:03 adolfo-rt

I implemented a end effector controller yesterday using FollowJointTrajectory and I put your trajectory controller on top of it. The firmware of the robot I'm using wasn't happy when I pulsed position commands at the fingers, what I really need is to just send it a single position command. I'm sure I could work around that, but it felt more appropriate to have a special action for it just like GripperCommand. And yes, I need feedback to determine if I successfully grasped something.

davetcoleman avatar Mar 10 '15 17:03 davetcoleman

I currently use one FollowJointTrajectory action server for grasping that sits on top of another FollowJointTrajectory server exposed by joint_trajectory_controller. The former takes care of monitoring the effort goal, and keeping track of the status of each joint (moving, pos goal reached, effort goal reached). It was a bit tricky to get it right, but the coding effort was modest. In the end most of the work is done by the joint_trajectory_controller.

I report joint status in an out-of-band topic (not part of the FollowJointTrajectory action), which feels kind of awkward, but works.

adolfo-rt avatar Mar 10 '15 17:03 adolfo-rt

Is your implementation releasable?

davetcoleman avatar Mar 10 '15 18:03 davetcoleman

No, sorry, it has not been cleared for release.

adolfo-rt avatar Mar 10 '15 18:03 adolfo-rt