Lateral limitation filter by twist_filter
Implemented feature
!45 (closed) has been replaced by this MR due to the change of the person in charge.
Add lateral acceleration and jerk limitation to prevent sudden motion control caused by NDT failure.
Description
This implementation limits angular velocity (Twist) and steering angle (ControlCommand) based on acceleration/jerk limitation calculated on the kinematic model, no-slip and constant velocity. You can also smooth linear velocity, angular velocity, and steering command by the simple low-pass filter.
NOTE: To handle Twist and ControlCommand, *_follower
nodes were changed to publish /ctrl_raw
.
https://drive.google.com/file/d/1u-x8hkM6Iz-SLkVeZ0y2nHuo2QFbhhKp/view?usp=sharing
Implementation description
The previous twist_filter
already has lateral acceleration limitation but there were some bugs and cannot work well.
NOTE: It affects to speed control only, generally, steering control has more influence on lateral motion than it.