How to set an array parameter with variable size for simulink model
6 ビュー (過去 30 日間)
古いコメントを表示
I want to set an array parameter can be filled by the model user (who is also a developer) in the generated source file (like .h file in C language) and the length of this array is not limited. And then, I can get the size of this array in the model and traverse it.
For example, the model generate a source file as:
const int THE_ARRAY_PARAMETER[] = { 1, 2, 3 };
The model user can filled it, such as:
const int THE_ARRAY_PARAMETER[] = { 10, 20, 30, 40, 50 };
I can get the size of THE_ARRAY_PARAMETER and traverse it in the model.
But I don't know how to set this kinds of array parameter in the model and how to get the size of the array.
0 件のコメント
回答 (1 件)
Harsh
2025 年 1 月 29 日 9:13
Hi,
You can use “Simulink.Parameter” object to set the value of one or more block parameters in a model. To get or set the size of the “Simulink.Parameter” object you can use the “Dimensions” property.
The following code snippet creates a 1x5 array parameter-
THE_ARRAY_PARAMETER = Simulink.Parameter;
% Set the value of the parameter (array)
THE_ARRAY_PARAMETER.Value = [10, 20, 30, 40, 50];
% Set the data type
THE_ARRAY_PARAMETER.DataType = 'int32';
% Set the dimensions
THE_ARRAY_PARAMETER.Dimensions = [1, 5]; % 1x5 array
Use the following command to open documentation for “Simulink.Parameter” and learn more about it-
doc Simulink.Parameter
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!