MATLAB Answers


Parameters of a level-2 s function

Asked by Owen
on 10 Nov 2012


In the Level-2 S function block there is a parameter called "Parameters". Can this name be changed to others, say, "Speed"?

Thanks Senmeis


2 Answers

Answer by Kaustubha Govind
on 12 Nov 2012

To create your own parameter prompts, you need to Mask the S-function block and simply enter the names of the dialog parameter variables on the underlying "Parameters" field of the S-function.


on 14 Nov 2012

Thank you very much.


on 15 Nov 2012

The name of parameters can be edited with the mask editor, but there is a serious problem: the parameters cannot be passed into the S function!

I have such lines in the S function:

tmp = block.DialogPrm(1).Data; assignin('base', 'x', tmp);

It works without masking, but 'x' cannot get the value of the parameter after masking.

My configuration of the masking looks like this:

prompt = variable1; variable = var1; type = edit; Evaluate and Tunable: Yes.

Did I make some mistakes?


Kaustubha Govind
on 15 Nov 2012

Have you entered "var1" (without quotes) in the underlying Parameters field of the actual S-function dialog? You need to right-click on your block and select Mask>Look Under Mask to see the original S-function dialog.

Answer by Owen
on 18 Nov 2012

With my configuration the string "variable1" is showed in the block dialogue. When I input the number 10 in the parameter field of the block dialogue (under the string "variable1") I expect a variable x = 10 will be showed in the workspace but it doesn't.

Thanks Senmeis


Kaustubha Govind
on 19 Nov 2012

When you say workspace, do you mean the Mask Workspace? Also, you did not answer whether you have added var1 to the S-functions Parameters field.

on 20 Nov 2012

It is the base workspace. The variable name 'x' is there but its value is not correct.

I don't understand what you mean by "added var1 to the S-functions Parameters field". In the block parameter dialogue a number such as 10 should be input. The string "var1" doesn’t exist in the block parameter dialogue.


Kaustubha Govind
on 26 Nov 2012

Owen: Right-click on the masked block and select Mask>Look Under Mask. That should open the underlying S-functions dialog, which should have a field called "Parameters" - enter var1 there.

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi test

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!