#include <speed_limiter.h>
Public Member Functions | |
| double | limit (double &v, double v0, double v1, double dt) |
| Limit the velocity and acceleration. | |
| double | limit_acceleration (double &v, double v0, double dt) |
| Limit the acceleration. | |
| double | limit_jerk (double &v, double v0, double v1, double dt) |
| Limit the jerk. | |
| double | limit_velocity (double &v) |
| Limit the velocity. | |
| SpeedLimiter (bool has_velocity_limits=false, bool has_acceleration_limits=false, bool has_jerk_limits=false, double min_velocity=0.0, double max_velocity=0.0, double min_acceleration=0.0, double max_acceleration=0.0, double min_jerk=0.0, double max_jerk=0.0) | |
| Constructor. | |
Public Attributes | |
| bool | has_acceleration_limits |
| bool | has_jerk_limits |
| bool | has_velocity_limits |
| double | max_acceleration |
| double | max_jerk |
| double | max_velocity |
| double | min_acceleration |
| double | min_jerk |
| double | min_velocity |
Definition at line 45 of file speed_limiter.h.
| steer_drive_controller::SpeedLimiter::SpeedLimiter | ( | bool | has_velocity_limits = false, |
| bool | has_acceleration_limits = false, |
||
| bool | has_jerk_limits = false, |
||
| double | min_velocity = 0.0, |
||
| double | max_velocity = 0.0, |
||
| double | min_acceleration = 0.0, |
||
| double | max_acceleration = 0.0, |
||
| double | min_jerk = 0.0, |
||
| double | max_jerk = 0.0 |
||
| ) |
Constructor.
| [in] | has_velocity_limits | if true, applies velocity limits |
| [in] | has_acceleration_limits | if true, applies acceleration limits |
| [in] | has_jerk_limits | if true, applies jerk limits |
| [in] | min_velocity | Minimum velocity [m/s], usually <= 0 |
| [in] | max_velocity | Maximum velocity [m/s], usually >= 0 |
| [in] | min_acceleration | Minimum acceleration [m/s^2], usually <= 0 |
| [in] | max_acceleration | Maximum acceleration [m/s^2], usually >= 0 |
| [in] | min_jerk | Minimum jerk [m/s^3], usually <= 0 |
| [in] | max_jerk | Maximum jerk [m/s^3], usually >= 0 |
Definition at line 52 of file speed_limiter.cpp.
| double steer_drive_controller::SpeedLimiter::limit | ( | double & | v, |
| double | v0, | ||
| double | v1, | ||
| double | dt | ||
| ) |
Limit the velocity and acceleration.
| [in,out] | v | Velocity [m/s] |
| [in] | v0 | Previous velocity to v [m/s] |
| [in] | v1 | Previous velocity to v0 [m/s] |
| [in] | dt | Time step [s] |
Definition at line 75 of file speed_limiter.cpp.
| double steer_drive_controller::SpeedLimiter::limit_acceleration | ( | double & | v, |
| double | v0, | ||
| double | dt | ||
| ) |
Limit the acceleration.
| [in,out] | v | Velocity [m/s] |
| [in] | v0 | Previous velocity [m/s] |
| [in] | dt | Time step [s] |
Definition at line 98 of file speed_limiter.cpp.
| double steer_drive_controller::SpeedLimiter::limit_jerk | ( | double & | v, |
| double | v0, | ||
| double | v1, | ||
| double | dt | ||
| ) |
Limit the jerk.
| [in,out] | v | Velocity [m/s] |
| [in] | v0 | Previous velocity to v [m/s] |
| [in] | v1 | Previous velocity to v0 [m/s] |
| [in] | dt | Time step [s] |
Definition at line 115 of file speed_limiter.cpp.
| double steer_drive_controller::SpeedLimiter::limit_velocity | ( | double & | v | ) |
Limit the velocity.
| [in,out] | v | Velocity [m/s] |
Definition at line 86 of file speed_limiter.cpp.
Definition at line 113 of file speed_limiter.h.
Definition at line 114 of file speed_limiter.h.
Definition at line 112 of file speed_limiter.h.
Definition at line 122 of file speed_limiter.h.
Definition at line 126 of file speed_limiter.h.
Definition at line 118 of file speed_limiter.h.
Definition at line 121 of file speed_limiter.h.
Definition at line 125 of file speed_limiter.h.
Definition at line 117 of file speed_limiter.h.