How to recognize an IEC 61131-3 Programming System in 8 easy steps.
- There is a solidly defined range of Standard Data Types, which exactly specifies how the content of a variable has to be interpreted.
Advantage: For each datatype only certain operations are allowed (e.g. mathematical operations for numerical data-types and not for bit-patterns). The program-security and the overview are improved.
- The possibility exists to define Derived Data Types like Fields and Structures.
Advantage: The programming system supports possibilities as used in PC-High-Level-Languages. Matching data can be meaningfully grouped, and securely and easily used.
- User-programs can be subdivided in exactly defined structuring elements, the Program Organization Units (POU) Program, Function and Function Blocks.
Advantage: The problem can be structured into sub tasks, making it much clearer than "spaghetti-programs." The spin-off of recurrent sub-tasks into own function blocks save in the programming effort.
- All Program Organization Units (POUs) can contain local data, i.e. data, which are only known and usable within this POU. This principle of data encapsulation stems also from the modern programming languages.
Advantage: A real decomposition of the work is possible, because the programmers do not need an ongoing coordination with respect to variables. Erroneous overwriting of variables is hardly possible. POUs are address-independent and can be reused without any problems (see also point 5 and 6).
- For the data-exchange between POUs there are well defined interfaces. Type and scope of the transfer are unambiguously defined.
Advantage: Recurrent functionalities can be transferred to libraries of Functions and/or Function Blocks. They are usable like "Black Boxes", therefore without knowledge of the internals, like Integrated Circuits with dedicated connections.
- Functions and Function Blocks become pure symbolic, i.e. address and module independent programs.
Advantage: Through the connection between local data and pure symbolic programming, no unexpected interference between user-programs can occur. Function and Function Blocks are independent of the target system, and in many cases even independent supplier, and so reusable (see also point 8).
- The used programming languages comply to those as specified within IEC 61131-3, i.e. comply with the unambiguously defined syntax and semantics. In addition, the standard Functions and Function Blocks are supported.
Advantage: Users, having learned the languages and commands of the standard, can use this knowledge on different programming systems. The training expenditure is reduced; users and especially service personnel meet a world-wide comprehensible and unified programming system. Programs and program parts can be used across systems.
- The Programming System is certified to one of the PLCopen defined compliancy levels, i.e. by an independent test-institute on conformity with the IEC 61131-3 standard.
Advantage: The user is assured that the used programming system complies to the standard, that he can reuse his knowledge with respect to IEC-programming and that the system is future-proof. With the certification at Conformity & Reusability Level exchange of the Functions and Function Blocks is possible, written compliant to the standard, with the common file-exchange-format with other certified systems, therefore saving time and money.