The programmable logic controller (PLC) is used in automation technology to manage and regulate tasks wherever processes are automatic.
It represents an open and universal automation solution for nearly all sectors and applications: general mechanical engineering, woodworking machines, packaging machines, sheet metal processing, machine tools, plant construction, assembly automation, constructing and conveyor technology through to traffic control systems.
The challenge while using those machines results from the changes in the established framework conditions, which are developing more and more dynamically. industry 4.0 is a central productivity driving force with the aim of being able to manufacture individual, varied, and custom-designed products up to batch size 1 at the same costs as in mass production.
To do this, classic production technology and information and communication technology must be networked much more closely. Suppliers must be able to "open" their machines to different control and information systems.
Manufacturing companies also are under stress to increase their productivity in order to avoid cost disadvantages. these are unusual challenges, however above all are fantastic opportunities for those who have recognised this and are taking action.
Flexibility performs a crucial role while setting up a modular system structure: when selecting the control system itself and the assemblies, from the sensors to the actuators to the drive technology. This flexibility is increasingly required over the whole life cycle of a machine or system or for all types in the product range within series.
The application scenarios (e.g., products to be manufactured, sales volumes, product variations) and requirements (e.g., technical, logistical, and safety/legal) are changing in ever shorter periods of time. The modular hardware and system structure of the PLC offers a terrific basis for these requirements. However, what about the software?
In the traditional form of PLC programming, the focal point is often placed on fulfilling functional requirements. This is correct and important, but actually a matter of course. The non-functional requirements of maintainability, expandability, and reusability are often neglected in " classic " programming.
Regarding PLC programming, the fulfillment of functional requirements is of course important. If the non-functional requirements of maintainability, expandability and reusability are considered within the design and development, sustainable software solutions are created that do justice to the long product life cycles within the capital goods sector.
Object-orientated programming has its origins in high-level language development. In OOP, related data and the operations that can be applied to it are grouped into objects. Rather than the sequence of commands, priority is given to defining the objects and their interactions.
This feature outcomes in crucial benefits within the creation, use and maintenance of modular software components for PLC. Object-orientated programming is characterised via the following features.
Common properties (attributes) and functions (methods) are bundled into logical units. Generalized classes are used for this.
Advantage: Clarity and efficiency in software development
The properties of an object are hidden in the object itself, i.e., encapsulated (data hiding). Access is only possible via methods anchored in the object. This protects the object properties; however, they are not relevant to the “outside world” either.
Advantage: Protection against harmful changes
A class is an abstract model or blueprint for a set of similar objects. New classes can be derived from these classes, which inherit the properties and methods of the parent classes.
Advantage: Ensuring software quality by encapsulating properties
The same method can be applied to different objects.
Advantage: Efficient programming concept
The framework is a programming scaffold used specifically in OOP. It does not represent a completed program itself, however, forms a pre -programmed framework for the software developer, within which the applications are created.
Individual functions, elements and building blocks are already included within the framework and consequently do not need to be reprogrammed over and over.
Within the program development for PLC, this provides valuable advantages in the medium to long term. A common framework in the Microsoft world is, for instance, the ".net Framework", which contains development tools, interfaces and class libraries.
Starting with a reuse rate of 3, it is profitable to develop your own company or domain-specific framework for PLC programming in order to be able to implement a wide variety of applications based on this.