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 the
lgripperjointand
rgripperjoint, 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
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