Kommunikation & Daten
PROFINET-Analyse: Welche Grenzwerte wirklich gelten
Jitter und CRC-Fehler stehen in jedem Messbericht — als Abnahmekriterium kennt die PI-Richtlinie sie nicht. Die vier Pflichtgrößen und ihre Zahlenwerte.
Kommunikation · OPC UA
Strukturen sind nicht konsistent lesbar, der Server läuft im CPU-STOP weiter, Zeitstempel meinen etwas anderes: Was vor einer MES-Anbindung zu klären ist.
Stand:
„Die Steuerung kann OPC UA“ steht in fast jedem Lastenheft, und es stimmt. Was dort selten steht, sind die Eigenschaften, an denen MES-Anbindungen später scheitern — und zwar nicht mit einer Fehlermeldung, sondern still.
Still heißt hier: Die Verbindung steht, der Client bekommt Antworten, und auf Protokollebene ist jede einzelne davon korrekt. Falsch wird erst, was das übergeordnete System daraus schließt. Dieser Artikel sammelt die Stellen, an denen das geschieht, bevor sie im Anlauf auffallen. Für den Vergleich mit der klassischen S7-Kommunikation lohnt der Blick auf die Frage, warum ein Snap7-Zugriff scheitert — die beiden Wege lösen dieselbe Aufgabe mit gegensätzlichen Nachteilen.
Die Aussage „die S7-1500 kann OPC UA“ ist zu grob für eine Zusage. Der Funktionsumfang hängt an der Firmware, und die Grenzen liegen an unerwarteten Stellen — am deutlichsten dort, wo die Steuerung nicht antworten, sondern selbst fragen soll. Wer eine CPU als OPC-UA-Client plant, prüft deshalb den Firmware-Stand, nicht das Typenschild.
Firmware-Bindung
Woran der Funktionsumfang hängt.
Welcher Stand welche Funktion mitbringt, steht im Siemens-Funktionshandbuch „S7-1500 OPC UA“ und verschiebt sich mit neuen Ständen — vor jeder Zusage gegen die aktuelle Fassung prüfen.
Der Sprung auf den Stand V3.0 ist dabei das stärkste technische Argument für ein Firmware-Update, das kaum jemand kennt: Die Subscription-Grenzen vervielfachen sich bei gleicher Hardware. Man bekommt ein Vielfaches der überwachbaren Datenpunkte, ohne eine neue CPU zu kaufen.
Aber: Diese Mengengerüste gelten unter Bedingungen, die Siemens ausdrücklich nennt.
Das Kleingedruckte
Unter diesen Bedingungen gilt das Mengengerüst.
Bedingungen nach dem Siemens-Funktionshandbuch „S7-1500 OPC UA“.
Eine harte Grenze dagegen ist das kleinste Abtastintervall, und sie liegt nicht beim Client. Wer auf einer kleineren CPU eine Erfassung im Bereich weniger Millisekunden zusagt, kann das prinzipbedingt nicht halten — unabhängig davon, was der Client anfordert.
SIMATIC-Strukturen sind über OPC UA nicht konsistent lesbar oder schreibbar. Betroffen sind anwenderdefinierte Typen, unbenannte Strukturen, Systemdatentypen wie Datum-und-Uhrzeit-Strukturen oder Zeitgeber — und auch Zeichenketten.
Was das praktisch heißt: Ein Rezept- oder Auftragsdatensatz, der als Struktur abgeholt wird, kann Werte aus zwei verschiedenen Zyklen enthalten. Auftragsnummer neu, Sollmenge alt. Es gibt keine Fehlermeldung; das Rezept ist einfach falsch.
Die Suche beginnt danach an der falschen Stelle: Ein Auftrag, der beim MES widersprüchlich ankommt, sieht dort wie ein Fehler des MES aus. Erst wenn dort alles geprüft ist, wandert der Verdacht zur Steuerung — und in der Steuerung funktioniert sichtbar alles.
Die Lösung liegt im Anwenderprogramm, nicht in der Anbindung: Zusammengehörige Daten in einem Zug in einen Übergabebereich kopieren und mit einem Gültigkeitskennzeichen versehen, das der Client zuerst prüft. Das ist derselbe Mechanismus, den man auch bei der klassischen S7-Kommunikation braucht — nur erwartet ihn bei OPC UA kaum jemand. Wie ein solcher Bereich aussieht, steht weiter unten.
Diese Eigenschaft verdient einen eigenen Abschnitt, weil ihre Folgen so weitreichend sind: Der OPC-UA-Server läuft im Betriebszustand STOP weiter. Er beantwortet Anfragen wie gewohnt und liefert die eingefrorenen Werte von vor dem Stopp. Schreibzugriffe nimmt er an, der Client bekommt eine Erfolgsmeldung — die Steuerung verarbeitet die Werte aber nicht.
Die Gegenmaßnahme ist einfach und gehört in jede Anbindung: ein Lebenszeichen im Datenmodell — ein Zähler, den das Anwenderprogramm zyklisch hochzählt und den der Client auf Änderung überwacht. Steht der Zähler, steht die Steuerung.
Werden CPU-Variablen wie üblich in den Adressraum des Servers abgebildet, setzt der Server den Zeitstempel der Quelle nicht auf den Zeitpunkt der Wertänderung, sondern auf den Zeitpunkt, zu dem der Wert im Server erfasst wurde — also auf den Abtastzeitpunkt.
Eigene Darstellung nach Siemens-Funktionshandbuch „S7-1500 OPC UA“ — Zeitstempel der Quelle beim Abbilden von CPU-Variablen, Verhalten des Servers im Betriebszustand STOP.
Für Anzeigen ist das gleichgültig. Für Aufzeichnungen, Rückverfolgbarkeit und Chargennachweise ist es das nicht: Wer mit Subscriptions im Sekundenbereich arbeitet, bekommt Zeitstempel mit sekundengrober Auflösung, die zudem systematisch später liegen als das Ereignis. Wo der Änderungszeitpunkt Teil des Nachweises ist, muss er aus dem Anwenderprogramm kommen und als eigener Wert übertragen werden.
Welcher Zeitstempel gilt für welchen Zweck?
Die Reihenfolge zählt: Der erste Fall, der zutrifft, ist die Antwort.
Wenn
Anzeige, Bedienbild, Zustandsübersicht
Dann
Zeitstempel des Servers
Was angezeigt wird, ist ohnehin der zuletzt erfasste Wert — der Abtastzeitpunkt beschreibt ihn richtig.
Wenn
Verlaufsaufzeichnung, deren Auflösung deutlich gröber ist als das Abtastintervall
Dann
Zeitstempel des Servers, mit bekanntem Verzug
Der Versatz ist systematisch und damit einschätzbar. Er gehört in die Schnittstellenbeschreibung, nicht in die spätere Diskussion.
Wenn
Nachweis, zu dem der Zeitpunkt der Wertänderung gehört
Dann
Zeitstempel aus dem Anwenderprogramm
Nur dort ist der Änderungszeitpunkt bekannt. Er gehört als eigener Wert in den Übergabebereich.
Wenn
Frage, ob die Steuerung überhaupt noch rechnet
Dann
Kein Zeitstempel, sondern das Lebenszeichen
Der Server beantwortet Anfragen auch im Betriebszustand STOP. Nur ein Wert, den das Anwenderprogramm selbst fortschreibt, belegt, dass es läuft.
Der Zeitstempel des Servers wird dadurch nicht wertlos: Aus dem Abstand zum Zeitstempel des Programms lässt sich der Verzug der Abtastung ablesen.
Gültigkeitskennzeichen, Lebenszeichen und Änderungszeitpunkt lösen drei verschiedene Probleme — aber sie liegen an derselben Stelle: in dem Bereich des Anwenderprogramms, den der Client liest. Deshalb entstehen sie zusammen und nicht nacheinander.
Anleitung
Was in der Steuerung entsteht, bevor sich der erste Client verbindet.
Der Aufwand liegt im Anwenderprogramm, nicht in der Anbindung. Wer die Reihenfolge umdreht, baut die Prüfungen später in ein laufendes System ein.
Nicht den gewachsenen Rezept- oder Auftragsbaustein nach außen geben, sondern einen eigenen Bereich anlegen, der nur die Werte enthält, die das übergeordnete System braucht — und zwar einzeln. Was in der Steuerung eine Struktur ist, wird beim Kopieren in Einzelwerte aufgelöst.
Zeichenketten gehören dabei zu den Strukturen: Wo eine Auftragsnummer als Text übertragen werden muss, gilt für sie dasselbe Kennzeichen wie für alles andere.
Das kostet Schreibarbeit im Programm und nimmt der Anbindung die gesamte Fehlerklasse aus dem Abschnitt über Strukturen ab: Jeder einzelne Wert ist für sich konsistent, und die Zusammengehörigkeit stellt nicht das Protokoll her, sondern das Kennzeichen daneben.
Drei Werte im Übergabebereich sind keine Nutzdaten und trotzdem die wichtigsten: das Gültigkeitskennzeichen, das Lebenszeichen und der Zeitpunkt der letzten Änderung. Sie kosten wenige Zeilen und beantworten die drei Fragen, die der Client sonst raten muss.
Die Reihenfolge ist keine Kosmetik: Das Gültigkeitskennzeichen wird als letztes gesetzt. Erwischt der Server den Bereich mittendrin, steht es noch auf ungültig — und der Client wartet, statt einen halben Satz zu verarbeiten.
Der Übergabebereich wirkt nur, wenn die Gegenseite ihn benutzt. Drei Punkte gehören deshalb in die Schnittstellenbeschreibung und nicht in die spätere Fehlersuche:
Werkseinstellung
Drei Punkte, die vor dem Produktivgang bewusst gesetzt gehören.
Die Sichtbarkeit des Datenhaushalts einschränken
Das Attribut, das eine Variable für HMI und OPC UA erreichbar macht, ist beim Anlegen standardmäßig aktiv. Die Steuerung veröffentlicht per Voreinstellung alles, was sie hat. Einschränken lässt sich das nur variablenweise — bei gewachsenen Projekten Arbeit, aber der einzige Weg.
Den ungesicherten Endpunkt abschalten
Solange er angeboten wird, bleibt die Identität des Clients unbekannt und jeder Client kann sich verbinden — unabhängig davon, wie sorgfältig die Zertifikatsprüfung konfiguriert ist.
Überholte Verschlüsselungsverfahren abwählen
In der Voreinstellung gibt der Server auch Verfahren frei, die die OPC Foundation inzwischen als überholt einstuft. Hier weicht die Werkseinstellung von der Empfehlung der Spezifikation ab — ein konkreter, prüfbarer Befund, der sich in wenigen Minuten abstellen lässt.
Nach dem Siemens-Funktionshandbuch „S7-1500 OPC UA“ und OPC UA Part 7 (Security Profiles) der OPC Foundation.
Die Runtime-Lizenz gilt je CPU und deckt Server- wie Client-Funktion ab. Ihre Größe richtet sich nach einer festen Zuordnungsliste, nicht nach der Baugröße oder dem Gehäuse — wer nach Bauform kalkuliert, kalkuliert falsch.
Technisch erzwungen wird sie nicht: In den Eigenschaften der CPU wird lediglich der Typ der erworbenen Lizenz ausgewählt; ein Schlüssel wird nicht in die Steuerung übertragen und nicht geprüft. Das erklärt, warum in der Praxis Anlagen unlizenziert laufen, ohne dass es jemandem auffällt — es gibt keine Fehlermeldung und keinen Eintrag. Bei einer Bestandsaufnahme im Produktionsnetz gehört dieser Punkt deshalb auf die Liste: nicht, weil etwas nicht funktioniert, sondern weil eine Lizenzlücke sonst erst beim Audit sichtbar wird.
Nichts davon spricht gegen OPC UA. Für eine neue Anbindung ist es der technisch sauberste Weg an die S7-1500: symbolisch statt absolut, authentifizierbar, verträglich mit optimierten Bausteinen und ohne die Freigaben, die die klassische Kommunikation verlangt.
Die Punkte oben sind keine Argumente dagegen, sondern die Liste dessen, was in die Auslegung gehört — bevor jemand ein Mengengerüst zusagt, das aus einer Labortabelle stammt.
Fahrplan
Fünf Punkte, die den Unterschied zwischen einer funktionierenden Anbindung und stiller Fehlfunktion ausmachen.
Firmware und Leistungsklasse feststellen
Server, Methoden und Client sind an unterschiedliche Firmware-Stände gebunden, das kleinste Abtastintervall an die CPU-Leistungsklasse. Beides bestimmt, was zusagbar ist.
Datenstruktur auf Konsistenz prüfen
Strukturen und Systemdatentypen werden nicht konsistent übertragen. Wo zusammengehörige Werte gebraucht werden, gehört ein Gültigkeitskennzeichen ins Programm.
Erkennung eines CPU-Stopps vorsehen
Der Server antwortet auch im Betriebszustand STOP mit eingefrorenen Werten. Ohne Lebenszeichen im Datenmodell merkt das übergeordnete System den Stillstand nicht.
Zeitstempel klären
Der Zeitstempel des Servers bezeichnet den Abtastzeitpunkt, nicht den Zeitpunkt der Wertänderung. Wo es auf den Änderungszeitpunkt ankommt, muss er aus dem Programm kommen.
Sichtbarkeit und Sicherheit einstellen
Ab Werk ist der gesamte Datenhaushalt sichtbar und der ungesicherte Endpunkt verfügbar. Beides gehört bewusst eingestellt, bevor die Anbindung produktiv geht.
FAQ
Ja, eine Runtime-Lizenz je CPU, deren Größe sich nach einer festen Zuordnungsliste richtet — nicht nach der Baugröße. Technisch erzwungen wird sie nicht: In den Eigenschaften wird lediglich der erworbene Lizenztyp ausgewählt, ein Schlüssel wird nicht übertragen.
Weil Strukturen über OPC UA nicht konsistent übertragen werden. Betroffen sind anwenderdefinierte Typen, Systemdatentypen wie Datum/Uhrzeit-Strukturen und auch Zeichenketten. Konsistent sind nur elementare Datentypen.
Nicht von selbst. Der Server läuft im Betriebszustand STOP weiter und liefert die eingefrorenen Werte; Schreibzugriffe nimmt er an und quittiert sie, ohne dass die Steuerung sie verarbeitet. Ein Lebenszeichen im Datenmodell ist deshalb Pflicht.
Das hängt an der Leistungsklasse der CPU und lässt sich clientseitig nicht unterlaufen. Kleinere CPUs kommen nicht unter 100 Millisekunden; nur die großen Leistungsklassen erlauben deutlich kürzere Intervalle.
Er hebelt die übrigen Sicherheitseinstellungen aus: Die Identität des Clients bleibt unbekannt, und jeder Client kann sich verbinden, unabhängig von der konfigurierten Zertifikatsprüfung. Es geht dabei nicht um Abhören, sondern um Zugriffskontrolle.
Kommunikation & Daten
Jitter und CRC-Fehler stehen in jedem Messbericht — als Abnahmekriterium kennt die PI-Richtlinie sie nicht. Die vier Pflichtgrößen und ihre Zahlenwerte.
Kommunikation & Daten
Optimierter Bausteinzugriff, PUT/GET-Freigabe, Zugriffsstufe: Drei Hürden trennen ein Python-Skript von den Daten der S7-1500 — und das Abwählen kostet.
Recht, Sicherheit, Förderung
Ab 11.09.2026 gilt die CRA-Meldepflicht — auch für Maschinen, die längst ausgeliefert sind. Was Artikel 14 verlangt, wen er trifft, was bis dahin zu tun ist.
Kontakt
Eine erste Einschätzung zu Ihrem Vorhaben ist kostenfrei und unverbindlich.
Antwort innerhalb von zwei Werktagen