Integration · Zeitreihen

OPC UA mit Telegraf / InfluxDB verbinden

ProduktTelegraf / InfluxDB
KategorieZeitreihen
OPC-UA-RolleClient

Telegraf ist ein praktischer OPC-UA-Collector: Das Input-Plugin opcua pollt Knoten in einem Intervall und das Input-Plugin opcua_listener abonniert Datenänderungen, beide schreiben in InfluxDB oder ein anderes Output. Es ist reine Konfiguration, das ist seine Stärke, und der Zertifikatsaustausch mit jedem Server ist die Arbeit, die tatsächlich Zeit kostet.

Bevor Sie starten

  • Eine Telegraf-Installation auf einem Host mit Netzwerkweg zu jedem OPC-UA-Server und eine Entscheidung darüber, ob ein Agent viele Maschinen bedient oder ein Agent je Maschine. Ein Agent je Maschine fällt unabhängig aus und ist die zusätzlichen Instanzen meist wert.
  • Ein zuerst konfiguriertes und getestetes Output, damit Sie, wenn die OPC-UA-Seite funktioniert, sofort Daten sehen und nicht zwei Schichten gleichzeitig debuggen.
  • Eine geprüfte Knotenliste mit Namespace-URIs und Identifiern statt der Absicht, zur Laufzeit zu browsen. Telegraf erfasst, was Sie konfigurieren; es entdeckt nichts von selbst.
  • Ein Ort für Client-Zertifikat und Schlüssel des Agents, und die Möglichkeit, dieses Zertifikat in den Trusted Store jedes Servers zu bekommen.

Die Einrichtung

  1. Beginnen Sie mit einem ungesicherten Lesezugriff, um den Pfad nachzuweisenKonfigurieren Sie einen inputs.opcua-Abschnitt mit dem Endpunkt und ohne Sicherheit, eine Node-Gruppe und einen Node, und starten Sie den Agent im Testmodus, damit er die Metrik nach stdout ausgibt, statt sie zu schreiben. Das bestätigt Endpunkt, Namespace und Identifier in einem Schritt.
  2. Knotengruppen nach Namespace und Rate konfigurierenGruppieren Sie Knoten nach Namespace und nach dem Intervall, das sie brauchen. Jede Gruppe trägt den Namespace, den Identifier-Typ und die Knotenliste, sodass eine Gruppe je Maschinen-Teilsystem die Konfiguration lesbar hält und Sie eine Rate ändern können, ohne den Rest anzufassen.
  3. Wechseln Sie für alles Ereignisartige auf das Listener-PluginVerwenden Sie inputs.opcua_listener mit einem Subscription-Intervall, wo Sie änderungsgetriebene Daten brauchen, insbesondere bei Zustandsvariablen und Zählern. Das Pollen eines Zustands in festem Intervall verliert Übergänge zwischen den Abfragen, und ein verlorener Übergang ist ein verlorenes Stillstandsereignis.
  4. Sicherheit aktivieren und den Vertrauensaustausch abschließenStellen Sie SecurityPolicy und Mode auf das ein, was der Server anbietet, verweisen Sie das Plugin auf Zertifikat und privaten Schlüssel des Agents und konfigurieren Sie den Identity Token. Verbinden Sie dann einmal, lassen Sie es scheitern und verschieben Sie das Zertifikat des Agents im Server aus dem Rejected-Store in den Trusted-Store. Vertrauen Sie dem Serverzertifikat auf der Agent-Seite entsprechend der gewählten Policy.
  5. Legen Sie Metrik-Benennung und Tags fest, bevor Sie Historie schreibenSetzen Sie den Measurement-Namen und ergänzen Sie Tags für Maschine, Linie und Standort, dazu Namespace-URI und Identifier als Metadaten. Eine Serie nach sechs Monaten Historie umzubenennen ist weit teurer, als jetzt einmal darüber nachzudenken.
  6. Entscheiden Sie, welchen Zeitstempel die Metrik trägtStandardmäßig setzt ein Collector den Zeitstempel beim Einsammeln. Prüfen Sie, ob Ihre Telegraf-Version den OPC-UA-Source-Timestamp in die Metrikzeit übernehmen kann, und wenn ja, nutzen Sie das und prüfen Sie den Optionsnamen gegen die aktuelle Dokumentation des Plugins. Wenn nicht, halten Sie diese Tatsache dort fest, wo das Analytics-Team sie liest.
  7. Beobachten Sie die eigenen Metriken des AgentsAktivieren Sie den internen Input und alarmieren Sie auf Gather-Fehler und fehlgeschlagene Schreibvorgänge. Ein Telegraf-Agent, der eine SPS stillschweigend nicht erreicht, erzeugt eine Lücke, die wie eine stehende Maschine aussieht, und das ist der schädlichste Fehlerfall in der Maschinendatenerfassung überhaupt.

Wie der Adressraum aussieht

Telegraf flacht den Adressraum zu Metriken ab. Jeder erfasste Knoten wird zu einem Field an einem Measurement, mit Tags für die von Ihnen konfigurierten Dimensionen, und alles Übrige, was der Server wusste, Typdefinitionen, technische Einheiten, Browse-Hierarchie, bleibt zurück, sofern Sie es nicht in Namen und Tags codiert haben. Auf der InfluxDB-Seite gibt es ebenfalls kein Modell: Eine Series ist ein Name und ein Satz Tags. Die Folge ist, dass Namespace-URI und Identifier aus OPC UA als Tags oder als separate, versionsverwaltete Zuordnungstabelle mitgeführt werden sollten, damit eine Zahl in einem Dashboard immer auf den Knoten zurückgeführt werden kann, aus dem sie stammt. Ohne das existiert die Zuordnung nur in einer Konfigurationsdatei auf einem einzigen Host.

Die Fallen

  • Das Zertifikat des Agents in den Trusted Store jedes Servers zu bekommen, ist im Flottenmaßstab die größte Hürde bei der Inbetriebnahme, und sie fällt je Maschine an. Entscheiden Sie sich vor dem ersten Rollout für ein Verfahren oder eine PKI, und rechnen Sie damit, dass der erste Versuch gegen jeden Server konstruktionsbedingt mit einem Vertrauensfehler scheitert.
  • Namespace-Indizes in der Konfiguration brechen nach einem SPS-Programmdownload. Konfigurieren Sie über die Namespace-URI, wo das Plugin es unterstützt, und behandeln Sie jeden literalen Index als bekanntes Risiko mit dokumentiertem Verantwortlichen.
  • Eine Zustandsvariable zu pollen ist nicht dasselbe, wie sie zu abonnieren. Wenn die Verfügbarkeit zählt, nehmen Sie das Listener-Plugin, denn ein Stopp, der kürzer ist als Ihr Poll-Intervall, ist unsichtbar und nicht rekonstruierbar.
  • Der Zeitstempel des Collectors ist nicht der der Maschine. Wenn die Zeit der Metrik die Erfassungszeit ist, erbt jede Stillstandsdauer Ihren Polling-Jitter, und niemand nachgelagert kann das erkennen.
  • Roh geschriebene Zähler brauchen zur Abfragezeit eine Differenz- oder eine nicht-negative Differenzfunktion. Einen Zähler zu mitteln erzeugt eine überzeugende und bedeutungslose Reihe, und Rücksetzungen oder Überläufe brauchen eine ausdrückliche Behandlung.
  • Für die OPC-UA-Seite gibt es kein Store-and-Forward. Wenn der Host des Agents ausfällt, ist dieser Zeitraum eine Lücke, und eine Lücke ist von einer stehenden Maschine nicht zu unterscheiden, solange Sie nicht zusätzlich einen Heartbeat oder eine Verbindungszustandsmetrik erfassen.
  • Ein Agent, der viele Maschinen erfasst, konzentriert das Risiko: Ein Konfigurationsfehler oder ein Neustart unterbricht jede Linie auf einmal.
  • Die von Ihnen angeforderten Sampling- und Publishing-Intervalle kann der Server revidieren. Prüfen Sie, was der Server tatsächlich liefert, statt der konfigurierten Zahl zu vertrauen.

OEE-Daten daraus gewinnen

Telegraf kann die drei Eingangsgrößen liefern, die OEE braucht, mit einer klaren Grenze. Zustand: Abonnieren Sie mit dem Listener-Plugin eine Zustands- oder Betriebsartenvariable und speichern Sie jeden Übergang, damit die Verfügbarkeit aus Dauern statt aus Stichproben berechnet wird. Stückzahlen: Lesen Sie SPS-Zähler als Werte und berechnen Sie Deltas zur Abfragezeit, wobei Sie Resets explizit behandeln; verlangen Sie vom Collector nicht, Flanken zu zählen. Ursachen: OPC UA Alarms and Conditions sind nicht der Zweck dieses Collectors, daher ist eine Ursachencode-Variable der realistische Weg, und ereignisbasierte Ursachen brauchen ein anderes Werkzeug. Darüber hinaus gilt es klar zu sagen, dass die Zeitstempel-Disziplin des Collectors die Genauigkeitsobergrenze für jede ausgewiesene Dauer setzt und dass geplante Produktionszeit, Schichtkalender und Standard-Taktzeiten nicht in der Maschine liegen, sondern als separate Referenzdaten mit einem Verantwortlichen ankommen müssen.

Prüfen, bevor Sie sich darauf verlassen:Die Namen der Plugin-Optionen, welche SecurityPolicies unterstützt werden, ob der Source-Zeitstempel in die Zeit der Metrik übernommen werden kann, und das Verhalten der automatischen Zertifikatserzeugung unterscheiden sich alle zwischen den Telegraf-Versionen, und beide Input-Plugins werden aktiv weiterentwickelt. Prüfen Sie die Plugin-Dokumentation und die Konfigurationsreferenz, die mit der von Ihnen installierten Version ausgeliefert wird, statt sich auf diese Seite zu verlassen, und klären Sie die InfluxDB-Version und ihre Query-Funktionen separat, da die Zählerbehandlung zwischen den Abfragesprachen unterschiedlich ist.

Zuletzt geprüft am 7. September 2026 gegen OPC UA 1.05.07. OPC UA Connect ist ein unabhängiges Bildungsangebot und steht in keiner Verbindung zur OPC Foundation.

Kostenloser Download
OPC UA Machine Data → OEE Mapping Kit
Welche Knoten Sie abonnieren, wie daraus Verfügbarkeit, Leistung und Qualität werden und welche Companion Specification die Antwort schon liefert, damit Sie aufhören, Tags zu erfinden.
Kostenloses Mapping-Kit holen →
Kostenlos, kein Kurs, kein Login