TY - CHAP
T1 - Applying core features of the object-oriented programming paradigm by function blocks based on the IEC 61131 and IEC 61499 industrial automation norms
AU - Cruz Salazar, Luis Alberto
AU - Vogel-Heuser, Birgit
N1 - Publisher Copyright:
© 2020, Springer Nature Switzerland AG.
PY - 2020
Y1 - 2020
N2 - Automation software systems usually implement the IEC 61131-3 and IEC 61499 standards. Nowadays, these applications request, among others, reusability, flexibility, reliability, and modularity via both standards. These characteristics can be achieved by a traditional paradigm called Object-Oriented Programming (OOP). OOP is an older method that applied with various programming languages to generate a replicable style of programming, i.e., code composed by Functions, Methods, etc. A well-defined programming method makes the code understandable for programmers. OOP defines the reusability, accessibility, adaptability, and robustness of software programs. It means that using gradual methods gained experience improves the quality of programs and simplifies their organization. OOP also increases the security of applications from its core features, i.e., Abstraction, Instantiation, Encapsulation, Polymorphism, and others. Therefore, OOP has been applied and discussed for both standards; however, OOP’s complexity and implementation using these IEC standards have not been compared yet. This work proposes the typical application of the Function Block (FB) to define classes and objects for industrial automation systems based on OOP. We implement one particular case of study for both standards. The FB employments are evaluated in order to compare OOP applicability and advantages of each standard. Adapting automation software regarding new industry requirements implies greater modularity. Code programmed by OOP generates abstractions levels which improve the design and make the software application in maintenance more comfortable to read and more adaptable to future extensions. This research shows how both standards (their latest updates) address OOP. Object-oriented programs in the field of automation engineering face another paradigm shift that impacts the methods used to program control systems. OOP would facilitate the design patterns implementations, which are a reusable understanding of common problems.
AB - Automation software systems usually implement the IEC 61131-3 and IEC 61499 standards. Nowadays, these applications request, among others, reusability, flexibility, reliability, and modularity via both standards. These characteristics can be achieved by a traditional paradigm called Object-Oriented Programming (OOP). OOP is an older method that applied with various programming languages to generate a replicable style of programming, i.e., code composed by Functions, Methods, etc. A well-defined programming method makes the code understandable for programmers. OOP defines the reusability, accessibility, adaptability, and robustness of software programs. It means that using gradual methods gained experience improves the quality of programs and simplifies their organization. OOP also increases the security of applications from its core features, i.e., Abstraction, Instantiation, Encapsulation, Polymorphism, and others. Therefore, OOP has been applied and discussed for both standards; however, OOP’s complexity and implementation using these IEC standards have not been compared yet. This work proposes the typical application of the Function Block (FB) to define classes and objects for industrial automation systems based on OOP. We implement one particular case of study for both standards. The FB employments are evaluated in order to compare OOP applicability and advantages of each standard. Adapting automation software regarding new industry requirements implies greater modularity. Code programmed by OOP generates abstractions levels which improve the design and make the software application in maintenance more comfortable to read and more adaptable to future extensions. This research shows how both standards (their latest updates) address OOP. Object-oriented programs in the field of automation engineering face another paradigm shift that impacts the methods used to program control systems. OOP would facilitate the design patterns implementations, which are a reusable understanding of common problems.
KW - Function Block
KW - IEC 61131
KW - IEC 61499
KW - OOP
KW - Object-Oriented Programming
UR - http://www.scopus.com/inward/record.url?scp=85070622479&partnerID=8YFLogxK
U2 - 10.1007/978-3-030-27477-1_21
DO - 10.1007/978-3-030-27477-1_21
M3 - Chapter
AN - SCOPUS:85070622479
T3 - Studies in Computational Intelligence
SP - 273
EP - 289
BT - Studies in Computational Intelligence
PB - Springer Verlag
ER -