In diesem Artikel möchte ich meine Erfahrungen mit Open Source-Systemen Zabbix und Grafana zur Visualisierung der Arbeit von Produktionslinien teilen. Die Informationen können für diejenigen nützlich sein, die nach einer schnellen Möglichkeit suchen, die gesammelten Daten in industriellen Automatisierungs- oder IoT-Projekten visuell anzuzeigen oder zu analysieren. Der Artikel ist kein detaillierter Leitfaden, sondern ein Überwachungssystemkonzept, das auf Open Source-Software für ein produzierendes Unternehmen basiert.
Werkzeuge
Zabbix - wir verwenden es seit langer Zeit, um die IT-Infrastruktur einer Anlage zu überwachen. Das System erwies sich als so praktisch und vielseitig, dass wir damit begannen, Daten von Produktionslinien, Sensoren und Steuerungen einzugeben. Dies ermöglichte es uns, alle Metrikdaten an einem Ort zu sammeln, um einfache Diagramme des Ressourcenverbrauchs und der Geräteleistung zu erstellen, aber es fehlten uns wirklich Analysen und schöne Diagramme.
Grafana ist ein leistungsstarkes Analyse- und Datenvisualisierungstool. Mit einer Vielzahl von Plugins können Sie Daten aus verschiedenen Quellen (zabbix, clickhouse, influxDB) abrufen, im laufenden Betrieb verarbeiten (Durchschnittswert, Menge, Differenz usw. lesen) und alle Arten von Diagrammen zeichnen (von einfachen Linien, Tachometern, Tabellen bis hin zu komplexen Diagrammen) ).
Draw.io ist ein Dienst, mit dem Sie in einem Online-Editor von einem einfachen Blockdiagramm zu einem Grundriss zeichnen können. Es gibt viele vorgefertigte Vorlagen und gezeichnete Objekte. Die Daten können in alle gängigen Grafikformate oder XML exportiert werden.
Alles zusammenfügen
Es gibt viele Artikel zum Installieren und Konfigurieren von Grafana und Zabbix. Ich werde Ihnen die wichtigsten Punkte der Konfiguration erläutern.
Auf dem Zabbix-Server wird ein "Host" erstellt, dem die "Elemente" (Element) mit Metriken von unseren Sensoren gehören. Es ist ratsam, die Namen von Knoten und Datenelementen im Voraus zu überdenken und sie so strukturiert wie möglich zu gestalten, da wir sie durch reguläre Ausdrücke aus grafana referenzieren werden. Dieser Ansatz ist praktisch, da Sie mit einer Anforderung Daten aus einer Gruppe von Elementen abrufen können.
Um grafana zu konfigurieren, müssen Sie zusätzliche Plugins installieren:
- Zabbix by Alexander Zobnin (alexanderzobnin-zabbix-app) – zabbix
- natel-discrete-panel –
- pierosavi-imageit-panel –
- agenty-flowcharting-panel – draw.io
, Configuration\Data sources\Zabbix. api zabbix , http://zabbix.local/zabbix/api_jsonrpc.php, . , api: zabbix API version: 5.0.1
Dashboard
.
natel-discrete-panel
( = 1, =0). discrete , : , / % .
, . , . , , ( «1», «ON»)
pierosavi-imageit-panel
Imageit , . url sensor. .
agenty-flowcharting-panel
FlowCharting , . , ( , , ).
, zabbix. , . — , , . Item : «/(^ 1)|()|()/» — : , « 1» «» «»
, . , (), /. : delta, , /. 0.06 /. , (setAlias) .
delta
: - ( = ). " 1 — 1 ()". : delta ( ), «+1» , «-1» «0» . 1 . - .
-
«Edit Draw», , . . , – .
Draw.io
, .
() :
- Options — (Rule name), , (Apply to metrics). (Aggregation) , Last — , , avg — , .
- Thresholds — , , . «0» — «Ok» , «>1» Critical .
- Color/Tooltip Mappings» «Label/Text Mappings» — . , – . .
flowcharting , :
- /
- - ()
. , . , – .
Das Zabbix + Grafana-Bundle hat mir sehr gut gefallen, und ich empfehle, darauf zu achten, wenn Sie Daten von Steuerungen oder Sensoren schnell verarbeiten müssen, ohne komplexe kommerzielle Produkte zu programmieren oder zu implementieren. Dies wird natürlich keine professionellen SCADA-Systeme ersetzen, aber es wird als Werkzeug für die zentrale Überwachung der gesamten Produktion ausreichen.