Like many other sectors, the industry is in the midst of change. Increasing digitalization and networking give rise to new technologies and processes, but, above all, create significant potential for automation and optimization.
Modern software engineering and its strengths Part I
What are the requirements when it comes to modern software engineering and what potential does it offer? Dr. Andreas Angerer, Head of Research & Innovation at XITASO GmbH, looked at this question in detail with the help of ctrlX AUTOMATION. As an experienced specialist, partner and user of the automation toolkit, he focused in particular on three of the solution’s practical strengths: the software architecture, its openness and its potential when it comes to automation in the area of software integration.
With ctrlX AUTOMATION, Bosch Rexroth has entered a new world of automation. What benefits does the software architecture offer?
The new control architecture helps to improve the links between OT and IT. It relies on open standards – and delivers what it promises. With Ubuntu Core, the software architecture of the ctrlX CORE control system is based on an open-source standard operating system. Thanks to the PREEMPT_RT patch from the Real Time Linux project, typical real-time requirements can be met in an automation context.
The architecture of ctrlX AUTOMATION relies heavily on the packaging of individual components in Snap packages as used by the Snappy package management system which supports updates and rollbacks as standard. Unlike all other well-known control systems, no distinction is made between IEC61131 applications and applications for other programming platforms on an architecture level – the runtime is simply available as an app for ctrlX AUTOMATION. Only the planning and deployment are currently carried out using dedicated tools for PLC and IO engineering.
The ctrlX Data Layer is a central component in the internal software architecture. It allows any structured data to be exchanged system-wide via standardized, talking addressing. The ctrlX Data Layer can be used as a generic interface and abstraction layer for interprocess and intersystem communication. It acts as a data broker to organize access to the actual memory. Even separate software components based on the same high-level language can exchange data in this way.
The apps can also work in any programming languages on structured data in the ctrlX Data Layer and are therefore independent of the technical transmission interface. ctrlX AUTOMATION generalizes this concept rigorously and allows it to be used for any execution environments and connected systems.
Why is end-to-end openness an important criterion in software engineering?
In the world of automation, openness is neither a matter of course nor the exception. Software systems nowadays solve very complex problems – especially in the area of automation technology. However, the relevant software solutions have a certain inner complexity. A good software architecture uses structuring and modularization to ensure that the level of complexity remains manageable during development, maintenance and updating. This results in part-components within the software with smaller yet focused functional scopes and responsibilities. End-to-end openness is therefore very important in software engineering.
Openness has a number of positive effects in software engineering. For example, clearly defined part-components are easier to understand. Changes in part-components have fewer unwanted effects on other functions and testability improves. It also makes it easier to spread development work within a development team or across a number of teams. A further positive effect is the fact that the components can be implemented internally with various technologies with a suitable interface design.
XITASO is often involved in the development of automation and IoT systems as a software integration company. Our software ensures that various sub-systems interact smoothly with each other and the users of the system. Given the complexity of today’s software systems, specialists from a range of areas must work together in order to solve the problem. Nowadays, automation systems are the result of collaboration between various disciplines such as mechanical engineering, electrical engineering, software engineering and design.
We regard ctrlX AUTOMATION as groundbreaking when it comes to technological openness in the control market. Anyone developing applications for ctrlX AUTOMATION has full access to their system while the overall system offers a high level of IT security. As a result, they can choose what software technology they use and configure the platform largely according to their particular requirements. The fact that the software components of the platform ctrlX AUTOMATION themselves are open is at least as important: APIs and SDKs are available for central building blocks such as the ctrlX Data Layer, the Scheduler or the EtherCAT component.
Developers are not restricted to platform components from the manufacturing company – they are free to choose and integrate these components into software components they have developed themselves via the available interfaces. ctrlX AUTOMATION’s architectural approach allows various programming languages and runtime environments to be used within the same control system, thus ensuring great flexibility.
Read part 2 of this interview to find out what the third strength "automation within automation" means for software engineering.
If you have any questions or require further information regarding ctrlX AUTOMATION, please contact us:
Dr. Andreas Angerer
Head of Research & Innovation
at XITASO GmbH