PatentDe  


Dokumentenidentifikation DE102004030781A1 16.03.2006
Titel SCADA-System und Verfahren zum Betreiben eines solchen Systems
Anmelder ABB Research Ltd., Zürich, CH
Erfinder Veryha, Yauheni, Dipl.-Ing., 68161 Mannheim, DE;
Bort, Peter, Dr.-Ing., 76646 Bruchsal, DE;
Herack, Michael, Dipl.-Ing., 69469 Weinheim, DE;
Engel, Bardolf, Dr.-Ing., 68165 Mannheim, DE;
Jaborowicz, Claus, Dipl.-Ing., 68535 Edingen-Neckarhausen, DE;
Parimi, Narasimham, Dipl.-Inf., Nagar, Bangalore, IN
Vertreter Miller, T., Dipl.-Ing., Pat.-Anw., 68526 Ladenburg
DE-Anmeldedatum 25.06.2004
DE-Aktenzeichen 102004030781
Offenlegungstag 16.03.2006
Veröffentlichungstag im Patentblatt 16.03.2006
IPC-Hauptklasse G05B 23/02(2006.01)A, F, I, 20051017, B, H, DE
IPC-Nebenklasse G05B 19/048(2006.01)A, L, I, 20051017, B, H, DE   
Zusammenfassung Die Erfindung bezieht sich auf ein SCADA(Supervisory Control and Data Acquisition)-System zur Prozessüberwachung und Echtzeit-Datensammlung in einem Prozessleitsystem und ein Verfahren zum Betreiben des Systems. Das SCADA-System hat eine Client/Server-Architektur, mit einem Server (1) und mindestens einem Client (7), und der Server (1) ist mit Ein/Ausgabe-Einrichtungen (19) des Prozessleitsystems verbunden. Die Clients (7) weisen jeweils einen Client-Cache (12) zur Prozessdaten-Zwischenspeicherung auf. Sowohl Clients (7) als auch der Server (1) weisen Einrichtungen (3, 10, 11, 13) für einen Betrieb und eine Kommunikation gemäß dem OPC(OLE for Process Control)-Verfahren auf. Verfahrensgemäß werden Anforderung von Prozessdaten, insbesondere große Datenmengen für einen Bildaufbau, durch SCADA-Client-Komponenten (14) dem Client-Cache (12) zugeleitet, um Datenübertragungswege zu entlasten.

Beschreibung[de]

Die Erfindung bezieht sich auf ein SCADA(Supervisory Control and Data Acquisition)-System mit Client/Server-Architektur, das als Teilsystem eines Prozessleitsystems zum Einsatz kommt. Außerdem bezieht sich die Erfindung auf ein Verfahren zum Betreiben eines solchen Systems.

SCADA-Systeme umfassen sowohl Hardware- als auch Softwarekomponenten zur Prozessüberwachung und zur Datensammlung in Echtzeit. Ein typisches Prozessleitsystem enthält mehrere Ein/Ausgabe-Einrichtungen an voneinander – und auch von Überwachungs- und Steuerungseinrichtungen – entfernt liegenden Orten. Ein SCADA-System mit Client/Server-Architektur ist mittels eines Servers dafür eingerichtet, einerseits mit den Ein/Ausgabe-Einrichtungen und andererseits mit Clients zu korrespondieren. Zweck des SCADA-Systems ist es, die Ausrüstung und den Zustand der technischen Anlagen zu erfassen und den Prozesszustand vom jeweiligen Ort der Clients aus zu überwachen und zu steuern.

SCADA-Systeme erfüllen im allgemeinen unterschiedliche Funktionen, wie zum Beispiel MMI (Mensch-Maschine-Interface), Datenprotokollierung, erweiterte Kontrollfunktionen, Input/Output-Transaktionen, Bereitstellung von Information für das Management, und vieles mehr.

PC's, auf denen unterschiedliche Betriebssysteme, wie Windows 2000, Windows XP, IBM OS/2, UNIX Versionen und andere Betriebssysteme laufen, werden in zunehmendem Maß im Bereich der Prozessleittechnik eingesetzt. Bedingt ist dies durch die offene Architektur der PCs, die akzeptable Rechenleistung zu geringen Kosten und die große Vielfalt an Standard-Soft- und Hardwareprodukten, die eine große Auswahl an Werkzeugen für Datenerfassung, Analyse, Darstellung, und Steuerung bieten. Unterschiedliche Rechnersysteme lassen sich auch relativ einfach in einem Rechnernetz verbinden.

(Literatur hierzu:

http://www.omega.com/literature/transactions/volume2/presentation3.html, http://www.opcfoundation.org/01_about/01_whatis.asp, http://portal.einnovation.org/technique_overview.aspx?Cat=Process&Ch=2&Cont=59, ABB Review: Focus for the Utility Industry, No. 3, 2002, pp. 23 – 28)

In Prozessleitsystemen kommen auch unterschiedliche Verfahren für einen Netzwerkbetrieb mehrerer Rechnerknoten zum Einsatz. Eines der bekanntesten Verfahren ist OPC = OLE for Process Control, wobei OLE Object Linking and Embedding bedeutet, also Verknüpfung oder Einbettung in andere Datenobjekte beim Datenaustausch zwischen Windows-Programmen (vergl. Iwanitz F., Lange J. „OLE for Process Control", Huethig, Heidelberg, Germany, 2001). Das Verfahren verwendet OPC-Datenzugriffs-Interfaces zusammen mit DCOM (Distributed Component Object Model) zur Herstellung von Netzwerkverbindungen zwischen Server und Client. Der Server weist dabei ein OPC-Interface auf, das Lese- und Schreibfunktionen für variable Werte hat. Diese Funktionen werden mittels DCOM im gesamten Netzwerk eingerichtet, so dass sie auch Clients zur Verfügung stehen. Nachdem sich ein Client beim Server als Nutzer bestimmter OPC-Datenworte angemeldet hat, führt jede im Server erfasste Wertänderung des jeweiligen OPC-Datenworts automatisch zu einer Aktualisierung des entsprechenden OPC-Datenworts im Client. Das Verfahren hat allerdings den Nachteil, dass es keinen Mechanismus zur Datenkompression gibt.

Einer der wichtigsten Faktoren beim Entwurf eines leistungsfähigen Prozessleitsystems – und damit auch seines SCADA-Systems -, das auch für große Anlagen mit hohem Datenaufkommen geeignet ist, ist jedoch gerade die Fähigkeit, auf schnelle und effiziente Weise Daten zur Client-Einrichtung zu übertragen und dort zu speichern ( vergl. Patrick D., Fardo S. "Industial Process Control Systems", Delmar Publishing, Albany, NY, 1997). In großen Prozessleitsystemen können sich Clients als Nutzer von Tausenden von Datenworten unterschiedlicher Ein/Ausgabeeinrichtungen anmelden. Der von Clients verursachte Transfer großer Datenmengen kann einen erheblichen Teil der Bandbreite der Übertragungswege des Rechnernetzwerks beanspruchen, und damit die Leistungsfähigkeit des gesamten Prozessleitsystems verringern. Wenn Prozessdaten lediglich in einem Cache des Servers zwischengespeichert sind, verursacht der erforderliche Datenverkehr im Netz für die Bereitstellung der Daten für eine Client-seitige graphische Präsentation – beispielsweise zum Aufbau einer Übersichtsdarstellung mit 50,000 Prozess-Objekten – eine erhebliche Verschlechterung der Übertragungsleistung. Zur Verbesserung der Leistungsfähigkeit des gesamten Prozessleitsystems ist daher ein verbessertes SCADA-System wünschenswert, bei dem die Notwendigkeit des Transports großer Datenmengen im Normalbetrieb verringert ist. Die Handhabung des zu schaffenden Systems soll für den Prozess-Betrachter und -Bediener einfach sein.

Der Erfindung liegt daher die Aufgabe zugrunde, ein SCADA-System anzugeben, das einem Prozess-Betrachter und -Bediener gewünschte aktuelle Prozessdaten bei gegenüber bekannten Systemen verringerter Belastung von Datenübertragungswegen zur Verfügung stellt. Außerdem soll ein Verfahren zum Betreiben eines solchen Systems angegeben werden.

Diese Aufgabe wird durch ein SCADA-System mit den im Anspruch 1 angegebenen Merkmalen gelöst. Vorteilhafte Ausgestaltungen und ein Verfahren zum Betreiben eines solchen Systems sind in weiteren Ansprüchen angegeben.

Mit der Erfindung wird demnach ein SCADA-System vorgeschlagen, bei dem Clients mit einem Client-Cache zur Zwischenspeicherung von Prozessdaten ausgestattet sind. Sowohl Clients als auch der Server enthalten Einrichtungen für einen Betrieb und eine Kommunikation gemäß dem OPC(OLE for Process Control)-Verfahren.

Anwendungskomponenten der Clients können zwar über einen SCADA-OPC-Client direkt mit dem Server kommunizieren, große Datenmengen werden jedoch regelmäßig beim Client-Cache angefordert.

Der erfindungsgemäße Systemaufbau und die zugehörige Verfahrensweise haben eine Reihe von Vorteilen:

  • – Die Datenverfügbarkeit – beispielsweise für den Aufbau einer Übersichtsdarstellung – ist wesentlich verbessert, da in der Regel die benötigten Daten vollständig oder zu einem großen Teil aus dem örtlichen Zwischenspeicher bezogen werden können, ohne das Übertragungsnetzwerk besonders zu belasten.
  • – Eine Komponenten-basierte Architektur des SCADA-Systems ist realisiert, wobei eine Kommunikation mit einem gemeinsamen Prozessdaten-Zwischenspeicher über Standard-OPC-Schnittstellen gegeben ist.
  • – Das System unterstützt den Einsatz und die Nutzung redundanter Server-Einrichtungen, da auch im Störungsfall weiterhin die zuletzt übertragenen Prozessdaten im jeweiligen Client zur Verfügung stehen, und der Client-Cache die Bezugsquelle oder den Bezugsweg für Prozessdaten ohne zutun der Anwendungen steuern kann.

Eine weitere Erläuterung der Erfindung und deren Vorteile ergibt sich aus der nachstehenden Beschreibung eines Ausführungsbeispiels anhand von Zeichnungsfiguren.

Es zeigen

1 die Client/Server-Architektur eines erfindungsgemäßen SCADA-Systems mit einem als Cache-Speicher ausgeführten Client-Prozessdatenspeicher (kurz: Client-Cache) und OPC-Schnittstellen,

2 eine Darstellung von Prozessdatenspeichern in einer Client/Server-Umgebung,

3 ein Ablaufdiagramm für den Datenfluss in einem SCADA-System mit Client-Cache,

4 die Architektur eines Client-Cache mit OPC-Schichten in einer Client-Einrichtung,

5 ein Flussdiagramm, welches die Anfangskonfiguration und die nachfolgenden Programmabläufe zur Datenspeicherung im Client-Cache zeigt, und

6 ein Ablaufdiagramm zur Darstellung des Datenflusses in einem Prozessleitsystem mit einem primären und einem redundanten SCADA-Server im Fall des Ausfalls des primären SCADA-Servers.

1 zeigt die Client-/Server-Architektur eines erfindungsgemäßen SCADA-Systems mit einer Server-Einrichtung, die als Server 1 bezeichnet ist, und einer Client-Einrichtung, die als Client 7 bezeichnet ist. Im SCADA-System können jedoch mehrere Clients 7 vorhanden sein.

Im Server 1 ist im Beispiel eine SCADA-Serveranwendung 2 eingerichtet. Diese enthält eine Echtzeit-Datenbank 4, ein SCADA-Prozessanbindungsmodul 5, das mit Controllern in Ein/Ausgabe-Einrichtungen 19 eines Prozessleitsystems verbunden ist, eine Verarbeitungseinrichtung 6 und einen SCADA-OPC-Server 3.

Der Client 7 enthält den erfindungswesentlichen Prozessdaten-Cache, der als Client-Cache 12 bezeichnet ist, und der zwei OPC-Schnittstellen (Schichten) hat, die mit 10 bzw. 11 bezeichnet sind. Weiterhin weist der Client 7 mindestens einen SCADA-Client 15 mit SCADA-Komponenten 14 und einen SCADA-OPC-Client 13 auf. Ein dynamisches Netzeinfärbungsmodul 9 ist über eine erste Verbindungseinrichtung 8 mit der zweiten OPC-Schnittstelle 11 verbunden. Eine Anzeige- und Bedienungseinrichtung 100 für einen Prozessbeobachter ist über eine zweite Verbindungseinrichtung 20 mit dem SCADA-Client 15 verbunden. Der SCADA-OPC-Client 13 ist mittels einer dritten Verbindungseinrichtung 16 mit der ersten OPC-Schnittstelle 10, sowie mittels einer vierten Verbindungseinrichtung 17 mit dem SCADA-OPC-Server 3 verbunden. Eine fünfte Verbindungseinrichtung 18 verbindet die zweite OPC-Schnittstelle 11 mit dem SCADA-OPC-Server 3.

Die Kommunikation zwischen Client 7 und Server 1 arbeitet ereignisgesteuert und ist abhängig von sogenannten Abonnements (subscriptions) bestimmter Datensätze (parameter). Außerdem basiert die Kommunikation auf OPC und dem TPC/IP-Protokoll. Mit einem Abonnement meldet sich eine Anwendung des SCADA-Client 15 als Abnehmer eines bestimmten Datenwortes (oder Parameters) einer bestimmten OPC-Server-Anwendung des Servers 1. Dies bewirkt, dass lediglich geänderte Datenwörter zu den jeweiligen Abonnenten übertragen werden.

Der Server 1 kann mit einem der bekannten Betriebssysteme, wie Windows 2000, Windos XP, IBM OS/2, Unix, etc. arbeiten. Die SCADA-Serveranwendung 2 ist dafür eingerichtet, Daten aus den Ein/Ausgabe-Einrichtungen 19 abzurufen und zu speichern. Die Datenbank 4 der SCADA-Serveranwendung 2 ist dafür eingerichtet, eine Teilmenge der Prozessvariablen zu handhaben, die sich auf die Datenakquisition, Alarmbehandlung und Archivierung beziehen. Das Prozessanbindungsmodul 5 ist dafür eingerichtet, Datenabfragen bei den Ein/Ausgabe-Einrichtungen 19 gemäß einer Anwender-definierten Abfragerate durchzuführen. Die Abfragerate kann für unterschiedliche Datenwörter (Parameter) unterschiedlich gewählt werden. Bei einer Abfrage geben die jeweiligen Controller der Ein/Ausgabe-Einrichtungen 19 die angeforderten Datensätze an die SCADA-Serveranwendung 2 weiter. Üblicherweise werden die Controller für eine Zeitstempelung des Datenwortes eingerichtet. Ein solcher Zeitstempel wird auch vom SCADA-OPC-Server 3 übernommen und für den Abruf zusammen mit dem zugehörigen Datenwort durch OPC-Clients 13 bereitgehalten. Die Funktionalität des SCADA-OPC-Servers 3 bietet eine offene und standardisierte Kommunikationsmöglichkeit für unterschiedliche Clients 7.

Die Einrichtung des Clients 7 arbeitet mit einem beliebigen Betriebssystem für Workstations, wie Windows 2000, Windows XP, UNIX-Versionen, etc. Beispiele für SCADA-Komponenten 14 sind Reports und Faceplates. Der OPC-Client 13 ist zwar dafür eingerichtet, über die vierte Verbindungseinrichtung 17 direkt mit dem SCADA-OPC-Server 3 zu kommunizieren, um Datensätze abzurufen; in einigen Fällen erfolgt jedoch ein Datenabruf aus dem Client-Cache 12. Der Grund ist die bereits erwähnte fehlende Möglichkeit zur Datenkompression im OPC-Protokoll, die bei einer Anforderung einer großen Datenmenge das Übertragungsnetz stark belasten würde. Um dies zu vermeiden, erfolgt daher erfindungsgemäß für beispielsweise den Aufbau einer Übersichtsdarstellung ein Datenabruf aus dem Client-Cache 12.

Der Client-Cache 12 hat nicht nur die Aufgabe Prozessdaten zwischenzuspeichern, wodurch die Verfügbarkeit aktueller Prozessdaten wesentlich verbessert wird, sondern ist auch Schnittstelle zum Netzeinfärbungsmodul 9. Das Modul 9 wird verwendet, um online Einfärbungsinformation zu berechnen und bereitzustellen, die für Darstellungen auf der Anzeige- und Bedienungseinrichtung 100 benötigt werden.

Die erste OPC-Schnittstelle 10 des Client-Cache 12 macht die gespeicherten Daten OPC-fähig. Das bedeutet, dass dem OPC-Client 13 Abonnements auf bestimmte Prozessdaten unter Verwendung von OPC-Methoden ermöglicht sind. Die zweite OPC-Schnittstelle 11 verleiht dem Client-Cache 12 eine Standard-OPC-Client-Funktionalität. Das bedeutet, dass der Client-Cache 12 Prozessdaten eines beliebigen OPC-Servers abonnieren kann. Die Verbindungseinrichtungen 8, 16, 17, 18 und 20 sind Kommunikationspfade, die OPC-Methoden als Kommunikationsmechanismus benutzen. Somit ist OPC in der dargestellten Architektur nicht nur internes Kommunikationsmittel zwischen Client 7 und Server 1, sondern auch zwischen den Modulen des Clients. Dadurch ist auch der Einsatz fremder OPC-kompatibler Module im System möglich, wodurch eine hohe Flexibilität und Wiederverwendbarkeit gegeben ist.

2 zeigt ähnlich wie 1 die Client-/Server-Architektur eines erfindungsgemäßen SCADA-Systems, wobei jedoch mehrere Client-Einrichtungen 26 für Clients 1, 2 bis N, und ein Server 21 vorhanden sind, und wobei jeweils lediglich ein Teil der in der Server-Einrichtung 21 bzw. in den Client-Einrichtungen 26 enthaltenen Komponenten dargestellt sind. Anhand der 2 soll nämlich im wesentlichen der Einsatz des Client-Cache 29 in der Client/Server-Architektur weiter erläutert werden.

Eine oder mehrere Client-Einrichtungen 26 können simultan mit der Server-Einrichtung 21 kommunizieren. Der SCADA-OPC-Server 23 in der Server-Einrichtung 21 erhält Prozessdaten vom SCADA-Prozessanbindungsmodul 22. Der SCADA-OPC-Server 23 stellt die Prozessdaten als OPC tags von OPC-Objekten 24 zur Verfügung. Der Client-Cache 29 kann mittels seiner zweiten OPC-Schnittstelle 28, und unter Verwendung konventioneller OPC-Methoden Prozessdaten beim SCADA-OPC-Server 23 abonnieren. Vom SCADA-OPC-Server 23 empfangene Prozessdaten werden im Client-Cache 29 als Variable 30 gespeichert. Die erste OPC-Schnittstelle 27 des Client-Cache 29 ermöglicht es, die Variablen 30 als OPC-Datenwort für OPC-Clients zur Verfügung zu stellen. Die Verbindungseinrichtungen 25, bzw. 32 entsprechen der fünften Verbindungseinrichtung 18 bzw. der dritten Verbindungseinrichtung 16 aus 1 und arbeiten nach der OPC-Kommunikationsmethode im Client/Server-System. Ein Überwachungs- und Organisationsmanager 31 im jeweiligen Client-Cache 29 ermöglicht es einem Benutzer festzulegen, wie und wie lange eine Zwischenspeicherung bestimmter Prozessdaten im Client-Cache 29 erfolgen soll. Der Überwachungs- und Organisationsmanager 31 ermöglicht es auch, Prioritäten für den Fall festzulegen, dass durch ihn selten benötigte oder unwichtige Datenwörter aus dem Zwischenspeicher entfernt werden müssen, um Speicherplatz zu schaffen.

3 zeigt ein Ablaufdiagramm für den Datenfluss in einem SCADA-System mit Client-Cache, also mit Zwischenspeicherung von Prozessdaten. Der dargestellte Ablauf beginnt damit, dass einer der SCADA-Client-Komponenten 14, der eine OPC-Schnittstelle hat, eine erste Nachricht 34 zur ersten OPC-Schnittstelle 10 des Client-Cache 12 sendet, um eine Ladung von Prozessdaten in den Client-Cache 12 zu initiieren. Der Client-Cache 12 sendet daraufhin eine zweite Nachricht 35 an den SCADA-OPC-Server 3, um bestimmte Prozessdaten beim SCADA-OPC-Server 3 zu abonnieren, und um große Datenmengen zur Ladung in den Client-Cache 12 zu erhalten. Der SCADA-OPC-Server 3 sendet daraufhin eine dritte Nachricht 36 an das SCADA-Prozessanbindungsmodul 5, das daraufhin einen Abruf von Prozessdaten aus mehreren Ein/Ausgabe-Einrichtungen 19 (vergl. 1) durchführt. Parallel dazu sendet der SCADA-OPC-Server 3 eine vierte Nachricht 37 an die Echtzeit-Datenbank 4, um eine Speicherung der abgerufenen Daten und deren regelmäßige Aktualisierung zu initiieren. Wenn der Abruf der Prozessdaten, deren Übertragung und schließlich Speicherung im Client-Cache 12 abgeschlossen ist, kann die SCADA-Client-Komponente 14 mit einer fünften Nachricht 38 Prozessdaten beim Client-Cache 12 anfordern und abonnieren. Mit einer solchen fünften Nachricht 38 wird eine große Datenmenge abonniert, die im Client-Cache 12 bereits vorhanden ist. Im Vergleich zu einer Anforderung oder einem Abonnement von Prozessdaten direkt beim SCADA-OPC-Server 3 mittels einer sechsten Nachricht 39, durch die ein Abruf von Prozessdaten bei Ein/Ausgabe-Einrichtungen 19 (vergl. 1) durchgeführt wird, führt die Nutzung des Client-Cache 12 zu einer verbesserten Datenverfügbarkeit und einer ganz wesentlichen Entlastung des Übertragungssystems.

4 zeigt weitere Einzelheiten der Architektur eines Client-Cache 44 mit OPC-Schichten 41 und 42 in einer Client-Einrichtung 40. Der Client-Cache 44 enthält eine Liste mit Variablen, die als OPC tags abgebildet und in den OPC-Schichten 41 und 42 gespeichert werden; dieser Vorgang ist mit Bezugszeichen 46 in 4 angegeben. Ein Überwachungsmanager 43 veranlasst Funktionen lesen 45 und setzen 47, die eine ständige Aktualisierung der Daten in den OPC-Schichten 41 und 42 bewirken. Der Überwachungsmanager 43 ermöglicht es einem Benutzer festzulegen, wie und wie lange eine Zwischenspeicherung bestimmter Prozessdaten im Client-Cache 44 erfolgen soll. Der Überwachungsmanager 43 ermöglicht es auch Prioritäten festzulegen, wenn durch ihn selten benötigte oder unwichtige Datenwörter aus dem Zwischenspeicher entfernt werden müssen, um Speicherplatz zu schaffen. Die jeweilige Priorität kann schon bei der Speicherung des jeweiligen Datenworts festgelegt werden. Auch ein Zeitpunkt, zu dem ein bestimmtes Datenwort aus dem Speicher entfernt wird, kann festgelegt werden. Zwei Beispiele für die Möglichkeiten, die der Überwachungs- und Organisationsmanager 31 bietet, sind nachstehend dargestellt:

  • 1. Hinzufügen eines neuen Datenbankeintrags durch spezifizieren seines Schlüssels und Werts (in Visual Basic): DataCache("NameA")=1;
  • 2. Hinzufügen eines neuen Datenbankeintrags durch Add method (in Visual Basic): DataCache.Add("NameB"<parameterString>). Der <parameterString> definiert Festlegungen für ein Löschungsdatum und Prioritätsangaben.

Zum Löschungsdatum veranlasst der Überwachungsmanager 43 die Löschung.

5 zeigt ein Flussschema zur Darstellung der Anfangskonfiguration und der nachfolgenden Programmschritte zur Ausführung der Datenspeicherung im Client-Cache 12. Im Flussschema sind die jeweiligen Systemkomponenten übereinstimmend mit den Bezugszeichen in 1 bezeichnet. Nach dem Start in einem Schritt 48 abonniert der Client-Cache 12 in einem Schritt 49 Prozessdaten beim SCADA-OPC-Server 3, basierend auf einer durch den Benutzer vorgegebenen Anfangskonfiguration. Nach erfolgreichem Prozessdaten-Abonnement werden in einem Schritt 50 Prozessdaten in den Client-Cache 12 geladen. In einem Schritt 51 empfängt der Client-Cache 12 Prozessdatenanforderungen von SCADA-Client-Komponenten 14 und erfasst deren Abfrageperiode. Die Behandlung der jeweiligen Prozessdatenanforderung ist von der Abfrageperiode abhängig. Daher wird in einem Schritt 52 ermittelt, ob die abonnierte Abfrageperiode Null ist. Wenn die Abfrageperiode Null ist, wird in einem Schritt 55 geprüft, ob der angeforderte Prozessdatenwert im Client-Cache 12 gespeichert ist oder nicht. Wenn der angeforderte Wert im Client-Cache 12 vorhanden ist, wird er in einem Schritt 58 vom Client-Cache 12 ausgelesen. In einem Schritt 59 wird dem Prozessdatenwert der Zeitpunkt der letzten Aktualisierung hinzugefügt. Das so gebildete Datenwort wird schließlich in einem Schritt 60 der anfragenden SCADA-Client-Komponente 14 gesendet.

Wenn der angeforderte Prozessdatenwert nicht im Client-Cache 12 gespeichert ist, dann setzt in einem Schritt 56 ein Verfahren zum Abonnement von Prozessdaten beim SCADA-OPC-Server 3 ein. In einem Schritt 57 werden daraufhin die benötigten Prozessdaten beim SCADA-OPC-Server 3 ausgelesen und im Client-Cache 12 gespeichert. Danach erfolgen die oben beschriebenen Schritte 58 bis 60.

Wenn im Schritt 52 festgestellt wird, dass die Abfrageperiode nicht Null ist, wird in einem Schritt 53 geprüft, ob die Abfrageperiode weniger oder gleich einem vorgegebenen Maximalwert ist. Liegt der Wert der Abfrageperiode über dem Maximalwert, so folgt Schritt 55. Wenn nicht, dann folgt ein Schritt 54, in dem geprüft wird, ob das benötigte Datenwort bereits beim SCADA-OPC-Server 3 abonniert ist. Wenn nicht, folgen die Schritte 56 bis 60. In anderen Fall folgen die Schritte 58 bis 60.

6 zeigt ein Ablaufdiagramm zur Darstellung des Datenflusses in einem Prozessleitsystem mit einem primären und einem redundanten SCADA-OPC-Server 3a, bzw. 3b im Fall des Ausfalls des primären SCADA-OPC-Servers 3a. In einem Schritt 61 sendet eine SCADA-Client-Komponente 14 mit OPC-Schnittstelle eine Nachricht an den Client-Cache 12, womit eine Initialisierung durch Ladung von Prozessdaten aus dem primären SCADA-OPC-Server 3a in den Client-Cache 12 erfolgt. In einem weiteren Schritt 62 sendet der Client-Cache 12 eine Nachricht an den primären SCADA-OPC-Server 3a, um eine große Datenmenge vom primären SCADA-OPC-Server 3a zu beziehen, und um eine Datenübertragung im Fall von Datenänderungen zu abonnieren. In einem Schritt 63 sendet der primäre SCADA-OPC-Server 3a eine Nachricht an den redundanten SCADA-OPC-Server 3b, um diesen mit dem Stand des primären SCADA-OPC-Servers 3a zu synchronisieren. Nachdem die Prozessdaten im Client-Cache 12 gespeichert sind, sendet in einem Schritt 64 die SCADA-Client-Komponente 14 eine weitere Nachricht an den Client-Cache 12, um Prozessdaten anzufordern und um eine automatisierte Aktualisierung im Fall von Prozessdatenänderungen zu abonnieren.

Wenn der primäre SCADA-OPC-Servers 3a ausfällt erfolgt in einem Schritt 65 eine Information des Client-Cache 12, und außerdem mittels eines Schrittes 66 eine Information des redundanten SCADA-OPC-Servers 3b. In einem Schritt 67 schickt der Client-Cache 12 daraufhin sein aktuelles Prozessdatenabonnement an den redundanten SCADA-OPC-Servers 3b. SCADA-Client-Komponenten 14 bemerken von dem Wechsel zum redundanten SCADA-OPC-Server 3b nichts, da im Client-Cache 12 stets und ohne Verzögerung aktuelle Prozessdaten gespeichert sind, gleichgültig von welchem SCADA-OPC-Server sie geliefert wurden.

Es versteht sich, dass zur Realisierung eines ertindungsgemäßen Systems auch Abweichungen vom Ausführungsbeispiel möglich sind. Beispielsweise können neue Versionen der OPC-Methode verwendet werden oder auch mehrere Komponenten, z. B. mehrere SCADA-OPC-Server in der Server-Einrichtung 1 eingesetzt werden.

1Server 2SCADA-Serveranwendung 3SCADA-OPC-Server 3aprimärer SCADA-OPC-Server 3bredundanter SCADA-OPC-Server 4Echtzeit-Datenbank 5SCADA-Prozessanbindungsmodul 6Verarbeitungseinrichtung 7Client 8erste Verbindungseinrichtung 9Netzeinfärbungsmodul 10erste OPC-Schnittstelle 11zweite OPC-Schnittstelle 12Client-Cache 13SCADA-OPC-Client 14SCADA-Komponenten 15SCADA-Client 16dritte Verbindungseinrichtung 17vierte Verbindungseinrichtung 18fünfte Verbindungseinrichtung 19Ein/Ausgabe-Einrichtungen 20zweite Verbindungseinrichtung 21Server-Einrichtung, Server 22SCADA- Prozessanbindungsmodul 23SCADA-OPC- Server 24OPC-Objekt 25fünfte Verbindungseinrichtung 26Client-Einrichtung 27erste OPC-Schnittstelle 28zweite OPC-Schnittstelle 29Client-Cache 30Variable 31Organisationsmanager 32dritte Verbindungseinrichtung 33OPC- Clients 34 bis 39erste bis sechste Nachricht 40Client-Einrichtung 41, 42 OPC-Schichten 43Überwachungsmanager 44Client-Cache 45, 46, 47Funktionen 100Anzeige- und Bedienungseinrichtung

Anspruch[de]
  1. SCADA(Supervisory Control and Data Acquisition)-System zur Prozessüberwachung und Echtzeit-Datensammlung in einem Prozessleitsystem, wobei das SCADA-System eine Client/Server-Architektur mit einem Server (1) und mindestens einem Client (7) umfasst, und der Server (1) mit Ein/Ausgabe-Einrichtungen (19) des Prozessleitsystems verbunden ist, wobei

    a) Clients (7) jeweils zur Prozessdaten-Zwischenspeicherung einen Client-Cache (12) aufweisen, und

    b) sowohl Clients (7) als auch der Server (1) Einrichtungen (3, 10, 11, 13) für einen Betrieb und eine Kommunikation gemäß dem OPC(OLE for Process Control)-Verfahren aufweisen.
  2. SCADA-System nach Anspruch 1, dadurch gekennzeichnet, dass der Server (1) wenigstens einen SCADA-OPC-Server (3), eine Echtzeit-Datenbank (4), ein SCADA-Prozessanbindungsmodul (5) und eine Verarbeitungseinheit (6) umfasst.
  3. SCADA-System nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass außer einem primären SCADA-OPC-Server (3a) ein redundanter SCADA-OPC-Server (3b) vorgesehen ist.
  4. SCADA-System nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der Client-Cache (12) eine erste OPC-Schnittstelle (10) zur Kommunikation mit einem SCADA-OPC-Client (13) innerhalb des Clients (7), und eine zweite OPC-Schnittstelle (11) zur Kommunikation mit einem SCADA-OPC-Server (3, 3a, 3b) des Servers (1) aufweist.
  5. SCADA-System nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der Client-Cache (12) mit einem Netzeinfärbungsmodul (9) verbunden ist, das zur Berechnung und Bereitstellung von Einfärbungsinformation für Darstellungen mittels einer Anzeige- und Bedienungseinrichtung (100) im Client (1) einsetzbar ist.
  6. SCADA-System nach Anspruch 5, dadurch gekennzeichnet, dass in Clients (7) jeweils ein SCADA-Client (15) vorhanden ist, der SCADA-Komponenten (14) und den SCADA-OPC-Client (13) enthält, und der mit der Anzeige- und Bedienungseinrichtung (100) verbunden ist.
  7. SCADA-System nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, dass der SCADA-OPC-Client (13) außer mit der ersten OPC-Schnittstelle (10) des Client-Cache (12) auch mit dem SCADA-OPC-Server (3) des Servers (1) verbunden ist.
  8. SCADA-System nach einem der Ansprüche 2 bis 7, dadurch gekennzeichnet, dass das SCADA-Prozessanbindungsmodul (5) Datenabfragen bei den Ein/Ausgabe-Einrichtungen (19) gemäß einer Anwender-definierten Abfragerate durchführt.
  9. SCADA-System nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass Clients (7, 26) mittels eines Überwachungs- und Organisationsmanagers (31) dafür eingerichtet sind festzulegen, wie und wie lange bestimmte Prozessdaten im Client-Cache (12, 29) zwischengespeichert werden sollen, und nach welchen Prioritäten bei Speichermangel Prozessdaten aus dem Client-Cache (12, 29) entfernt werden.
  10. Verfahren zum Betreiben eines SCADA-Systems mit Client/Server-Architektur, das ein Teilsystem eines Prozessleitsystems ist, wobei mindestens ein Client (7) mit jeweils einem Client-Cache (12) zur Prozessdaten-Zwischenspeicherung sowie ein Server (1) vorhanden sind, und sowohl der mindestens eine Client (7), als auch der Server (1) Einrichtungen (3, 10, 11, 13) für einen Betrieb und eine Kommunikation gemäß dem OPC(OLE for Process Control)-Verfahren aufweisen, wobei

    a) nach einer Initialisierungsphase, von SCADA-Client-Komponenten (14) benötigte Prozessdaten im zugehörigen Client-Cache (12) gespeichert werden, und deren zyklische Aktualisierung beim Server (1) abonniert wird,

    b) im Normalbetrieb eine Anforderung von Prozessdaten, insbesondere große Datenmengen für einen Bildaufbau, durch SCADA-Client-Komponenten (14) dem Client-Cache (12) zugeleitet werden,

    c) im Client-Cache (12) nicht vorhandene Prozessdaten zunächst vom Server (1) bezogen und im Client-Cache (12) gespeichert werden, und ihre Aktualisierung beim Server (1) abonniert wird, und

    d) die angeforderten Prozessdaten aus dem Client-Cache (12) zur jeweiligen SCADA-Client-Komponente (14) übertragen werden.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass zur Initialisierung der Ladung des Client-Cache (12) mit Prozessdaten

    – eine SCADA-Client-Komponente (14) des Clients (7) beim Client-Cache (12) bestimmte Prozessdaten anfordert,

    – der Client-Cache (12) beim Server (1) diese Prozessdaten abonniert,

    – der Server (1) die entsprechenden Prozessdaten bei Ein/Ausgabe-Einrichtungen (19) des Prozessleitsystems abonniert,

    – empfangene Prozessdaten in einer Datenbank (4) des Servers (1) und außerdem im anfordernden Client-Cache (12) gespeichert werden, und deren zyklische Aktualisierung veranlasst wird.
  12. Verfahren nach einem der Ansprüche 10 bis 11, dadurch gekennzeichnet, dass SCADA-Client-Komponenten (14) zur Prozessdatenanforderung einen SCADA-OPC-Client (13) des Client (7) nutzen, um Prozessdaten entweder beim Client-Cache (12) oder direkt beim Server (1) anzufordern.
  13. Verfahren nach einem der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass im Fall des Einsatzes eines primären SCADA-OPC-Servers (3a) und eines redundanten SCADA-OPC-Servers (3b) im Server (1), der redundante SCADA-OPC-Server (3b) fortlaufend mit dem primären SCADA-OPC-Servers (3a) synchronisiert wird, ein Ausfall des primären SCADA-OPC-Servers (3a) dem Client-Cache (12) gemeldet wird, und dieser daraufhin Prozessdaten beim redundanten SCADA-OPC-Server (3b) anfordert.
  14. Verfahren nach einem der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass Prozessdatensätze jeweils einschließlich Angabe des Zeitpunkts der Aktualisierung der Prozessdaten an die anfordernde SCADA-Client-Komponenten (14) geliefert wird.
Es folgen 6 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com