FabOS – Real time ML-Microservices on IoT AI-dedicated devices

This article describes how Machine Learning can be used in production systems within the shopfloor by combining edge devices specialized for AI with a robust and versatile implementation of a software stack to embed Machine Learning applications.

It has been several years since Artificial Intelligence (AI) and its subsection Machine Learning (ML) has overcome the status of being a potentially useful technology to now being a proven strategic technology to be used within production environments. Driven by both considerable progress in developing more complex and more versatile ML algorithms as well as the development of hardware components that enable the resource-intensive execution of those algorithms, FabOS intends on closing the gap to enable AI for the widest range of industrial use cases.

Making AI useful is not just about evaluating any type of data structure but the interaction of many services and components that need to communicate on robust (edge) devices efficiently.

In the case of SOTEC the answer to those challenges is the ML-stack running on hardware specifically designed to execute those complex ML algorithms – the CloudPlug edge+ (CPe+).

The CPe+ resembles a powerful edge device equipped with an edge TPU that can execute an inference with complex ML models within several milliseconds.  Furthermore, this device comes with a range of interfaces that can directly interact with production systems in order to gather, evaluate and also push data to the Cloud if desired.

SOTEC CloudPlug edge+

Combining all those functionalities within one monolithic application does not go in line with modern software development and is furthermore not applicable in the highly dynamic production environment. Reusability and exchangeability of software components are the foundation to serve both a broad range of Machine Learning use cases and adapt to changing conditions.

As a perfect fit for this versatile edge device, within the scope of FabOS, SOTEC developed the ML stack. Connected through suitable interfaces, containerized microservices communicate with each other serving the end-to-end use case of Machine Learning within the production environment.

Starting with the acquisition of both structured and unstructured data through sensor systems, these data will be evaluated by the ML model, whose complex mathematical operations are being mapped to the integrated edgeTPU. After the inference results have been obtained from the ML model, they need to be fed into a logic unit that decides which further actions are to be taken by an actuator that finally closes the loop between the production machine and the ML service. Due to MQTT-based communication within the ML stack it is possible to flexibly extend by adding further services or removing unnecessary services from the stack.

By combining the suitable edge device with a generically applicable software stack FabOS and SOTEC close the gap between the mere research of complex algorithms in laboratory environments and the actual usage of those algorithms within production environments and thereby making Artificial Intelligence accessible for a broad spectrum of use cases and users.