How to find a variable in Simulink Model

167 次查看(过去 30 天)
I want to know the variable uses in demo sldemo_mdlref_datamngt.mdl.here assume in counter2 ,right click and if u see Model Reference Parameter there are two variables Params, ICs under Model argument values (for this instance).Can I know what it is and what are its values.I read help in Simulink but could not get relevant answer .On what basis these variables arte passed

采纳的回答

Sebastian Castro
Sebastian Castro 2015-7-10
The most general answer to your question is to use the Model Explorer. It's a great tool that lets you navigate through a model hierarchy and look at all the variables defined in different places.
You can also
  1. Search for variables within the Model Explorer.
  2. Right-click a variable in Model Explorer and select "Find where used".
  3. Right-click any Simulink model or block and select "Find referenced variables".
  4. Use the Simulink.findVars function to do search variables programmatically. [Example here]
- Sebastian
  1 个评论
Alexander Guth
Alexander Guth 2019-5-7
Hi,
I know this is kind of an outdated thread, but I have a follow-up question. All of your above points work, however it is a different story if I am looking for a nested variable (in a struct) as also asked by the original author. If I use "Find referenced variables" it just tells me that the generic struct (where I store all of my parameters) is used - which is of no help at all. Also findVars did not work following this approach:
Simulink.findVars('Wind_Turbine','Name','WT_Params.Generator.frequency')
% 0×0 VariableUsage array with properties: (...)
How can I find these usages of these nested variables?

请先登录,再进行评论。

更多回答(2 个)

dc
dc 2023-6-3
编辑:dc 2023-6-3
wondful answer,to search under reference,i modified like this:
varObj = Simulink.VariableUsage(varNames,'base workspace');
unusedVars = Simulink.findVars(modelname,varObj,...
'FindUsedVars','off','SearchReferencedModels','on');

Omid Saber
Omid Saber 2020-1-23
You can do what Sebastian said to find where the parameters are used. But if you're looking for the valuesor how that parameter is initiated, you should look under the mask. For this, if the mask is linked to a library either got to the library block or break the link to library and work locally on the mask. Right click on the mask and click on Mask>Edit Mask. In the opened window go to the Initilization tabThat's where the parameters are locally defined and you can edit them.

类别

Help CenterFile Exchange 中查找有关 Interactive Model Editing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by