DE102007062986A1 - Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA - Google Patents

Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA Download PDF

Info

Publication number
DE102007062986A1
DE102007062986A1 DE102007062986A DE102007062986A DE102007062986A1 DE 102007062986 A1 DE102007062986 A1 DE 102007062986A1 DE 102007062986 A DE102007062986 A DE 102007062986A DE 102007062986 A DE102007062986 A DE 102007062986A DE 102007062986 A1 DE102007062986 A1 DE 102007062986A1
Authority
DE
Germany
Prior art keywords
opc
transaction
server
client
transactions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102007062986A
Other languages
English (en)
Other versions
DE102007062986B4 (de
Inventor
Wolfgang Dr.-Ing. Mahnke
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ABB Schweiz AG
Original Assignee
ABB Research Ltd Switzerland
ABB Research Ltd Sweden
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ABB Research Ltd Switzerland, ABB Research Ltd Sweden filed Critical ABB Research Ltd Switzerland
Priority to DE102007062986A priority Critical patent/DE102007062986B4/de
Priority to CN200880123126.0A priority patent/CN101903837B/zh
Priority to PCT/EP2008/010683 priority patent/WO2009083133A1/de
Publication of DE102007062986A1 publication Critical patent/DE102007062986A1/de
Priority to US12/819,601 priority patent/US8549065B2/en
Application granted granted Critical
Publication of DE102007062986B4 publication Critical patent/DE102007062986B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

Die Erfindung bezieht sich auf ein Verfahren und eine entsprechende Einrichtung zur Kommunikation zwischen Clients und Servern eines Client/Server-Systems unter Verwendung des Standardprotokolls OPC UA, und wobei zur Interaktion eines OPC UA Clients (1, 7) mit einem OPC-UA-Server (5, 8) OPC UA Serviceaufrufe verwendet werden. Zur Integration eines Transaktions-Kontexts in OPC-UA-Serviceaufrufen werden alle OPC UA Server (5, 8) des Systems mittels einer Transaktionsverwaltungskomponente (6) ergänzt, und für eine Durchführung von Transaktionen ertüchtigte OPC UA Clients (7) kommunizieren jeweils mit einem OPC UA Server (5) unter Verwendung von Transaktionen.

Description

  • Die Erfindung bezieht sich auf ein Verfahren und eine Einrichtung zur Kommunikation zwischen Clients und Servern gemäß dem Standardprotokoll OPC UA. Das Verfahren und die Einrichtung sind für unterschiedliche Anwendungen geeignet, insbesondere zur Kommunikation in Systemen der Automatisierungstechnik.
  • OPC UA ist ein neues Standardprotokoll zur Hersteller-unabhängigen Kommunikation, insbesondere in der Prozessautomatisierung, spezifiziert durch die OPC Foundation. Der ursprüngliche Name für OPC war zwar OLE for Process Control, OPC wird aber inzwischen ohne einen Hinweis auf eine Abkürzung benutzt. UA steht für Unified Architecture. Nachstehend werden häufig englischsprachige Begriffe benutzt, da sie bestimmte im Standard definierte Funktionen oder Spezifikationen umschreiben.
  • In 1 und 2 sind bekannte Anordnungen zur Interaktion gemäß OPC-UA-Spezifikation dargestellt. Dabei zeigt 1 einen OPC-UA-Client 1, der unter Verwendung des OPC-UA-Protokolls und eines Kommunikationssystems 2 eine Interaktion mit einem OPC UA Server 3 mittels OPC-UA-Serviceaufrufen durchführt. Ein OPC UA Server kann aber gegenüber weiteren Servern auch als Client wirken und deren Daten zusammentragen und in seinem Adressraum Clients zur Verfügung stellen. In 2 ist eine solche Anordnung dargestellt, wobei ein OPC-UA-Client 1 eine Interaktion mit einem als Aggregating OPC UA Server 4 bezeichneten Server durch führt, der wiederum über das Kommunikationssystem 2 mit zwei OPC UA Server 3 kommuniziert.
  • Client-Server-Betrieb gemäß OPC-UA-Standard findet in vielen Gebieten, wie beispielsweise in Fertigungsmanagementsystemen oder in der Produktionsplanung Anwendung, und allgemein in der Leittechnik, wobei Client- und Serverfunktionen z. B. in Geräten und Controllern implementiert sind. OPC UA ermöglicht in solchen Anordnungen nicht nur das Lesen und Schreiben von Daten, sondern auch Organisationsstrukturen für Daten zu ändern. Dadurch sind OPC UA Clients in der Lage, sowohl komplexe Konfigurationsaufgaben, als auch Engineering-Aufgaben oder andere Aufgaben zu lösen, die Daten schreiben und/oder Strukturänderungen erfordern. Es hängt von solchen Tasks ab, ob ein OPC UA Client entweder alle oder keine Änderungen an mehreren OPC UA Serviceaufrufen durchzuführen hat. Dies ist besonders von Bedeutung, wenn mehrere OPC UA Clients zugleich Änderungen an einem OPC UA Server vornehmen. Eine lange von Datenbanksystemen bekannte Lösung für solche Probleme ist die Nutzung von Transaktionen. Für OPC UA ist aber bisher kein Transaktions-Kontext spezifiziert. Die Granularität von Datenmanipulationsaktionen erfordert mehrere OPC UA Serviceaufrufe, wobei selbst für ein einzelner OPC UA Serviceaufruf kein Transaktions-Kontext spezifiziert ist. Es kann sogar bei einem einzelnen OPC UA Serviceaufruf, der z. B. Schreiben auf mehreren Werten enthält, der Fall eintreten, dass einzelne Schreibvorgänge erfolgreich sind und andere nicht.
  • Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren und eine Einrichtung anzugeben, mit denen eine Möglichkeit zur Durchführung von Transaktionen im Rahmen von OPC-UA-Serviceaufrufen erreicht wird.
  • Diese Aufgabe wird gelöst durch ein Verfahren zur Kommunikation zwischen Clients und Servern unter Verwendung des OPC-UA-Protokolls, das die im Anspruch 1 angegebenen Merkmale aufweist. Vorteilhafte Ausgestaltungen und eine entsprechende Einrichtung sind in weiteren Ansprüchen angegeben.
  • Mit der Erfindung wird demnach vorgeschlagen, zur Integration eines Transaktions-Kontexts in OPC UA Serviceaufrufen alle OPC UA Server des Systems mittels einer Transaktionsverwaltungskomponente zu ergänzen. Zur Durchführung von Transakti onen ertüchtigte OPC UA Clients sind dadurch in der Lage jeweils mit einem OPC UA Server unter Verwendung von Transaktionen zu kommunizieren.
  • Eine weitere Erläuterung der Erfindung und deren Vorteile ergibt sich aus der nachstehenden Beschreibung eines Ausführungsbeispiels anhand der Zeichnungsfiguren.
  • Es zeigen:
  • 1 eine Anordnung mit OPC UA Client und OPC UA Server gemäß dem Stand der Technik,
  • 2 eine OPC-UA-Client/Server-Anordnung mit eingefügtem Aggregating OPC UA Server gemäß dem Stand der Technik,
  • 3 eine erfindungsgemäße Anordnung mit OPC UA Client und einem zur Durchführung von Transaktionen eingerichteten OPC-UA-Server,
  • 4 eine erfindungsgemäße Anordnung mit OPC UA Client, zur Durchführung von Transaktionen eingerichtetem Aggregating OPC UA Server, sowie ebenfalls für Transaktionen eingerichteten OPC UA Servern,
  • 5 einen erfindungsgemäßen OPC UA Server, und
  • 6 ein Ablaufdiagramm für eine beispielhafte Transaktion.
  • Die Anordnung gemäß 3 enthält einen OPC UA Server 5, der mittels einer Transaktionsverwaltungskomponente 6 zur Durchführung von Transaktionen ertüchtigt ist. Grundsätzlich kann jeder generische OPC UA Client 1 über das Kommunikationssystem 2 mit dem OPC UA Server 5 kommunizieren. Die Durchführung von Transaktionen ist allerdings nur mit einem für Transaktionen eingerichteten OPC UA Client 7 möglich. Einzelheiten hierzu sind weiter unten erläutert.
  • 4 zeigt ähnlich wie 2 eine Anordnung mit einem Aggregating OPC UA Server, wobei in 4 jedoch ein Aggregating OPC UA Server 8 eingesetzt ist, der eine Transaktionsverwaltungskomponente 6 enthält. Wie bei der Anordnung gemäß 3 werden Transaktionen im Fall einer Kommunikation mit einem für Transaktionen eingerichteten OPC-UA-Client 7 unterstützt, und so auch wenn OPC-UA-Server 5, die jeweils mittels einer Transaktionsverwaltungskomponente 6 zur Durchführung von Transaktionen ertüchtigt sind und ein Zweiphasen-Commit-Protokoll unterstützen, mit dem Aggregating OPC UA Server 8 kommunizieren.
  • 5 zeigt beispielhaft wie eine Transaktionsverwaltungskomponente 6 in einem OPC UA Server 5 implementiert sein kann. Der OPC UA Server 5 erhält seine Daten unter Verwendung der strukturierten Abfragesprache SQL aus einer Konfigurationsdatenbank 9 und außerdem Echtzeitdaten von Controllern 10 und daran angeschlossenen Geräten 11. Die Konfigurationsdatenbank 9 ist dafür eingerichtet, Transaktionen zu unterstützen, so dass der OPC UA Server 5 Transaktionen an die Konfigurationsdatenbank 9 weiterleiten kann. Die Controller 10 und Geräte 11 unterstützen typisch keine Transaktionen, weshalb die Transaktionsverwaltungskomponente 6 mittels einer Einrichtung 12 zur Transaktion von Echtzeitdaten dies berücksichtigt. Aufgrund interner Kenntnisse kann sie prüfen, ob bestimmte verlangte Änderungen zulässig sind und die Durchführung der Änderungen verzögern, bis der jeweilige OPC UA Client 7 die Transaktion bestätigt. In Verbindung mit einem Cache-Speicher 13 und unter Verwendung von Caching-Mechanismen speichert der OPC UA Server 5 potentiell geänderte Daten, um dem OPC-UA-Client 7 eine korrekte Darstellung der Daten im Transaktions-Kontext zu geben. Falls es nötig ist, dass der OPC UA Server 5 Daten in einem Gerät 11 unverzögert ändert, kann er Kompensationsmechanismen nutzen, um die Daten außerhalb einer Transaktion zu ändern, wenn ein OPC UA Client 7 eine Transaktion abbricht.
  • Wenn ein Zugriff eines OPC UA Clients 7, bzw. typisch eines OPC UA Clients 1 nicht in einem Transaktionskontext erfolgt, umgeht der OPC UA Server 5 die Transaktionsverwaltungskomponente 6 und greift direkt auf die Konfigurationsdatenbank 9 oder Daten von Controllern 10 bzw. Geräten 11 zu.
  • Verfahrenscharakteristiken und typische Ablaufschritte sind nachstehend anhand eines in 6 dargestellten beispielhaften Ablaufdiagramms beschrieben. In 6 sind vier an einer Transaktion beteiligte Komponenten dargestellt, nämlich ein OPC UA Client 7, ein OPC UA Server 5, eine Transaktionsverwaltungskomponente 6 und ein Lieferant von Echtzeitdaten, z. B. ein Controller 10. Vor der Erläuterung der dargestellten Ablaufschritte werden zunächst allgemein Charakteristiken der erfindungsgemäßen Nutzung von Transaktionen beschrieben.
  • Der Adressraum eines für die Durchführung von Transaktionen eingerichteten OPC UA Servers 5 enthält zusätzliche OPC-UA-Methoden, die aufgerufen werden für den Start, zum Abschluss oder für den Abbruch einer Transaktion. Die Methodenparameter unterscheiden sich je nach gewählter Transaktionsart, wobei z. B. unterschiedliche Isolation Levels oder verschachtelte Transaktionen unterstützt werden.
  • Ein OPC UA Client 7, der einen OPC-UA-Serviceaufruf in einem Transaktionskontext durchführen möchte, ruft eine Methode für den Start einer Transaktion auf. Im Rahmen einer als OPC-UA-Session bestehenden Sitzung eines OPC UA Clients 7 bewirkt dies einen Wechsel des OPC UA Servers 5 in einen Transaktionskontext. Daraufhin wird jede OPC-UA-Service-Anforderung des OPC UA Clients 7 bezüglich Datenzugriff und Datenmanipulation im Rahmen der OPC-UA-Session vom OPC UA Server 5 im Transaktionskontext durchgeführt.
  • Abhängig von Sperrmechanismen, die im OPC-UA-Server 5 implementiert sind, kann der OPC UA Client 7 spezielle Status-Codes für OPC-UA-Service-Anforderungen gemeldet bekommen, wenn Aktionen wegen locking restrictions oder timeouts fehlschlagen. Auch OPC UA Clients die nicht Transaktionen nutzen, können solche Status-Codes erhalten, weil bestimmte Werte blockiert sein können.
  • Ein OPC UA Client 7 kann auch Status-Codes gemeldet bekommen, die diejenigen Teile einer OPC-UA-Service-Anforderung identifizieren, die zur Fehlermeldung geführt haben. Wenn beispielsweise fünf Werte geschrieben werden sollten, kann gemeldet werden, dass das Schreiben des zweiten und vierten Werts fehlgeschlagen ist.
  • Falls ein OPC UA Client 7 eine Transaktion abbrechen möchte, ruft er eine Methode für den Abbruch der Transaktion auf. In diesem Fall werden alle bereits erfolgten Änderungen am System zurückgenommen, beispielsweise der OPC UA Server 5 in den Status vor den Änderungen zurückgesetzt. Abhängig vom gewählten Sperrmechanismus könnten aber OPC UA Clients betroffen sein, wenn sie während der Änderung auf Daten zugegriffen haben.
  • Um gegebenenfalls eine Transaktion zu bestätigen, kann ein OPC UA Client 7 eine Methode zur Bestätigung einer Transaktion aufrufen. In diesem Fall versucht der OPC UA Server 5 alle Änderungen persistent zu machen. Wenn die Änderungen nicht dauerhaft übernommen werden können, bricht der OPC UA Server 5 die Transaktion ab und gibt die Bestätigungsmethode zusammen mit einem entsprechenden Status-Code zurück. Wenn alle verlangten Änderungen persistent werden können, meldet der OPC UA Server 5 ein entsprechendes Ergebnis zurück.
  • Wenn ein OPC UA Client 7 einige OPC-UA-Service-Anforderungen ohne Transaktionskontext und andere mit Transaktionskontext aufrufen möchte, muss er mehrere OPC UA Sessions einrichten.
  • Gemäß einer vorteilhaften Ausgestaltung kann der OPC UA Server 5 geschachtelte Transaktionen unterstützen. In diesem Fall kann der OPC UA Client 7 eine Methode für den mehrfachen Start einer Transaktion aufrufen, und mit einem Vorgang eine geschachtelte Transaktion insgesamt abbrechen. Ohne eine solche Unterstützung geschachtelter Transaktionen würde ein OPC UA Client 7 eine Fehlermeldung erhalten, wenn er eine Methode zum Starten einer Transaktion ein zweites mal anfordern würde, ehe er die erste Transaktion abgebrochen oder bestätigt hat.
  • Gemäß einer weiteren Ausgestaltung kann der OPC UA Server 5 Informationen über unterstützte Berechtigungsstufen (Isolation Levels) in seinem Adressraum enthalten, und Methoden zur Durchführung von Transaktionen könnten die gewählte Berechtigungsstufe als Eingangsparameter verwenden. Falls der OPC UA Server 5 jedoch nur eine Berechtigungsstufe unterstützt, ist diese Ausgestaltung nicht erforderlich.
  • Das in 6 dargestellte Ablaufdiagramm bezieht sich auf Interaktionen, wie oben bereits allgemein beschrieben, zwischen einem OPC UA Client 7 und einem OPC UA Server 5 zur Durchführung von Datenmanipulationsmaßnahmen in einem Transaktionskontext. Dabei sind Rückmeldungen des Servers an den Client zur Vereinfachung der Darstellung nicht gezeigt. In einem ersten Schritt 20 wird eine OPC UA Session eingerichtet. In einem zweiten Schritt 21 ruft der OPC UA Client 7 eine Methode zum Beginn einer Transaktion auf. in einem dritten Schritt 22 erhält die Transaktionsverwaltungskomponente 6 erforderliche Informationen, wie beispielsweise über den Start der Transaktion und den aufrufenden Client. In einem vierten Schritt 23 verlangt der OPC UA Client 7 eine Manipulation erster Daten. Diese Aufforderung wird in einem fünften Schritt 24 vom OPC UA Client 7 an die Transaktionsverwaltungskomponente 6 weitergeleitet, in der die Zulässigkeit der verlangten Änderung in einem sechsten Schritt 25 geprüft wird. Im dargestellten Beispiel verlangt der OPC UA Client 7 in einem siebten Schritt 26 innerhalb der bestehenden Transaktion eine Manipulation zweiter Daten, die in einem achten Schritt 27 an die Transaktionsverwaltungskomponente 6 weitergeleitet und dort in einem neunten Schritt 28 geprüft wird. Um die Transaktion abzuschließen, ruft der OPC UA Client 7 in einem zehnten Schritt 29 eine Methode zur Bestätigung der Transaktion auf. In einem elften Schritt 30 wird der Bestätigungsauftrag an die Transaktionsverwaltungskomponente 6 weitergeleitet, die schließlich in einem zwölften Schritt 31 die gewünschte Manipulation der ersten und zweiten Daten im Controller 10 veranlasst.
  • Als alternative Lösung zum vorstehend beschriebenen Verfahren könnten zusätzliche Services definiert werden, die im Kontext von OPC UA Sessions benutzt werden, um Transaktionen einzurichten, abzubrechen oder abzuschließen. Allerdings müssten dafür dem OPC UA Service Framework entsprechende zusätzliche Services hinzugefügt und sowohl in Clients als auch in Servern benötigte Funktionen implementiert werden.
  • Eine andere, in der Nutzung von Transaktionen allerdings weniger flexible alternative Lösung könnte darin bestehen, generische Methoden mit allen erforderlichen Änderungen in einer Transaktion zu definieren. Eine solche Methode enthielte als Input ein Array von zu schreibenden Werten, sowie Arrays von Nodes, z. B. als Teil der Adressraumstruktur in OPC UA oder z. B. für Löschvorgänge.

Claims (10)

  1. Verfahren zur Kommunikation zwischen Clients und Servern eines Client/Server-Systems unter Verwendung des Standardprotokolls OPC UA, und wobei zur Interaktion eines OPC UA Clients (1, 7) mit einem OPC UA Server (5, 8) OPC UA Serviceaufrufe verwendet werden, dadurch gekennzeichnet, dass zur Integration eines Transaktions-Kontexts in OPC UA Serviceaufrufen alle OPC UA Server (5, 8) des Systems mittels einer Transaktionsverwaltungskomponente (6) ergänzt werden, und für eine Durchführung von Transaktionen ertüchtigte OPC UA Clients (7) jeweils mit einem OPC UA Server (5) unter Verwendung von Transaktionen kommunizieren.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass auch Aggregating OPC UA Server (8) jeweils mit einer Transaktionsverwaltungskomponente (6) ergänzt werden, und sowohl mit ertüchtigten OPC UA Clients (7), als auch in einer Client-Funtion mit OPC UA Servern (5) Transaktionen durchführen.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die OPC UA Server (5, 8) dafür eingerichtet werden, auch mit OPC UA Clients (1), die nicht zur Durchführung von Transaktionen ertüchtigt sind, ohne Nutzung von Transaktionen zu kommunizieren.
  4. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass zur Durchführung einer Kommunikation zwischen einem OPC UA Client (7) und einem OPC UA Server (5) unter Verwendung von Transaktionen – in einem ersten Schritt (20) eine OPC-UA-Sitzung eingerichtet wird, – in einem zweiten Schritt (21) vom OPC UA Client (7) eine Methode zum Beginn einer Transaktion aufgerufen wird, – in einem dritten Schritt (22) die Transaktionsverwaltungskomponente (6) des OPC UA Servers (5) erforderliche Informationen über den Beginn einer Transaktion erhält, – in weiteren Schritten (2328) vom OPC UA Client (7) Manipulationen von Daten vorgenommen und deren Zulässigkeit von der Transaktionsverwaltungskomponente (6) geprüft werden, und schließlich zum Abschluss der Transaktion – vom OPC UA Client (7) eine Methode zur Bestätigung der Transaktion aufgerufen wird (Schritt 29), und nach entsprechender Prüfung durch die Transaktionsverwaltungskomponente (6) die gewünschten Manipulationen von Daten in einer adressierten Einrichtung (10) veranlasst werden.
  5. Einrichtung zur Kommunikation zwischen Clients und Servern eines Client/Server-Systems unter Verwendung des Standardprotokolls OPC UA, und wobei zur Interaktion eines OPC UA Clients (1, 7) mit einem OPC UA Server (5, 8) OPC UA Serviceaufrufe verwendet werden, dadurch gekennzeichnet, dass zur Integration eines Transaktions-Kontexts in OPC UA Serviceaufrufen alle OPC UA Server (5, 8) des Systems mittels einer Transaktionsverwaltungskomponente (6) ergänzt sind, und zur Durchführung von Transaktionen ertüchtigte OPC UA Clients (7) im System vorhanden sind.
  6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, dass auch Aggregating OPC UA Server (8) im System jeweils mit einer Transaktionsverwaltungskomponente (6) ergänzt und dafür eingerichtet sind, sowohl mit ertüchtigten OPC UA Clients (7), als auch in einer Client-Funtion mit OPC UA Servern (5) Transaktionen durchzuführen.
  7. Einrichtung nach Anspruch 5 oder 6, dadurch gekennzeichnet, dass der OPC UA Server (5) mit implementierter Transaktionsverwaltungskomponente (6) dafür eingerichtet ist, erforderliche Konfigurationsdaten aus einer Konfigurationsdatenbank (9) und außerdem Echtzeitdaten von Controllern (10) und daran angeschlossenen Geräten (11) oder anderen Datenquellen zu übernehmen, bzw. dort Daten zu manipulieren, und die Konfigurationsdatenbank 9 dafür eingerichtet ist, Transaktionen zu unterstützen.
  8. Einrichtung nach Anspruch 7, dadurch gekennzeichnet, dass der OPC UA Server (5) mittels einer Einrichtung (12) zur Transaktion von Echtzeitdaten dafür eingerichtet ist zu prüfen, ob bestimmte verlangte Änderungen zulässig sind und die Durchführung der Änderungen zu verzögern, bis der jeweilige OPC UA Client 7 die Transaktion bestätigt.
  9. Einrichtung nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass der OPC UA Server (5) mittels einem Cache-Speicher (13) und unter Verwendung von Caching-Mechanismen dafür eingerichtet ist, potentiell geänderte Daten zu speichern, um dem OPC UA Client 7 eine korrekte Darstellung der Daten im Transaktions-Kontext zu geben.
  10. Einrichtung nach einem der Ansprüche 5 bis 9, dadurch gekennzeichnet, dass der OPC UA Server (5) dafür eingerichtet ist, geschachtelte Transaktionen zu unterstützen.
DE102007062986A 2007-12-21 2007-12-21 Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA Active DE102007062986B4 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102007062986A DE102007062986B4 (de) 2007-12-21 2007-12-21 Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA
CN200880123126.0A CN101903837B (zh) 2007-12-21 2008-12-16 根据标准协议opc ua进行客户端服务器通信的方法和装置
PCT/EP2008/010683 WO2009083133A1 (de) 2007-12-21 2008-12-16 Verfahren und einrichtung zur client-server-kommunikation gemäss dem standardprotokoll opc ua
US12/819,601 US8549065B2 (en) 2007-12-21 2010-06-21 Method and device for client/server communication according to the standard protocol OPC UA

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102007062986A DE102007062986B4 (de) 2007-12-21 2007-12-21 Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA

Publications (2)

Publication Number Publication Date
DE102007062986A1 true DE102007062986A1 (de) 2009-06-25
DE102007062986B4 DE102007062986B4 (de) 2013-12-24

Family

ID=40577806

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007062986A Active DE102007062986B4 (de) 2007-12-21 2007-12-21 Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA

Country Status (4)

Country Link
US (1) US8549065B2 (de)
CN (1) CN101903837B (de)
DE (1) DE102007062986B4 (de)
WO (1) WO2009083133A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015188852A1 (de) * 2014-06-10 2015-12-17 Siemens Aktiengesellschaft Verfahren und vorrichtung zur transaktionserweiterung bei opc ua
EP3182235A1 (de) * 2015-12-18 2017-06-21 Siemens Aktiengesellschaft Verfahren und industrielle steuerung zum aufruf einer funktion eines steuerungsprogramms mittels eines opc ua aufrufs

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008011191A1 (de) * 2008-02-26 2009-08-27 Abb Research Ltd. Client/Server-System zur Kommunikation gemäß dem Standardprotokoll OPC UA und mit Single Sign-On Mechanismen zur Authentifizierung sowie Verfahren zur Durchführung von Single Sign-On in einem solchen System
EP2715461B1 (de) * 2011-05-30 2016-05-11 ABB Research Ltd. Verwendung von opc-ua zur automatischen erzeugung von prozessgrafiken
WO2013178270A1 (de) * 2012-05-31 2013-12-05 Siemens Aktiengesellschaft Zugriff von clients auf einen serverdienst mittels einer opc-ua
CN104350717B (zh) * 2012-05-31 2017-10-24 西门子公司 经由服务器在两个客户端之间的通讯方法以及客户端、服务器和网络
CN104488243B (zh) * 2012-07-24 2017-11-24 西门子公司 对服务器中的变量的写入访问
US8972797B2 (en) * 2012-10-08 2015-03-03 General Electric Company System and method for application debugging
US9904266B2 (en) * 2013-04-25 2018-02-27 General Electric Company Real-time debugging systems and methods
CN106233666B (zh) * 2014-04-23 2019-12-10 西门子公司 根据opc ua标准诊断网络中的传输故障的方法和装置
CN106462473A (zh) * 2014-06-25 2017-02-22 西门子公司 用于借助超时机制在opc ua中转换事务概念的装置和方法
TR201906512T4 (tr) * 2015-03-27 2019-05-21 Buehler Ag Geb Bir OPC-UA bazlı makineler arası ağ içinde tesisinin işlem kontrolüne yönelik yöntem ve sistem.
CN105607606B (zh) * 2016-02-19 2018-04-10 南京富岛信息工程有限公司 一种基于双主板架构的数据采集装置及方法
CN106843058A (zh) * 2017-03-03 2017-06-13 南京富岛信息工程有限公司 一种隐藏控制系统ip地址的安全数据采集装置及采集方法
US11323519B2 (en) * 2017-04-19 2022-05-03 Microsoft Technology Licensing, Llc Internet of things pub-sub data publisher
JP6881256B2 (ja) * 2017-11-27 2021-06-02 オムロン株式会社 制御装置、制御方法、およびプログラム
EP3502817A1 (de) * 2017-12-19 2019-06-26 ABB Schweiz AG Verfahren zur bereitstellung von steuerungssystemprüfung und -simulation
FI127806B (en) * 2017-12-22 2019-02-28 Prosys Opc Oy A method, system and computer software for managing OPC UA server capacity
CN108199897B (zh) * 2018-01-17 2021-06-04 重庆邮电大学 一种支持缓存管理的opc ua多服务器聚合方法
CN109256858B (zh) * 2018-09-30 2020-11-03 北京金风科创风电设备有限公司 虚拟同步发电机系统及其通信方法、新能源控制系统
EP3758333B1 (de) * 2019-06-25 2022-09-28 Schneider Electric Industries SAS Verfahren zum konfigurieren eines industriellen automatisierungssystems
DE102019123271A1 (de) * 2019-08-30 2021-03-04 Phoenix Contact Gmbh & Co. Kg Verfahren und industrielle Steuerung zum sychronisierten Aufrufen eines Funktionsbausteins in einem Steuerungsprogamm mit OPC UA
EP3890277B1 (de) * 2020-03-31 2024-01-03 ABB Schweiz AG System und verfahren zur aggregation von daten in einem entfernten adressraum
EP4002030A1 (de) 2020-11-12 2022-05-25 ABB Schweiz AG Schnittstellenvorrichtung zum verbinden von prozesssteuergeräten mit opc-ua-peer-vorrichtungen
CN112104516B (zh) * 2020-11-18 2021-02-12 之江实验室 一种opcua协议支持拟态系统的实现方法
CN117355905A (zh) 2021-05-21 2024-01-05 豪夫迈·罗氏有限公司 实验室系统中至少一个装置的自动注册
EP4149089A1 (de) * 2021-09-09 2023-03-15 Abb Schweiz Ag Fassadenserver
CN114390088B (zh) * 2021-12-31 2024-04-09 北京东土科技股份有限公司 一种edps通过opc ua客户端与opc ua服务端的交互方法以及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09153090A (ja) * 1995-11-30 1997-06-10 Matsushita Electric Ind Co Ltd 加工工程生産計画立案方法及び装置
US6415196B1 (en) * 1997-08-28 2002-07-02 Manugistics, Inc. Manufacturing scheduling process with improved modeling, scheduling and editing capabilities for solving finite capacity planning problems
US7020697B1 (en) * 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US6832238B1 (en) * 2000-05-24 2004-12-14 Sun Microsystems, Inc. Local transaction management
MXPA03000792A (es) * 2000-07-28 2003-08-01 Teijin Ltd Metodo de planeacion de la produccion y sistema para preparar planes de produccion.
WO2002031746A1 (en) * 2000-10-12 2002-04-18 Manugistics, Inc. System and methods for scheduling manufacturing resources
US7032073B2 (en) * 2001-07-02 2006-04-18 Shay Mizrachi Cache system for network and multi-tasking applications
US20030200150A1 (en) * 2002-04-17 2003-10-23 Elnnovate, Inc. Systems and methods for facilitating negotiations for supply chain control
JP3982617B2 (ja) * 2002-05-17 2007-09-26 日本アイ・ビー・エム株式会社 生産計画生成システム、生産計画生成方法、プログラム
US20070078696A1 (en) * 2005-08-30 2007-04-05 Invensys Systems Inc. Integrating high level enterprise-level decision- making into real-time process control
US8055727B2 (en) 2005-09-22 2011-11-08 Fisher-Rosemount Systems, Inc. Use of a really simple syndication communication format in a process control system
US8234384B2 (en) * 2006-11-13 2012-07-31 Jemmac Software Limited Computer systems and methods for process control environments
WO2009046095A1 (en) * 2007-10-01 2009-04-09 Iconics, Inc. Visualization of process control data
US20090199112A1 (en) * 2008-02-04 2009-08-06 Deserranno Allen Simplified opc to wpf xaml binding method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015188852A1 (de) * 2014-06-10 2015-12-17 Siemens Aktiengesellschaft Verfahren und vorrichtung zur transaktionserweiterung bei opc ua
EP3182235A1 (de) * 2015-12-18 2017-06-21 Siemens Aktiengesellschaft Verfahren und industrielle steuerung zum aufruf einer funktion eines steuerungsprogramms mittels eines opc ua aufrufs
EP3182235B1 (de) 2015-12-18 2019-03-27 Siemens Aktiengesellschaft Verfahren und industrielle steuerung zum aufruf einer funktion eines steuerungsprogramms mittels eines opc ua aufrufs

Also Published As

Publication number Publication date
WO2009083133A1 (de) 2009-07-09
US8549065B2 (en) 2013-10-01
DE102007062986B4 (de) 2013-12-24
CN101903837B (zh) 2014-10-29
US20100306313A1 (en) 2010-12-02
CN101903837A (zh) 2010-12-01

Similar Documents

Publication Publication Date Title
DE102007062986B4 (de) Verfahren und Einrichtung zur Client-Server-Kommunikation gemäß dem Standardprotokoll OPC UA
DE112004001775T5 (de) Verfahren und Vorrichtung zur Bereitstellung von automatischen Software-Updates
DE102004010180A1 (de) Verfahren und Vorrichtungen zum Zugriff auf verteilte Daten für Prozesssteuersysteme
EP1430369B1 (de) Dynamischer zugriff auf automatisierungsressourcen
DE4420451A1 (de) Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell
EP3137999B1 (de) Verfahren und vorrichtung zur transaktionserweiterung bei opc ua
DE102014000289A1 (de) Webservervorrichtung, Steuerverfahren und Programm dafür
WO2020200877A1 (de) Generierung und verteilung von konfigurations-datenstrukturen für steuerungssysteme
DE102004030781A1 (de) SCADA-System und Verfahren zum Betreiben eines solchen Systems
EP3200034A1 (de) Verfahren und vorrichtung zum zugriff auf daten oder funktionen einer speicherprogrammierbaren steuerung mittels eines webdientes
DE10336648A1 (de) System und Verfahren zur web-basierten Überwachung und Steuerung mehrerer räumlich verteilter Anlagen
DE10059103B4 (de) Einheit zur Verwaltung von in einer Datenverarbeitungseinrichtung gespeicherten Daten
DE102019001100A1 (de) Verfahren zur Überwachung einer Funktionalität eines Fahrzeuginformationssystems eines Kraftfahrzeugs, sowie elektronische Recheneinrichtung, Computerprogramm und Datenträger
DE10244459A1 (de) Rechner- und/oder Software-Architektur unter Verwendung von Micro-Kernel- und Multi-Tier-Konzept mit Komponententechnik
WO2010034548A1 (de) Testmodul und verfahren zum testen einer o/r-abbildungs-middleware
DE10129886A1 (de) Verfahren zum Netzkonfigurationsmanagement und Netzbestandsmanagement eines Netzes und entsprechendes Netzkonfigurationsmanagement- und Netzbestandsmanagementsystem
WO2015197115A1 (de) Verfahren und vorrichtung zur umsetzung eines transaktionskonzepts bei opc ua mittels time-out mechanismus
DE10319887B4 (de) Verfahren zum Angleichen eines auf einer Client-Datenverarbeitungseinrichtung angezeigten Datenbestandes an einen auf einer Server-Datenverarbeitungseinrichtung gespeicherten Quelldatenbestand
EP1435026B1 (de) System und verfahren zur datenausgabe eines geräts, insbesondere eines automatisierungsgerät über eine standardisierte schnittstelle mit variablenersetzung über einen echoserver
DE19845043C1 (de) Verfahren und dessen Verwendung sowie Datenverarbeitungsvorrichtung zum Abgleichen von in verschiedenen Anwenderdateien gespeicherten Daten
EP1004080B1 (de) Verfahren und anordnung zur durchführung von überwachungs- und managementfunktionen in netzen mit überwachten komponenten
DE102007049958A1 (de) Verfahren und System zur Aktualisierung einer mehrschichtigen Applikation
DE102006037968B4 (de) Universelle und erweiterbare Datenverwaltung mit Beobachtungs- und Interprozesskommunikations-Mechanismen
DE102019003696A1 (de) Kontaktplananzeigesystem
EP3770769A1 (de) Verfahren zur abfrage oder bearbeitung einer vollständigen datei mittels einer query language und vorrichtung zur verwaltung des verfahrens

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20110817

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20140325

R081 Change of applicant/patentee

Owner name: ABB SCHWEIZ AG, CH

Free format text: FORMER OWNER: ABB RESEARCH LTD., ZUERICH, CH

R082 Change of representative

Representative=s name: MUELLER, ANDREAS, DIPL.-PHYS. DR. RER. NAT., DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0029060000

Ipc: H04L0065000000