IHMC controller causes jumps back in time when used with ihmc_gazebo
When using the new ihmc_gazebo integration, everything seems to work as expected when only starting the simulator, but not yet the ihmc controller. rviz works as expected with no tf published (that's ok, as that's what the controller is supposed to do).
Once starting the ihmc controller launch file, rviz (and other tools) start continuously spamming
#!
[ WARN] [1440099176.799324798, 79.547500000]: Detected jump back in time. Clearing TF buffer.
[ WARN] [1440099177.372863748, 79.646500000]: Detected jump back in time. Clearing TF buffer.
[ WARN] [1440099177.695224336, 79.706500000]: Detected jump back in time. Clearing TF buffer.
[ WARN] [1440099177.808701560, 79.727500000]: Detected jump back in time. Clearing TF buffer.
I noticed both gazebo and the ihmc controller have publishers for the /clock
topic, so that might be something to look at.
Comments (5)
-
reporter -
@Stefan_Kohlbrecher When using the Gazebo plugin the controller's timestamp comes from Gazebo so my guess is that we're mistakenly re-echoing the last gazebo timestamp a tick later from our Java code. We'll look in to this.
-
reporter I could make it work with a little trick that also confirms duplicate publishing on
/clock
(once by Gazebo, once by the controller) is the culprit. By remapping the topic away for the gazebo node, things now work as they should. Had to do this indrcsim_gazebo/launch/atlas_no_controller.launch
:#! <node name="gazebo" pkg="drcsim_gazebo" type="run_$(arg gzname)" args="$(arg gzworld) $(arg extra_gazebo_args)" output="screen"> <remap from="/clock" to="clock_gazebo" /> </node>
-
reporter - edited description
-
reporter Ping :) While I can make things work by editing the installed drcsim install files by hand, it would be preferable if the ihmc controller would not publish
/clock
(that appears to be the simplest solution to me, unless there are caveats I'm missing). - Log in to comment
This is with drcsim_prerelease .debs as noted in
#50.