Simulink PLC Coder Structured Text Code Generation Limitations

General Limitations

The Simulink® PLC Coder™ software does not support :

  • Complex data types

  • String data types

  • Model reference

  • Stateflow® machine-parented data and events

  • Stateflow messages

  • Limited support for math functions

  • Merge block

  • Step block

  • Clock block

  • Signal and state storage classes

  • Shared state variables between subsystems

  • For Each Subsystem block

  • Variable-size signals and parameters

  • MATLAB System block or system objects

  • MATLAB® classes.

  • The use of Simulink.CoderInfo Identifier name property with Simulink.Parameter and Simulink.Signal objects.

  • Simulink.Signal is supported only with data Store memory objects.

  • code generation for Simulink signals that do not resolve to a Simulink.Signaldata store memory object.

  • code generation when UseRowMajorAlgorithm='on'.

Simulink PLC Coder Restrictions

The Structured Text language has inherent restrictions. As a result, the Simulink PLC Coder software has the following restrictions:

  • The Simulink PLC Coder software supports code generation only for atomic subsystems.

  • The Simulink PLC Coder software supports automatic, inline, or reusable function packaging for code generation. Nonreusable function packaging is not supported.

  • No blocks that require continuous time semantics. This restriction includes continuous integrators, zero-crossing blocks, physical modeling blocks, and so on.

  • No pointer data types.

  • No recursion (including recursive events).

  • Nonfinite data, for example NaN or Inf, is not supported.

  • MATLAB 64-bit data types are not supported.