Attention

IronPLC can only run very simple programs. The steps described are accurate but many language features are not yet supported.

PLCopen XML

IronPLC supports the PLCopen XML interchange format (TC6 XML) for importing IEC 61131-3 programs from other development environments. The supported version is PLCopen TC6 XML version 2.01 (namespace: http://www.plcopen.org/xml/tc6_0201).

File Extensions

PLCopen XML files use the .xml extension. IronPLC detects PLCopen XML files by the presence of the TC6 XML namespace, not by file extension alone.

Supported Languages

Fully Supported:

  • Structured Text (ST) - Text-based programming language

  • Sequential Function Chart (SFC) - State-machine based programming with ST action bodies

Not Supported:

  • Function Block Diagram (FBD) - Graphical language

  • Ladder Diagram (LD) - Graphical language

  • Instruction List (IL) - Deprecated text-based language

Supported Elements

Data Types:

  • Elementary types (BOOL, INT, REAL, STRING, etc.)

  • Enumeration types

  • Array types (single and multi-dimensional)

  • Structure types

  • Subrange types

  • Type aliases (derived types)

Program Organization Units:

  • Functions

  • Function Blocks

  • Programs

Configuration:

  • Configurations

  • Resources

  • Tasks

  • Program instances

SFC Elements:

  • Steps (including initial step)

  • Transitions with ST conditions

  • Actions with ST bodies

  • Action associations with qualifiers (N, R, S, L, D, P)

Project Discovery

When you point IronPLC at a directory, it automatically detects Beremiz projects by the presence of a plc.xml file. If found, IronPLC loads plc.xml as a PLCopen XML file.