Search FAQs
Can the SoMachine V4.3 / EcoStruxure Machine Expert array size be changed at runtime?
Issue
I would like to have a dynamic array size during runtime of my SoMachine or EcoStruxure Machine Expert PLC. How is this done?
Product
SoMachine
EcoStruxure Machine Expert
Environment
PLC Configuration Software programming
Resolution
This can be achieved by assigning a Symbol (tag/variable) inside the definition of the array.
Example - this is the declaration of a dynamically sized Array of INTs:
VAR
iArrayIndex1 : INT;
MyIntArray : ARRAY [0..iArrayIndex1] OF INT;
END_VAR
NOTE:
1) Dynamic Arrays will not work with variable sharing to HMI via the Symbol Configuration Node. Vijeo Designer and EcoStruxure Operator Terminal Expert do not handle Dynamic Arrays.
2) If you are using Dynamic Arrays inside Functions or Function Blocks, the instantiated memory size for a called Function or Function Block is limited, so limit the maximum value of the index accordingly and test your application thoroughly.
I would like to have a dynamic array size during runtime of my SoMachine or EcoStruxure Machine Expert PLC. How is this done?
Product
SoMachine
EcoStruxure Machine Expert
Environment
PLC Configuration Software programming
Resolution
This can be achieved by assigning a Symbol (tag/variable) inside the definition of the array.
Example - this is the declaration of a dynamically sized Array of INTs:
VAR
iArrayIndex1 : INT;
MyIntArray : ARRAY [0..iArrayIndex1] OF INT;
END_VAR
NOTE:
1) Dynamic Arrays will not work with variable sharing to HMI via the Symbol Configuration Node. Vijeo Designer and EcoStruxure Operator Terminal Expert do not handle Dynamic Arrays.
2) If you are using Dynamic Arrays inside Functions or Function Blocks, the instantiated memory size for a called Function or Function Block is limited, so limit the maximum value of the index accordingly and test your application thoroughly.
Released for:Schneider Electric United Arab Emirates
Did this answer your question?
Explore more
Explore more