Attention
IronPLC supports IEC 61131-3 Structured Text excluding I/O mapping.
IronPLC and the IEC 61131-3 Ecosystem¶
This page explains where IronPLC fits in the broader world of PLC development tools.
The Traditional PLC Workflow¶
Most PLC manufacturers ship an integrated development environment (IDE) tied to their hardware. For example:
Beckhoff provides TwinCAT, which runs inside Visual Studio.
Siemens provides TIA Portal for its S7 family.
Codesys provides a vendor-neutral IDE that many smaller manufacturers rebrand (including the open-source Beremiz project).
These tools handle everything: editing, compiling, downloading to hardware, debugging, and visualization. They are powerful, but they are also proprietary, expensive, and locked to specific hardware.
What IronPLC Does Today¶
IronPLC is an open-source toolchain for working with IEC 61131-3 code. Today it provides:
A compiler (ironplcc) that parses and checks IEC 61131-3 programs for correctness. It catches syntax errors, type mismatches, and other problems before you ever download code to a PLC.
A VS Code extension that provides auto-completion, syntax highlighting and real-time error checking as you type.
A runtime (ironplcvm) that can execute compiled programs.
Try it now — this program increments a counter on every scan cycle:
IronPLC reads several source formats:
Structured Text (
.stfiles) — the native text formatPLCopen XML (
.xml,plc.xml) — used by Beremiz and other PLCopen-compatible toolsTwinCAT (
.TcPOU,.TcGVL,.plcproj) — used by Beckhoff TwinCAT 3
This means you can point IronPLC at an existing project from Beremiz or TwinCAT and get a second opinion on your code without changing your workflow.
How IronPLC Relates to Other Tools¶
Tool |
Relationship to IronPLC |
|---|---|
Beremiz |
An open-source PLC IDE. IronPLC can read Beremiz project files
( |
TwinCAT |
Beckhoff’s PLC IDE. IronPLC can read TwinCAT project files to provide additional checking. See Check TwinCAT 3 Projects. |
Codesys |
A widely used commercial PLC IDE. IronPLC does not currently read Codesys project files, but Codesys can export to PLCopen XML. |
OpenPLC |
An open-source PLC runtime. IronPLC and OpenPLC share the goal of making PLC development more accessible through open-source tools. |