I’m trying to use Isaac Navigation stack on my real robot. Everything seems working fine, Isaac receives FlatScan messages from the robot’s LiDAR, the odometry values and the local planner is set according to the real robot parameters (it’s a differential drive robot).
The robot localizes and navigates quite well; however, I have an issue with the output speed of the LQR controller. Speed in the forward direction often starts to bounce between its maximum value and 0 even when the robot is simply navigating in a relatively wide area and with a rectilinear trajectory. This causes the robot to move in a non-smooth and ugly way which is not acceptable.
The plot in the figure is the registered output of the LQR controller, you can see the undesired behavior in the time window between 100 and 150 seconds.
Two additional things that worth mentioning about my setup: the robot has two blind spots in the LiDAR readings on its left and on its right of about 90 degrees each. Moreover, the odometry is quite noisy.
Does someone know what causes this issue and a possible solution? I wonder if there are some parameters to change in order to avoid this behavior.
Thanks in advance to everyone!