LightLib
PROS library for VEX V5: EKF/MCL localization, RAMSETE path following, high-level chassis API
Loading...
Searching...
No Matches
autotune.hpp
Go to the documentation of this file.
1#pragma once
2
3namespace light {
4
14void autotune_ekf_noise(int sampleMs = 10, int durationMs = 5000, int warmupMs = 500);
15
21void autotune_mcl_noise(int sampleMs = 20, int durationMs = 4000, int warmupMs = 300);
22
43void autotune_turn_pid (float turnAngleDeg = 180.0f, float overshootThreshDeg = 3.0f, int maxIters = 20);
44void autotune_drive_pid (float driveDistIn = 24.0f, float overshootThreshIn = 0.5f, int maxIters = 20);
45void autotune_swing_pid (float swingAngleDeg = 90.0f, float overshootThreshDeg = 3.0f, int maxIters = 20);
46void autotune_heading_pid(float driveDistIn = 48.0f, float peakDiffMv = 3000.0f, int maxIters = 20);
49} // namespace light
Initialize once via init(); poll getPose/setPose from any task.
Definition pid.hpp:22
void autotune_heading_pid(float driveDistIn=48.0f, float peakDiffMv=3000.0f, int maxIters=20)
void autotune_swing_pid(float swingAngleDeg=90.0f, float overshootThreshDeg=3.0f, int maxIters=20)
void autotune_drive_pid(float driveDistIn=24.0f, float overshootThreshIn=0.5f, int maxIters=20)
void autotune_turn_pid(float turnAngleDeg=180.0f, float overshootThreshDeg=3.0f, int maxIters=20)
void autotune_ekf_noise(int sampleMs=10, int durationMs=5000, int warmupMs=500)
Stationary EKF process-noise calibration.
void autotune_mcl_noise(int sampleMs=20, int durationMs=4000, int warmupMs=300)
Stationary MCL distance-sensor noise calibration.