It sounds like an exciting vision of the future: users from every discipline can use ready-made program modules to quickly and easily create simulations, optimization tasks or analyses using artificial intelligence (AI). This can then also be implemented by departments whose employees do not have knowledge of a high-level programming language. That’s the idea. Of course, developers must first create these program modules so business users can assemble a solution that meets their requirements.
AI-powered analytics for the business department
Together with our partners, we are researching in the AI marketplace project to get closer to this vision. The name-giving goal is to develop AI applications in the field of the product development process and offer them on a central trading platform. The range will also include services such as seminars on selected AI topics or contract development as well as ready-made AI-supported apps and program blocks for very specific tasks. The development and reuse of the apps are currently being tested. The project team is evaluating the benefits and quality of the results at the same time.
Different programming levels for extended use
So that’ s the state of research, but how exactly do we at CONTACT support the development of reusable program modules, the integration of simulation models or AI-supported analysis methods? One example of practical application can be found in the area of predictive maintenance. Predictive maintenance means that maintenance periods do not take place at fixed intervals as before, but are calculated depending on operating data and events at the machine or plant. For such use cases, our Elements for IoT platform provides a solution to analyze operating data directly. The digital twin stores the data of the machine or plant in a unique context. This data can be directly retrieved and easily analyzed using block-based programming. With the no-code functionality of the IoT platform, departments can intuitively create digital twins, define automatic rules and monitor events, and create diagrams and dashboards – without writing a line of code.
In addition, there are applications around the Digital Twin that require more programming expertise. For this, the platform offers analysts the possibility to develop their models themselves in a higher programming language using a Jupyter Notebook or other analysis tools. Especially in the area of prototyping, Python is the language of choice. However, it is also possible to work with a compiler-based programming language such as C++. Continuous calculation of the predictions is then done by automating the models, which are available in a runtime environment. The code is executed either in the company’s own IT infrastructure or directly at the plant or machine in the field (edge).
We call this procedure low-code development, because only the code for developing the models is written. The data connection is made via the Digital Twin and is done configurationally. The piece of program code can then be reused as a program block for various applications, such as digital twins within a fleet.
CONTACT Elements for IoT is thus open to interactions at different levels: from the use of predefined building blocks (no-code), to the possibility of interacting with self-written program code (low-code), to the definition of own business objects and the extension of the platform based on Python.