How do I define global variables using PLC Coder?

4 views (last 30 days)

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 5 Sep 2024
Edited: MathWorks Support Team on 5 Sep 2024
The supported way of defining global variables for PLC Coder is using Data Store Memory (DSM) blocks that resolve to Simulink.Signal objects. See below documentation page for more information:
>> web(fullfile(docroot, 'plccoder/define-global-variables.html')) >> web(fullfile(docroot, 'plccoder/release-notes.html?rntext=&startrelease=R2014b&endrelease=R2019a&groupby=release&searchHighlight='))
To model externally defined output data, use DSM read/write block to access the data; to suppress the definition as VAR_GLOBAL, add the Simulink.Signal name to the "Externally defined symbols" list as follows: Simulation > Model Configuration Parameters > PLC Code Generation > Symbols pane > Externally Defined Symbols.
Attached is an example which illustrates this. Things to note:
  1. The global variable is defined as a 'Simulink.Signal' in the PreLoadFcn callback of the model (File > Model Properties > Model Properties > Callbacks tab)
  2. In the Data Store Memory block's Signal Attributes tab, check the 'Data store name must resolve to Simulink signal object.'.
Note that in contrast to Embedded Coder, PLC Coder does not support using signals that resolve to a Simulink.Signal object to define global variables.

More Answers (0)

Categories

Find more on Simulink PLC Coder in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!