Validate Gain Schedules in Nonlinear System
Because systune tunes gain schedules against a linearization obtained at each design
point, it is important to test the tuning results in simulation of the full nonlinear system.
Perform nonlinear simulations that drive the closed-loop system through its entire
operating range. Pay special attention to maneuvers that cause rapid variations of the
scheduling variables.
After tuning an slTuner interface, use writeBlockValue to write tuned controller
parameters to the Simulink model for such simulation. This command can write tuned
gain schedules to lookup table blocks, Matrix Interpolation blocks, and MATLAB Function
blocks for which you have specified a tunableSurface parameterization.
Lookup Tables
For lookup table blocks and Matrix Interpolation blocks, writeBlockValue
automatically evaluates the tuned gain surface at the breakpoints specified in the block.
These breakpoints do not need to be the same as the design points used for tuning.
Because the tunableSurface describes the gain schedule in parametric form,
writeBlockValue can evaluate the gain at any scheduling-variable value.
If you have retuned a subset of design points, you can use writeLookupTableData to
update a portion of the lookup-table data while leaving the rest intact.
MATLAB Function Blocks
For gain schedules implemented as MATLAB Function blocks, writeBlockValue
automatically generates MATLABcode and pushes it to the block. The generated MATLAB
function takes the scheduling variables and returns the gain value given by the tuned
parametric expression of the tunableSurface. To see this MATLAB code for a particular
gain surface, use the codegen command.
References
[1] Rugh, W.J., and J.S. Shamma, “Research on Gain Scheduling”, Automatica, 36 (2000),
pp. 1401-1425.
See Also
codegen | viewGoal | viewSurf | writeBlockValue | writeLookupTableData
11 Gain-Scheduled Controllers