MATLAB Answers

mpt.parameter Structure Values Being Variant Dependent

1 ビュー (過去 30 日間)
Mahmoud Hassanien
Mahmoud Hassanien 2019 年 11 月 7 日
Commented: Mahmoud Hassanien 2019 年 11 月 17 日
I have an mpt.parameter where value is a struct and data type is a Simulink.Bus.
For example:
tmp = mpt.Parameter;
% myStruct is supposed to be a struct defined before
tmp.Value = myStruct;
% myDT_tstrCalib is supposed to be a Simulink.Bus defined before with elements as many as myStruct
tmp.DataType = 'Bus: myDT_tstrCalib';
tmp.CoderInfo.StorageClass = 'Custom';
tmp.CoderInfo.Alias = 'myAlias_strCalib';
tmp.CoderInfo.CustomStorageClass = 'myCSC';
tmp.CoderInfo.CustomAttributes.MemorySection = 'RAM_CAL';
What I use in simulink blocks is
tmp.x
where x is a field in myStruct.
The upper code produces a structure with names as in myDT_tstrCalib and values as in myStruct when I generate code using embedded coder.
What I seek is using variant subsystems and having some of tmp being in more than one variant with different values.
what shall I do?

  0 件のコメント

サインイン to comment.

採用された回答

Mark McBroom
Mark McBroom 2019 年 11 月 9 日
You might be able to do this by turning the contents of each variant sub-system into reference model and then setting up each reference model to use instance specific parameters. See this link:

  1 件のコメント

Mahmoud Hassanien
Mahmoud Hassanien 2019 年 11 月 17 日
I did somthing like what's in the link but when I generate code, the tmp structure isn't defined as a structure data type; myDT_tstrCalib as it should be. Instead, only the used elements are generated and the name of the structure is something that embedded coder creates on its own.

サインイン to comment.

More Answers (0)

サインイン してこの質問に回答します。


Translated by