Find variable in Simulink blocks

In a Simulink model 'myModel', I would like to find all blocks that use the variable 'myVariable', even before the variable's value exists in the workspace. The variable appears in several constant blocks, which I want to highlight. But the following approach produces the error below. What am I doing wrong?
Simulink.findVars('myModel', 'Name', 'myVariable')
Model 'myModel' failed to successfully compile, any cached results may be incomplete.
Caused by: Error evaluating expression 't_total' for 'Stop time' specified in the Configuration Parameters dialog for block diagram 'myModel': Undefined function or variable 't_total'.

 Akzeptierte Antwort

Kaustubha Govind
Kaustubha Govind am 7 Mär. 2012

5 Stimmen

The particular error that you are seeing is about t_total being undefined, but in general, you do need to define all variables being used in the model (including 'myVariable'). Simulink attempts to compile the model (equivalent to Ctrl+D) in the algorithm used to find the variables, and Ctrl+D will fail if you have not defined the required variables.

2 Kommentare

K E
K E am 7 Mär. 2012
Thanks. I did have to create all variables in the workspace before being able to find myVariable. Here is how to highlight the blocks containing the variable, in case someone finds it useful:
thisVar = Simulink.findVars('myModel', 'Name', 'myVariable')
hilite_system(thisVar.UsedByBlocks,'find')
And this demo was helpful, http://www.mathworks.com/videos/simulink/find-variables-used-by-a-simulink-model.html
K E
K E am 7 Mär. 2012
And to turn off highlighting,
hilite_system(thisVar.UsedByBlocks,'none')

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by