ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

You can use a client/server node pair (and a queue/buffer in the server node) to avoid lag build up. For example, if you are gathering camera images in a node and publishing them slightly faster than a subscriber node can display them, lag will build up over time. Take this difference to an extreme and it is essentially how a high speed camera is used. If you implement the client/server + queue, the node collecting camera images will still gather frames faster than the display node can show them, but you can pick keyframes out of the queue to eliminate any lag up to that point.

I was unaware of the topic_tools/throttle solution. That sounds like it would accomplish what I described above, but you would need to know a priori the processing rate of the display node, right?