How can I change the values of edit boxes in a mask?

5 views (last 30 days)
Hallo,
I was wondering how to change the values in the edit boxes of simulink block mask. If I understood the following Answer right, this is not possible: https://de.mathworks.com/matlabcentral/answers/98264-why-am-i-unable-to-change-the-default-value-of-a-block-parameter-using-the-set_param-function-in-sim
I would be really happy, if anyone can show me a way to get this done.
Greetings
  4 Comments
Renato SL
Renato SL on 23 Sep 2019
Maybe this reference could help.
I never need to set values of mask parameters programmatically, so I'm not sure what to do.
Perhaps you can give a variable name inside the mask, for example in Cultivator block, you give "value1" as a mask parameter value. Then, in the script, you specify
value1 = 10; %for example
I think that can work, but I don't know if that is what you need.
Malte Otten
Malte Otten on 23 Sep 2019
I took a screenshot from my mask. Maybe this will make it easier. ScreenshotMask.PNG
If I type in the following code, I get the following error message:
>> Simulink.MaskParameter.set(BC,1)
Undefined function or variable 'BC'.

Sign in to comment.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 23 Sep 2019
Just use
get_param(gcb,'BC')
set_param(gcb,'BC','1');
  8 Comments
Malte Otten
Malte Otten on 26 Sep 2019
Hey, thank you for your help ! This works great!
Malte Otten
Malte Otten on 2 Oct 2019
Edited: Malte Otten on 2 Oct 2019
I have now applied the changes to the code but I get another problem. If I use more than one of these statements in the initialization script, e.g.
open_system('Testframe_with_Cultivator_mounted');
% Open the mask of the block
blk='Testframe_with_Cultivator_mounted/Cultivator';
% Set values in the edit boxes of the mask
set_param(blk,'BC',num2str(Mdl.implement.Cultivator.BC));
set_param(blk,'h_S1',num2str(Mdl.implement.Cultivator.h_S1));
it will only change the value in box BC. The value in box h_S1 will not be changed when running the script. Both BC and h_S1 are in the same tab and the I have already checked the name of the boxes to ensure that they are right.
Do you have any suggestion on solving this problem?

Sign in to comment.

More Answers (0)

Categories

Find more on Author Block Masks in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!