Description
Describe the bug
Our application builds a trajectory in real time by appending new points to the end of the trajectory. New points are added every 1.5 seconds, and send over the action interface to the joint trajectory controller. When using a standard kernel (not real-time), everything works as expected, a goal cancelled and a goal accepted message is sent to the client every 1.5 seconds. However, with a RT kernel, the JTC will cancel the old trajectory and the new trajectory. This causes the robot to stop moving until it receives a new trajectory 1.5 seconds later.
To Reproduce
Steps to reproduce the behavior:
- Use a rt kernel
- send a new trajectory every 1.5 seconds
Expected behavior
The controller will cancel 1 trajectory and accept 1 new trajectory every time a new trajectory is sent.
Screenshots
Figure 1. Client side output
Figure 2. Server side ouput
The lines of interest are between times 1722870436.911681030 and 1722870441.413748510.
Environment (please complete the following information):
- OS: 5.15.0-1052-realtime
- Version: Humble