Simulink Control Design™ - MathWorks

(Tuis.) #1
query = (qNotSISO & qOnPath) | qZero

query =
CompoundQuery with properties:

QueryType: '((~((Has 1 Outputs & Has 1 Inputs)) & On Linearization Path) | Linearized to Zero)'
Description: ''

Find All SISO Blocks

Load the Simulink model.

mdl = 'scdspeed';
load_system(mdl)

Linearize the model and obtain the LinearizationAdvisor object.

opts = linearizeOptions('StoreAdvisor',true);
io(1) = linio('scdspeed/throttle (degrees)',1,'input');
io(2) = linio('scdspeed/rad//s to rpm',1,'output');
[sys,op,info] = linearize(mdl,io,opts);
advisor = info.Advisor;

Create compound query object for finding all blocks with one input and one output.

qSISO = linqueryHasInputs(1) & linqueryHasOutputs(1);

Find all SISO blocks using compound query object.

advSISO = find(advisor,qSISO)

advSISO =
LinearizationAdvisor with properties:

Model: 'scdspeed'
OperatingPoint: [1x1 opcond.OperatingPoint]
BlockDiagnostics: [1x10 linearize.advisor.BlockDiagnostic]
QueryType: '(Has 1 Inputs & Has 1 Outputs)'

17 Objects — Alphabetical List

Free download pdf