Simulink Control Design™ - MathWorks

(Tuis.) #1

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 query object, and find all the linearized blocks with two inputs.


qIn = linqueryHasInputs(2);
advIn = find(advisor,qIn)


advIn =
LinearizationAdvisor with properties:


Model: 'scdspeed'
OperatingPoint: [1x1 opcond.OperatingPoint]
BlockDiagnostics: [1x13 linearize.advisor.BlockDiagnostic]
QueryType: 'Has 2 Inputs'


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.


linqueryHasInputs
Free download pdf