{'fraction_non_alphanumeric': 0.027972027972027972, 'fraction_numerical': 0.018648018648018648, 'mean_word_length': 5.133333333333334, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
How object-oriented design principles enhance the development of complex automation programs - A Best Practice Paper on how to develop service-interlaces for process modules as defined in VDI/VDE/NAMUR 2658

The complexity and difficulty for designing and developing automation programs based on the IEC 61131–3 [1] is continuously increasing. With the VDI/VDE/NAMUR 2658 [2] a new level of complexity will be reached - control modules with more complex interfaces, services as functional capsulation in process operations and interdependencies to other unknown up- or downstream modules. In these applications, the proven procedural approach reaches its limits. The object-oriented paradigm could be the solution. However the object-oriented extension of [1] is not supported in many available plc development tools. This results in a low acceptance and low experience in object-oriented thinking by plc developers. This paper will be focused on an object-oriented motivated transformation of design principles and patterns into Structured Text. The results are demonstrated in form of a best practice implementation for programs compliant to [2]. The presented approach does not use any kind of supportive or generating tools, it's based completely on the possibilities of IEC 61131–3.