-
Die hier dargestellte Erfindung betrifft Prozesssteuerungssysteme, insbesondere ein Prozesssteuerungsnetzwerk, das aus einer Mehrzahl von kommunikativ verbundenen Prozesssteuerungsnetzwerken besteht, die untereinander Daten austauschen können.
-
Beschreibung einer verwandten Ausführungsform
-
Prozesssteuerungssysteme, die zum Beispiel in chemischen, erdölverarbeitenden oder anderen Prozessen verwendet werden, enthalten typischerweise mindestens eine Prozesssteuerung, die kommunikativ mit mindestens einer Host-Einrichtung oder Workstation einer bedienenden Person und einem oder mehreren Feldgeräten über analoge und oder digitale Bus-Einrichtungen oder andere Kommunikationswege und Kanäle verbunden ist. Die Feldgeräte, die beispielsweise Ventile, Ventilsteller, Schalter, Messfühler (beispielsweise Temperatur-, Druck- und Flussratensensoren) sein können, führen Funktionen innerhalb des Prozesses, z. B. ein Öffnen oder ein Schließen von Ventilen und Messungen von Prozessparametern, aus. Während des Ablaufs eines Prozesses empfängt die Prozesssteuerung Signale, die auf Prozessmessungen, auf die Feldgeräte und/oder andere Informationen verweisen, die zu den Feldgeräten über eine Eingabe-Ausgabe(I/O)-Einrichtung übertragen werden, wobei diese Information zum Betreiben einer Steuerroutine verwendet wird, die über die Bus-Einrichtungen oder andere Kommunikationskanäle von dem Eingabe/Ausgabegerät an die Feldgeräte gesendete Steuersignale erzeugt, um den Prozessbetrieb zu steuern. Die Information von den Feldgeräten und der Steuerung wird typischerweise während des Betriebs einen oder mehreren Anwendungen zugeführt, die von der Workstation einer bedienenden Person ausgeführt werden. Sie ermöglichen es dem Bedienpersonal, jede verlangte Funktion, beispielsweise ein Überwachen eines vorliegenden Prozesszustandes, in dem Prozess auszuführen. Zusätzlich dazu können Konfigurationsanwendungen, die auf einer Benutzeroberfläche, beispielsweise einem Host, einer Workstation, einem Laptopcomputer usw. ausgeführt werden, dazu dienen, den Betrieb des Prozesses zu verändern, den Prozess einzustellen, die Einstellung des Prozesses zu beobachten, die Prozesskonfiguration zu dokumentieren und dergleichen mehr.
-
In der Vergangenheit wurden einige der Nutzerschnittstellen des Prozesssteuerungssystems, Konfigurationsdatenbanken und Steuerungen durch einen dafür vorgesehenen Bus, etwa einen Ethernetbus, miteinander kommunikativ verbunden, wobei ein sogenanntes Local Area Network (LAN) gebildet wurde. Weil der dafür verwendete Ethernetbus eine große Bandbreite aufweist und jedes einzelne Signal oder jede über den Ethernetbus gesendete Datenanforderung innerhalb eines LAN nicht über eine große Entfernung übertragen werden muss, läuft der Informationsaustausch zwischen den Nutzerschnittstellen, den Steuerungen und Geräten innerhalb dieser Systeme relativ unkompliziert und schnell ab. Infolgedessen können in den Nutzerschnittstellen ausgeführte Darstellungsroutinen für Konfigurationen, wie etwa typische Zugriffe auf und ein Empfangen von Konfigurationsinformation aus einer Konfigurationsdatenbank, jederzeit ablaufen, wenn der Nutzer Informationen erwartet oder anfordert, welche die Konfiguration oder das Prozesssteuerungssystem betrifft. Die angeforderte Information wird dann über den Ethernetbus gesendet und an der Nutzerschnittstelle angezeigt. Weil jedes Prozesssteuerungsnetzwerk notwendigerweise eine eigenständige Umgebung ausbildet, ist jede Information innerhalb des Prozesssteuerungsnetzwerkes homogen, und ein Zugriff auf diese Information ist in unkomplizierter Weise möglich. Von einigen Ausnahmen abgesehen, werden die Nutzerschnittstellen, Steuerungen, Geräte usw. unter der selben Version der Netzwerksoftware für die Prozesssteuerung betrieben und tauschen Informationen in dem selben Format und unter Verwendung der selben Sprache aus. Weil Nachrichten, die innerhalb des Prozesssteuerungsnetzwerkes übertragen werden, in dem Netzwerk verbleiben, kann jedem Knoten in dem Prozesssteuerungsnetzwerk ein eindeutiger Name für ein Weiterleiten von Nachrichten zwischen den Knoten zugeordnet werden. Weiterhin weisen die Prozesssteuerungsnetzwerke Sicherheitsprozesse zu einem Freigeben oder Unterbinden von Zugriffen auf Informationen in dem Prozesssteuerungsnetzwerk auf. Schließlich sind durchgängig geplante Vorgehensweisen zur Behandlung von Alarmen, Ereignissen, Ausführungsinformationen und so weiter innerhalb des Prozesssteuerungsnetzwerkes typischerweise realisiert und vorgesehen.
-
Die Größe einiger Prozesssteuerungssysteme hat gegenwärtig jedoch allgemein zugenommen, wobei es notwendig ist, Informationen in über größere oder voneinander abgeteilte geographische Gebiete verteilten oder verbreiteten Prozesssteuerungsnetzwerken zu verflechten. So kann es beispielsweise für einige Anwender erforderlich sein, verschiedenen Prozessorten zugeordnete Konfigurationsdaten zu kombinieren, die für verschiedene Regionen, Staaten oder sogar Länder voneinander abweichen können, um es damit einem Systemverwalter an einem ersten Ort zu ermöglichen, von einem zweiten Ort stammende Informationen einzusehen, auf diese zuzugreifen, möglicherweise Konfigurationsaktivitäten auszuführen, und somit den zweiten Ort von dem ersten Ort aus zu beeinflussen. So kann es beispielsweise für einen Anwender notwendig sein, eine durch eine Bohrinsel bezeichnete und viele Meilen weit außerhalb in einem Ozean befindliche Ölquelle mit einem Öl-verarbeitenden und auf dem Festland gelegenen Prozesssteuersystem zu verknüpfen, dass eine Vielzahl von Steuerungen, Nutzerschnittstellen und dergleichen enthält. In diesem Fall ist es notwendig, dass es einem Anwender innerhalb der Ölverarbeitungsanlage ermöglicht wird, die Einrichtungen auf der Bohrplattform einzustellen oder zu beeinflussen, ohne selbst zu der Plattform fliegen zu müssen, dort eine Nutzerschnittstelle mit einer Einrichtung auf der Bohrplattform zu verbinden und damit die Steuerung der Ölquelle neu zu einzustellen, wie dies gegenwärtig üblich ist. Mit der Integration verschiedener Prozesssteuerungsanlagen nimmt weiterhin die Zahl der Nutzerschnittstellen zu, die für einem simultanen Zugriff auf die Konfigurationsdatenbanken an derartigen Anlagen benötigt werden.
-
Diese Integration erfordert einen zu dem Austausch und der Wartung der Konfigurationsdaten zusätzlichen Informationsaustausch. Obwohl die Prozesssteuerungsnetzwerke geographisch voneinander getrennt sein können, ist es mitunter erwünscht oder erforderlich, Informationen entweder während der Laufzeit oder gemeinsam kumulativ zu nutzen. So können beispielsweise Prozesssteuerungsnetzwerke vorgeschalteten oder nachgeschalteten Prozessen zugeordnet sein, wobei die Ausgabe des ersten Prozesses als Eingabe in den anderen Prozess eingeht. Bei derartigen Prozessen beeinflusst ein Alarm oder eine Zustandsänderung in dem einen Prozess die Prozesssteuerung und die Einstellung des anderen Prozesses. Damit kann ebenfalls eine zentrale Steuerung oder Bedienpersonal notwendig werden, das die Überwachung und Leitung beider Prozesse übernimmt. Die Prozesssteuerungsnetzwerke können parallele Prozesse umfassen, die zum Ausführen paralleler Betriebsabläufe erforderlich sind. Bei derartigen Prozessen kann eine Änderung im Prozessablauf, der Steuerung oder der Überwachung einer der parallelen Prozesse eine damit einhergehende Änderung in dem anderen Prozess erforderlich machen, um die Änderung in dem ersten Prozess nachzuvollziehen oder gegenüber dem ersten Prozess auszugleichen.
-
Aber auch ohne geographische Trennung liegen, wenn zwei oder mehrere Prozesssteuerungsnetzwerke am gleichen geographischen Standort betrieben werden, Situationen vor, bei denen für diese Netzwerke ein Kommunikationsaustausch erwünscht oder gefordert ist. So kann es beispielsweise bei großen Systeme vorteilhaft sein, Konfigurationszuständigkeiten auf mehrere autonome Nutzer und/oder Konfigurationsdaten oder auf verteilte Workstations zu verteilen. So kann für gewisse Prozesse ein Prozesssteuerungsnetzwerk notwendig sein, das die Prozesssteuerungen ausführt, während ein zweites Prozesssteuerungsnetzwerk regulatorische Funktionen für den Prozess ausübt. Eine derartige Anordnung kann besonders dann erwünscht sein, wenn die für die regulatorischen Zwecke gespeicherten Daten unantastbar bleiben sollen und daher Zugriffe für die Mehrheit von Anwendern vermieden werden müssen. Weiterhin können die Prozesssteuerungsnetzwerke in getrennten Bereichen voneinander unabhängig aktualisiert werden, um eine neue Version der Prozesssteuerungssoftware einzuspielen, ohne eine Aktualisierung des Prozesssteuerungsnetzwerkes zur Softwareverwaltung vornehmen zu müssen und dabei eine Neuzertifikation des steuernden Netzwerkes, die sehr kostenaufwendig und zeitraubend sein kann, zu vermeiden. Bei anderen Anwendungen, bei denen zwei oder mehrere kommunikativ verbundene Prozesssteuerungsnetzwerke notwendig oder erwünscht sind, ergeben sich Situationen, in denen Prozesssteuerungsnetzwerke zu verschiedenen Zeiten angefordert, in Auftrag gegeben oder zertifiziert werden und wo die Prozesssteuerungsnetzwerke mit verschiedenen Betriebssparten zugeordnet sind.
-
Ein Verbinden von zwei oder mehreren Prozesssteuerungsnetzwerken zu einem Prozesssteuerungssystem kann zu zusätzlichen Integrationsaufgaben führen, die ein bloßes Verschieben von Daten zwischen den Systemen übersteigen. Während Knoten oder Gerätenamen innerhalb eines Prozesssteuerungsnetzwerkes normalerweise eindeutig bezeichnet sind, kann der selbe Name innerhalb von zwei oder mehreren Prozesssteuerungsnetzwerken in dem Prozesssteuerungssystem gleichzeitig in Verwendung sein, wodurch sich eine unklare Situation ergeben kann. So weist beispielsweise eine in dem Prozesssteuerungsnetzwerk übermittelte Nachricht einen Gerätenamen auf, der eine Nachrichtenadresse ohne eine Zuordnung des Prozesssteuerungsnetzwerkes, in dem die verschiedenen Geräte angeordnet sind, enthält. Die verschiedenen Prozesssteuerungsnetzwerke können weiterhin unter verschiedenen Softwareversionen betrieben werden, Zeichen und Daten in verschiedenen Sprachen verwenden, Alarmzustände oder Ereignisse verschieden behandeln, sie müssen aber dazu geeignet sein, die Nachrichten zu interpretieren, die zwischen den Prozesssteuerungsnetzwerken ausgetauscht werden, und so einen voneinander abhängenden Betrieb des Prozesssteuerungsnetzwerkes gewährleisten. Schließlich muss die Sicherheit zwischen den Prozesssteuerungsnetzwerken gewahrt sein, um sicherzustellen, dass die Informationen, die zwischen den verschiedenen Prozesssteuerungsnetzwerken und den die Informationen weiterleitenden Anwendern ausgetauscht werden, für eine Übertragung freigegeben sind.
-
Prozesssteueranlagen mit Prozesssteuernetzwerken sind auch aus der
DE 199 55 330 A1 und der
GB 2 368 872 A bekannt.
-
Ausgehend von diesem Stand der Technik ergibt sich die Aufgabe, zwei oder mehrere Prozesssteuerungsnetzwerke mit unterschiedlichen Softwareversionen kommunikativ miteinander zu verbinden.
-
Die Aufgabe wird durch die Vorrichtungen/Verfahren der Ansprüche 1, 17, 28 und 38 gelöst.
-
Weitere vorteilhafte Ausgestaltungen ergeben sich anhand der Unteransprüche.
-
Nach einem Aspekt der genannten Erfindung enthält ein Prozesssteuerungssystem eine Mehrzahl von Prozesssteuerungsnetzwerken, wobei jedes Netzwerk einen Interzonenserver enthält, der kommunikativ mit einem oder mehreren anderen Interzonenservern über Kommunikationsverbindungen gekoppelt ist. Das Prozesssteuerungssystem weist ferner eine Kommunikationsroutine auf, wobei diese die Kommunikationsverbindungen zu einem Übertragen von Prozesssteuerungsnachrichten zwischen den Prozesssteuerungsnetzwerken nutzt. Der Interzonenserver der lokalen Zone überträgt Nachrichten an die Interzonenserver der fernen Zonen, mit denen er eine direkte Verbindung über eine Kommunikationsverbindung aufweist und kann ebenso Nachrichten an eine andere ferne Zone weiterleiten, die dieser von einer ersten entfernten Zone empfangen hat, und mit der die erste ferne Zone nicht direkt verbunden ist. Die Interzonenserver können in die Prozesssteuerungsnachrichten enthaltene und durch Einrichtungen in der lokalen Zone übermittelte Informationen nutzen, um die ferne Zone und die ferne Einrichtung zu bestimmen, zu der die Prozesssteuerungsnachrichten übermittelt werden. Der Interzonenserver kann andere Informationen in denen von der lokalen Zone entweder gesendeten oder empfangenen Prozesssteuerungsnachrichten verwenden, um sicherzustellen, dass die Zone, der Anwender oder die Einrichtung zu einem Senden oder Empfangen der Prozesssteuerungsnachrichten befugt ist, oder dass die Zugriffsebene, die durch die Nachricht gefordert ist, eingehalten wird. Der Interzonenserver kann weiterhin Prozesssteuerungsnachrichten konvertieren oder reformatieren, um diese auf verschiedene Versionen von Software, unter denen die lokale und die ferne Zone betrieben wird, anzupassen, um Alarmnachrichten zu konvertieren oder zu reformatieren, um eine vorbestimmte Mitteilung oder einen Alarm in einer lokalen oder fernen Zone zu erzeugen, eine Übersetzung der Sprache einer Prozesssteuerungsnachricht und dergleichen weitere Aufgaben auszuführen.
-
Figurenbeschreibung
-
Es zeigen:
-
1 ein Blockdiagramm eines Prozessteuerungssystems mit einer Mehrzahl von über Kommunikationsverbindungen kommunikativ verbundenen Zonen; und
-
2 ein Blockdiagramm eines kommunikativ das Prozesssteuerungsnetzwerk einer lokalen Zone mit einer Mehrzahl ferner Zonen verbindenden Interzonenservers.
-
Beschreibung bevorzugter Ausführungsformen
-
Nach 1 enthält ein Prozesssteuerungssystem 10 geographisch voneinander getrennte Zonen oder Standorte 12 und 14, die kommunikativ über eine Satelliten-Kommunikationsverbindung 16 verbunden sind, die durch einen Satellit 18 mit einem ersten Kanal 20 in Aufwärts/Abwärts-Richtung und einem zweiten Kanal 22 in Aufwärts/Abwärts-Richtung ausgebildet ist, wobei diese als Zweiwegekanäle ausgeführt sein können. Die erste Zone 12, die nachfolgend als lokale Zone oder Hauptzone 12 bezeichnet wird, weist ein Prozesssteuerungsnetzwerk auf, das zwei Prozesssteuerungen 24 und 26 enthält, die mit einer Nutzerschnittstelle 28, einer Konfigurationsdatenbank 30 und einen Interzonenserver 32 über einen dafür ausgebildeten Local Area Network (LAN)-Bus 34 verbunden sind. Dieser kann beispielsweise ein Ethernet- oder ein anderer erforderlicher Bus oder eine entsprechende Kommunikationsverbindung sein. Die Nutzerschnittstelle 28 kann von jedem geforderten Typ einer Hostworkstation oder eines Computers, insbesondere jedes Typs eines Personalcomputers, Laptopcomputers usw., sein, während die Konfigurationsdatenbank 30 eine Datenbank-Einrichtung ist, die im Stand-Alone-Betrieb betrieben wird oder in einer anderen Einrichtung, beispielsweise der Nutzerschnittstelle 28 oder dem Interzonenserver 32, eingefügt sein kann. Der Interzonenserver 32 enthält eine Antenne 39, die der Interzonenserver 32 zu einer Kommunikation über die langsame oder eine schmalbandige Kommunikationsverbindung 16 mit der zweiten, hier als die entfernte Zone 14 bezeichneten Prozesssteuerungszone 14 nutzt.
-
Jede der Steuerungen 24 und 26 ist mit einem oder mehreren Eingabe/Ausgabe(I/O)-Geräten 36 verbunden, welche wiederum mit Feldgeräten verbunden sind, die von jedem erforderlichen Feldgeräte-Typ, beispielsweise einem konventionellen 4–20 Milliamp-Gerät 38 oder jedem Typ eines intelligenten Feldgerätes 40, wie beispielsweise einem HART-, PROFIBUS-, Actuator Sensor Interface (AS-Interface)-, WORLDFIP-, Device-Net-, CAN-, FOUNDATION-Fieldbus (nachfolgend als Fieldbus bezeichnet) und einem vergleichbaren Gerät sein können. Natürlich können die Geräte 38 und 40 jeden erforderlichen Gerätetyp, beispielsweise Sensoren, Transmitter, Ventile, Ventilatoren, Mixer, Stellgeräte und so weiter darstellen, die jede Art von Steuerung, Messung oder andere Funktionen in dem Prozesssteuerungssystem ausführen. Die Steuerungen 24 und 26 können mit den Feldgeräten 38 und 40 unter Verwendung jedes bekannten oder geforderten I/O-Geräte-Typs 36 und Kommunikationsprotokolls, beispielsweise den jedem der oben erwähnten Typen von Geräten zugeordneten Protokollen, kommunizieren. Im allgemeinen enthalten die Steuerungen 24 und 26, die beispielsweise vom Typ einer von Fisher-Rosemount Systems vertriebenen Delta-V-Steuerung sein können, jeweils einen Prozessor und einen Speicher zum Ablegen von Daten, Programmen und Steuerroutinen (beispielsweise Prozesssteuerungsmodulen), die zum Ausführen der Steuerung des Prozesses 10 in der lokalen Zone 12 verwendet werden. Im allgemeinen empfangen die Steuerungen 24 und 26 Signale von den Feldgeräten 38 und 40, führen Prozesssteuerungsroutinen aus, stellen Steuersignale für die Geräte 38 und 40 bereit und verwirklichen somit die Steuerung des Prozesses 10.
-
Ähnlich hat die ferne Zone 14 ein Prozesssteuerungsnetzwerk, das eine Prozesssteuerung 50 enthält, die mit Nutzerschnittstellen 52 und 53, einer Konfigurationsdatenbank 54 und einen Interzonenserver 56 über einen dafür geeigneten LAN-Bus 58, der beispielsweise ein Ethernet- oder eine andere erforderliche Bus-Einrichtung oder Kommunikationsstrecke sein kann, verbunden ist. Die Steuerung 50 ist als über ein I/O-Gerät 60 mit zwei intelligenten Feldgeräten 62 verbunden dargestellt. Sie kann aber kann auch mit jeder anderen Anzahl oder jedem anderen Feldgerätetyp verbunden sein. Der Datenserver 56 nutzt eine Antenne 64, um über die langsame oder schmalbandige Verbindung 16 mit dem Datenserver 32 zu kommunizieren und somit Kommunikationsvorgänge zwischen der lokalen Zone 12 und der fernen Zone 14 zu erzeugen. Die Einrichtungen in der fernen Zone 14 können die gleichen oder im Vergleich mit den entsprechenden Einrichtungen innerhalb der lokalen Zone 12 ähnliche Einrichtungen sein und Prozesssteuerungen und Aufzeichnungsoperationen in der fernen Zone 14 ausführen. Auch hier ist klar, dass andere Einrichtungen oder auch andere Anzahlen von Einrichtungen innerhalb einer oder jeder der Zonen 12 und 14 zum Ausführen einer Prozesssteuerung und von Konfigurationsaktivitäten in jeder erforderlichen Art und Weise miteinander verbunden sein können. So kann, falls erforderlich, eine der Zonen, beispielsweise die ferne Zone 14, ein einzelnes Gerät, z. B. eine Nutzerschnittstelle, sein.
-
Die Interzonenserver 32 und 56 bauen eine Kommunikationsverbindung zwischen den zwei Bussen 34 und 58 auf und ermöglichen damit eine Kommunikation zwischen den Einrichtungen innerhalb der lokalen Zone 12 und der fernen Zone 14. Obwohl die Kommunikationsverbindung 16 als Satellitenverbindung dargestellt ist, können stattdessen Kommunikationsverbindungen jeder anderen Art, beispielsweise eine zelluläre Mobilfunkverbindung, ein Modem oder eine Telefonverbindung, eine Internetverbindung oder jede andere drahtlose Verbindung, die weitreichige oder kurzreichweitige Netzwerkverbindungen enthalten, angewendet werden. Natürlich kann jedes erforderliche Kommunikationsverfahren innerhalb der Kommunikationsverbindung 16 zum Aufbau einer Daten-Übertragung über die Verbindung 16 angewandt werden. Daher kann auch jedes Kommunikationsprotokoll, so etwa das IP, TCP oder ODP-Protokoll, und jedes Modulations-, Fehlerverschlüsselungsverfahren und so weiter verwendet werden, um die Kommunikation über die Verbindung 16 zu verwirklichen, z. B. einschließlich von Spread-Spectrum-Techniken. Vorzugsweise wird in der Kommunikationsverbindung 16 eine Form eines Datenbestätigungsschemas angewendet, um eine sichere und zuverlässige Kommunikation in Anwesenheit von Rauschen oder anderen Einflüssen sicherzustellen. Fall erforderlich, kann das Datenbestätigungsschema oder das in der US Patentanmeldung Nummer 09/418,714 unter dem Titel „Deferred Acknowledgment Communications and Alarm Management” am 15. Oktober 1999 eingereichte und beschriebene Verfahren verwendet werden, das vom Inhaber der hier beschriebenen Erfindung beansprucht wird und auf das an dieser Stelle ausdrücklich als Referenz zurückgegriffen wird, um die Kommunikationen über die Kommunikationsverbindung 16 zu beeinflussen. Im allgemeinen erlaubt die Verwendung der Kommunikationsverbindung 16 eine gegenseitige Einbettung geographisch voneinander getrennter Prozesssteuerungsanlagen oder -systeme zu einem Ausbilden eines einzigen Prozesssteuerungssystems, in welchem die Einrichtungen innerhalb einer Zone mit den Einrichtungen einer anderen Zone zum Ausführen von Steuerungs- und Konfigurationsaktivitäten kommunizieren können.
-
Zusätzlich zu den geographisch voneinander getrennten Zonen 12 und 14 kann das Prozesssteuerungssystem 10 weiterhin zusätzliche Zonen 66 und 68 enthalten, die geographisch benachbart zur lokalen Zone 12, möglicherweise innerhalb eines gleichen Komplexes oder Gebäudes, angeordnet sind. Die Zonen 66 und 68 enthalten jeweils ein, bezogen auf die Netzwerke der Zonen 12 und 14, eigenes Prozesssteuerungsnetzwerk, wobei ein Informationsaustausch zwischen den Zonen erwünscht oder erforderlich ist. Die Zone 66 enthält einen Interzonenserver 70 und eine Benutzerschnittstelle 72, wobei der Interzonenserver 70 mit dem Interzonenserver 32 der lokalen Zone 12 über eine Kommunikationsverbindung 74 verbunden ist. Die Kommunikationsverbindung 74 kann ein Ethernetbus, ein gemieteter Anschluss, ein virtuelles privates Netzwerk über TCP/IP oder von jedem anderen Typ einer ständigen oder zeitweiligen Kommunikationsverbindung sein. Natürlich wird für die Kommunikationsverbindung 74 eine ständige Verbindung bevorzugt, wenn beispielsweise Prozesssteuerungsdaten während der Laufzeit zwischen den Zonen 12 und 66 für eine Beeinflussung der Prozesssteuerung in einer oder beiden 12 und 66 übermittelt werden.
-
Die Zone 68 enthält einen Interzonenserver 66 und eine Benutzerschnittstelle 78, wobei der Interzonenserver 78 mit dem Interzonenserver 70 aus der Zone 66 über eine Kommunikationsverbindung 80 verbunden ist. Die Kommunikationsverbindung 80 kann je nach den Erfordernissen des Datenaustausches zwischen den Zonen 66 und 68 von einem vergleichbaren Typ wie die Kommunikationsverbindung 75 zwischen den Interzonenservern 32 und 66 oder von einem davon abweichenden Typ sein. Obwohl die Zonen 66 und 68 zu lokalen Zone 12 geographisch naheliegend sind, werden diese aus Gründen einer klaren Darstellung nachfolgend in Bezug auf die Kommunikation zwischen der lokalen Zone 12 und den anderen Zonen des Prozesssteuerungssystem 10 als ferne Zonen 66 und 68 bezeichnet.
-
Während die Darstellung der fernen Zonen 66 und 68 nur die Interzonenserver 70 bzw. 76 und die Nutzerschnittstellen 72 bzw. 78 zeigt, können die fernen Zonen 66 und 68 jede notwendige Kombination von Nutzerschnittstellen, Operatorworkstations, Steuerungen, I/O-Einrichtungen und Feldgeräten enthalten, um die Prozesssteuerungsnetzwerke der fernen Zonen 66 und 68 auszubilden. Umgekehrt können eine oder beide der fernen Zonen 66 und 68 aus einer Einzelnutzerschnittstelle oder einer Operatorworkstation bestehen, die sowohl als Interzonenserver, als auch als Benutzerschnittstelle für die Zone betrieben wird. Das Prozesssteuerungssystem 10 kann nur als Beispiel an den Zonen 12 bzw. 14 vor- und nachgeschaltete Prozesse enthalten, die Prozesssteuerungsinformationen austauschen, um die Verarbeitung der Ausgabe des vorgeschaltenen Prozesses an den Einrichtungen des nachgeschalteten Prozesses zu ermöglichen. Gleichzeitig enthält die Zone 66 ein Prozesssteuerungsnetzwerk, das regulatorische Daten von dem in der lokalen Zone 12 ablaufenden vorgeschalteten Prozess sammelt. Zusätzlich kann die ferne Zone 68 das Betriebszentrum des Prozesssteuerungssystems 10 sein und eine oder mehrere Operatorworkstations enthalten, an weichem Bedienpersonal den Betrieb des Prozesssteuerungssystems 10 überwacht und über die Kommunikationsverbindungen 16, 74 und 80 Änderungen an dem über die Zonen 12, 14 und 66 verteilten System vornimmt.
-
Wie erwähnt, ist obiges lediglich ein Beispiel eines Systems miteinander verbundener Zonen, das mit Hilfe dieses Verfahrens und der erfindungsgemäßen Einrichtung verwirklicht werden kann. Während die ferne Zone 68 nur zur fernen Zone 66 mit einer direkten Verbindung dargestellt ist, kann die ferne Zone 68 zusätzliche Kommunikationsverbindungen direkt von dem Interzonenserver 76 zu den Interzonenservern 32 und 56 der Zonen 12 bzw. 14 aufweisen und von einem durch die geographische Entfernung, die Anforderung an den Datenaustausch und anderen Faktoren bestimmten Typ sein. Weiterhin kann das Prozesssteuerungssystem 10 eine oder mehrere zusätzliche und durch Kommunikationsverbindungen verbundene Zonen enthalten, um das volle Prozesssteuerungsvorhaben des das Prozesssteuerungssystem 10 anwendenden Unternehmens zu verwirklichen.
-
Die Verbindungen und der Datenaustausch zwischen den Zonen 12, 14, 66 und 68 werden über die Interzonenserver 32, 56, 70 bzw. 76 abgewickelt. Die Interzonenserver 32, 56, 70 und 76 steuern den Informationsfluss in bzw. aus den entsprechenden Zonen und können Operationen auf den ausgetauschten Daten ausführen, um die Informationsnutzung durch die miteinander verbundenen Prozesssteuerungsnetzwerke zu erleichtern. Unter Verwendung des Interzonenservers 32 der lokalen Zone 12 werden beispielsweise auslaufende Nachrichten von den Komponenten des Prozesssteuerungsnetzwerkes der lokalen Zone 12 zu den Komponenten der fernen Zonen auf dem Bus 34 übertragen und von dem Interzonenserver 32 erkannt. Jede Nachricht enthält Informationen, die dem Interzonenserver 32 signalisieren, dass diese Nachricht für eine ferne Zone bestimmt ist. Weiterhin ermöglicht sie es dem Interzonenserver 32, festzustellen, zu welcher fernen Zone die Nachricht zu übermitteln ist. In Abhängigkeit von der Ausführung des Prozesssteuerungssystems 10 kann der Interzonenserver 32 zu einer Verarbeitung der Information ausgebildet sein, bevor die Nachricht zu der vorbestimmten fernen Zone oder den Zonen übermittelt wird. Dies ist beispielsweise bei einem Ausführen einer Sicherheitsüberprüfung der Fall, bei dem sicherzustellen ist, das der in der Nachricht geforderte Zugriffstyp (Lesezugriff, Lese/Schreibzugriff) für die lokale Zone 12 oder für den Benutzer, der die Nachricht übermittelt, freigegeben ist, oder auch für ein Übersetzen der Nachricht in eine in der entfernten Zone verwendeten Sprache, ein Konvertieren der Nachricht in eine ältere oder neuere Softwareversion und dergleichen Operationen mehr.
-
Sobald die ferne Zone oder die Zonen identifiziert sind und jede notwendige Verarbeitung an der Nachricht ausgeführt ist, überträgt der Interzonenserver 32 die Nachricht über die entsprechende Kommunikationsverbindung 16 oder 74 an die ferne Zone oder die fernen Zonen. Nachrichten für Komponenten des Prozesssteuerungsnetzwerkes der fernen Zone 14 werden über die langsame Kommunikationsverbindung 16 an den Interzonenserver 56 übertragen. Nachrichten für Komponenten in der fernen Zone 66, beispielsweise an die Nutzerschnittstelle 72, werden über die Kommunikationsverbindung 74 zum Interzonenserver 70 übertragen. Obwohl die lokale Zone 12 keine direkte Kommunikationsverbindung zu der fernen Zone 68 aufweist, werden Nachrichten für Komponenten der fernen Zone 68 über die Kommunikationsverbindung 74 zu der fernen Zone 66 weitergeleitet, die wiederum die Nachrichten an den Interzonenserver 76 überträgt. Die Weiterleitung der Nachrichten kann innerhalb der Interzonenserver oder jeweils abhängig von der Ausgestaltung des Prozesssteuerungsnetzwerkes und des Prozesssteuerungssystems, durch andere Komponenten verwirklicht werden, die die Kommunikation zwischen den Zonen abwickeln. Während die Zonen 12, 14, 66 und 68 aus 1 linear miteinander verbunden dargestellt sind, wobei nur ein einziger Kommunikationsweg zwischen jedem Zonenpaar existiert, ist verständlich, dass komplexere Ausführungsformen aus einer Mehrzahl von Zonen in einem Prozesssteuerungssystem unter Verwendung des Verfahrens und der Anordnung der hier dargestellten Erfindung verwirklicht werden können, wobei mehr als ein Kommunikationsweg zwischen einem gegebenen Zonenpaar zur Verfügung stehen kann. In diesen komplexeren Systemen können für ein Weiterleiten von Nachrichten Weiterleitungsstrategien für vordefinierte Wege oder Nachrichten mit der Fähigkeit zu einem Feststellen eines optimalen Weges für einen Nachrichtenaustausch zwischen Zonen vorgesehen sein, die keine direkte Kommunikationsverbindungen aufweisen.
-
Der Interzonenserver 32 empfängt ebenso von den fernen Zonen 14, 66 und 68 einlaufende bzw. über die Kommunikationsverbindungen 16 und 74 übertragene Nachrichten. Wie bei den auslaufenden Nachrichten kann der Interzonenserver 32 für eine Informationsverarbeitung der einlaufenden Nachrichten, beispielsweise zu einem Ausführen von Sicherheitsüberprüfungen, Übersetzungen, Versionskontrollen und weiteren oben dargestellten Aufgaben, ausgestaltet sein. Die einlaufenden Nachrichten enthalten Informationen, die auf die Komponente oder die Komponenten der lokalen Zone 12 verweisen, an welche die einlaufende Nachricht gerichtet ist. Nach Ausführung der jeweils notwendigen Verarbeitung der einlaufenden Nachricht überträgt der Interzonenserver die einlaufende Nachricht an die Komponente oder die Komponenten der lokalen Zone 12 über den Bus 34.
-
In 2, bei der die selben Bezugszeichen unter Verweis auf die selben Komponenten in 1 verwendet werden, ist der Interzonenserver 32 in einer alternativen Konfiguration eines Interzonenservers entsprechend der hier beschriebenen Erfindung beispielhaft ausgebildet. Die anderen Knoten oder Einrichtungen der lokalen Zone 12 bauen für eine Kommunikation mit Knoten und Geräten der fernen Zonen 14, 66 und 68 auf dem Interzonenserver 32 auf. Wie oben dargestellt, enthält der Interzonenserver 32 ein Kommunikationsmodul 82, das den Nachrichtenfluss durch den Interzonenserver 32 und damit auch in und aus der lokalen Zone 12 steuert. Das Kommunikationsmodul 82 überträgt Nachrichten zu und empfängt Nachrichten von den Komponenten des Prozesssteuerungsnetzwerks 83 der lokalen Zone 12 über den Bus 34. Das Kommunikationsmodul 82 ist mit vergleichbaren Kommunikationsmodulen in den Interzonenservern 56 und 70 der fernen Zonen 14 bzw. 66 über die Kommunikationsverbindungen 16 bzw. 74 ebenfalls verbunden.
-
Damit das Kommunikationsmodul 82 auslaufende Nachrichten zu den richtigen Knoten in den richtigen fernen Zonen weiterleiten kann, muss das Kommunikationsmodul 82 Zugriff zu Bezugs- oder Pfadinformationen haben, die die fernen Zonen und/oder Knoten identifizieren. Der Informationsverweis kann beispielsweise in der Form „//ZonenName/KnotenName/...,” oder in anderer erforderlicher Form gegeben sein. Es ist verständlich, dass in dem Prozesssteuerungssystem 10 die Zonennamen eindeutig sein müssen, um jeden Interzonenverweis ohne Konflikt aufzulösen. In jeder Zone gibt es einen Namensbereich für Knoten, wobei das Konfigurationssystem deren Eindeutigkeit innerhalb einer Zone sichert. Eine gegebene Kombination des Zonennamens und Knotennamens ist somit innerhalb des Prozesssteuerungssystems 10 eindeutig. Natürlich ist es naheliegend, dass vor allem bei Systemen, in denen Steuerungen und Konfigurationsoperationen zentralisiert ablaufen, eine Bezeichnungsstrategie vorgesehen sein kann, wobei Knoten unabhängig von der Zone, in welcher der Knoten lokalisiert ist, jeder Knoten einen eindeutigen Namen trägt, so dass Namenskonflikte zwischen den Zonen nicht auftreten.
-
Um eine Nachricht an das richtige Gerät in einer fernen Zone zu leiten, muss die Nachricht eine eindeutige, zum Weiterleiten der Nachricht notwendige Information tragen. Zu dem Zeitpunkt, wenn ein Gerät zum Übertragen von Nachrichten an Geräte in fernen Zonen eingerichtet wird, muss der Name der fernen Zone und der Gerätename in dem Gerät so gespeichert sein, dass in dem Gerät der lokalen Zone 12 der gesamten Weg zur Weiterleitung der Nachricht an das Gerät in der fernen Zone vorliegt. Bei einem Empfang der Nachricht an dem Interzonenserver 32 greift das Kommunikationsmodul 82 auf die Pfadinformation in der Nachricht zum Weiterleiten der Nachricht an das Gerät in der entsprechenden fernen Zone 14, 66 oder 68 zurück. Auch dann, wenn das lokale Gerät nicht typischerweise den gesamten Pfad für das ferne Gerät gespeichert hat, kann das Gerät dazu in der Lage sein, den gesamten Pfad für das Kommunikationsmodul 82 bereitzustellen, wenn das lokale Gerät eine Nachricht in Antwort auf eine Anforderung von einem Gerät in einer fernen Zone überträgt, sofern die anfängliche Anforderungsnachricht die Pfadinformation für das anfragende ferne Gerät enthält.
-
Alternativ dazu kann der Interzonenserver 32 ein Namensmodul 84 enthalten, das Pfadinformationen für die fernen Geräte speichert, für welche die Geräte der lokalen Zone 12 für eine Kommunikation eingerichtet und/oder freigegeben sind. Die Nachricht von dem lokalen Gerät kann identifizierende Informationen tragen, die das ferne Gerät, an das die Nachricht geleitet wird, kennzeichnet. Beim Empfangen der Nachricht greift das Kommunikationsmodul 82 auf das Namensmodul 84 für ein Ermitteln der Pfadinformation für das ferne Gerät zu und leitet die Nachricht zu der entsprechenden fernen Zone 14, 66 oder 68 auf der Basis der aus dem Namensmodul 84 entnommenen Informationen weiter. Die von dem Namensmodul 84 bereitgestellte Information kann beispielsweise in der Konfigurationsdatenbank 30 der lokalen Zone 12 gespeichert werden. Alternativ dazu kann das Namensmodul 84 auf eine separate Datenbank zugreifen, die nur Information enthält, die sich auf die Interzonenkommunikation bezieht. Eine derartige Datenbank kann als Teil des Konfigurationsprozesses mit Weiterleitungsinformation bestückt sein, die zu dem Zeitpunkt eingelesen wird, wenn das Gerät für ein Übertragen von Nachrichten an ein Gerät der fernen Zone eingerichtet wird. Als weitere Alternative kann das Namensmodul 84 zu dem Zeitpunkt, an dem neue Zonen an das Prozesssteuerungssystem 10 angefügt werden, eine Anfrage über das Kommunikationsmodul 82 an die neue ferne Zone ausgeben, die eine Information über eine Identifikation der Geräte anfordert, die in der fernen Zone lokalisiert sind. Die Anfrage kann zu der Konfigurationsdatenbank der fernen Zone geleitet werden oder vom Typ einer unaufgeforderten Sendenachricht sein, die die Geräte in der fernen Zone zu einer Antwort und zu einer Identifikation ihrer Anwesenheit abfragt.
-
In Prozesssteuerungssystemen, die eine globale Namensstrategie beinhalten, bei welcher jedes Gerät in dem System eindeutige Namen aufweist, muss das Namensmodul 84 nur einen spezifischen Pfad finden, der dem Gerätenamen entspricht. Bei Installationen, in denen eine globale Namensgebungsstrategie nicht angewendet wird, kann jedoch das Namensmodul 84 eine Mehrzahl von Pfaden für einen gegebenen Gerätenamen ermitteln, der jeder entweder lokalen oder entfernten Zone entspricht, in welcher der Gerätename verwendet wird. Unklare Gerätenamen können auf der Grundlage der Konfiguration des Systems und den Erfordernissen des Prozesses aufgelöst werden. So kann das System beispielsweise auf eine Namensstrategie zurückgreifen, bei welcher Geräte, die die selbe Funktion in verschiedenen Zonen und damit verschiedenen Namensräumen ausführen, den selben Gerätenamen tragen, so dass eine einzelne Nachricht simultan zu jedem dieser Geräte übertragen wird. Bei einer derartigen Vorgehensweise überträgt das Kommunikationsmodul 82 die Nachricht an jede entfernte Zone, für die das Namensmodul 84 einen Pfad ermittelt. Wenn eine solche Vorgehensweise nicht vorgesehen ist und doppelte Gerätenamen zufällig auftreten, können andere Auflösungsstrategien bei Gerätenamen im Konflikt vorgesehen sein. So kann beispielsweise das Kommunikationsmodul 82 die Nachricht ignorieren, sofern der Gerätename in der lokalen Zone 12 verwendet wird, weil das lokale Gerät die Nachricht über den Bus 34 empfängt. Wenn der Gerätename nicht in der lokalen Zone 12 aufgefunden wird, kann das Kommunikationsmodul 82 die Nachricht auf der Grundlage einer vordefinierten Hierarchie an die entfernten Zonen 14, 66 und 68 weiterleiten oder eine Alarmnachricht oder eine andere Nachricht an eine Operatorworkstation oder an eine Nutzerschnittstelle der lokalen Zone 12 ausgeben, die den Benutzer über einen unauflösbaren Namenskonflikt informiert.
-
Bei einigen Prozesssteuerungssystemen ist es notwendig, Sicherheitsstandards zu setzen, um Interzonenzugriffe und Interzonenoperationen zu beschränken. Sicherheitsprozeduren existieren typischerweise innerhalb des Prozesssteuerungsnetzwerkes in jeder einzelnen Zone 12, 14, 66 und 68, wobei einige derartige Prozeduren den Zugriff auf und die Aktualisierung von Informationen innerhalb der Zonen steuern. Eine Erweiterung der Intrazonensicherheit auf Interzonenkommunikationen wird durch ein Sicherheitsmodul 86 an dem Interzonenserver 32 verwirklicht. Das Sicherheitsmodul 86 speichert Informationen mit Befugnissen zu einem Senden oder Empfangen von Nachrichten zu und von der lokalen Zone 12 über individuelle Anwender oder Gruppen von Anwendern. Bei einem Empfang einer Nachricht an dem Interzonenserver 32, was sowohl einlaufende Nachrichten von den fernen Zonen 14 66 und 68 als auch auslaufende Nachrichten von Geräten in der lokalen Zone 12 betrifft, greift das Kommunikationsmodul 82 auf das Sicherheitsmodul 86 mit aus der Nachricht erhaltenen Identifikationsinformationen für die Nutzer zu. Das Sicherheitsmodul 86 stellt fest, ob der Nutzer zu einem Zugriff auf der Zielzone autorisiert ist und kann ebenso den verlangte Zugriffstyp, d. h. die Zugriffsart, für welche der Nutzer berechtigt und freigegeben ist (z. B. Nur-Lesezugriff, Lese/Schreibzugriff, und so weiter), feststellen. Freigegebene Nachrichten werden durch das Kommunikationsmodul 82 übermittelt, während auf nicht freigegebene Nachrichten der Zugriff verwehrt wird und das Sicherheitsmodul das Kommunikationsmodul veranlassen kann, Hinweise oder Alarmnachrichten an den die Nachricht sendenden Benutzer, an die Systemadministration der lokalen und/oder fernen Zone oder zu anderen Standorten, Benutzern oder Geräten entsprechend der festgelegten Erfordernisse des Prozesssteuerungssystems 10 zu übermitteln. Der Systemadministrator der lokalen Zone 12 verwaltet die den Benutzern in den entfernten Zonen 14, 66 und 68 zugewiesenen Sicherheitsprivilegien. Innerhalb der Zone legt der Systemadministrator die Anlagengebiete des Prozessteuerungsnetzwerks 83, die von den entfernten Zonen 14, 66 und 68 erreichbar sind und den Zugriffstyp fest, der für dafür befugte Benutzer freigegeben ist. Die Freigabe, die durch den Systemadministrator verliehen wird, wird durch die Sicherheitsbestimmungen des Prozesssteuerungssystems 10 festgelegt. Auf der höchsten Ebene kann ein Zugriff zur lokalen Zone 12 für Benutzer einer einzelnen fernen Zone, beispielsweise für Benutzer der Zone 68, verweigert sein. In diesem Fall weist das Sicherheitsmodul 86 jede Nachricht von einem Benutzer der fernen Zone 68 ohne Unterscheidung des angeforderten Zugriffstyps ab. Eine solche Vorgehensweise kann notwendig sein, wenn die Kommunikationsverbindung zwischen den Zonen nicht sicher oder verlässlich ist, wenn die ferne Zone gestört ist bzw. wenn die Integrität ihrer Daten nicht garantiert werden kann.
-
Bei anderen Ausführungsformen kann die lokale Zone 12 auf der Sicherheitskonfiguration der fernen Zone aufbauen, um die Freigabe der Nachrichten zu ermitteln. Das Sicherheitsmodul 86 der lokalen Zone 12 kann so eingerichtet sein, dass es einen Zugriff auf alle Nachrichten aus der fernen Zone gewährt. Wenn eine Sicherheit auf Zonenebene freigegeben ist, kann es nützlich sein, in dem Sicherheitsmodul der fernen Zone einen bevollmächtigten Nutzer festzulegen, der alle Nutzer in der fernen Zone repräsentiert und dadurch ein sonst notwendiges Erstellen eines Sicherheitsprofils für jeden in der freigegebenen fernen Zone lokalisierten Nutzer innerhalb der lokalen Zone zu vermeiden. Eine volle Zonenautorisierung kann teilweise dann vorteilhaft sein, wenn die lokale Zone von einem Operator der fernen Zone bedient wird.
-
Auf der niedrigsten Ebene werden individuellen Benutzern aus fernen Zonen Rechte für spezifische Zugriffstypen der lokalen Zone 12 zugewiesen. In einem derartigen Fall wertet das Sicherheitsmodul 86 jede einlaufende Nachricht des Benutzers aus, um sicherzustellen, dass de Nachricht einem für den fernen Benutzer in der lokalen Zone 12 freigegebenen Zugriffstyp entspricht. Wie vorhergehend dargestellt, werden die freigegebenen-Nachrichten durch das Kommunikationsmodul 82 übertragen, während Hinweise und/oder Alarmnachrichten für nicht freigegebene Nachrichten ausgegeben werden.
-
Es können sich Situationen ergeben, in welchen ein Benutzer für die lokale Zone 12 autorisiert ist, üblicherweise in ihr arbeitet, aber in der fernen Zone 14 ohne direkten Zugriff auf das Prozesssteuerungsnetzwerk in der lokalen Zone 12 ist. So kann beispielsweise der Nutzer in die ferne Zone 14 gereist sein, um eine Wartung bei einem der Feldgeräte 62 auszuführen und im Zuge dieser Arbeiten Information, beispielsweise Konfigurationsdaten für das einzelne Feldgerät 62, anfordern, die in der lokalen Zone 12 gespeichert sind. Um einen Zugriff auf die Information in dem Prozesssteuerungsnetzwerk der lokalen Zone 12 zu erhalten, kann dem Benutzer durch die Administration des Prozesssteuerungsnetzwerkes der fernen Zone 14 erlaubt werden, verschiedene Anwendungen auszuführen, die auf dem Prozesssteuerungsnetzwerk der fernen Zone 14 ablaufen. Um dem Benutzer eine Übertragung von Nachrichten zu dem Prozesssteuerungsnetzwerk in der lokalen Zone 12 zu erlauben, können es die Anwendungen in der fernen Zone 14 dem Benutzer erlauben, eine Benutzeridentifikation und Authentifikation für Nachrichten einzugeben, die er/sie von der fernen Zone 14 an die lokale Zone 12 übermittelt. Bei einem Empfang an dem Interzonenserver 32 vergleicht das Sicherheitsmodul 86 die Sicherheitsinformationen für den Benutzer in der Nachricht mit Sicherheitsinformationen für den identifizierten Benutzer in der lokalen Zone 12, um festzustellen, ob der Benutzer für die durch die Nachricht verlangte Zugriffsebene berechtigt ist. Wenn der Nutzer und die Nachricht dazu berechtigt sind, überträgt das Kommunikationsmodul 82 die Nachricht auf dem Bus 34 des Prozesssteuerungsnetzwerks 83. Ein Zugriff durch den Benutzer von der lokalen Zone 12 auf das Prozesssteuerungsnetzwerk in der fernen Zone 14 kann durch die Benutzeridentifikation einer Person, mit welcher der Benutzer zusammen arbeitet, einen gewöhnliche Benutzeridentifikationssetup in der fernen Zone 14 zu Benutzung von Benutzern von anderen Zonen, eine ein temporäres Nutzeridentifikationssetup mit beschränkter Autorisierung in der fernen Zone 14, oder anderen Vorgehensweisen ermöglicht werden, wo bei Benutzern von anderen Zonen ein beschränkter Zugriff für Zwecke der Nachrichtenübertragung zu einer für den Benutzer zugriffsberechtigten Zone eingeräumt wird.
-
Wie vorhergehend dargestellt können eine Mehrzahl von Zonen miteinander verbunden sein, wenn es notwendig ist, Softwareaktualisierungen oder -abstufungen in einer Zone, die einen Teil des Prozesssteuerungssystems 10 bildet, durchzuführen, ohne dabei die Software in anderen Teilen des Systems beispielsweise in einer das reguläre Prozesssteuerungsnetzwerk enthaltenden Zone zu verändern. In Fällen, bei denen die lokale Zone und die ferne Zone unter verschiedenen Softwareversionen betrieben werden, kann es notwendig sein, die zwischen den Zonen übermittelten Nachrichten zu konvertieren, um eine Interoperabilität zwischen den Versionen der Software des Prozesssteuerungsnetzwerks sicherzustellen. Für diesen Zweck kann der Interzonenserver 32 weiterhin ein Versionskontrollmodul 88 enthalten, das daraufhin programmiert ist, die Nachrichten zwischen den Zonen zu identifizieren, die zueinander nicht kompatible Softwareversionen aufweisen und jede notwendige Nachrichtenumsetzung auszuführen, so dass die Nachricht von dem empfangenden Gerät verarbeitet werden kann.
-
In einigen Ausführungsformen kann es Vorteilhaft sein, das Versionskontrollmodul 88 des unter einer späteren Softwareversion betriebenen Interzonenservers jede notwendige Konvertierung von Nachrichten ausführen zu lassen. So kann beispielsweise die lokale Zone 12 unter einer späteren Softwareversion als die ferne Zone 14 betrieben werden. Wenn das Kommunikationsmodul 82 eine Nachricht von einem Gerät in der lokalen Zone 12 empfängt, die an ein Gerät in der fernen Zone 14 gerichtet ist, greift das Kommunikationsmodul 82 auf das Versionskontrollmodul 88 zu, um festzustellen, ob für die Nachricht eine Konvertierung in das geeignete Format für die ältere Softwareversion, unter welcher die ferne Zone 14 betrieben wird, erforderlich ist. Falls notwendig, konvertier das Versionskontrollmodul 88 die Nachricht, während das Kommunikationsmodul 82 die konvertierte Nachricht an die ferne Zone 14 überträgt. Wird eine Nachricht von der fernen Zone 14 für ein Gerät in der lokalen Zone 12 empfangen, stellt das kommunikationsmodul 88 fest, ob die Nachricht für eine Verwendung durch das in der lokalen Zone 12 konvertiert werden muss. Je nach der vorliegenden Saftware können die Geräte in der lokalen Zone 12 zur älteren Softwareversion abwärtskompatibel und daher für einen Empfang der Nachrichten aus der fernen Zone 14 ohne Konvertierung durch das Versionskontrollmodul 88 ausgelegt sein. Falls die Software zur älteren Version nicht abwärtskompatibel ist, führt das Versionskontrollmodul 88 die notwendige Konvertierung aus und das Kommunikationsmodul 82 überträg die konvertierte Nachricht über den Bus 34 an das Gerät in der lokalen Zone 12. Es ist verständlich, dass einige oder alle der Funktionen zur Versionskontrolle in dem Versionskontrollmodul 88 der unter der alten Softwareversion betriebenen fernen Zone vereinigt sein können, die wobei das Versionskontrollmodul 88 ohne eine Softwareaktualisierung der Funktionsabschnitte des Prozesssteuerungsnetzwerkes der fernen Zone 14 aktualisiert werden kann.
-
In dem Verfahren und der Vorrichtung der hier gezeigten Erfindung entsprechenden Ausführungsformen miteinander verbundener Zonen kann es erforderlich sein, Alarm- und Ereignisnachrichten zwischen den Zonen zu übergeben. So können beispielsweise das Bedienpersonal oder das Prozesssteuerungsnetzwerk der lokalen Zone 12 dazu in der Lage sein, aus der fernen Zonen 14, 66 und 68 ausgesendete Alarme zu verarbeiten. Weiterhin können sich in den fernen Zonen 14, 66 und 68 ereignende Alarme und Ereignisse eine Antwort innerhalb der lokalen Zone 12, entweder automatisch durch das Prozesssteuerungsnetzwerk oder manuell durch das Bedienpersonal anfordern. Der selbe Alarmtyp kann somit verschiedene Antworten in verschiedenen Zonen hervorrufen. Daher muss eine Alarm- oder Ereignisnachricht aus einer fernen Zone eine zweckmäßige Antwort in der lokalen Zone 12, beispielsweise eine Anzeige von geeigneten Worte, Signaltönen, Signalalarmanzeigen erzeugen, die unter einer gegebenen Einstellung einer Alarmpriorität von einen vergleichbaren Typ einer innerhalb der lokalen Zone 12 auftretenden Alarm- oder Ereignisnachricht provoziert werden.
-
Um Alarm- und Ereignisnachrichten zu übertragen, sind die Geräte in der fernen Zone daraufhin ausgeführt, im Nachrichten an die Geräte der lokalen Zone 12 in der oben dargestellten Weise übertragen. Alarm- oder Ereignisnachrichten von den Geräten in der fernen Zone werden zwischen der fernen Zone und der fokalen Zone 12 über deren entsprechende Interzonenserver an das lokale Zonengerät übertragen, das beispielsweise eine Operatorworkstation oder eine andere Nutzerschnittstelle sein kann. Eine andere Möglichkeit zum Hervorrufen einer Reaktion in der lokalen Zone durch die Alarm- oder Ereignisnachricht aus der fernen Zone ergibt sich dadurch, indem eine einheitliche Alarm- oder Ereignisprioritätsstrategie vorgesehen ist, bei der alle Zonen durch den selben Code mit vergleichbaren in dem Prozesssteuerungssystem 10 auftretenden Alarmtypen oder Ereignissen gekennzeichnet sind. Die Codierungsstrategie kann beispielsweise ein numerischer und im gesamten Prozesssteuerungssystem 12 verwendeter Prioritätse benencode sein. Bei Verwendung des einheitlichen und durchgehenden Codierungssystems kann jede Zone eine eindeutige Alarmprioritätskonfiguration für die Darstellung und Hinweise von Alarmen und Ereignissen enthalten. Wenn der Alarm oder das Ereignis in der fernen Zone auftritt, enthält die Alarm- oder Ereignisnachricht den Standardcode für den aufgetretenen Alarmtyp oder das aufgetretene Ereignis. Wenn die Nachricht an dem Gerät in der lokalen Zone empfangen wird, ruft der Standartalarm- oder Ereigniscode an dem Gerät eine Reaktion der Alarmprioritätskonfiguration der lokalen Zone 12 hervor.
-
Die Interzonenalarm- oder Ereignisnachrichten können auch von einem Alarm/Ereignismodul 90 des Interzonenservers 32 verarbeitet werden. Das Alarm/Ereignismodul 90 kann die Alarmprioritätskonfiguration für die lokale Zone 12 bereitstellen und die zweckmäßig zu erzugende Antwort in der lokalen Zone auf der Basis des Alarmprioritätscodes in der Nachricht erzeugen. Alternativ dazu kann jede Zone eine eindeutige Einstellung für Alarmprioritäten mit eindeutigen Alarm- und Ereignisnachrichten und mit einem in jeder Zone vorhandenen Alarm/Ereignismodul 90 enthalten, dass eine Tabelle mit Kreuzverweisen für Alarm- oder Ereignisnachrichten oder Konvertierungen enthält, die Informationen für eine Konvertierung von Alarm- und Ereignisnachrichten aus fernen Zonen in zu der Alarmprioritätskonfiguration der lokalen Zone passende Alarm- und Ereignisnachrichten speichert.
-
Wenn es notwendig ist können verschiedene Zonen verschiedene Sprachen verwenden, was beispielsweise für Europa nützlich sein kann, wo Unternehmen Regionen überdecken, die mehrere verschiedene Sprachen verwenden. In diesem Fall können durch die Zonen spezifische Werte als numerische Werte oder als logische Zeichenketten von Daten (beispielsweise als ein Wort) geschickt werden, welche in Verbindung mit einem numerischer und im gesamten Prozesssteuerungssystem für das selbe Wort oder die selbe Phrase in verschiedenen Sprachen geltenden Wert angezeigt werden. Auf diese Weise kann ein Benutzer den spezifischen Wert, den Befehl und so weiter an Hand der damit zusammenhängenden Nummer identifizieren, wodurch die Umwandlung von einer Sprache zur anderen erleichtert wird. In jedem Fall erfordert ein Durchsuchen einer unterschiedliche Sprachen verwendenden Datenbank, dass der jeweils geeignete Schriftsatz in der Suchmaschine oder der Zone installiert ist. In einer Ausführungsform sind die Interzonenverweise in der Sprache der fernen Zone ausgeführt, wobei im gesamten System ausschließlich Zeichenketten im Unicode-Format verwendet werden, um eine Unicode-gestützte Feststellung oder Konvertierung jedes Zeichens in jeder Sprache auszuführen. In diesem Fall enthält der Interzonenserver 32 ein Sprachmodul 9 mit einer Datenbank, die eine Speicherung in Zeichenketten in verschiedenen Sprachen ausführt, wobei die exportierten Dateien der Datenbank in einem Unicode-Format ausgetauscht werden. Es werden somit Dateien von verschiedenen Standorten in jede Datenbank unter Verwendung des Unicode-Formats importiert.
-
Prozesssteuerungsnetzwerke enthalten typischerweise Möglichkeiten für eine Verwaltung von Anzeigen, die es im Verwalter des Netzwerkes erlauben, Anzeigen zu erzeugen, um Parameter des Prozesssteuerungsnetzwerkes an den Benutzerschnittstellen einzusehen. Die Anzeigen werden an der Benutzerschnittstelle durch eine bedienende Person erzeugt und in einem bekannten Verzeichnis des Dateisystems für Suchoperationen durch eine ausführende Person zu einem späteren Zeitpunkt gespeichert. In dem aus einer Vielzahl miteinander verbundener Prozesssteuerungsnetzwerke bestehenden Prozesssteuerungssystem kann es erforderlich sein, die in einer Zone erzeugten Anzeigen für einer Verwendung in anderen Zonen verfügbar zu machen, Parameter und möglicherweise Einzelanzeigen zu erzeugen, die Parameter aus einer Vielzahl von Zonen enthalten.
-
Um verwendbare Anzeigen anderer Zonen zu erzeugen, kann die Benutzerschnittstelle 28 der lokalen Zone 12 auf eine Routine zur Anzeigeverwaltung zugreifen, die es einer Bedienperson ermöglicht, eine Anzeige zum Betrachten von Parametern des Prozesssteuerungsnetzwerkes in der lokalen Zone 12 zu erzeugen. Einmal erzeugt, kann die Anzeigeverwaltungsroutine erzeugte Anzeigen für eine zukünftige Verwendung in einem bekannten Verzeichnis des Dateisystems der lokalen Zone speichern. Wenn die Anzeige für eine Verfügbarkeit in den fernen und mit der lokalen Zone 12 kommunizierenden Zonen vorgesehen ist, kann die Anzeigeverwaltungsroutine die Anzeige mit dem Zonennamen oder einer anderen Information zur Zonenidentifikation in der Pfadinformation für die Anzeigeparameter speichern, so dass Parameterwerte abfragende Nachrichten vor fernen Zonen zur lokalen Zone 12 umgeleitet werden können. Die gemeinsam genutzten Anzeigen werden, einmal erstellt, über den Bus 34 zu dem Interzonenserver 32 zur Offenlegung an die fernen mit der lokalen Zone 12 kommunizierenden Zonen übertragen.
-
Wenn die gemeinsam genutzten Anzeigen an dem Interzonenserver 32 empfangen werden, ordnet ein Anzeigemodul 94 die gemeinsam genutzten Anzeigen den fernen, mit der lokalen Zone 12 kommunizierenden Zonen zu. Nach dem Empfangen der gemeinsam genutzten Anzeigen kann das Anzeigemodul 94 die Konfiguration der lokalen Zone 12 dazu werwenden, um festzustellen, welche ferne Zonen mit der lokalen Zone 12 kommunizieren. Nach dieser Feststellung veranlasst das Anzeigemodul 94 das Kommunikationsmodul 82 zu einem Übertragen der Nachrichten an die Interzonenserver der identifizierten fernen Zonen. Das Anzeigemodul 94 kann ebenfalls eine Kopie der gemeinsam genutzten Anzeigen in einer Datenbank der offengelegten Anzeigen im Vergleich zu veränderten Anzeigen zurückbehalten. Diese können zu einem Feststellen und zu einem Übertragen von Nachrichten an die fernen Zonen genutzt werden, die angeben, dass Veränderungen gegenüber vorhergehenden offengelegten Anzeigen erfolgt sind.
-
Die Datenbank der offengelegten Anzeigen kann ebenso ein wiederholtes Anzeigen bereits bestehender gemeinsam genutzter Anzeigen an fernen Zonen ermöglichen, für die Datenübertragungen nach einer ersten Offenlegung der Anzeigen aufgebaut wurden. Alternativ dazu kann die Routine zur Anzeigeverwaltung so ausgeführt sein, dass gegenüber existierenden gemeinsam genutzten Anzeigen veränderte Nachrichten übertragen werden, wobei das Anzeigemodul 34 die Änderungsnachrichten an die fernen Zonen weiterleitet.
-
Wenn die offengelegten Anzeigen an den fernen Zonen empfangen werden, übertragen die Anzeigemodule 94 der Interzonenserver die Anzeigenachrichten zu Geräten und Anwendungen des Prozesssteuerungsnetzwerks der fernen Zone, die für einen laufenden Empfang offenzulegender Anzeigen vorgesehen sind. Das Anzeigemodul 94 kann eine Liste der dafür vorgesehenen Geräte und Anwendungen speichern bzw. alternativ dazu einen Zugriff auf eine Konfigurationsdatenbank der fernen Zone ausführen, um die dafür vorgesehenen Geräte und Anwendungen zu identifizieren. Das Anzeigemodul 94 veranlasst das Kommunikationsmodul 82, die offenzulegenden Anzeigen über den Bus des Prozesssteuerungsnetzwerks an die vorgemerkten Geräte und Anwendungen zu übertragen, wobei diese die offengelegten Anzeigen in einem Verzeichnis eines Dateisystems zusammen mit anderen lokalen und offengelegten Anzeigen speichern.
-
Nach dem Speichern können die Routinen zur Anzeigeverwaltung in den fernen Zonen die offengelegten Anzeigen an Nutzerschnittstellen in den fernen Zonen abfragen und darstellen. Die Routine zur Anzeigeverwaltung benutzt die die Identifikationsinformation der lokalen Zone enthaltende Weiterleitungsinformation über die Zone, in welcher die Parameter lokalisiert sind, um Werte für die abfragenden Nachrichten der dargestellten Parameter zu formatieren und zu übertragen. Weiterhin kann zusätzlich zur Darstellung der offengelegten Anzeigen die Routine zur Anzeigeverwaltung auch dazu verwendet werden, um die offengelegte Anzeige mit lokalen Anzeigen und anderen offengelegten Anzeigen innerhalb einer einzigen Informationsanzeige des Prozesssteuerungssystems oder eines relevanten Teils des Prozesssteuerungssystems zu kombinieren. Durch die Darstellung von Anzeigen zwischen den Zonen des Prozesssteuerungssystems kann der Konfigurationsaufwand minimiert werden, wenn Anwender Anzeigen, die ursprünglich zur Darstellung von Parametern in einer Zone erstellt worden sind, auf einer Workstation einer zweiten Zone darstellen wollen.
-
Typischerweise werden innerhalb existierender Konfigurationsanwendungen Suchdienste für ein Durchsuchen der dem Prozesssteuerungssystem zugeordneten Konfigurationsdatenbank und ein Auffinden einzelner Bestandteile der Konfigurationsdaten bereitgestellt. Suchdienste werden dazu benutzt, um Zuordnungen für gemeinsam genutzte Objekte und Interzonenverweise zu erstellen. Browser oder Pfadsuchanwendungen (sniffing applications) können in jeder Konfigurationsdatenbank vorgesehen sein, um beispielsweise der Datenbank 30 der lokalen Zone 12 ein Durchsuchen der Datenbank 54 der fernen Zone 14 oder anderen Datenbanken ein Auffinden des Ortes jedes einzelnen Bestandteils der Konfigurationsdaten innerhalb des verteilten Konfigurationssystems des Prozesssteuerungssystems 10 zu ermöglichen. Insbesondere wird die Suchinformation von einem fernen Server über eine Benutzerabfrage abgefragt und lokal zwischengespeichert. Suchursprünge (browse roots) können durch ein Absuchen (sniffing) des Netzwerkes oder unter Verwendung jeder anderen erforderlichen oder bekannten Suchtechnik ermittelt werden. Die Kenntnis über ermittelte oder voreingestellte Suchursprünge kann von Dauer sein und somit während eines Arbeitsablaufs in einem Cache-Speicher zwischengespeichert bleiben. Vorhandene Ursprünge über Konfigurationsobjekte ermöglichen es einem Anwender, Suchvorgänge zu anderen mit den Ursprüngen verknüpften Information auszuführen, um innerhalb der verteilten Hierarchie der Konfiguration des Prozesssteuerungssystems 10 den Ort oder den Pfad zu dieser Information zu ermitteln.
-
Die Suche nach Interzonenparametern kann unter den Zonen ausgeführt werden, die vorab für eine Interzonenkommunikationen ausgelegt sind. Die existierenden Suchdienste für Parameter können erweitert werden, um es einem Anwender zu ermöglichen, eine andere Zone mittels des Zonennamens auszuwählen. Die Namen der fernen Zonen können am Ort des Suchdienstes zwischengespeichert für den Interzonenserver der Zone zugriffsfähig sein. Ist die ferne Zone oder sind die fernen Zonen ausgewählt, erfolgt die Suche des Nutzers nach Parametern innerhalb der fernen Zone nach dem selben Verfahren wie die Suche in der lokalen Zone. Der resultierende, durch die Suchsequenz erzeugte Pfad wird jedoch an die Konfigurationsdatenbank der fernen Zone und Suchnachrichten werden über die Interzonenserver der fernen Zone geleitet.
-
Andere Anwendungen, die in den Prozesssteuerungsnetzwerken enthalten sind, weisen eine über die verbundenen Zonen in einem Prozesssteuerungssystem reichende Verwendbarkeit auf. Das betrifft zum Beispiel Anwendungen zu einer Zustandsüberwachung, etwa zur Überwachung eines Regelkreises, von Geräten und Anwendungen zur Überwachung von Ausrüstungen, die automatisch die zu verschiedenen Funktionsblöcke der Geräte und Regelkreise innerhalb des Prozesssteuerungsnetzwerkes gehörende Daten sammeln und speichern. Ein Beispiel einer Anwendung zur Zustandüberwachung ist im
US-Patent Nummer 6,298,454 mit dem Titel „Diagnostics in a Process Control system” beschrieben, veröffentlicht am 02. Oktober 2001, das von dem Anmelder der hier beschriebenen Erfindung beansprucht wird und hiermit ausdrücklich als Verweis eingeschlossen werden soll. Die Diagnosewerkzeuge verarbeiten die Daten, um zu ermitteln, welche Funktionsblöcke, Geräte oder Regelkreise zu einer reduzierten Leistungsfähigkeit des Prozesssteuerungssystem führende Probleme aufweisen, die und legen dann die Verwendung von anderen spezifischeren Diagnosewerkzeugen nahe, um das Problem eingehender zu analysieren und zu beseitigen.
-
In Prozesssteuerungssystemen, die miteinander verbundene Zonen aufweisen, können Prozesssteuerungskreise für in getrennten Zonen lokalisierte Geräte vorgesehen sein. Weiterhin können Bedienpersonen in einer Zone die Kontrolle oder Verantwortung über einen in einer fernen Zone lokalisierten Regelkreis, Geräte oder Ausrüstungen tragen. In diesen Situationen können die Anwendungen zur Zustandsüberwachung, wie beispielsweise das Diagnosewerkzeug, angefordert werden, um Daten aus den fernen Zonen zu gewinnen. In diesen Beispielen können die Zustandüberwachungsanwendungen so eingestellt sein, um Überwachungs- und Diagnoseroutinen mit die Zonen, in welchen die überwachten Parameter lokalisiert sind, betreffenden Informationen aufzubauen. Bei einem in dieser Weise erfolgten Aufbau können die Überwachungs- und Diagnoseroutinen Informationen von den fernen Zonen durch ein Erstellen von Anfragenachrichten mit der Standortinformation für die fernen Zonen sammeln, so dass die Nachrichten durch die Interzonenserver zu den entsprechenden Zonen geleitet werden.
-
Es ist verständlich, dass die die hier beschriebenen und durch den Server und die Clients erzeugten und ausgeführten Objekte sowie andere Elemente und Schritte unter Verwendung jedes gewünschten Verfahrens zur Programmierung oder jeder gewünschten Sprache verwirklicht werden können, dass diese Programme in Speichern abgespeichert und auf Prozessoren jeder Art innerhalb der Clients, der Server und der hier beschriebenen Datenbanken ausgeführt werden. Obwohl die hier beschriebene Datenzugriffstechnik vorzugsweise in Form von Software verwirklicht ist, kann diese auch durch Hardware, Firmware und so weiter ausgeführt sein und durch jeden dem Prozesssteuerungssystem zugeordneten Prozessor verwirklicht sein. Das Verfahren kann beispielsweise mit einer Standard-Mehrzweck-CPU oder, falls erforderlich, in speziell dafür ausgeführter Hardware oder Firmware verwirklicht werden. Bei einer Ausbildung als Software können die Softwareroutinen in jedem computerlesbaren Speicher, beispielsweise einer Diskette, einer Laserdisc, einer optischen Diskette oder einem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors und so weiter gespeichert sein. Ebenso kann diese Software an einen Anwender oder ein Prozesssteuerungssystem über jede bekannte oder erforderliche Übertragungsmethode, einschließlich beispielsweise einer computerlesbaren Diskette oder einer anderen transportierbaren Computer-Speichereinrichtung oder über einen Kommunikationskanal, beispielsweise eine Telefonverbindung, das Internet und so weiter (was mit der Bereitstellung einer solchen Software über ein transportierbares Speichermedium vergleichbar oder austauschbar ist) zur Verfügung gestellt werden.
-
Obwohl daher die hier dargestellte Erfindung unter Bezugnahme auf spezifische, nur illustrativen Charakter tragende und die Erfindung nicht einschränkende Beispiele beschrieben wurde, ist es für den Fachmann nachvollziehbar, dass Veränderungen, Hinzufügungen oder Weglassungen an den beschriebenen Ausführungsformen möglich können, ohne sich vom Wesen und der Sichtweise der Erfindung zu entfernen.