Integration · PLC

OPC UA mit Siemens S7-1200 verbinden

ProduktSiemens S7-1200
KategoriePLC
OPC-UA-RolleServer

Die S7-1200 kann als OPC-UA-Server arbeiten, konfiguriert im TIA Portal wie ihr größeres Geschwistermodell und erreichbar unter opc.tcp://<plc-ip>:4840. Rechnen Sie mit einer Lizenz- oder Optionspflicht, einem Firmware-Mindeststand und deutlich engeren Grenzen als bei einer S7-1500. Klären Sie alle drei Punkte mit Siemens für Ihre genaue CPU, bevor Sie planen.

Bevor Sie starten

  • Ein CPU-Firmwarestand, der den OPC-UA-Server enthält. Die S7-1200 hat die Serverfähigkeit später bekommen als die S7-1500 und der Funktionsumfang ist schmaler; klären Sie, was Ihre CPU unterstützt, statt Gleichstand anzunehmen.
  • Die Lizenz oder Option, die den Server freischaltet, sofern für Ihre CPU eine gilt. Klären Sie das in der Angebotsphase.
  • TIA Portal in einer zur Firmware passenden Version.
  • Ein realistischer Client-Entwurf. Das ist eine Kompaktsteuerung, und der OPC-UA-Server konkurriert mit dem zyklischen Programm um dieselbe CPU.
  • Netzzugang zu TCP 4840 oder ein Reverse-Connect-Pfad, wenn die Netzschicht nur ausgehende Verbindungen erlaubt.

Die Einrichtung

  1. Server aktivieren und Anwendungsnamen setzenAktivieren Sie in den CPU-Eigenschaften den OPC-UA-Server und setzen Sie den Anwendungsnamen, bevor Sie ein Zertifikat erzeugen. Der Name fließt in die ApplicationUri ein, und eine spätere Änderung entwertet die Vertrauensbeziehungen, die Sie um den alten Namen aufgebaut haben.
  2. Geben Sie einen kleinen, bewusst gewählten Satz an Tags freiNutzen Sie die Zugriffsattribute je Tag, um nur das zu veröffentlichen, was ein Client wirklich braucht, und markieren Sie die Schreibbarkeit explizit. Auf einer Kompakt-CPU ist das keine Ordnungsliebe, sondern Kapazitätsmanagement: Jeder veröffentlichte Knoten ist ein potenzielles MonitoredItem.
  3. Definieren Sie eine Server-Schnittstelle als VertragWo die TIA-Version es unterstützt, definieren Sie eine Server-Schnittstelle mit stabilen Namen, statt rohe Symbolnamen offenzulegen. Das hält den Browse-Baum klein und entkoppelt den Client von der internen Programmstruktur.
  4. Setzen Sie SecurityPolicies und erzeugen Sie das ServerzertifikatWählen Sie die angebotenen SecurityPolicies und Sicherheitsmodi, entscheiden Sie über anonyme Anmeldung oder Benutzername, und erzeugen Sie das CPU-Zertifikat mit jedem Hostnamen und jeder IP, die ein Client anspricht, im Subject Alternative Name sowie der ApplicationUri als URI-Eintrag.
  5. Laden, dann den Endpunkt mit einem unabhängigen Client nachweisenVerbinden Sie sich zuerst mit Security None, um Netzwerkpfad und Endpunkt zu bestätigen, dann auf einem signierten und verschlüsselten Endpunkt. Rechnen Sie beim ersten gesicherten Versuch mit BadCertificateUntrusted und schließen Sie den Vertrauensaustausch in beide Richtungen ab.
  6. Messen Sie, bevor Sie skalierenLegen Sie die Subscription an, die Sie tatsächlich fahren wollen, und beobachten Sie die revidierten Sampling- und Publishing-Intervalle, die der Server zurückgibt, nicht die, die Sie angefordert haben. Auf einer Kompakt-CPU fällt die Revision oft deutlich aus, und sie ist der tatsächliche Takt, in dem Ihre Daten ankommen.
  7. Namespace-Indizes aus dem NamespaceArray auflösenLesen Sie das NamespaceArray beim Verbindungsaufbau und bilden Sie URI auf Index ab. Hinterlegen Sie URI plus Identifier in der Konfiguration, damit ein Programmdownload Ihre Knotenreferenzen nicht zerstören kann.

Wie der Adressraum aussieht

Derselbe Siemens-typische Baum wie bei der S7-1500: ein nach der SPS benannter Knoten mit Ordnern für Datenbausteine, Eingänge, Ausgänge und Merker darunter, und String-Identifier, die TIA-Symbolnamen abbilden, etwa ns=3;s="MyDB"."Count". Inhalte aus Companion Specifications sind nicht vorhanden, sofern nicht jemand eine auf ein Modell abgebildete Server-Schnittstelle erstellt und geladen hat, und der Werkzeugweg dafür ist auf einer Kompakt-CPU enger als auf einer S7-1500. Gehen Sie davon aus, dass Sie gegen benannte Tags integrieren, und entwerfen Sie Ihren Client so, dass die Tag-Zuordnung in der Konfiguration liegt und nicht im Code.

Die Fallen

  • Gehen Sie nicht von Funktionsgleichheit mit der S7-1500 aus. Client-Funktionalität, PubSub, Werkzeuge für Server-Schnittstellen und Methodenunterstützung sind die Bereiche, in denen eine Kompakt-CPU am ehesten abweicht, und ein Entwurf, der unbemerkt von einem davon abhängt, scheitert spät.
  • Die Grenzen für Sessions und MonitoredItems sind niedrig genug, dass ein zweiter Client das ganze Problem sein kann. Ein Ingenieur, der UaExpert über Nacht verbunden lässt, während ein Historian sammelt, ist auf dieser Plattform eine echte Ursache für BadTooManySessions.
  • Der Server korrigiert Ihre Sampling- und Publishing-Intervalle im Rahmen seiner Leistungsfähigkeit nach unten, ohne die Anfrage abzulehnen. Lesen Sie die revidierten Werte zurück und behandeln Sie sie als den geltenden Vertrag, sonst sind Ihre OEE-Zeitannahmen um einen Faktor falsch, den Sie nie zu sehen bekommen.
  • Eine Namespace-Index-Verschiebung nach einem Programmdownload bricht fest verdrahtete Knotenreferenzen mit BadNodeIdUnknown, genau wie auf jeder anderen Plattform.
  • Das Zertifikatsvertrauen bleibt die größte einzelne Hürde bei der Inbetriebnahme, und es muss sowohl auf der CPU als auch auf dem Client abgeschlossen werden.
  • Die Qualität der Zeitstempel ist begrenzt. Rechnen Sie damit, dass ServerTimestamp der aussagekräftige ist und dass die Uhr NTP-Disziplin braucht; ein Stillstandsdatensatz mit falschem Zeitstempel ist schlechter als gar kein Datensatz.

OEE-Daten daraus gewinnen

Behandeln Sie eine S7-1200 als Quelle einer Handvoll gut gewählter Signale, nicht als Maschinendatenplattform. Stückzahlen sollten aus einem in der SPS geführten Zähler kommen, nicht daraus, dass Ihr Client Flanken eines Booleans über ein Abtastintervall erkennt, das der Server möglicherweise vergrößert hat. Der Zustand sollte aus einer ganzzahligen Zustandsvariablen kommen, auf die sich der Programmierer festlegt, und Stillstandsursachen aus einem Fehlerwort, das gegen eine dokumentierte Tabelle decodiert wird. Da die Subscription-Kapazität knapp ist, bevorzugen Sie einen Client, eine Session, ein Publishing-Intervall und einen Heartbeat, damit ausbleibende Änderungen von einer toten Verbindung unterscheidbar sind. Geplante Produktionszeit, Schichtmodelle und Standard-Taktzeiten liegen hier nicht vor und werden es nie.

Prüfen, bevor Sie sich darauf verlassen:Ob Ihre S7-1200-CPU überhaupt einen OPC-UA-Server unterstützt, ab welcher Firmware, ob eine Lizenz oder Option erforderlich ist und wie sie bemessen wird, und die genauen Grenzen für Sessions, Subscriptions, MonitoredItems und das minimale Abtastintervall sind herstellerbestimmte Fakten, die sich von der S7-1500 unterscheiden und sich über die Firmware-Generationen verschoben haben. Klären Sie jeden Punkt mit Siemens anhand Ihrer CPU-Bestellnummer und Ihres Firmware-Stands, bevor Sie den Aufwand anbieten, und übertragen Sie niemals eine Zahl der S7-1500 per Annahme auf eine S7-1200.

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