united-manufacturing-hub

The architecture of united-manufacturing-hub

factoryinsight

factoryinsight is an open source REST API written in Golang to fetch manufacturing data from a timescaleDB database and calculate various manufacturing KPIs before delivering it to a user visualization, e.g. [Grafana] or [PowerBI].

Features:

  • OEE (Overall Equipment Effectiveness), including various options to investigate OEE losses (e.g. analysis over time, microstop analytics, changeover deep-dives, etc.)
  • Various options to investigate OEE losses further, for example stop analysis over time, microstop analytics, paretos, changeover deep-dives or stop histograms
  • Scalable, microservice oriented approach for Plug-and-Play usage in Kubernetes or behind load balancers (including health checks and monitoring)
  • Compatible with important automation standards, e.g. Weihenstephaner Standards 09.01 (for filling), Omron PackML (for packaging/filling), EUROMAP 84.1 (for plastic), OPC 30060 (for tobacco machines) and VDMA 40502 (for CNC machines)

The openapi documentation can be found here

mqtt-to-postgresql

the tool to store incoming MQTT messages to the postgres / timescaleDB database

Technical information and usage can be found in the documentation for mqtt-to-postgresql

grafana-auth

Proxies request from grafana to various backend services, while authenticating the grafana user. Technical information and usage can be found in the documentation for grafana-proxy

grafana-plugins

Contains our grafana datasource plugin and our input panel

sensorconnect

This tool automatically finds connected ifm gateways (e.g. the AL1350 or AL1352), extracts all relevant data and pushes the data to a MQTT broker. Technical information and usage can be found in the documentation for sensorconnect

cameraconnect

This tool automatically identifies connected cameras network-wide which support the GenICam standard and makes them utilizable. Each camera requires its own container. The camera acquisition can be triggered via MQTT. The resulting image data gets pushed to the MQTT broker. Technical information and usage can be found in the documentation for cameraconnect

barcodereader

This tool automatically detected connected USB barcode scanners and send the data to a MQTT broker. Technical information and usage can be found in the documentation for barcodereader

mqtt-bridge

This tool acts as an MQTT bridge to handle bad internet connections. Messages are stored in a persistent queue on disk. This allows using the united-manufacturing-hub in remote environments with bad internet connections. It will even survive restarts (e.g. internet failure and then 1h later power failure). We developed it as we’ve tested multiple MQTT brokers and their bridge functionalities (date of testing: 2021-03-15) and could not find a proper solution:

nodered

This tool is used to connect PLC and to process data. See also Getting Started. Or take a look into the official documentation


grafana-plugins

Our grafana plugins

barcodereader

This is the documentation for the container barcodereader.

cameraconnect

This docker container automatically detects cameras in the network and makes them accessible via MQTT. The MQTT output is specified in the MQTT documentation

environment-variables

This site describes all environment variables used to setup and customize the united manufacturing hub.

factoryinput

Documentation of factoryinput

factoryinsight

This document describes the usage of factoryinsight including environment variables and the REST API

grafana-proxy

Documentation of grafana-proxy

kafka-bridge

This microservice is a bridge between two Kafka brokers.

kafka-to-blob

This microservice saves images from kafka to blob storage.

kafka-to-postgresql

This microservices consumes messages from a Kafka topic and writes them to a PostgreSQL database.

mqtt-bridge

This tool acts as an MQTT bridge to handle bad internet connections.

mqtt-kafka-bridge

This docker container transfers messages from mqtt to kafka and vise versa

mqtt-to-blob

The following guide describes how to catch data from the MQTT-Broker and push them to the MIN.io blob storage

mqtt-to-postgresql

Documentation of mqtt-to-postgresql

Sensorconnect

This microservice of the united manufacturing hub automatically detects ifm gateways in the specified network and reads their sensor values in the in the highest possible data frequency (or chosen data frequency). It preprocesses the data and sends it via MQTT or Kafka.