Developers of software for the control of industrial machines and processes experience problems related to scale and complexity that is common to all large software applications. These problems are independent on the particular platforms they use, be it PLC’s or IPC’s. Object-oriented techniques offer a clear and effective methodological solution but in the past they could not be integrally applied due to limitations of implementation platforms. With the 3rd release of the IEC 61131-3 standard, object-oriented features for PLC programming become available, which enable true object-oriented development of PLC software applications.

This has the important implication that control software can be developed using object-oriented techniques independent of the ultimate deployment platforms. This opens the way to an integral application of such a methodology in the industrial automation domain.

This course is intended to help developers and architects to apply object-oriented analysis, design and implementation techniques in a practical manner. It focuses on methodology but also pays attention to details of its practical application in the automation domain.

This training is available for in-company sessions that can be adapted to your situation and special needs.


After successful completion of the course, participants will have:

  • understanding of rationales for object-oriented system and software description;
  • a working knowledge of techniques to systematically design and implement control systems using objects using PLC and/or traditional programming languages;
  • understanding of the benefits of object-oriented techniques and how they are achieved in practice;
  • insight in object=oriented design heuristics for control software;
  • understanding of how current development in languages, tools and platforms for (PLC) controlled systems enable the use of object-oriented techniques in practice.

Intended for

This course is intended for software developers, software architects and project leaders working in the area of industrial automation.

Start date On request
Duration 2 + 3 consecutive days
Price per participant € 2,520 excl. VAT *
Keep me posted


Day 1: 

  • Introduction to PLC programming;
  • Introduction to IEC 61131-3;
  • Language features;
  • Structuring programs using functions and function blocks;
  • Hands-on;
  • Extensions for object-oriented programming;
  • Object-oriented PLC programming example.

Day 2: 

  • Object-oriented programming introduction;
  • Structuring programs using classes: rationale;
  • Data encapsulation and polymorphism;
  • Making simple models of classes using UML;
  • Object-oriented modeling exercises;
  • Programming hands-on.

Day 3: 

  • Using models for behavior;
  • State machines;
  • Examples on how state machines can be used to specify program behavior;
  • Examples on how state machines can be used to implement program behavior;
  • Modeling and programming exercises;
  • Describing interactions between program components;
  • State machine modeling exercise;
  • Programming hands-on.

Day 4: 

  • Object structure in machine memory;
  • Interfaces and references;
  • The use of polymorphism in programming: making program parts extensible and reusable;
  • Refactoring programs to cover non-functional requirements;
  • Programming hands-on.

Day 5:

  • Object-oriented methodology and process for constructing software;
  • Describing interactions between a machine and its environment: use cases;
  • Describing machines in terms of objects: class and object modeling heuristics;
  • Making use case realizations using sequences;
  • Describing machine behavior;
  • Architecture and non-functional requirements: software evolution;
  • Implementing the model;
  • Addressing issues of program evolution;
  • Exercise: object-oriented modeling of a system of own daily practice.


The hands-on programming exercises will be performed using CodeSys using structured text. Participants will be programming and running the case study examples. The modeling exercises will be done with UML, paper and pencil.   

Teaching methods:                 
Lectures, practical exercises and guided discussions.

Teaching material:      
Copies of presentations, hand-outs of exercise solutions, text of cases, articles.


Participants will receive a High Tech Institute certificate after attending this training.

Download brochure