class RamseteFollower : TrajectoryFollower
Time-varying, non-linear feedback controller for nonholonomic drives. See equation 5.12 of Ramsete01.pdf.
b
- b parameter (non-negative)
zeta
- zeta parameter (on (0, 1))
kV
- feedforward velocity gain
kA
- feedforward acceleration gain (currently unused)
kStatic
- additive feedforward constant (used to overcome static friction)
RamseteFollower(drive: TankDrive, b: Double, zeta: Double, kV: Double, kA: Double, kStatic: Double, clock: NanoClock = NanoClock.system())
Time-varying, non-linear feedback controller for nonholonomic drives. See equation 5.12 of Ramsete01.pdf. |
var lastError: Pose2d
Robot pose error computed in the last update call. |
val clock: NanoClock
clock |
|
var trajectory: Trajectory |
fun update(currentPose: Pose2d): Unit
Run a single iteration of the trajectory follower. |
fun elapsedTime(): Double
Returns the elapsed time since the last followTrajectory calls. |
|
fun followTrajectory(trajectory: Trajectory): Unit
Follow the given trajectory. |
|
fun isFollowing(): Boolean
Returns true if the current trajectory has finished executing. |