Known restrictions - Manual - TIA2ST - A CLI tool to import TIA Portal project data into a SIMATIC AX project. - TIA2ST - Convert parts of TIA Portal projects to ST code,tool

TIA2ST CLI Tool (tia2st)

Portfolio
SIMATIC AX
Product
TIA2ST
Software version
2.0.24
Edition
01/2025
Language
English (original)
Package Name
@ax/tia2st

Given the numerous differences and restrictions between SCL code and ST, it's impossible to compile a comprehensive list. However, to provide some insight, a few key points are highlighted below:

  • The IECST standard introduces some restrictions that are not present in SCL but are enforced by the SIMATIC AX ST compiler.

    • For instance, variables in the VAR_INPUT section cannot be written to, and variables used as FOR iterator must be located in the VAR_TEMP section, among others.

    • Legacy constructs like AT parameter passing will not be supported in AX.

  • Names of PLCs, blocks, types and variables must consist of letters, digits and underscore '_' only.
    Spaces and other special characters are not supported.

    Note

    Adapt them in the TIA Portal project before starting the import-scl command.

  • "Anonymous structures" of functions and function blocks are converted into "named structures".
    The name of the structure is build from the variable name plus ...Type. An example for an anonymous structure you will find in the picture:
    "Anonymous structures" in TIA Portal project

  • In general, instructions of libraries are not converted, with few exceptions:

    • R_TRIG and F_TRIG are converted to instructions from the AX library System.EdgeDetection.
      You must add this library to the dependencies:

      apax add @ax/system-edgedetection
      
    • TON_TIME and related instructions are converted to instructions from the AX library System.Timer
      You must add this library to the dependencies:

      apax add @ax/system-timer
      
    • For SCL blocks using Motion Control instructions MC_* the required namespace Siemens.Simatic.S71500.MotionControl.Native is automatically added.
      You must add one of the Motion Control libraries to the dependencies, such as:

          apax add @ax/simatic-1500-motioncontrol-native-v8
      

      Note

      In Structured Text (ST) technology objects must be assigned via VAR_IN_OUT parameter (Call-by-Reference). This tool automatically moves TOs from the VAR_INPUT section to the VAR_IN_OUT section while transforming the SCL code to ST.

    • Some TIA Portal instructions are not available in SIMATIC AX.
      If a particular instruction is essential for your workflow, please contact the AX support desk to request it.