nw  

Datenbeschaffung für Predictive Maintenance Konzepte

Zusammenfassung

Für die Zustandsanalyse von Anlagenkomponenten müssen zur Auswertung relevante Daten von der Anlagensteuerung gesammelt werden.

Schlüsselbegriffe

Sprache, Datenbank, Betriebssystem etc.

Programmiersprache: C#

Bibliotheken: libplctag, OPC UA Reference Client, InfluxDB API

Datenbank: InfluxDB

Betriebssystem: Windows 10 Enterprise Edition

Zielsetzung

Um eine Aussage über den Zustand einer Anlage und deren Komponenten machen zu können, bedarf es einem System, welches relevante Daten der Maschinensteuerung (SPS) liest, persistiert und auswertet. Dieses Projekt widmet sich dem Problem der Sammlung und Speicherung der Daten, unter der Berücksichtigung der gelisteten Anforderungen. Dazu gehören das Lesen von Daten von einer Allen Bradley SPS mittels OPC UA, MQTT oder Libplctag, das Persistieren der Daten in einer geeigneten Datenbank sowie die Konfigurierbarkeit der Daten, welche aufgezeichnet werden sollen. In einem weiterführenden Projekt (P6), kann mit den gesammelten Daten ein Algorithmus entwickelt werden, um den Zustand der Anlage zu analysieren und Ausfälle frühzeitig zu erkennen.

Zu den Teilzielen gehört das Erstellen eines Konzepts wie die Daten aus der Steuerung gelesen und gespeichert werden können. Je nachdem, was die Datenpunkte darstellen, gibt es verschiedene Anforderungen an die Zuverlässigkeit der Datenübertragung. Hochfrequente Daten, wie zum Beispiel der Stromverbrauch eines Motors haben eine geringere Anforderung an die Übertragung. Hingegen sollen zum Beispiel Produktedaten ohne Datenverlust übertragen werden können. Ein weiteres Teilziel ist die Evaluierung von verschiedenen Zugriffstechnologien zum Auslesen der SPS-Daten. Dafür wurden die folgenden Technologien betrachtet:

Die Technologien sollen auch auf ihre Lesegeschwindigkeit geprüft werden. Ebenfalls zu den Teilzielen zählt die Evaluierung einer geeigneten Datenbank-Technologie. Betrachtet werden sollen unter anderem relationale, NoSQL, sowie Timeseries Datenbanken.

Schlussendlich soll mit den ausgewählten Technologien eine Gateway-Software geschrieben werden, welche die Aufgabe der Datensammlung realisiert. Es muss möglich sein, dem Gateway mitzuteilen, welche Daten von der Steuerung gesammelt werden müssen.

Ausgangslage

Die Zaugg Maschinenbau AG ist ein Hersteller von Automationslösungen. Für unterschiedlichste Branchen werden Sondermaschinen, speziell für die benötigten Prozesse im Hause konstruiert, montiert, verkabelt und programmiert. Die verbauten Komponenten wie Servomotoren, Linearmotoren oder Pneumatik Zylinder haben je nach Belastung, Verwendungszweck oder Umwelteinflüssen eine unterschiedliche Lebensdauer. Jedoch werden die Komponenten heute erst ausgetauscht, wenn diese effektiv ihren Dienst versagen. Dies führt unweigerlich zu unvorhersehbaren Produktionsunterbrüchen. Deshalb hat der Kunde im Rahmen dieses Projekts die Evaluation und Entwicklung einer Gateway-Software in Auftrag gegeben, um solche Ausfälle frühzeitig zu erkennen. Weiter soll es auch möglich sein Produktedaten von der Steuerung zu persistieren, um die Daten anderen Systemen zugänglich zu machen. Umfang des Projekts ist das Sammeln der Daten und es gilt als Vorstufe für eine spätere Bachelorarbeit. Diese wird den Fokus auf die Entwicklung eines Algorithmus legen, welcher aus den gewonnenen Daten eine Vorhersage machen kann, wann die Anlagekomponenten das Ende ihrer Lebensdauer erreichen.

Ergebnisse

Für das Lesen von Daten vom SPS-Speicher wurde schlussendlich der in der Industrie verbreitete OPC UA Standard verwendet. Gründe dafür waren hauptsächlich die aufwändige Konfiguration von Mapper-Klassen für Libplctag, sowie ein erhöhter Aufwand für die SPS-Programmierung bei der Verwendung von MQTT-Bausteinen zum Veröffentlichen von Daten. OPC UA und Libplctag wurden auch noch auf ihre Lese-Performance geprüft und verglichen. Hier hatte je nach Anwendungsfall Libplctag die besten Qualitäten. Da die Daten alle über einen längeren Zeitraum gesammelt werden, hat sich als Speichermedium eine Timeseries Datenbank als beste Option hervorgehoben. Namentlich wurde InfluxDB verwendet, da diese keine Kosten verursacht, einfach eingerichtet ist und über eine umfangreiche Dokumentation verfügt.

Projektdaten

Projektstart: 20.02.2023
Projektende: 18.08.2023
Aufwand: 360 h
Teamgrösse: 2 Studierende

Auftraggeber
zmblogo

Zaugg Maschinenbau AG
Sacha Niggli
Parkstrasse 22
5012 Schönenwerd
www.zmb.ch

Projektteam

Thomas Zbinden, thomas.zbinden1@students.fhnw.ch, Studiengang Informatik
Rainer Migliazza, rainer.migliazza@students.fhnw.ch, Studiengang Informatik

Kontakt

Dominik Gruntz, dominik.gruntz@fhnw.ch
Jürg Luthiger, juerg.luthiger@fhnw.ch

<< zurück