Cannot get the effort display on Rviz to work.
I'm trying to display the efforts like here http://wiki.ros.org/rviz/DisplayTypes.... To do this I publish the effort information in my /joint_states topic. On Rviz I have a robot visualization that is working perfectly. When I open the Rviz effort display and set it up, it says that the status is ok. It found the robot_description and that the display is receiving messages published to /joint_states:
Yet under "Joints" I don't see any of the robot joints like on the website screenshot,
and there are no efforts being displayed on my model (no circles with arrows). Has anyone gotten the effort display to work? I found a post from 2013 with the same problem: https://answers.ros.org/question/9922...
the joints on my URDF look like this:
<joint name="FLpitch_HJ" type="continuous">
<parent link="FLpitch_T"/>
<child link="flpitch_hj_endpoint"/>
<axis xyz="1.0 0.0 0.0"/>
<origin xyz="-3.58 0.19999999935024748 -0.0905"/>
</joint>
I tried adding:
<limit effort="30" velocity="1.0" lower="-2.2" upper="0.7" />
on every joint but It did not change things. Is this tag necessary for the Rviz display to work?
If I can provide any more information please let me know. I'm running ROS Melodic distro on a virtual machine with Ubuntu 18.04.
Please attach your screenshots to the post directly, instead of linking to a 3rd party host. I've given you sufficient karma.
Something to check: does your
.urdf
has theeffort
attribute set on thelimits
of thejoint
s?@gvdhoorn my .urdf does not have an effort attribute set on the limits of the joints. I tried adding:
<limit effort="30" velocity="1.0" lower="-2.2" upper="0.7" />
(where the values are random) for each joint, but saw no difference. Is this needed for it to work?Please attach your images directly to the question.
@gvdhoorn done.
Was this ever resolved?
@AdamGronewold nope, in the end I gave up. I'd say the best best is to look into the rviz source code.
Edit: moved this part to the answer below.
Edit: it looks like @rhaschke has added a send_efforts.py script to test whether the display works. @AdamGronewold: the robot used there (or at least: implied) is the Franka Emika Panda, which also has
revolute
joints.You could adapt that script to test whether it works with whatever robot you're trying to visualise.