IEC 61131-10

Programmable controllers – Part 10: PLC open XML exchange format

active, Most Current
Buy Now
Organization: IEC
Publication Date: 1 April 2019
Status: active
Page Count: 558
ICS Code (IT applications in information, documentation and publishing): 35.240.30
ICS Code (IT applications in industry): 35.240.50
ICS Code (Industrial process measurement and control): 25.040.40


This part of IEC 61131 specifies an XML-based exchange format for the export and import of IEC 61131-3 projects. A complete IEC 61131-3 project implemented in an IEC 61131-3 environment can be transferred between different programming environments. It allows for the exchange of configuration elements, data types, and POUs written in:

• the textual language, instruction list (IL),

• the textual language, structured text (ST),

• the graphical language, ladder diagram (LD),

• the graphical language, function block diagram (FBD), and

• sequential function chart (SFC).

The exchange format is specified as a corresponding XML schema. The XML schema is an independent file with the .xsd extension and as such part of this specification. The specification of this schema is contained in Annex A. Annex B provides recommended schemata for extensions. An example XML document is given in Annex C. It is assumed that the reader of this document is familiar with XML technology.

The usage of the XML exchange format should provide more than a simple export/import from one development environment to another. All relevant information should be exported. This may include coordinate information for graphical tools. The importing tool should be able to filter which parts of this information need to be imported into its destination environment. Vendor-specific information and attributes may be included in the export file and selectively imported, if applicable. The vendor-specific information shall not influence the logic part of the program. Filtering should be done on the import - thus vendors shall ensure that their extensions of the XML schema are done in such a way that neglecting the information during import does not affect the functionality of the IEC 61131-3 project. Vendor specific attributes and information may be added by vendor specific XML schema - besides the XML exchange format defined in this document.

The described formats are designed for the import and export of IEC 61131-3 projects. Such an IEC 61131-3 project can be under development and as a consequence be incomplete.

Concerning the exchange of graphical language constructs between different programming systems, the focus is on logical information with optional explicit graphics.

Implementation specific parameters

This document does not provide means or requirements for compliant functionality (e.g. functional subset which has to be supported by all Programming and Debugging Tools (PADTs)). This document enables the exchange of all possible features defined in IEC 61131- 3. Moreover, many implementation-specific features can be expressed using the AddData mechanism.

In some use cases, programs are either transferred from one PADT to another or generated for the use in a different PADT. In both cases, the function set of these PADTs may be different as well as their settings of implementation-dependent parameters. If several PADTs have to be supported/considered, the functionality of the program has to be restricted to the subset supported by all PADTs in question. Some of these functions can be determined from the IEC 61131-3 feature tables of the concerned PADT, for example:

• supported data types and standard functions,

• pre-emptive or non-pre-emptive scheduling,

• SFC with or without a final scan, etc.

Other functions and settings of implementation dependent parameters may require more effort to determine, for example:

• maximum amounts of code or variables per POU,

• maximum length of identifiers (variable name length),

• size of STRING and WSTRING variables with default length or maximum length,

• SFC to evaluate all transition conditions or only those with active steps as predecessors,

• range and precision of data types TIME, DATE, TOD, DT,

• runtime performance of (the POU in) the PLC,

• execution order within a graphical network, etc.

These differences have to be considered for use cases with more than one PADT. In some cases it may be appropriate to use only functionality supported by all concerned PADTs; in other cases, it may be necessary to manually change and test the program after importing into the PADT.

This document does not state requirements regarding compliant functions of the PADT. It defines an exchange format to exchange programs that are compliant with IEC 61131-3.

Document History

IEC 61131-10
April 1, 2019
Programmable controllers – Part 10: PLC open XML exchange format
General This part of IEC 61131 specifies an XML-based exchange format for the export and import of IEC 61131-3 projects. A complete IEC 61131-3 project implemented in an IEC 61131-3 environment can...