MATLAB Answers

Can I find where a Simulink.Signal object is stored based on a Data Store Read/Write in the model?

조회 수: 10(최근 30일)
Hadi Zyien
Hadi Zyien 28 Sep 2018
댓글: Hadi Zyien 30 Oct 2018
Simulink.Signal objects can be stored in the base workspace, model workspace, and/or a data dictionary. If I have a Data Store Read or Write that refers to a Simulink.Signal object (i.e., a "global" data store), is it possible to determine which one it is using? Can I do this programmatically? Using the get_param function on the data store read/write does not show any useful parameters that could associate a data store to its definition.

  댓글 수: 0

Sign in to comment.

채택된 답변

TAB 28 Sep 2018
편집: TAB 28 Sep 2018
If Simulink.Signal object name is "x"
>> varInfo = Simulink.findVars('MyModel','Name','x')
varInfo =
VariableUsage with properties:
Name: 'x'
Source: 'base workspace'
SourceType: 'base workspace'
Users: {[1x26 char]}

  댓글 수: 3

Hadi Zyien
Hadi Zyien 28 Sep 2018
Thanks! That was exactly what I needed. Is there any way I can get the data store's DataType and Dimensions?
TAB 1 Oct 2018
get_param('MyModel/Data Store Memory', 'OutDataTypeStr')
get_param('MyModel/Data Store Memory', 'Dimensions')
Hadi Zyien
Hadi Zyien 30 Oct 2018
I am not sure that this works for Simulink.Signal objects:
get_param(varInfo.Users{1}, 'OutDataTypeStr')
DataStoreRead block does not have a parameter named 'OutDataTypeStr'
How can I use the Simulink.Signal name to find the Data Type and Dimensions?

Sign in to comment.

추가 답변(0개)

Translated by