Repeating variable names in code generation

6 Ansichten (letzte 30 Tage)
SergMariupol
SergMariupol am 25 Mär. 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 Kommentare
SergMariupol
SergMariupol am 26 Mär. 2025
Bearbeitet: SergMariupol am 26 Mär. 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 am 27 Mär. 2025
Including a sample model along with images of it would greatly aid the community in providing you with better assistance!

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Marie Anna NOVIELLO
Marie Anna NOVIELLO am 27 Mär. 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)

Kategorien

Mehr zu Decision Logic finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by