Building a solid foundation with PLCopen, IEC 61131-3

PLCopen helps increase efficiency, reusability and portability and gives programmers flexibility when working with IEC 61131-3 and IEC 61131-10.

ByEelco van der Wal July 3, 2023
Courtesy: PLCopen

Learning Objectives

  • Understand how PLCopen is used in programmable logic controller (PLC) programming.
  • Learn about the importance of building libraries..
  • Understand the role of the PLCopen XML exchange format, now called IEC 61131-10, and what it will do for PLCopen’s future.

PLCopen insights

  • PLCopen and IEC 61131-3 are designed to provide programmers a consistent feel regardless of the systems or architecture being used, giving it a sense of familiarity.
  • The PLCopen XML exchange format, now called IEC 61131-10, is supported by many development environments and suitable for different tools such as documentation, code generation and version control.

IEC 61131-3 deals with programming languages and a programming methodology. PLCopen builds on top of this to increase efficiency, reusability and portability through the definition of standardized libraries with pre-defined functionalities for applications such as motion control, safety and communication.

This combination offers the programmers a consistent look and feel across the different systems and architectures. This means that a programmer can reuse its knowledge, experience and programming methodology across the different systems, brands and architectures. For example, motion control functionalities like MoveAbsolute are applicable on a wide range of platforms and architectures.

This could be thought of as a “portability of the mindset” because it widens the scope for the person itself beyond only one system, brand or application. This means it also assists to include different brands, different application areas and different ways of dealing with motion control networks and architectures.

Figure 1: The basis is provided by standardized function blocks. On top, a higher-level functionality is defined in application-oriented functionalities, making the application program small and maintainable. It is advised to put a state machine at the top level to create a harmonious look and feel for the different machines in a production line. Courtesy: PLCopen

Figure 1: The basis is provided by standardized function blocks. On top, a higher-level functionality is defined in application-oriented functionalities, making the application program small and maintainable. It is advised to put a state machine at the top level to create a harmonious look and feel for the different machines in a production line. Courtesy: PLCopen

Benefits of building libraries

It is advised the machine builder, application programmer and user create their own libraries that encompass their knowledge and know-how related to their applications. By creating these higher-level functionalities, the process of application development itself can be dramatically reduced, resulting in fewer errors and lower installation costs. In many cases, the application program itself will be reduced to just a small number of lines of code, which is much easier to maintain as a monolithic block of the application.

Reusing it on different platforms also is much easier and quicker. For the exchange itself, PLCopen has developed the PLCopen XML exchange format, now called IEC 61131-10, which will be supported by many suppliers of not only development environments, but also will be suitable for different tools such as documentation, code generation and version control.

Figure 2: The application program now only consists of calling the different functionalities, which cooperate. Courtesy: PLCopen

Figure 2: The application program now only consists of calling the different functionalities, which cooperate. Courtesy: PLCopen

For the definition of the functionalities, one can choose from the different programming languages depending on which best suit the individual’s needs. For instance, these languages support object-oriented features for those who are accustomed to them, and want to use their powerful commands and structuring. In the end, one can present these functionalities in a classical way, helping the maintenance people to understand the application easily in a way that is aligned with their existing experiences.

By providing a set of function block definitions or libraries, PLCopen provides the basis to become more effective in creating application software. By implementing the function block libraries on different platforms, one creates a consistent look and feel over the different systems and the different architectures. For PLCopen motion control, this consists of more than 40 suppliers with more than 70 products to choose from.

This helps to speed up application development, as well as reducing errors and installation time. It also will save money during maintenance and when it comes time to for updates in the future. This can also provide the basis for software-as-a-service (SaaS), where functionalities are added to the application at a later stage, while it is already being operated by the customer.

Figure 3: An IEC 61131-3 project graphically shown in PLCopen XML, IEC 61131-10. Courtesy: PLCopen

Figure 3: An IEC 61131-3 project graphically shown in PLCopen XML, IEC 61131-10. Courtesy: PLCopen

Eelco van der Walis managing director of PLCopen, a CFE Media and Technology content partner. Edited by Chris Vavra, web content manager, Control Engineering, CFE Media and Technology,cvavra@cfemedia.com.

MORE ANSWERS

Keywords: IEC 61131-1, programmable logic controller, PLC

ONLINE

See additional PLC stories at//www.globalelove.com/control-systems/plcs-pacs/

CONSIDER THIS

How do youuse PLC programming in your facility?


Author Bio:Eelco van der Wal, managing director, PLCopen