MATLAB Answers

Sean
0

How to make Simulink.Parameter parameters stored in model workspace tunable?

Asked by Sean
on 29 Oct 2018
Latest activity Answered by Nick Sarnie on 3 Nov 2018
I'm using Embedded Coder to generate C++ code, in r2016b. The documentation (e.g. link ) says I can make a Simulink.Parameter parameter tunable simply by changing Storage Class to SimulinkGlobal (I want tunable parameters to show up in the generated code as elements of a parameters struct).
However, I find that when the parameter is stored in the Model Workspace, the generated code does not contain a tunable parameter, yet if that same parameter is stored in the Base Workspace, the code generator does what I expect it to do and generates a tunable parameter. After skimming many pages of documentation I haven't found any mention of a limitation here though.
I'm able to reproduce this issue in the built-in demo exercise "rtwdemo_paraminline" ( link ) - when the gain parameter is stored in the Model Workspace, the resulting code has the parameter inlined (not tunable), but when stored in base workspace the generated code has it tunable.

  0 Comments

Sign in to comment.

1 Answer

Answer by Nick Sarnie on 3 Nov 2018
 Accepted Answer

Hi Sean,
This is a limitation of R2016b. In the R2016b doc for Simulink.Parameter , you will notice the following line under Storage Class:
If you store the parameter object in a model workspace, the code generator ignores this property.
I tried this out in R2018b and everything worked as expected.
Thanks, Nick

  0 Comments

Sign in to comment.