Implemented rate-control-topic and rate-control-max-delay.#947
Implemented rate-control-topic and rate-control-max-delay.#947dirk-thomas merged 11 commits intoros:kinetic-develfrom
Conversation
…sage, and removed an unnecessary import.
|
I closed the pull request to make some fixes, and now it is open again. Below is a zip file containing: To test, run test_control.py, then run If the test_control.py script becomes more than 1 second behind, the rosbag playback will be automatically delayed until the test_control.py script catches up. This is a useful feature to allow rosbag playback that prioritizes processing every message, rather than running at the required rate. |
Added arguments
Use CasePlaying back recorded lidar data to build a map offline, but how fast can the bag run without dropping messages? ExampleThe bag was recorded at 20Hz. A simulated system can only handle 10Hz. This shows the benefits of the added rate-control arguments.
|
kmhallen
left a comment
There was a problem hiding this comment.
Doesn't compile, please update the boost::bind that references updateRateTopicTime(), and check that it compiles.
|
@mastereric Thanks for addressing the compilation problem. In the mean time I have resolved the merge conflict to make the patch mergable again. @kmhallen Can you please try this again and update your review status. |
|
This change does break ABI. @ros/ros_comm-maintainers what do you think? Should this target Lunar instead? |
|
We already broke |
|
Is it designed to work with only one topic in the bag file? What happens in the following scenario:
|
|
Yes, it was designed to work with one topic. The bag playback will pause, so all topics will stop until the rate-control-topic catches up. |
Added the ability to add a rate-control-topic, which allows you to specify a topic where, if it has not been published to in the last seconds, playback will be delayed (distinguished from paused) until the topic continues.