Robotics StackExchange | Archived questions

Multiple joint state publishers, unable to fetch current robot state

Hello, I'm working with a physical robot (Fetch robot) for motion planning related tasks. I start the movegroup, and then try to plan a path between the start state and a goal state. However, when trying to plan, I get a warning saying that it "failed fetch current robot state". Upon further investigation, I notice that the robot is publishing to the `/jointstates topicvia two publishers: the/robotdriverand/gripperdriver. The/robotdriverpublishes all joints except thelgripperjointandrgripperjoint, which is published by the/gripperdriver`.

I'm guessing that the move_group planning (and execution) failed due to this reason, that it can never get the complete joint state in any message.

Would also love to have other places where there may be issues (i.e. if the /joint_state may not be the issue). Thanks

Since I cannot internally change the ros interface of the robot, how do I fix this issue? Any help would be appreciated.

Thanks

Asked by ThreeForElvenKings on 2023-05-27 19:07:02 UTC

Comments

Answers

I think your guess is a good one. I have programmed multiple arms, and all the joint values are always reported in a single message.

You could create a simple node that combines the two joint_state messages into one, and publish that as /joint_states. You will need to remap the driver publish topic names in the launch file.

Asked by Mike Scheutzow on 2023-05-28 10:41:04 UTC

Comments