AI Industrial Automation

Article playbook

How to Implement IEC 61131-3:2025 OOP and UTF-8 Safely in PLC Workflows

IEC 61131-3:2025 adds object-oriented constructs and UTF-8 text handling to PLC practice, affecting software structure, interoperability, and validation. This article explains the changes, risks, and how OLLA Lab supports safe rehearsal.

Direct answer

IEC 61131-3:2025 pushes PLC engineering toward object-oriented structures and UTF-8 text handling, which changes both software design and commissioning risk. OLLA Lab provides a browser-based, risk-contained environment to rehearse class behavior, validate string handling, observe logic-state interactions, and debug faults before code reaches physical controllers.

What this article answers

Article summary

IEC 61131-3:2025 pushes PLC engineering toward object-oriented structures and UTF-8 text handling, which changes both software design and commissioning risk. OLLA Lab provides a browser-based, risk-contained environment to rehearse class behavior, validate string handling, observe logic-state interactions, and debug faults before code reaches physical controllers.

IEC 61131-3:2025 is not just a syntax refresh. It changes how control engineers think about software structure, text handling, and validation risk on industrial controllers. The practical shift is from flat tag logic toward hierarchical software objects, and from legacy text assumptions toward UTF-8-safe interoperability.

Ampergon Vallis metric: In beta testing of OLLA Lab workflows for IEC 61131-3:2025-style migration tasks, engineers converting legacy UDT-centered exercises into class-structured control models reduced redundant rung patterns by 38%, while first-pass logic validation sessions showed a 22% increase in scope-, state-, or allocation-related faults. Methodology: n=34 guided lab sessions; task definition = migrate predefined motor, valve, and pump control exercises from UDT-oriented patterns to class-structured implementations in simulation; baseline comparator = original non-class-based exercise versions; time window = January-February 2026. This supports the claim that OOP can improve structure while increasing early debugging burden. It does not support any claim about field reliability, certification, or vendor-wide performance.

That distinction matters. Cleaner architecture is useful; unvalidated architecture is merely elegant failure.

What are the primary OOP changes in IEC 61131-3:2025?

The primary change is that IEC 61131-3:2025 formalizes object-oriented constructs for industrial control software, including classes, methods, and interfaces. That moves PLC programming beyond flat memory organization and simple data grouping.

Traditional PLC work often relied on:

  • global tags
  • function blocks
  • arrays
  • User-Defined Types (UDTs)

Those tools remain useful, but they are not the same as full object-oriented design. A UDT groups data. A class groups data and behavior, with explicit scope and reusable interfaces. Syntax is not the hard part; state discipline is.

Core OOP mechanics in the 4th edition

#### Encapsulation

Encapsulation means internal state can be protected from uncontrolled external writes. In control terms, this reduces the chance that unrelated logic overwrites status, mode, or command variables from the global namespace.

Practical effect:

  • fewer accidental tag collisions
  • clearer ownership of state
  • more disciplined fault handling
  • better modularity for reusable equipment objects

A motor object with internal permissive state is materially different from a loose cluster of tags named well enough to survive a shift change.

#### Methods

Methods attach executable logic directly to the object. A `Motor` class can contain a `Start()` or `EvaluatePermissives()` method rather than scattering related logic across multiple routines.

Practical effect:

  • behavior stays closer to the data it governs
  • repeated equipment patterns become easier to maintain
  • code review can focus on object behavior rather than tag archaeology

#### Interfaces

Interfaces define contractual behavior without forcing identical internal implementation. That matters when multiple equipment types must present the same control handshake to upstream logic or HMI layers.

Practical effect:

  • more standardized integration across vendors
  • cleaner abstraction between equipment and supervisory logic
  • better portability of higher-level sequencing patterns

In plain terms, interfaces help engineers standardize what a device must do, even when vendors remain determined to be creatively inconsistent.

How is this different from UDTs and conventional function blocks?

The difference is behavioral structure, not just data organization. UDTs describe shape. OOP introduces controlled state, attached methods, inheritance patterns, and interface contracts.

A useful contrast: - UDT: grouped data - Function block: reusable logic instance - Class: reusable object model with scoped state and methods - Interface: formal behavior contract across implementations

That is why IEC 61131-3:2025 matters. It changes software architecture decisions, not just editor menus.

Why is UTF-8 standardization critical for modern PLC programming?

UTF-8 matters because industrial control systems increasingly exchange text across web services, historians, MES layers, cloud APIs, and edge applications that already assume Unicode-safe encoding. ASCII-era assumptions fail quietly until they do not.

The engineering issue is not cosmetic multilingual labeling. It is reliable machine-readable text exchange across heterogeneous systems.

What UTF-8 changes in practice

UTF-8 allows:

  • multilingual alarm and status text
  • consistent serialization into JSON-based architectures
  • safer exchange with web-native systems
  • reduced corruption risk when non-ASCII characters appear in names, messages, or diagnostics

This becomes important in:

  • globally deployed OEM equipment
  • multilingual operator environments
  • standards-aligned alarm presentation
  • IT/OT integrations involving REST, MQTT, or web dashboards

If a status string breaks because one layer assumes single-byte text and another does not, the problem is no longer “just formatting.” It becomes a data integrity issue.

ASCII vs. UTF-8 in industrial contexts

| Factor | ASCII | UTF-8 | |---|---|---| | Character scope | Limited to basic English character set | Supports global character sets and symbols | | Byte model | Single-byte only | Variable-length, Unicode-compatible | | Multilingual alarm text | Poor support | Native support | | JSON/web interoperability | Limited for international text | Strong compatibility | | Suitability for global OEM/service environments | Weak | Stronger | | Risk of text corruption in mixed systems | Higher when extended characters appear | Lower when properly implemented |

Why does this matter for alarm and standards workflows?

UTF-8 supports cleaner interoperability for alarm states, operator messages, and asset metadata in globally distributed systems. That is relevant when systems align with practices such as NAMUR NE 107 status modeling, where state semantics may need to travel cleanly across software layers. The standard itself is not a magic cure for bad alarm design, but it removes one avoidable source of corruption.

A garbled alarm string is not usually the root cause of a trip. It is, however, an excellent way to make diagnosis slower at exactly the wrong moment.

What are the dynamic memory and runtime risks of OOP in physical PLCs?

The risk is that richer software abstractions can introduce runtime behaviors that are less forgiving in hard real-time environments. In industrial control, elegance does not excuse nondeterminism.

The exact implementation details vary by vendor platform, compiler, and runtime. Not every IEC 61131-3 OOP feature implies unrestricted dynamic allocation in the same way a general-purpose software stack might. That qualification matters. Still, moving toward object-oriented constructs increases the need to validate:

  • instance behavior
  • memory use
  • state transitions
  • execution timing
  • fault response

Common engineering risks when OOP enters PLC workflows

- State ambiguity: object instances may hold internal state that is harder to trace than flat tags. - Scope errors: protected or private variables can be misunderstood during integration or maintenance. - Initialization faults: object startup behavior may diverge from expected scan-cycle assumptions. - Execution overhead: method-heavy designs can increase scan burden if poorly structured. - Reference or pointer misuse: on platforms that expose these mechanisms, invalid dereferencing can create major runtime faults. - Memory fragmentation or allocation instability: platform-dependent, but a real concern where dynamic behavior is permitted. - Opaque fault propagation: inheritance and abstraction can hide where a bad state originated.

Why is this risk different on a live controller?

A physical PLC is attached to process consequences. A runtime fault can:

  • halt a sequence
  • drop outputs
  • trip a skid
  • stop a conveyor
  • interrupt a pump train
  • force a manual recovery workflow

The software problem becomes a production problem quickly. Plants are not patient debugging environments.

This is why “it compiled” is a weak milestone. Deterministic behavior under realistic conditions is the actual threshold.

What does “Simulation-Ready” mean for IEC 61131-3:2025 work?

“Simulation-Ready” means an engineer can prove, observe, diagnose, and harden control logic against realistic process behavior before that logic reaches a live process. It does not mean they can merely write valid syntax.

Operationally, a Simulation-Ready engineer can:

  • execute logic in a safe test environment
  • monitor I/O and internal variables
  • compare ladder state to simulated equipment state
  • inject abnormal conditions
  • revise logic after faults
  • verify that the revised behavior remains correct across normal and abnormal sequences

That is the difference between syntax familiarity and deployability. One passes a tutorial. The other survives commissioning.

How does OLLA Lab help engineers rehearse IEC 61131-3:2025 changes safely?

OLLA Lab is useful here as a bounded validation and rehearsal environment. It allows engineers to build logic, simulate behavior, inspect variables, and compare control intent against virtual equipment behavior without placing a physical controller or live process at risk.

This is where OLLA Lab becomes operationally useful.

What OLLA Lab provides in this workflow

- Web-based ladder logic editor: for building and organizing control logic directly in the browser - Simulation mode: for running, stopping, and testing logic without hardware - Variables panel and I/O visibility: for observing tag states, analog values, outputs, and related behavior - 3D/WebXR/VR equipment views: for connecting logic behavior to virtual machine or process response - Digital twin validation context: for checking whether intended sequence logic matches simulated equipment behavior - GeniAI lab guide: for onboarding, corrective guidance, and workflow support during lab exercises

Bounded point: OLLA Lab is a rehearsal and validation environment for high-risk control tasks. It is not a certification proxy, not evidence of site competence by itself, and not a substitute for vendor-specific runtime qualification.

How does OLLA Lab reduce commissioning risk?

It reduces risk by moving early mistakes into a contained environment where engineers can:

  • test cause-and-effect safely
  • inspect internal state before hardware deployment
  • validate sequence logic against realistic scenarios
  • revise control behavior after injected faults

That matters because many early-career and cross-disciplinary engineers are allowed to study logic but not allowed to break expensive hardware. Sensible employers tend to prefer it that way.

How can you use OLLA Lab’s guided workflow to practice OOP-style control design?

The practical workflow is to move from object concept, to logic behavior, to equipment response, to fault correction. The sequence matters.

Guided build sequence for OOP-style validation

  1. Define the equipment model and control objective. Start with a bounded unit such as a motor, valve, or pump train. State what the object is responsible for and what “correct” behavior means.
  2. Build the control logic in the ladder editor. Implement the relevant logic structure, including commands, permissives, trips, feedbacks, timers, and alarms. Where the target platform supports OOP constructs directly, map class-style behavior explicitly. Where it does not, rehearse the architecture concept through modular logic organization and scoped state handling.
  3. Instantiate equipment variants. Create distinct behavioral cases such as discrete valve versus analog valve, or fixed-speed motor versus VFD-driven motor. This is where inheritance thinking becomes useful, even if your eventual deployment platform uses vendor-specific syntax.
  4. Bind logic behavior to simulated equipment state. Use the simulation environment and digital twin context to verify that commands, feedbacks, and state transitions produce the expected physical behavior.
  5. Inspect variables and internal state transitions. Use the variables panel to observe command bits, permissive status, analog values, timers, counters, and fault states.
  6. Inject abnormal conditions. Force failed feedbacks, delayed transitions, bad analog values, or trip conditions. Good logic should degrade predictably, not theatrically.
  7. Use GeniAI for corrective guidance where needed. GeniAI can support onboarding, explain likely logic issues, and help users progress through the lab when they stall.
  8. Revise and re-test. Confirm that the correction resolves the fault without breaking nominal behavior elsewhere.

What should an engineering evidence package look like for this kind of work?

A credible evidence package is a compact technical record of reasoning, test conditions, faults, and revisions. It is not a screenshot gallery with optimistic captions.

Use this structure:

  1. System Description Define the equipment, process purpose, control boundaries, and relevant I/O.
  2. Operational definition of “correct” State the expected normal sequence, permissives, interlocks, alarms, and failure response.
  3. Ladder logic and simulated equipment state Show the implemented logic and the corresponding behavior in the simulated system.
  4. The injected fault case Specify the abnormal condition introduced, such as failed proof, stuck input, bad analog signal, or timeout.
  5. The revision made Document the logic change, why it was made, and what it corrected.
  6. Lessons learned Explain what the failure revealed about state handling, sequence design, alarm philosophy, or commissioning assumptions.

That structure demonstrates engineering judgment. A folder full of screenshots demonstrates only that the print-screen key remains operational.

What does an IEC 61131-3:2025-style code pattern look like?

The following example is illustrative, not vendor-universal. Exact syntax and feature support vary by PLC platform and engineering environment.

[Language: Structured Text / IEC 61131-3 OOP-style example]

CLASS Motor_Control IMPLEMENTS iDrive VAR_PROTECTED Speed_Setpoint : REAL; Motor_State : UTF8_STRING := "Désactivé"; END_VAR

METHOD Start : BOOL // Encapsulated start logic END_METHOD END_CLASS

What does this example demonstrate?

- Encapsulation: `VAR_PROTECTED` restricts direct external access. - Method binding: `Start` belongs to the object rather than existing as detached logic. - Interface use: `IMPLEMENTS iDrive` suggests a contractual behavior model. - UTF-8 text handling: `"Désactivé"` illustrates non-ASCII string content that must survive encoding safely.

Again, the engineering point is not that every controller will use this exact syntax. The point is that IEC 61131-3:2025 normalizes this design direction, and engineers need a safe place to rehearse it.

How should engineers validate UTF-8 and OOP behavior before physical commissioning?

Validation should be scenario-based, observable, and fault-aware. A standards update is only useful if it survives contact with sequence logic, abnormal states, and integration boundaries.

Minimum validation checklist

  • Confirm object initialization behavior at startup.
  • Verify command, permissive, and fault state transitions.
  • Test string handling with non-ASCII characters.
  • Check alarm or status text serialization into downstream formats where applicable.
  • Observe variable values during normal and abnormal sequences.
  • Inject failed feedbacks and timeout conditions.
  • Review whether scan behavior remains acceptable for the target application.
  • Confirm that revisions do not break nominal sequence behavior.

What should you validate in a digital twin or simulator?

Validate the relationship between:

  • ladder state
  • internal variables
  • simulated equipment behavior
  • operator-visible outcomes

That means checking whether:

  • a start command produces the expected equipment transition
  • a failed proof triggers the correct alarm and lockout
  • an analog excursion creates the expected trip or control response
  • a UTF-8 status string remains intact across the workflow being tested

A digital twin is not valuable because it looks modern. It is valuable because it lets you compare intended control behavior against simulated process response before the process develops opinions.

What standards and literature support simulation-based rehearsal for control validation?

The case for simulation-based validation is supported by established safety and engineering practice, though the exact use case must remain bounded. Simulation does not replace formal safety lifecycle work, but it does support earlier defect discovery, operator understanding, and commissioning rehearsal.

Relevant grounding includes:

  • IEC 61508 for functional safety lifecycle discipline and the importance of systematic fault control
  • NAMUR NE 107 for standardized device status signaling concepts relevant to interoperable diagnostics
  • exida guidance and industry safety practice emphasizing validation rigor, fault response, and lifecycle evidence
  • IFAC, Sensors, and related industrial informatics literature showing the value of simulation and digital twin methods for testing control behavior, system interaction, and training
  • Manufacturing and engineering education literature indicating that simulation-based environments can improve procedural understanding and reduce hardware dependence during early-stage learning and rehearsal

The bounded conclusion is straightforward: simulation is useful for rehearsal, debugging, and early validation of control behavior. It is not a substitute for site acceptance testing, formal hazard review, or vendor-specific runtime qualification.

Where does OLLA Lab fit in a real engineering workflow?

OLLA Lab fits upstream of hardware commissioning and alongside training, design rehearsal, and fault-oriented validation. It is most credible when used for tasks that are expensive, risky, or impractical to practice on live systems.

Typical uses include:

  • learning ladder logic in realistic scenarios
  • validating sequence logic before hardware access
  • tracing I/O cause-and-effect
  • rehearsing alarm and interlock behavior
  • testing analog and PID-related responses
  • documenting fault-and-revision cycles for review

The platform’s scenario-based structure is particularly relevant because industrial logic is contextual. A lead-lag pump station, air handler, conveyor zone, dosing skid, and membrane process do not fail in the same way, and pretending otherwise is how generic training becomes forgettable.

Keep exploring

Related Reading

References

Editorial transparency

This blog post was written by a human, with all core structure, content, and original ideas created by the author. However, this post includes text refined with the assistance of ChatGPT and Gemini. AI support was used exclusively for correcting grammar and syntax, and for translating the original English text into Spanish, French, Estonian, Chinese, Russian, Portuguese, German, and Italian. The final content was critically reviewed, edited, and validated by the author, who retains full responsibility for its accuracy.

About the Author:PhD. Jose NERI, Lead Engineer at Ampergon Vallis

Fact-Check: Technical validity confirmed on 2026-03-23 by the Ampergon Vallis Lab QA Team.

Ready for implementation

Use simulation-backed workflows to turn these insights into measurable plant outcomes.

© 2026 Ampergon Vallis. All rights reserved.
|