Skip to lesson
Westlake RoboticsLearn
Vault

FIRST Tech Challenge

Loading progress…

  • P Control Basics
  • PD Control and Damping
  • Integral Control and When Not to Use It
  • PIDF and Feedforward
  • Dashboard Tuning Workflow

Dashboard Tuning Workflow

Tune with graphs and notes instead of guesses.

PID and Feedforward ControlControl

In this lesson, you will:

  • Freeze a guarded mechanism test contract before changing a tuning value.
  • Compare one-variable dashboard trials using synchronized trace metrics and a recorded voltage gate.
  • Accept or reject a tune from declared limits, cold-init repetitions, and a restorable baseline.

Concept narrative

FTC Dashboard shortens the tuning loop by letting teams adjust constants and graph behavior live. It is powerful only if the test procedure is repeatable.

Robot mental model

Tuning is an experiment. The robot setup, battery voltage, target move, and mechanical condition are part of the data.

Your browser does not support embedded video. Use the open-video link below.
0:00 / 0:00
Tuning from traces: change one variableOpen video Download captions
Video transcriptRead or search the narration

You already know that tuning means changing a parameter and checking the response. Let's make that a controlled experiment where we're not just guessing, and we actually decide what we change next. Before touching a constant, we need to have a good baseline. This sample run uses a 1,000-tick target. It has a kP of 0.0005 and kG of 0.08, and it has an output limit of 0.5. We want to record a few things: the starting state, the target, the voltage band, the output limit, the rise, the overshoot, the settling behavior, and the reason the test ended. A graph without its test conditions is not a reusable baseline. In the code, this fixture keeps the trial really small on purpose. Baseline returns the original kP, kG, and output limit. One-variable trial changes only kP; kG and the limit stay fixed. Ambiguous trial changes both kP and kG, so we have one deliberately invalid comparison. In a real tuning tool, the live values may come from your Dashboard configuration fields. The main rule stays the same: save the starting values somewhere reviewable before actually changing them. Trial A changes kP from 0.0005 to 0.0007. kG, the target, output limit, start state, test conditions, and all the other conditions remain fixed. The lesson's tuning log also rejects a comparison when the battery readings differ by more than 0.2 volts. If those conditions match and the response changes, we can reasonably connect that change to kP.

Implementation walkthrough

Make constants configurable, graph target/actual/error/output, change one value at a time, and copy final reviewed values back into code.

TuningConstants.javaJava

@Config
public class LiftTuning {
    public static double kP = 0.004;
    public static int targetTicks = 1200;
}

Common mistakes and debugging

Dashboard can encourage random knob turning. If students change multiple constants at once, they cannot learn what mattered.

Practice

Tune one guarded vertical-lift fixture from a frozen start state and target sequence. Verify soft limits, reduced output, timeout, and STOP first; change one of kP or kG per run; reject comparisons above ΔV = 0.2 V; export maximum error, overshoot, settling, saturation, limit state, and exit reason; restore the accepted baseline after the two-change fault; then record three cold-init repetitions at each named target.

Checkpoint

  • Soft limits, reduced output, timeout, STOP, payload, start state, target sequence, and logging rate are frozen before tuning.
  • Every comparison changes one controller value and satisfies the recorded ΔV ≤ 0.2 V battery gate.
  • Exported traces report maximum error, overshoot, settling, saturation, limit state, and exit reason with units.
  • The two-change fault is marked inconclusive and the accepted baseline is restored before another trial.
  • Three cold-init repetitions per named target meet the written limits or preserve a bounded failed row.
  • A teammate can reproduce one accepted result from the saved configuration and tuning log.

Reflection check

Check your understanding before moving on.

What must be established before changing kP or kG on a guarded lift fixture?
Which evidence is strong enough to accept a dashboard-tuned candidate?

0 of 2 answered

References

FTC DashboardLive telemetry, graphs, config variables, and camera streaming.Game Manual 0FTC community reference for programming, controls, and robot design.
Loading lesson progress
Previous lessonPIDF and FeedforwardNext lessonMotion Profile Concepts