Repeating variable names in code generation

4 visualizaciones (últimos 30 días)
SergMariupol
SergMariupol el 25 de Mzo. de 2025
Respondida: Marie Anna NOVIELLO el 27 de Mzo. de 2025
I have charts of state flow. When generating a model in code I have a repetition of local variables. How can I avoid this?
An attempt to change the parameters of automatic assignment of names to local variables did not give a result
static boolean_T resultZC0;
static boolean_T resultZC1;
static boolean_T resultZC2;
static boolean_T resultZC0;
static boolean_T resultZC1;
  2 comentarios
SergMariupol
SergMariupol el 26 de Mzo. de 2025
Editada: SergMariupol el 26 de Mzo. de 2025
The problem is the following.
If you have a charts state flow inside which is a simulink function and inside the simulink function and again state flows then local variables initialized in the latter are generated with duplicate names. It needs to be checked, but for now the output is like this
Altaïr
Altaïr el 27 de Mzo. de 2025
Including a sample model along with images of it would greatly aid the community in providing you with better assistance!

Iniciar sesión para comentar.

Respuestas (1)

Marie Anna NOVIELLO
Marie Anna NOVIELLO el 27 de Mzo. de 2025
When MATLAB Coder or Stateflow generates code for a model with numerous states or outputs, you may encounter repetitious local variable names such as resultZC0, resultZC1, and so on. This is a typical issue. This occurs because the program automatically generates variables with similar names but distinguishes them with suffixes such as 0, 1, etc., which might result in code repetition.
Try to use Data Store Memory in Stateflow
(resultZC(0) = (some_condition); % This replaces resultZC0
resultZC(1) = (some_other_condition); % This replaces resultZC1)

Categorías

Más información sobre Decision Logic en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by