Will your controller survive a different motor?
Nominal performance describes one model. Robustness asks what remains true across a stated set of plausible models.
Test a controller under a stated parameter change and distinguish one passing test from a general guarantee.
Sensitivity exposed the tradeoff between signal paths. Robustness adds another question: how much can the actual plant differ from the design model?
Review the previous lesson: Tracking, disturbance and sensitivityFirst, picture it
A motor built today may have more inertia or friction than the one used to tune the controller. A good controller should not depend on the nominal numbers being exact. But 'works for two motors' is a narrower claim than 'works for every possible motor'.
Build the idea step by step
A nominal model is the model used for design. Robustness means meeting stated requirements despite specified differences from that model. Name the uncertain quantities and their ranges first. Keep the controller fixed, change a plant parameter, and compare response speed, final error, and applied input. Then try combinations of changes. Passing a finite set of trials supports a limited claim; it does not prove performance for every possible plant.
Read the equations
Use the actual plant in this expression when assessing a changed plant. A controller designed for one model does not force other plants to have the same poles or final error.
What the symbols mean
- plant model being tested, nominal or changed
- fixed controller gain in this example
- resulting closed-loop transfer function
Keep the same controller while comparing plant variations. Retuning for each trial answers a different question. Nominal gain and phase margins are useful clues, but actuator limits and combined parameter errors still need testing.
The curves illustrate a possible difference, not a numerical result from a specific Lab preset. Hold the controller fixed when testing robustness.
Keep the controller, change the plant gain
Design gain 2 for a normalized plant with transfer function one divided by s plus one.
Keep gain 2 but let the plant gain fall by half. Recalculate the loop rather than reusing the old poles.
Both examples are stable, but a unit-step final output changes from two-thirds to one-half. Stability survived this change; tracking performance worsened. This does not prove tolerance to every delay or parameter error.
More detail and model assumptions
One variable, then combined stress
The Lab's model-mismatch lesson changes actual motor inertia while the nominal frequency model remains fixed. This separation is deliberate: it shows why a Bode curve can stay put as the time trace changes. Vary friction separately, then try both together. Report exactly which values you tried and which performance requirement failed first.
If you tune again after every parameter change, you are testing a family of retuned controllers, not robustness of one fixed design. Keep the same controller while asking the robustness question.
Connect the example to the lab
Pin nominal inertia 1×, compare actual inertia 2× with unchanged gains, then vary friction. Check whether both still meet your written settling and voltage conditions.
Stress-test one motor designMake a prediction before moving a control.
- PREDICTWhich requirement will fail first if inertia or friction changes?
- CHANGE ONE THINGKeep gains fixed; compare inertia 1× and 2×, then friction separately.
- OBSERVERecord response, applied voltage and any saturation or fault.
- EXPLAINLimit your conclusion to the parameter range actually tested.
Passing a finite parameter sweep is evidence for the tested cases, not a theorem about all untested parameter values, disturbances or manufacturing variation.
Check your understanding+
If the nominal Bode plot does not change when actual inertia doubles, does the actual motor behave identically?
No. The panel still analyzes the fixed design model; the nonlinear time run uses the changed plant parameter.Why the next lesson follows
Changing feedback gain affects both tracking and disturbance response. A separate reference path lets us adjust one without changing the nominal loop poles.