IEC 61131

IEC 61131 is an international standard for programmable controllers within Industrial Automation. The standard defines the Architecture, programming languages, software models and configuration principles for PLCs and related automation systems. IEC 61131 forms the technical basis of a large part of modern Industrial Automation, ranging from discrete machine control to complex process installations within energy, water treatment, building management and manufacturing environments.

The standard was developed by the International Electrotechnical Commission (IEC) and consists of multiple parts. The best-known part is IEC 61131-3, which defines the programming languages for industrial control. These languages form the worldwide standard for engineering PLC software and are supported by virtually all major vendors such as Siemens, Schneider Electric, Rockwell Automation, Beckhoff, Omron and Phoenix Contact.

IEC 61131 has had a major impact on the convergence between IT and OT. Whereas PLC programming used to be highly vendor-specific, IEC 61131 introduced uniform programming concepts, standardised data types and modular software structures. As a result, reusability, maintainability and interoperability improved significantly.


⚙️ Structure of the IEC 61131 standard

IEC 61131 consists of multiple parts that together describe the full ecosystem of programmable controllers.

Part Topic
IEC 61131-1 General information
IEC 61131-2 Hardware requirements and testing
IEC 61131-3 Programming languages
IEC 61131-4 User guidelines
IEC 61131-5 Communication
IEC 61131-6 Functional safety
IEC 61131-7 Fuzzy Logic
IEC 61131-8 Implementation guidelines
IEC 61131-9 Single-drop digital communication for sensors

Within industrial environments, IEC 61131-3 is particularly dominant because of its standardisation of programming languages and software architecture.


🧠 IEC 61131-3 programming languages

IEC 61131-3 defines five official programming languages for PLC programming.

Ladder Diagram (LD)

PLC programming language based on Relay logic. Ladder Diagram is widely used within machine building and electrical engineering environments because of its recognisable visual structure.

Characteristics:

  • Strongly suited to discrete signals
  • Easy to understand for electrical engineers
  • Widely applied in legacy installations
  • Less suited to complex algorithms

Applications:

  • Motor control
  • Interlocks
  • Safety chains
  • Start/stop logic
  • Conveyor systems

Function Block Diagram (FBD)

Graphical programming language based on blocks and signal flows.

Characteristics:

  • Strong for Process Automation
  • Highly readable for control engineering
  • Reusable function blocks
  • Intuitive for continuous processes

Widely used within:

  • PID control
  • HVAC systems
  • Chemical processes
  • Energy management
  • Water treatment

Structured Text (ST)

Textual high-level programming language similar to Pascal or Ada.

Characteristics:

  • Suitable for complex calculations
  • Strong support for loops and data structures
  • High scalability
  • Widely used within modern software-driven PLC platforms

Example:

IF Temperature > 80 THEN
    Alarm := TRUE;
END_IF;

Structured Text is increasingly dominant within:


Instruction List (IL)

Assembler-like language that was originally part of IEC 61131-3.

IL is now deprecated because of:

  • Poor maintainability
  • Low readability
  • High error sensitivity
  • Difficult debugging

Many modern engineering platforms no longer support IL.


Sequential Function Chart (SFC)

Graphical language for sequential process control.

Characteristics:

  • Process steps and transitions
  • Strong for batch and recipe control
  • Good visualisation of process flow
  • Support for parallel sequences

Widely used within:

  • ISA-88
  • Batch processes
  • Packaging lines
  • CIP / SIP processes
  • Recipe-driven production

🏭 Architecture within industrial automation

IEC 61131 defines not only languages but also software structures and execution models.

Important components:

Component Function
Configuration Full PLC configuration
Resource Runtime environment
Task Scheduling mechanism
Program Application logic
Function Block Reusable logic
Function Static function without memory

This hierarchy enables modular software development within industrial installations.


Real-time behaviour and deterministic execution

An essential characteristic of IEC 61131 systems is deterministic execution within Real-time environments.

PLCs typically operate via cyclic scans:

  1. Input scan
  2. Program execution
  3. Output update
  4. Diagnostics/communication

Cycle times typically vary between:

Application Typical cycle time
Machine control 1-20 ms
Motion control <1 ms
Process automation 50-500 ms
SCADA-related logic 100-1000 ms

Factors that influence performance:

  • Logic complexity
  • Network load
  • Number of IO points
  • Use of interrupts
  • Communication protocols
  • Industrial Ethernet load

Within modern Soft PLCs and virtualised runtimes, interaction with standard IT platforms such as Linux and hypervisors increases. As a result, timing issues, Latency and Jitter become more important.


🔄 Function Blocks and modular software

Function Blocks are one of the most important concepts within IEC 61131.

Properties:

  • Internal state storage
  • Reusability
  • Encapsulation
  • Modular design

Examples:

Function Block Application
PID Control engineering
TON Timer On Delay
CTU Counter Up
Alarm Handler Alarm management
Motor Control Motor control

Modern OT environments often build entire libraries of standardised function blocks for:

  • Pumps
  • Valves
  • Variable frequency Drives
  • Safety functions
  • HVAC components

This improves:


🌐 Integration with industrial networks

IEC 61131 systems communicate intensively with industrial networks and protocols.

Commonly used protocols:

Protocol Use
Modbus TCP Industrial communication
ProfiNET Real-time Ethernet
Ethernet IP CIP-based communication
OPC UA Platform-independent interoperability
EtherCAT Motion control
Profibus Legacy fieldbus
MQTT IIoT integration

PLC programs often contain direct couplings with:

This creates increasing dependency between IT and OT networks.


🔐 Cybersecurity implications

IEC 61131 itself contains hardly any cybersecurity mechanisms. The standard was originally developed in a period when industrial networks were largely isolated.

Modern risks:

  • Unauthorised PLC program changes
  • Manipulation of logic blocks
  • Upload/download attacks
  • Malware on engineering stations
  • Compromise of libraries
  • Supply-chain attacks
  • Sabotage of process logic

Known attack vectors:

Vector Impact
Engineering workstation compromise Modification of PLC logic
Insecure protocols Command injection
Remote maintenance External access
USB media Malware spread
Legacy PLCs No authentication

Stuxnet was a known example in which IEC 61131-related PLC logic was manipulated within Siemens Step7 environments.

Important Security measures:

Within modern environments, secure engineering workflows are increasingly applied with:

  • Multi-user engineering
  • Git integration
  • Central artifact repositories
  • Digital signatures
  • Immutable backups

🛡 IEC 61131 and Functional Safety

IEC 61131 is often combined with standards for Functional Safety.

Important relationships:

Standard Topic
IEC 61508 Functional safety
IEC 61511 Process safety
ISO 13849 Machine safety
IEC 62061 Safety control

Safety PLCs often use restricted or certified subsets of IEC 61131 programming languages.

Additional requirements:

Within safety environments, additional requirements apply to:


🏗 Vendor-specific implementations

Although IEC 61131 defines a standard, significant differences exist between vendors.

Examples:

Vendor Platform
Siemens TIA Portal
Rockwell Studio 5000
Beckhoff TwinCAT
Schneider EcoStruxure Control Expert
Codesys CODESYS Runtime

Differences arise in, among others:

  • Datatype extensions
  • Task scheduling
  • Compiler optimisations
  • Library management
  • Debug functionality
  • Motion integration
  • Safety integration

Full portability between platforms therefore remains limited.


📊 IEC 61131 versus modern software development

IEC 61131 systems are evolving towards modern software engineering principles.

Historical:

  • Monolithic PLC programs
  • Vendor-locked tooling
  • Local engineering
  • Limited version control

Modern:

Traditional PLC model Modern OT model
Standalone PLC Distributed edge control
Vendor-specific Open architectures
Manual deployment CI/CD-style workflows
Ladder-heavy Structured Text dominant
Proprietary interfaces API integration

Important trends:

  • Object-oriented extensions
  • IEC 61499 adoption
  • Containerised edge runtimes
  • Soft PLCs
  • Virtual PLCs
  • GitOps for OT
  • DevOps principles within industrial automation

Within Industry 4.0 in particular, increasing integration emerges between classic PLC programming and software-driven OT platforms.


⚠️ Limitations of IEC 61131

Despite broad adoption, IEC 61131 has various limitations.

Vendor lock-in

Although the standard aims for standardisation, implementations remain strongly vendor-dependent.

Limited software engineering concepts

Historical PLC programming often lacks:

  • Modern dependency management
  • Unit testing
  • Package management
  • Native source control
  • Security-by-design

Difficult scalability

Large OT environments CAN lead to:

  • Complex dependencies
  • Difficult debugging
  • Heavy cyclic loads
  • Synchronisation issues

Legacy issues

Many older PLC platforms support:

This poses a major risk within modern connected OT networks.


🔍 IEC 61131 in practice

IEC 61131 is today present in virtually all sectors of Critical Infrastructure.

Manufacturing environment

Within production lines, IEC 61131 logic controls:

  • Conveyors
  • Robotics
  • Vision systems
  • Batch processes
  • Packaging machines

Water treatment

PLCs control:

Energy supply

Applications:

  • Switchgear
  • Turbine control
  • Generator regulation
  • HVAC in data centres
  • Load balancing

Building Automation

Integrations with:

  • BACnet
  • KNX
  • HVAC
  • Energy management
  • Fire alarm systems

📚 Relationship with other standards

IEC 61131 does not stand alone but forms part of a broader OT Architecture.

Strong relationships exist with:

Together, these standards form the basis of modern industrial automation and IT/OT convergence.


🧾 Conclusion

IEC 61131 has formed the fundamental standard for programmable industrial control for decades. The standard has led to broad standardisation of PLC programming, better interoperability and a more professional software structure within OT environments.

At the same time, industrial automation is shifting further towards software-driven, networked and integrated architectures. This brings new challenges around cybersecurity, lifecycle management, scalability and IT/OT integration.

Despite the rise of modern edge platforms, Virtualisation and IEC 61499, IEC 61131 will remain the dominant programming standard within industrial automation and critical infrastructure for the time being.