Simulink Control Design™ - MathWorks

(Tuis.) #1

Tunable Gain Surfaces


Use the tunableSurface command to construct a tunable model of a gain surface
sampled over a grid of design points (σ values). For example, consider the gain with
bilinear dependence on two scheduling variables, α and V:


Kpα,V =K 0 +K 1 α+K 2 V+K 3 αV.

Suppose that α is an angle of incidence that ranges from 0° to 15°, and V is a speed that
ranges from 300 m/s to 700 m/s. Create a grid of design points that span these ranges.
These design points must match the parameter values at which you sample your varying
or nonlinear plant. (See “Plant Models for Gain-Scheduled Controller Tuning” on page 11-
18.)


[alpha,V] = ndgrid(0:5:15,300:100:700);
domain = struct('alpha',alpha,'V',V);


Specify the basis functions for the parameterization of this surface, α, V, and αV. The
tunableSurface command expects the basis functions to be arranged as a vector of
functions of two input variables. You can use an anonymous function to express the basis
functions.


shapefcn = @(alpha,V)[alpha,V,alpha*V];


Alternatively, use polyBasis, fourierBasis, or ndBasis to generate basis functions of
as many scheduling variables as you need.


Create the tunable surface using the design points and basis functions.


Kp = tunableSurface('Kp',1,domain,shapefcn);


Kp is a tunable model of the gain surface. tunableSurface parameterizes the surface
as:


Kpα,V =K 0 +K 1 α+K 2 V+K 3 αV,

where


α=
α−7.5
7.5

, V=


V− 500


200


.


The surface is expressed in terms of the normalized variables, α,V∈ −1,1
2
rather than
in terms of α and V. This normalization, which tunableSurface performs by default,


Parameterize Gain Schedules
Free download pdf