Main Content

Gain Scheduling

R2026b
Tuning of gain-scheduled controllers for nonlinear plants

A gain-scheduled controller is a controller whose gains are automatically adjusted as a function of time, operating condition, or plant parameters. Gain scheduling is a common strategy for controlling systems whose dynamics change with time or operating condition. Such systems include linear parameter-varying (LPV) systems and large classes of nonlinear systems. To tune gain-scheduled controllers in MATLAB® or Simulink®, you represent the variable gain as a function of the scheduling variables using the tunableSurface command. For an overview of the workflow for tuning gain-scheduled controllers, see Gain Scheduling Basics.

Functions

expand all

tunableSurfaceCreate tunable gain surface for gain scheduling
polyBasisPolynomial basis functions for tunable gain surface
fourierBasisFourier basis functions for tunable gain surface
ndBasisBasis functions for tunable gain surface
viewSurfVisualize gain surface as a function of scheduling variables
evalSurfEvaluate gain surfaces at specific design points
getDataGet current values of tunable-surface coefficients
setDataSet values of tunable-surface coefficients
codegenGenerate MATLAB code for tunable gain surfaces
systuneTune fixed-structure control systems modeled in MATLAB
slTunerInterface for control system tuning of Simulink models
systune (slTuner)Tune control system parameters in Simulink using slTuner interface
voidModelMark missing or irrelevant models in model array
varyingGoalVariable tuning goal for gain-scheduled controllers
getGoalEvaluate variable tuning goal at specified design point

Blocks

expand all

Varying Lowpass Filter blockVarying Lowpass FilterButterworth filter with varying coefficients
Varying Notch Filter blockVarying Notch FilterNotch filter with varying coefficients
PID Controller blockPID ControllerContinuous-time or discrete-time PID controller
PID Controller (2DOF) blockPID Controller (2DOF)Continuous-time or discrete-time two-degree-of-freedom PID controller
Varying Transfer Function blockVarying Transfer FunctionTransfer function with varying coefficients
Varying State Space blockVarying State SpaceState-space model with varying matrix values
Varying Observer Form blockVarying Observer FormObserver-form state-space model with varying matrix values
Discrete Varying Lowpass blockDiscrete Varying LowpassDiscrete Butterworth filter with varying coefficients
Discrete Varying Notch blockDiscrete Varying NotchDiscrete-time notch filter with varying coefficients
Discrete PID Controller blockDiscrete PID ControllerDiscrete-time or continuous-time PID controller
Discrete PID Controller (2DOF) blockDiscrete PID Controller (2DOF)Discrete-time or continuous-time two-degree-of-freedom PID controller
Discrete Varying Transfer Function blockDiscrete Varying Transfer FunctionDiscrete-time transfer function with varying coefficients
Discrete Varying State Space blockDiscrete Varying State SpaceDiscrete-time state-space model with varying matrix values
Discrete Varying Observer Form blockDiscrete Varying Observer FormDiscrete-time observer-form state-space model with varying matrix values

Topics

Gain-Scheduled Control Systems

  • Gain Scheduling Basics
    Gain scheduling is an approach to control of non-linear systems using a family of linear controllers, each providing satisfactory control for a different operating point of the system.
  • Model Gain-Scheduled Control Systems in Simulink
    In Simulink, model gain schedules using lookup tables, interpolation blocks, or MATLAB Function blocks.

Tune Gain Schedules

HL-20 Autopilot Case Study

Related Information

Featured Examples