IEC 62541 · Companion Specifications · PubSub · Security

OPC UA und Informationsmodellierung

Wir beraten Gerätehersteller und OEMs bei der OPC UA Informationsmodellierung. Wir entwerfen den Adressraum, wenden die Companion Specification an oder erweitern sie und bauen die Server und Clients, die das Modell bereitstellen.

Zielgruppe

Für wen wir arbeiten

  • Gerätehersteller

    Ihr Produkt soll OPC UA direkt im Gerät bereitstellen, mit einem korrekten Informationsmodell.

  • Maschinenbauer

    Das MES Ihres Kunden soll den OPC-UA-Adressraum Ihrer Maschine durchsuchen können, ohne eigenes Übersetzungsprojekt an jedem Standort.

  • Softwareanbieter

    Sie möchten Ihre Plattform um einen OPC-UA-Server oder -Client erweitern, mit einem Sicherheitsmodell, das die IT der Anlage auch akzeptiert.

Leistungsumfang

Was wir tun

  1. 01

    Entwurf des Informationsmodells

    Wir entwerfen den Adressraum aus den realen Signalen der Maschine und typisieren ihn nach der Companion Specification, wo es eine gibt.

  2. 02

    Arbeit an Companion Specifications

    Wir wenden EUROMAP-, VDMA- und andere Companion Specifications zu IEC 62541 an, erweitern sie um Signale, die sie noch nicht abdecken, und passen die Umsetzung an, wenn eine neue Version erscheint.

  3. 03

    Entwicklung von Servern und Clients

    Wir entwickeln OPC-UA-Server und -Clients für Embedded-, Linux- und Windows-Plattformen, auch wenn der Stack auf ein Gerät mit knappen Ressourcen passen muss.

  4. 04

    Aggregierende Server

    Wir führen viele Maschinen an einem Endpunkt zusammen. Der Server greift dazu als Client auf die vorhandenen Server zu und ist keine weitere Umsetzungsschicht.

  5. 05

    Migration von OPC DA auf OPC UA

    Aus einer Tag-Liste wird ein typisiertes Modell. Was bisher nur in Namen und im Wissen der Anlage steckte, machen wir explizit und bilden es korrekt ab.

  6. 06

    Umsetzung des Sicherheitsmodells

    Wir setzen Zertifikate, Trust Lists und Security Policies um, lösen die abgekündigten Policies ab und übernehmen auch die Arbeit am Security Key Service für PubSub.

  7. 07

    Schulung, gemeinsame Entwicklung und Langzeitbetreuung

    Wir führen Ihre Ingenieure durch Modell und SDK, damit sie den Adressraum ohne uns erweitern können. Nach der Auslieferung des Produkts stehen wir als Third-Level-Support hinter ihnen.

Technik

Normen und Plattformen

Normen
IEC 62541 (OPC UA) · EUROMAP 77 / 79 / 82 / 84 · VDMA Companion Specifications · OPC UA PubSub
Plattformen
Embedded und RTOS · Embedded Linux · Windows · Steuerungen mit FPGA
Was Sie erhalten
NodeSet2-Informationsmodell · Server- und/oder Client-Implementierung mit Build-Umgebung · Hinweise zur Konformität mit der Companion Specification · Ablauf für Zertifikate und Trust List · Migrationsprotokoll, wenn eine Modellversion gewechselt hat · ein geschultes Team

Was umfasst die Beratung zur OPC UA Informationsmodellierung?

Bei der OPC UA Informationsmodellierung entwerfen wir den Adressraum aus den realen Signalen der Maschine.

Unsere Kunden sind Gerätehersteller, Maschinenbauer und Softwareanbieter. Wir entwerfen den Adressraum aus den realen Signalen der Maschine, wenden die passende Companion Specification zu IEC 62541 an oder erweitern sie und bauen die Server und Clients, die das Modell bereitstellen. Unser eigenes Modellierungswerkzeug erzeugt NodeSet2 aus Basis- und Companion Specifications; mit ihm entstand das Robotermodell nach EUROMAP 79 für eine ausgelieferte Kunststoff- und Gummimaschine. Projekte fallen meist in eine oder mehrere dieser Gruppen:

  • Ein Modell für ein neues Produkt. Systementwurf und Architektur mit OPC UA, von den Signalen der Maschine bis zu einem NodeSet2, das das MES eines Kunden durchsuchen kann.
  • Eine Companion Specification, richtig angewendet. Arbeit an Companion Specifications zu IEC 62541, einschließlich Erweiterungen für Signale, die die Spezifikation nicht abdeckt.
  • Entwicklung von Servern oder Clients. OPC-UA-Server und -Clients für Embedded-, Linux- oder Windows-Plattformen.
  • Ein Endpunkt für viele Maschinen. Entwicklung aggregierender OPC-UA-Server, wenn die Maschinen schon OPC UA sprechen und das Problem das Zusammenführen ist. Unser Team hat die Schicht gebaut, über die ein entferntes ERP mehrere Maschinen einer Fertigungslinie abonniert hat.
  • Eine Migration. Von OPC DA auf OPC UA, oder die Migration einer EUROMAP-Version, wenn sich die Companion Specification unter einem ausgelieferten Produkt geändert hat.
  • Das Sicherheitsmodell. Umsetzung des OPC-UA-Sicherheitsmodells, Verwaltung von Zertifikaten und Trust Lists und die weiter unten beschriebene Ablösung alter Security Policies.

Anlagen nehmen wir nicht in Betrieb. Modell, Server und Sicherheitsentwurf in Ihrem Produkt oder Ihrer Plattform entwickeln wir, und wir testen sie mit Ihren Ingenieuren vor Ort und remote.

Links die realen Signale einer Maschine (ein Tag für den Motorstrom, eine Antriebsparameternummer, ein digitaler Eingang, eine Temperatur und eine Rezeptkennung des OEM), jedes mit einer gestrichelten Linie zu einem Knoten im OPC-UA-Adressraum rechts verbunden: ein Objekt Machine mit den Bereichen Motor, IO und Temperature als Typen der Companion Specification und Recipe als eigene Erweiterung mit Akzentbalken, die die Rezeptkennung des OEM aufnimmt, weil es dafür keinen Standardtyp gibt

Woher ein Adressraum seine Typen bekommt und welches Signal eine Entwurfsentscheidung braucht.

Was entscheidet über den Erfolg eines OPC-UA-Projekts?

Das Informationsmodell entscheidet, ob alles danach günstig oder teuer wird.

Die Maschinen zweier Hersteller, die beide typisierte Modelle nach Companion Specification bereitstellen, kann eine einzige MES-Integration nutzen. Stellen dieselben zwei Maschinen nur Tag-Listen bereit, braucht jede ihre eigene Integration und eine weitere, sobald sich eine von beiden ändert. Die Kosten entstehen nicht an der Maschine, sondern jedes Mal, wenn jemand ihre Daten nutzen muss. Die Migration von OPC DA auf OPC UA ist deshalb Modellierungsarbeit und kein Protokolltausch. Eine DA-Tag-Liste trägt die Bedeutung der Anlage implizit, in Namenskonventionen und im Wissen der Leute, die sie gebaut haben. Wir machen diese Bedeutung explizit, als typisierte, strukturierte Daten. Wer dieselbe Tag-Liste nur in einen OPC-UA-Server packt, nimmt das Problem mit.

Welche Companion Specification gilt für meine Maschine?

Zuerst nachsehen: Für die meisten Maschinenarten gibt es inzwischen eine, und ein eigenes Modell daneben ist eine bewusste Entscheidung.

Für Kunststoff- und Gummimaschinen gibt es die EUROMAP-Reihe, und dort liegt unsere ausgelieferte Arbeit: EUROMAP 83 für die allgemeinen Typdefinitionen, 77 für die Schnittstelle von der Spritzgießmaschine zum MES, 79 für Roboter und Handhabungsgeräte. Für Werkzeugmaschinen gibt es umati. Der VDMA hat für eine lange Liste von Branchen veröffentlicht, und die OPC Foundation führt das vollständige Verzeichnis. Zwei Fragen sind regelmäßig zu klären:

  • Wie das Modell dort erweitert wird, wo die Spezifikation nicht hinreicht. Wir entwerfen die Erweiterung im Typsystem der Spezifikation selbst und hängen keine zusätzlichen Tags daneben.
  • Was passiert, wenn die Companion Specification eine neue Version bekommt, während ein Produkt schon im Feld ist. Die Migration einer EUROMAP-Version für OPC UA ist eine eigene Aufgabe, weil die MES-Integration eines Kunden an die ausgelieferten Typen gebunden ist.

Ein Entscheidungsweg: Gibt es eine veröffentlichte Companion Specification? Ja führt zu ihrer Nutzung und Erweiterung, mit EUROMAP, VDMA oder OPC UA for Machinery als Beispielen; nein führt zu einem eigenen Modell auf dem Basis-Informationsmodell mit derselben Disziplin bei den Typen; beide enden in einer MES-Integration für viele Maschinen, und eine reine Tag-Liste ist blass als der Weg gezeichnet, der nicht gewählt wird

Beide Wege enden in einer MES-Integration für viele Maschinen.

Auf welchem OPC-UA-Stack sollte ich aufbauen?

Die Auswahl wird klein, sobald Stückzahl und Supportpflichten feststehen, und die Lizenz entscheidet selten.

StackWas er istWann wir ihn wählen
open62541C99 unter einer offenen Lizenz, ohne Laufzeit- oder Knotengebühr. Sein Beispielserver trägt eine Zertifizierung der OPC Foundation, und das Projekt dokumentiert Server-Binärdateien deutlich unter 100 kB, je nach Modell. Auf einem Gerät mit knappen Ressourcen zählt dasUnsere Standardwahl, wo er passt, und das ist oft der Fall. Die ausgelieferte Arbeit an der Kunststoff- und Gummimaschine beruht auf ihm. Das Projekt selbst rät, für ein geschäftskritisches Produkt mit einem kommerziellen Anbieter zu sprechen, und diesen Rat geben wir weiter
S2OPCEine formale, auf Sicherheit ausgerichtete Herkunft: CSPN-Zertifizierung der ANSSI, eine Herkunft nach EN 50128 SIL2Wenn ein zertifizierter, sicherer Stack wichtiger ist als der kleinste Speicherbedarf. Unser eigener abgesicherter OPC-UA-PubSub-Demonstrator über TSN beruht auf ihm
node-opcuaEine Implementierung in Node.jsDie Plattform läuft schon auf Node.js, oder der Client ist eine Webanwendung
Ein kommerzielles SDKEin Supportvertrag, mehr Funktionsumfang, Unterlagen zur Zertifizierung und ein Ansprechpartner, zu Lizenzkosten meist je Produkt oder je KnotenEin Maschinenbauer mit hohen Stückzahlen und langer Servicepflicht, für den es die wirtschaftlichste Lösung sein kann

Wir verkaufen keinen dieser Stacks weiter. Wir portieren und integrieren den Stack, den Sie wählen, und sagen Ihnen vor der Entscheidung, welchen wir empfehlen und warum.

Was macht einen OPC-UA-Server langsam?

Meist das Zugriffsmuster, gelegentlich der Aufbau des Adressraums im Stack selbst.

Ein Client, der pollt, liest jedes konfigurierte Tag in einem festen Intervall, ob sich etwas geändert hat oder nicht. Fünfhundert Tags auf zwanzig Maschinen erzeugen deshalb um drei Uhr morgens dieselbe Last wie mitten in der Schicht. Subscriptions mit überwachten Elementen (Monitored Items) kehren das um: Der Server beobachtet die Werte und benachrichtigt den Client, wenn sie sich ändern. Genau dafür sind diese Dienste entworfen.

  • Der Aufbau des Adressraums ist der kleinere der beiden Effekte. Ein statischer, einkompilierter Adressraum ist etwas schneller als einer, der jeden Wert bei jedem Lesezugriff aus einem externen Speicher holen muss.
  • Die Einstellungen, die übersprungen werden. Abtastintervall (Sampling Interval) und Sendeintervall (Publishing Interval) sind zwei verschiedene Einstellungen und stehen trotzdem oft auf demselben Wert. Queue-Größe und Verwerfungsregel bestimmen, welche Werte einer Häufung erhalten bleiben. Ein Totband verhindert, dass ein verrauschter Analogwert Verkehr erzeugt, den niemand liest.

Das Modell selbst ist die andere Hälfte. Ein Adressraum, der zu tief ist, an den falschen Stellen zu flach oder aus Tausenden untypisierter Variablen besteht, ist teuer beim Durchsuchen und beim Abonnieren, und keine Einstellung am Client holt das zurück. Auch deshalb kommt die Modellierung zuerst.

Zwei Kästen: das Verhalten der Subscription (Sendeintervall, Abtastintervall, Queue-Größe und Totband) unter „nach der Inbetriebnahme“ und der Adressraum (Tiefe, an den falschen Stellen flach, typisiert oder untypisiert, Anzahl der Variablen) unter „vor der Inbetriebnahme“

Was sich nach der Inbetriebnahme einstellen lässt und was vorher feststeht.

Ist ein OPC-UA-Informationsmodell ein digitaler Zwilling?

Nein, aber beide treffen sich auf der Datenebene.

  • Was das Modell für einen Zwilling liefert. Eine typisierte Struktur mit echter Semantik, die ein anderes System abonnieren kann. Das ist die Grundlage, und diese Leistung haben wir geliefert, darunter ein Robotermodell nach EUROMAP 79 aus unserem eigenen Modellierungswerkzeug.
  • Was es nicht umfasst. Zur OPC-UA-Modellierung gehört weder der Aufbau von Verwaltungsschalen (Asset Administration Shells) noch die Erstellung von Verhaltens- oder Simulationsmodellen oder die Arbeit auf Zwillingsplattformen wie Azure Digital Twins, MindSphere oder Predix. Der Begriff „Zwilling“ wird für all das verwendet, deshalb ist wichtig, welchen Teil des Entwurfs jedes Stück tatsächlich abdeckt.

Was hat sich bei der Sicherheit von OPC UA geändert?

Die SHA-1-Policies sind abgekündigt; aktuell sind Basic256Sha256, Aes128_Sha256_RsaOaep und Aes256_Sha256_RsaPss.

Ein System, das noch eine der beiden älteren Policies verwendet, läuft auf etwas, das der Standard zurückgezogen hat.

Security PolicyStatusGrund
Basic128Rsa15Abgekündigt seit OPC UA 1.04SHA-1 und RSA-Padding nach PKCS#1 v1.5
Basic256Abgekündigt seit OPC UA 1.04SHA-1
Basic256Sha256AktuellDie RSA-Basis, die die meisten Stacks mitbringen
Aes128_Sha256_RsaOaepAktuellDer Ersatz für Basic128Rsa15
Aes256_Sha256_RsaPssAktuellAES-256 mit RSA-PSS-Signaturen
Ursprüngliche ECC-Policies (nistP256, nistP384, brainpoolP256r1, brainpoolP384r1, curve25519, curve448)AbgekündigtErsetzt durch die Varianten mit AES-GCM und ChaCha-Poly darunter
ECC-Varianten mit AES-GCM und ChaCha-Poly (z. B. ECC_nistP256_AesGcm)AktuellSchlüssel auf elliptischen Kurven; vor der Wahl die Unterstützung im Stack prüfen

Der Betrieb ist schwieriger als die Kryptografie. Was typischerweise scheitert, ist die Verwaltung von Zertifikaten und Trust Lists, oft im dritten Jahr, wenn ein Zertifikat auf einer Maschine abläuft, an der sich seit der Inbetriebnahme niemand angemeldet hat. Erneuerung und Verteilung der Zertifikate behandeln wir als Liefergegenstand, und wenn PubSub im Spiel ist, gehört der Security Key Service zum selben Entwurf.

Wann braucht OPC UA TSN darunter?

OPC UA braucht TSN, wenn Daten deterministisch ankommen müssen, innerhalb einer begrenzten Latenz.

Bei der Integration von OPC UA PubSub über TSN treffen Modellierung und Netz aufeinander: dasselbe Informationsmodell, über PubSub mit begrenzter Übertragungszeit veröffentlicht. Unser Team hat OPC UA mit TSN auf einem NXP i.MX Arm SoC unter openIL integriert, und ein abgesicherter PubSub-Demonstrator hielt einen Zyklus von 1 ms bei aktiver Sicherheit.

Darunter liegt die eigentliche Arbeit am Determinismus, also Qbv-Zeitpläne, Treiber und Messung. Das gehört zum Echtzeit-Ethernet und nicht zur Datenmodellierung. Verlangt die Aufgabe die feine QoS-Steuerung je Topic von DDS (Reliability, Durability, Deadline) und nicht das einfachere Publish/Subscribe von OPC UA PubSub, gehört die Architektur zu einer anderen Middleware-Familie, und die behandelt die Seite zur Datenverteilung.

FAQ

Häufige Fragen

Wer entwirft das OPC-UA-Informationsmodell für einen Maschinenbauer?
Wir, ausgehend von den realen Signalen Ihrer Maschine. Maschine, Steuerungslogik und Kundenbeziehung bleiben bei Ihrem Team. Wir übernehmen Modell, Server und Sicherheitsentwurf, bauen sie mit Ihren Ingenieuren und bleiben danach als Third-Level-Support dabei.
Bauen Sie das MES, oder binden Sie unsere Maschinen daran an?
Wir übernehmen die Maschinenseite und den Client, wenn er als Produkt ausgeliefert wird. Wir bauen den Server und das Informationsmodell, das das MES eines Kunden durchsuchen kann, und entwickeln einen OPC-UA-Client in eine Softwareplattform hinein. Auswahl, Konfiguration und Inbetriebnahme eines MES in der Halle bleiben beim Auftrag des MES-Integrators, und mit ihm arbeiten wir während Integration und Test zusammen.
Was ist der Unterschied zwischen OPC UA und DDS?
Es sind verschiedene Arten von Technik. OPC UA ist ein Modell und unabhängig vom Transport; DDS bindet das Modell über RTPS an seinen Transport. Beides auf einer Seite zu behandeln würde einen Modellierungsstandard mit Middleware vermischen. Datenverteilung hat eine eigene Seite.
Braucht OPC UA PubSub einen Broker?
Nicht unbedingt. PubSub Part 14 definiert eine Abbildung ohne Broker über UDP-Multicast und eine Abbildung mit Broker über MQTT oder AMQP. Welche passt, hängt vom Netz ab. Peer-to-Peer in einem lokalen Segment spricht meist für UDP-Multicast, über das Segment hinaus braucht es einen Broker.
Unsere Maschinen haben schon OPC-UA-Server. Brauchen wir ein Gateway?
Wahrscheinlich kein übersetzendes Gateway. Sprechen die Maschinen schon OPC UA, liefert ein aggregierender Server, der als Client jeder Maschine arbeitet, einen einzigen Endpunkt, ohne etwas umzusetzen, und das Ergebnis bleibt OPC UA. Müssen die Daten danach noch in ein ERP- oder BI-System, das selbst kein OPC UA spricht, ist diese letzte Strecke Edge-Umsetzung und keine Aggregation. Das gehört zu Industrial IoT und Edge-Integration, mit eigener Seite. Ein Gateway, das zwischen einem anderen Protokoll und OPC UA übersetzt, brauchen Sie, wenn ein Teil des Bestands überhaupt kein OPC UA spricht.
Können Sie unsere Ingenieure am Modell schulen, statt es nur zu übergeben?
Ja, und das rechnet sich hier stärker als sonst, weil ein Modell mit jeder Erweiterung des Produkts mitwächst. Ihre Ingenieure arbeiten an der ersten Version mit unseren zusammen und übernehmen dann das entstandene NodeSet2-Modell. Für spätere Fragen zu Companion Specification und Sicherheit bleiben wir hinter ihnen.
Zertifizieren Sie unsere OPC-UA-Implementierung?
Nein. Wir bauen sie, testen sie gegen die Companion Specification und unterstützen eine Einreichung zur Zertifizierung. Die Zertifizierung erfolgt über das Verfahren der OPC Foundation, nicht durch uns.
Normen und Quellen
  • IEC 62541 – OPC Unified Architecture; liefert Adressraum, Typsystem und Dienste, in denen jede Companion Specification geschrieben ist
  • EUROMAP 83 – allgemeine Typdefinitionen für Kunststoff- und Gummimaschinen
  • EUROMAP 77 / 79 – Spritzgießmaschine zu MES sowie Roboter und Handhabungsgeräte
  • OPC 10000-2 – das Sicherheitsmodell von OPC UA, einschließlich der Policies, die ein aktuelles System verwenden sollte
  • open62541 – die quelloffene Implementierung von IEC 62541, auf der wir aufbauen; ihr Beispielserver trägt eine Zertifizierung der OPC Foundation
  • S2OPC – quelloffene OPC-UA-Implementierung mit CSPN-Zertifizierung der ANSSI und einer Herkunft nach EN 50128 SIL2; Grundlage unseres abgesicherten PubSub-über-TSN-Demonstrators
  • node-opcua – quelloffene OPC-UA-Implementierung in Node.js/TypeScript, passend für eine JavaScript-Plattform oder einen Client
Weiterlesen

Sollen wir das für Ihr Produkt einschätzen?

Lesen Sie zuerst unsere technischen Notizen oder sprechen Sie direkt mit dem Team, das die Arbeit übernimmt.