Rosanswers logo


Following a previous question I was wondering what the time_increment in the LaserScan message is for.

The LaserScan.msg says:

float32 time_increment   # time between measurements [seconds] - if your scanner
                         # is moving, this will be used in interpolating position
                         # of 3d points

However isn't this nothing more than scan_time / ranges.size() ? Seems a bit redundant? In addition, we had this value filled in and it for some reason caused our messages to receive a noticeable delay in rviz. Setting it back to 0 'fixed' this issue.

Best regards, Hans

Originally posted by Hansg91 on ROS Answers with karma: 1909 on 2014-05-09

Post score: 1


1 Answer 1


Rosanswers logo

Caution speculation on my part: I believe the difference to scan_time/ranges.size() is supposed to account for the dead time, when e.g. a 240 deg laser is making a full revolution. The time increment in this case is probably 240/360*scan_time/ranges.size().

As to rviz: This is likely due to the fact that transformations now have to be computed for each individual ray instead of once per scan. However, if algorithms can run "more correct" I would not stay away from this feature due to the visualization, but rather fix rviz.

Originally posted by dornhege with karma: 31395 on 2014-05-09

This answer was ACCEPTED on the original site

Post score: 0

Original comments

Comment by Hansg91 on 2014-05-09:
As in, make rviz ignore the time_increment value? It is possible the value I had was wrong, but it all just seemed very weird in rviz.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.