Skip to Main Content Skip to Search
Product Documentation

Simulink Control Design Checks

Identify time-varying source blocks interfering with frequency response estimation

Identify all time-varying source blocks in the signal path of any output linearization point marked in the Simulink model.

Description

Frequency response estimation uses the steady-state response of a Simulink model to a specified input signal. Time-varying source blocks in the signal path prevent the response from reaching steady-state. In addition, when such blocks appear in the signal path, the resulting response is not purely a response to the specified input signal. Thus, time-varying source blocks can interfere with accurate frequency response estimation.

This check finds and reports all the time-varying source blocks which appear in the signal path of any output linearization output points currently marked on the Simulink model. The report:

For more information about the algorithm that identifies time-varying source blocks, see the frest.findSources reference page.

Input Parameters

FRESTIMATE options object to compare results against

Provide the paths of any blocks to exclude from the check. Specify the block paths as an array of Simulink.BlockPath objects. This array is stored in the BlocksToHoldConstant field of an option set you create with frestimateOptions. See the frestimateOptions reference page for more information.

Results and Recommended Actions

ConditionRecommended Action

Source blocks exist whose output reaches linearization output points currently marked on the model.

Consider holding these source blocks constant during frequency response estimation.

Use the frest.findSources command to identify time-varying source blocks at the command line. Then use the BlocksToHoldConstant option of frestimateOptions to pass these blocks to the frestimate command. For example,

% Get linearization I/Os from the model.
mdl = 'scdengine';
io = getlinio(mdl);
% Find time-varying source blocks.
blks = frest.findSources(mdl,io); 
% Create options set with blocks to hold constant.
opts = frestimateOptions; 
opts.BlocksToHoldConstant = blks; 
% Run estimation with the options.
in = frest.Sinestream;
sysest = frestimate(mdl,io,in,opts); 

For more information and examples, see the frest.findSources and frestimateOptions reference pages.

Tip

Sometimes, the model includes referenced models containing source blocks in the signal path of an output linearization point. In such cases, set the referenced models to normal simulation mode to ensure that this check locates them. Use the set_param command to set SimulationMode of any referenced models to Normal before running the check.

See Also

  


Free Control Systems Interactive Kit

Learn more about resources for designing, testing, and implementing control systems.

Get free kit

Trials Available

Try the latest control systems products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS