DE102004038807A1 - Sicherheit für Objekte in einem Konfigurationssystem für Prozessanlagen - Google Patents

Sicherheit für Objekte in einem Konfigurationssystem für Prozessanlagen Download PDF

Info

Publication number
DE102004038807A1
DE102004038807A1 DE102004038807A DE102004038807A DE102004038807A1 DE 102004038807 A1 DE102004038807 A1 DE 102004038807A1 DE 102004038807 A DE102004038807 A DE 102004038807A DE 102004038807 A DE102004038807 A DE 102004038807A DE 102004038807 A1 DE102004038807 A1 DE 102004038807A1
Authority
DE
Germany
Prior art keywords
access
objects
process plant
data
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102004038807A
Other languages
English (en)
Inventor
Michael J. Leire Lutterworth Lucas
Jian Austin Li
Arthur Taguig City Webb
Dennis L. Round Rock Stevenson
Mark J. Round Rock Nixon
Michael G. Austin Ott
Larry O. Round Rock Jundt
Herschel O. San Marcos Koska
Robert B. Elgin Havekost
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=33030326&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE102004038807(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of DE102004038807A1 publication Critical patent/DE102004038807A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/0405Programme-control specially adapted for machine tool control and not otherwise provided for
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4188Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by CIM planning or realisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23109Configuration of display device, operator panel
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23258GUI graphical user interface, icon, function bloc editor, labview
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23261Use control template library
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25428Field device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32154Object, attribute for geometry, technology, function oop
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Storage Device Security (AREA)
  • General Factory Administration (AREA)

Abstract

Ein Konfigurierungssystem nutzt Prozessanlagenelemente, die Entitäten in einer Prozessanlage repräsentieren können oder fähig sind, solche zu repräsentieren, um Unterstützung beim Konfigurieren, Organisieren und Ändern der Steuerungs- und Displayaktivitäten innerhalb der Prozessanlage zu leisten. Der Zugriff auf die Elemente kann durch die Zuordnung von zugriffskontrolldaten zu den Elementen gesteuert werden. Das Konfigurierungssystem kann auch Objekte verwenden, die einen oder mehrere Schritte repräsentieren oder repräsentieren können, die von Entitäten in der Prozessanlage ausgeführt werden sollen. Der Zugriff auf diese Objekte kann durch die Zuordnung von Zugriffskontrolldaten zu den Objekten gesteuert werden. Die Zugriffskontrolldaten können angeben, ob es Nutzern oder bestimmten Nutzern möglich sein soll, beispielsweise alle oder einige der mit den Prozessanlagenelementen oder den Objekten verbundenen Daten einzusehen oder zu ändern. Die Prozessanlagenelemente können z. B. Modulklassenobjekte umfassen, die generisch Prozessentitäten der Prozessanlage repräsentieren können, Modulobjekte, die spezifische Prozessentitäten der Prozessanlage repräsentieren können, sowie Composite-Templates, Modultemplates etc. Zu den Objekten, die einen oder mehrere Schritte repräsentieren oder repräsentieren können, die von Entitäten in der Prozessanlage ausgeführt werden sollen, können beispielsweise Phasenklassen oder Einheitenphasen gehören.

Description

  • Die vorliegende Anmeldung ist eine Teilfortführungsanmeldung der am 18. Februar 2003 eingereichten US-Patentanmeldung Nr. 10/368,151 mit dem Titel "MODULE CLASS OBJECTS IN A PROCESS PLANT CONFIGURATION SYSTEM", die hiermit ausdrücklich durch Bezugnahme für alle Zwecke vollständig in diese Anmeldung einbezogen wird.
  • Die vorliegende Anmeldung steht im Zusammenhang mit der gleichzeitig anhängigen US-Patentanmeldung Nr.............. (Anwaltsregister Nr. 06005/40129) mit dem Titel "VERSION CONTROL FOR OBJECTS IN A PROCESS PLANT CONFIGURATION SYSTEM", die am gleichen Tag wie die vorliegende Anmeldung eingereicht wurde und hiermit ausdrücklich durch Bezugnahme für alle Zwecke vollständig in diese Anmeldung einbezogen wird.
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich allgemein auf Prozessanlagen und im Besonderen auf die Sicherheit im Zusammenhang mit der Konfigurierung einer Prozessanlage und der Einsichtnahme in den Betrieb der Prozessanlage.
  • Hintergrund
  • Verteilte Prozesssteuerungssysteme, wie sie in der chemischen Industrie, der Petrochemie und anderen Prozessen eingesetzt werden, umfassen typischerweise ein oder mehrere, über analoge, digitale oder kombinierte analog/digitale Busse kommunikativ mit einer oder mehreren Feldvorrichtungen verbundene Prozesssteuerungsgeräte. Die Feldvorrichtungen, bei denen es sich beispielsweise um Ventile, Ventilsteller, Schalter und Messwertgeber (z.B. Temperatur-, Druck-, Pegel- und Durchflusssensoren) handeln kann, sind in der Prozessumgebung angeordnet und führen Prozessfunktionen aus, wie Öffnen und Schließen von Ventilen, Messen von Prozessparametern etc. Intelligente Feldvorrichtungen, wie die Feldvorrichtungen, die dem bekannten Fieldbusprotokoll entsprechen, können auch Steuerungsberechnungen, Alarmfunktionen und sonstige Steuerungsfunktionen ausführen, die gewöhnlich im Steuerungsgerät implementiert werden. Die Prozesssteuerungsgeräte, die ebenfalls typischerweise in der Anlagenumgebung angeordnet sind, empfangen Signale entsprechend den Prozessmessungen, die von den Feldvorrichtungen vorgenommen wurden, und/oder andere, den Feldvorrichtungen zugehörige Informationen und führen eine Steuerungsapplikation aus, die beispielsweise verschiedene Steuerungsmodule betreibt, die Entscheidungen für die Prozesssteuerung treffen, Steuersignale auf Basis der empfangenen Information erzeugen und mit den Steuerungsmodulen oder -blöcken koordinieren, die in den Feldvorrichtungen, z.B. den HART- und Fieldbusfeldvorrichtungen, ausgeführt werden. Die Steuerungsmodule im Steuerungsgerät senden die Steuersignale über die Kommunikationsleitungen an die Feldvorrichtungen, um so den Betrieb der Prozessanlage zu steuern.
  • Information von den Feldvorrichtungen und dem Steuerungsgerät wird gewöhnlich über einen Datenhighway einer oder mehreren anderen Hardware-Vorrichtungen zur Verfügung gestellt, wie Bediener-Workstations, Personal Computern, der Datenhistorie, Reportgeneratoren, zentralisierten Datenbanken etc., die typischerweise in Steuerungszentralen oder anderen Standorten außerhalb der rauen Anlagenumgebung untergebracht sind. Diese Hardware-Vorrichtungen führen Applikationen aus, die beispielsweise einem Bediener die Ausführung prozessbezogener Funktionen ermöglichen, wie die Änderung von Einstellungen der Prozesssteuerungsroutine, die Änderung des Betriebs der Steuerungsmodule innerhalb der Steuerungsgeräte oder Feldvorrichtungen, die Anzeige des gegenwärtigen Prozesszustands, die Anzeige von durch Feldvorrichtungen und Steuerungsgeräte erzeugten Alarmen, die Simulation des Prozessbetriebs zum Zwecke der Personalschulung oder das Testen der Prozesssteuerungssoftware, die Führung und Aktualisierung einer Konfigurationsdatenbank etc.
  • Das beispielsweise von Fisher Rosemount Systems, Inc. vertriebene DeltaVTM-Steuerungssystem umfasst zahlreiche gespeicherte und von verschiedenen, an den diversen Standorten innerhalb einer Prozessanlage angeordneten Vorrichtungen ausgeführte Applikationen. Mit einer Konfigurierungsapplikation, die in einer oder mehreren Bediener-Workstations residiert, können Nutzer Prozesssteuerungsmodule erzeugen oder ändern und diese über einen Datenhighway in zweckgebundene verteilte Steuerungsgeräte herunterladen. Diese Steuerungsmodule bestehen typischerweise aus kommunikativ miteinander verbundenen Funktionsblöcken, die Objekte in einem objektorientierten Programmprotokoll sind und auf Basis von Eingaben Funktionen innerhalb des Steuerungsschemas ausführen und Ausgaben zu anderen Funktionsblöcken innerhalb des Steuerungsschemas bereitstellen. Die Konfigurierungsapplikation kann einem Konfigurierer auch die Möglichkeit geben, Bedienerschnittstellen zu erzeugen oder zu ändern, die von einer Anzeigeapplikation genutzt werden, um einem Bediener Daten anzuzeigen, so dass er innerhalb der Prozesssteuerungsroutinen Einstellungen wie z.B. Sollwerte ändern kann. Jedes zweckgebundene Steuerungsgerät sowie in manchen Fällen Feldvorrichtungen speichern und führen eine Steuerungsapplikation aus, die die diesen zugeordneten und in diese heruntergeladenen Steuerungsmodule betreibt, um die aktuellen Prozesssteuerungsfunktionalität zu implementieren. Die Anzeigeapplikationen, die in einer oder mehreren Bediener-Workstations ausgeführt werden können, empfangen Daten von der Steuerungsapplikation über den Datenhighway und zeigen diese Daten den Konfiguierern, Bedienern oder Nutzern des Prozesssteuerungssystems an, die über die Nutzerschnittstellen zugreifen, und können eine Vielzahl von verschiedenen Anzeigen bereitstellen, wie z.B. Anzeigen für Bediener, Ingenieure, Techniker etc. Eine Datenhistorieapplikation wird typischerweise in einer Datenhistorie gespeichert und von dieser ausgeführt, die einige oder alle der über den Datenhighway bereitgestellten Daten erfasst und speichert, während eine Applikation der Konfigurationsdatenbank in einem weiteren Computer ausgeführt werden kann, der mit dem Datenhighway verbunden ist, um die jeweils aktuelle Konfiguration der Prozesssteuerungsroutine und die dazugehörigen Daten zu speichern. Alternativ kann die Konfigurationsdatenbank in der gleichen Workstation gespeichert sein wie die Konfigurierungsapplikation.
  • Gegenwärtig können Konfigurierungsapplikationen eine Bibliothek von Objekttemplates bzw. Templateobjekten umfassen, wie beispielsweise Funktionsblockobjekttemplates bzw. Funktionsblocktemplateobjekte und in einigen Fällen Steuerungsmodulobjekttemplates bzw. Steuerungsmodultemplateobjekte. Diese Konfigurierungsapplikationen werden genutzt, um eine Steuerungsstrategie für eine Prozessanlage zu konfigurieren. Alle Objekttemplates haben vorgegebene Eigenschaften, Einstellungen und Methoden, und der Ingenieur, der die Konfigurierungsapplikation anwendet, kann diese Objekttemplates auswählen und wie erforderlich Kopien der ausgewählten Objekttemplates in einem Konfigurationsbildschirm anordnen, um ein Steuerungsmodul zu entwickeln. Während der Auswahl und Anordnung der Objekttemplates im Konfigurationsbildschirm verbindet der Ingenieur die Eingänge und Ausgänge dieser Objekte miteinander und ändert ihre Parameter, Namen, Tags und anderen Eigenschaften, um ein spezifisches Steuerungsmodul für eine bestimmte Verwendung in der Prozessanlage zu erzeugen. Nach Erzeugung eines oder mehrerer derartiger Steuerungsmodule kann der Ingenieur das Steuerungsmodul dann instantiieren und es in das oder die dafür vorgesehene(n) Steuerungsgeräte) bzw. die Feldvorrichtungen zur Ausführung während des Betriebs der Prozessanlage herunterladen.
  • Anschließend erstellt der Ingenieur im Allgemeinen ein oder mehrere Displays für Bediener, Wartungspersonal etc. innerhalb der Prozessanlage, indem er in einer Applikation zur Erzeugung von Bildschirmausgaben Displayobjekte auswählt und erstellt. Diese Bildschirmausgaben werden typischerweise auf systemweiter Basis in einer oder mehreren der Workstations implementiert und stellen vorkonfigurierte Bildschirmausgaben für den Bediener oder das Wartungspersonal bezüglich des Betriebszustands des Steuerungssystems oder der Vorrichtungen innerhalb der Anlage bereit. Diese Bildschirmausgaben haben typischerweise die Form von Alarmdisplays, die von Steuerungsgeräten oder Vorrichtungen innerhalb der Prozessanlage erzeugte Alarme empfangen und anzeigen, von Steuerungsdisplays, die den Betriebszustand der Steuerungsgeräte und anderer Vorrichtungen innerhalb der Prozessanlage anzeigen, von Wartungsdisplays, die den Funktionszustand der Vorrichtungen innerhalb der Prozessanlage anzeigen, etc. Diese Bildschirmausgaben sind im Allgemeinen vorkonfiguriert, um auf bekannte Weise von den Prozesssteuerungsmodulen oder den Vorrichtungen innerhalb der Prozessanlage empfangene Information oder Daten anzuzeigen. In einigen bekannten Systemen werden Bildschirmausgaben mit Hilfe von Objekten erzeugt, die eine mit einem physikalischen oder logischen Element verbundene Grafik besitzen und kommunikativ mit dem physikalischen oder logischen Element verbunden sind, um Daten bezüglich des physikalischen oder logischen Elements zu empfangen. Das Objekt kann die Grafik auf dem Anzeigebildschirm auf Basis der empfangenen Daten ändern, beispielsweise um den halbvollen Zustand eines Behälters oder den von einem Durchflusssensor gemessenen Durchsatz etc. anzuzeigen.
  • Ähnlich wie die Applikation zur Steuerungskonfigurierung hat eine Applikation zur Erzeugung von Bildschirmausgaben graphische Anzeigeelementtemplates, wie z.B. Behälter, Ventile, Sensoren, Bedienelemente wie Schieberegler, Ein-/Ausschalter etc., die in jeder gewünschten Konfiguration auf einem Bildschirm angeordnet werden können, um eine Bildschirmausgabe für Bediener, Wartungspersonal o.ä. zu erzeugen. Bei ihrer Anordnung auf dem Bildschirm können einzelne Grafikelemente auf dem Bildschirm so miteinander verbunden werden, dass sie für die Nutzer Informationen oder Bildschirmausgaben der internen Abläufe der Prozessanlage bereitstellen. Um die graphische Bildschirmausgabe zu animieren, muss der Erzeuger der Bildschirmausgabe jedoch jedes Grafikelement von Hand mit den innerhalb der Prozessanlage erzeugten Daten verknüpfen, wie z.B. mit von den Sensoren gemessenen oder mit den Ventilstellungen anzeigenden Daten etc., und zwar durch die Vorgabe eines Kommunikationslinks zwischen dem Grafikelement und der relevanten Datenquelle innerhalb der Prozessanlage. Dieser Prozess ist langwierig, zeitraubend und ggf. fehlerträchtig.
  • Obwohl die Steuerungsobjekttemplates der Applikation zur Steuerungskonfigurierung und die Anzeigeelemente der Applikation zur Erzeugung von Bildschirmausgaben zweckmäßig sind, da sie kopiert und genutzt werden können, um viele verschiedene Steuerungsmodule und graphische Displays zu erzeugen, besteht häufig die Notwendigkeit, zahlreiche gleiche Steuerungsmodule und graphische Displays für verschiedene Ausrüstungskomponenten innerhalb der Prozessanlage zu erzeugen. So gibt es beispielsweise in vielen mittleren bis großen Prozessanlagen zahlreiche Instanzen gleicher oder ähnlicher Ausrüstungskomponenten, die unter Verwendung des gleichen allgemeinen Grundsteuerungsmoduls und -displays gesteuert und angezeigt werden können. Zur Erzeugung dieser zahlreichen Steuerungsmodule und Displays wird jedoch ein allgemeines Steuerungsmodul oder Displaymodul erzeugt, das dann für jede dieser verschiedenen Ausrüstungskomponenten kopiert wird, auf die es anwendbar ist. Nach Erstellung der Kopie muss selbstverständlich jedes der neuen Steuerungs- oder Displaymodule von Hand in der Konfigurierungsapplikation geändert werden, um die besondere Ausrüstungskomponente vorzugeben, der es zugeordnet ist, und alle diese Steuerungs- und Displaymodule müssen dann instantiiert und in das Prozesssteuerungssystem heruntergeladen werden.
  • Leider sind die vorbeschriebenen Steuerungsmodule und Displayelemente in keiner Weise modular strukturiert, so dass nach Erstellung der Kopien jedes Steuerungsmodul und jede Bildschirmausgabe unter Verwendung der entsprechenden Konfigurierungsapplikation einzeln und von Hand geändert werden muss, um die Ausrüstungskomponente innerhalb der Anlage vorzugeben, der sie zugeordnet werden müssen. In einer Anlage mit zahlreichen Exemplaren des gleichen Ausrüstungstyps (d.h. replizierte Ausrüstungskomponenten) ist dieses Verfahren langwierig, zeitraubend und anfällig für vom Bediener verursachte Fehler. Außerdem haben diese verschiedenen Steuerungsmodule und Bildschirmausgaben nach ihrer Programmierung keine Kenntnis vom Vorhandensein der jeweils anderen Module und Elemente. Um also die Steuerungsmodule nach ihrer Erzeugung zu ändern, muss der Ingenieur oder Bediener von Hand die gleiche Änderung an jedem der verschiedenen Steuerungsmodule für die unterschiedlichen, mehrfach vorhandenen Ausrüstungskomponenten vornehmen, was ebenfalls zeitintensiv und langwierig ist. Das gleiche Problem tritt bei den graphischen Darstellungen auf, die für die verschiedenen Sätze mehrfach vorhandener Ausrüstungskomponenten innerhalb der Anlage erstellt wurden. Anders gesagt, wurde ein spezifisches Steuerungsmodul oder eine spezifische graphische Darstellung einmal erzeugt (individuell oder durch das Kopieren eines Objekttemplates) und dann mit einem bestimmten Satz von Ausrüstungskomponenten innerhalb der Anlage verknüpft, so existiert dieses Steuerungsmodul bzw. diese graphische Darstellung als eine eigene Entität oder ein eigenes Objekt innerhalb des Systems, ohne automatisch Kenntnis von der Existenz anderer gleicher oder ähnlicher Steuerungsmodule oder graphischer Darstellungen zu haben. Änderungen, die für jedes einzelne Steuerungsmodul und jede graphische Darstellung eines bestimmten Typs gelten, müssen daher einzeln an diesen Modulen und graphischen Darstellungen vorgenommen werden.
  • Da außerdem jedes Steuerungsmodul und jedes Display ein individulelles Objekt ist, muss es in dem Sinn offen sein, dass alle internen Parameter, Darstellungen, Funktionsblöcke und andere Elemente für jeden Nutzer für Änderungen, Einsicht etc. verfügbar sind. Derzeit existiert kein Verfahren, um zu steuern, was bestimmte Bediener oder andere Nutzer in den Steuerungsmodulen und Displays einsehen können bzw. worauf sie Zugriff haben, so dass keine Möglichkeit besteht, bestimmte Elemente der Steuerungsmodule und Displays, wie z.B. proprietäre Software und Verfahren, Alarmaktivitäten etc. für den Nutzer der Steuerungsmodule und Displays unsichtbar zu machen.
  • Zusammenfassung
  • Ein Konfigurierungssystem nutzt Prozessanlagenelemente, die Entitäten in einer Prozessanlage repräsentieren können oder fähig sind, solche zu repräsentieren, um Unterstützung beim Konfigurieren, Organisieren und Ändern der Steuerungs- und Displayaktivitäten innerhalb der Prozessanlage zu leisten. Der Zugriff auf die Elemente kann durch die Zuordnung von Zugriffskontrolldaten zu den Elementen gesteuert werden. Das Konfigurierungssystem kann auch Objekte verwenden, die einen oder mehrere Schritte repräsentieren oder repräsentieren können, die von Entitäten in der Prozessanlage ausgeführt werden sollen. Der Zugriff auf diese Objekte kann durch die Zuordnung von Zugriffskontrolldaten zu den Objekten gesteuert werden. Die Zugriffskontrolldaten können angeben, ob es Nutzern oder bestimmten Nutzern möglich sein soll, beispielsweise alle oder einige der mit den Prozessanlagenelementen oder den Objekten verbundenen Daten einzusehen oder zu ändern. Die Prozessanlagenelemente können z.B. Modulklassenobjekte umfassen, die generisch Prozessentitäten der Prozessanlage repräsentieren können, Modulobjekte, die spezifisch Prozessentitäten der Prozessanlage repräsentieren können, sowie Composite-Templates, Modultemplates etc. Zu den Objekten, die einen oder mehrere Schritte repräsentieren oder repräsentieren können, die von Entitäten in der Prozessanlage ausgeführt werden sollen, können beispielsweise Phasenklassen oder Einheitenphasen gehören.
  • Konfigurierungssysteme, Anzeigesysteme, Fehlerbereinigungssysteme, Run-Time-Überwachungssysteme, Asset-Managementsysteme etc. können die einem Element, einer Gruppe von Elementen, einem Objekt, einer Gruppe von Objekten etc. zugeordneten Zugriffskontrolldaten prüfen, um zu bestimmen, ob der Zugriff auf dem Element oder dem Objekt zugeordnete Daten begrenzt werden muss. Die geschützten Daten könnten beispielsweise auch verschlüsselt werden, um die Einsichtnahme in die geschützten Daten durch ein Konfigurierungssystem, ein Anzeigensystem, ein Fehlerbereinigungssystem, ein Run-Time-Überwachungssystem, ein Asset-Managementsystem etc. zu verhindern.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Blockschaltbild eines verteilten Prozesssteuerungsnetzwerks, das innerhalb einer Prozessanlage angeordnet ist und das eine Bediener-Workstation aufweist, die eine Konfigurierungsapplikation implementiert, die unter Nutzung von Modulklassenobjekten Steuerungs- und Displayaktivitäten für die Prozessanlage konfiguriert;
  • 2 ist ein Schaltbild einer Reaktoreinheit gemäß 1;
  • 3 ist ein Schaltbild einer Zumessausrüstungsentität bzw. einer Totalisatorausrüstungsentität, die in der Reaktoreinheit gemäß 2 verwendet wird;
  • 4 ist ein Schaltbild eines Auslassventilsystems der Reaktoreinheit gemäß 2;
  • 5 ist ein Blockschaltbild, welches die Beziehungen der Modulklassenobjekte und der zugeordneten Modulobjekte für Einheiten-, Ausrüstungs-, Steuerungs- und Display-Modulklassenobjekte verdeutlicht;
  • 6 ist ein Blockschaltbild eines Einheiten-Modulklassenobjekts für Reaktoren, das verwendet werden kann, um Konfigurierungsmaßnahmen an Reaktoren der Anlage gemäß 1 durchzuführen;
  • 7 ist ein Blockschaltbild eines Zumessausrüstungs-Modulklassenojekts, das verwendet werden kann, um Konfigurierungsmaßnahmen an Zumessungen der Anlage gemäß 1 durchzuführen;
  • 8 ist eine Darstellung eines ersten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 9 ist eine Darstellung eines zweiten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 10 ist eine Darstellung eines dritten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 11 ist eine Darstellung eines vierten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 12 ist eine Darstellung eines fünften Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 13 ist eine Darstellung eines sechsten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 14 ist eine Darstellung eines siebten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 15 ist eine Darstellung eines achten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren; und
  • 16 ist eine Darstellung eines neunten Konfigurationsbildschirms, der von einem Konfigurierungsbediener verwendet werden kann, um eine Prozessanlage unter Verwendung von Modulklassenobjekten zu konfigurieren;
  • 17 ist ein Flussdiagramm einer beispielhaften Routine für die Konfigurierung eines Prozessanlagenelements zur Begrenzung des Zugriffs auf das Element;
  • 18A ist eine beispielhafte Bildschirmausgabe von Unterelementen einschließlich Funktionsblöcken eines Composite-Templates;
  • 18B ist eine beispielhafte Bildschirmausgabe von Unterelementen des Composite-Templates gemäß 18A, in der die Unterelemente der Funktionsblöcke jedoch unsichtbar sind;
  • 19 ist ein Flussdiagramm einer beispielhaften Routine für die Konfigurierung einer Gruppe von Prozessanlagenelementen für die Begrenzung des Zugriffs auf die Gruppe;
  • 20 ist ein Flussdiagramm einer beispielhaften Routine, mit der bestimmt wird, ob die Anzeige von mit einer Prozessanlage verbundenen Daten zulässig ist;
  • 21 ist ein Flussdiagramm einer beispielhaften Routine, mit der bestimmt wird, ob die Änderung eines Prozessanlagenelements oder einer Gruppe von Prozessanlagenelementen zulässig ist;
  • 22 ist ein Flussdiagramm einer beispielhaften Routine für das Exportieren eines Prozessanlagenelements;
  • 23 ist ein Blockdiagramm eines beispielhaften Konfigurierungssystems, das verwendet werden kann, um Versionskontroll- und -prüfpfadinformation in Verbindung mit einer Prozessanlage bereitzustellen;
  • 24 ist ein Flussdiagramm einer beispielhaften Routine, um die Verfolgung von Versionen eines Prozessanlagenelements zu vereinfachen;
  • 25 ist ein Flussdiagramm einer beispielhaften Routine, um die Verfolgung von Versionen von Prozessanlagenelementen zu vereinfachen;
  • 26 ist ein Flussdiagramm einer beispielhaften Routine zur einfacheren Konfigurierung eines Prozessanlagenelements; und
  • 27 ist ein Flussdiagramm einer beispielhaften Routine zur einfacheren Konfigurierung von Prozessanlagenelementen;
  • 28 ist eine beispielhafte Bildschirmausgabe einer Nutzerschnittstelle für die Konfigurierung eines Modulklassenobjekts;
  • 29 ist eine weitere beispielhafte Bildschirmausgabe einer Nutzerschnittstelle für die Konfigurierung eines Modulklassenobjekts;
  • 30 ist eine beispielhafte Bildschirmausgabe einer Nutzerschnittstelle für die Fehlerbereinigung eines Modulobjekts, in dem mit dem Modulobjekt verbundene Daten nicht unsichtbar sind; und
  • 31 ist die beispielhafte Bildschirmausgabe gemäß 30, in der jedoch mit dem Modulobjekt verbundene Daten unsichtbar sind.
  • DETAILLIERTE BESCHREIBUNG
  • 1 zeigt eine Prozessanlage 10, zu der ein oder mehrere Prozesssteuerungsgeräte 12 gehören, die beispielsweise über eine Ethernet-Verbindung oder einen Bus 15 mit einer Vielzahl von Workstations 14 verbunden sind. Die Steuerungsgeräte 12 sind außerdem über diverse Kommunikationsleitungen oder Busse 18 mit Vorrichtungen oder Ausrüstungskomponenten in der Prozessanlage 10 verbunden, wobei nur das an das Steuerungsgerät 12a angeschlossene Kommunikationsleitungsbündel 18 in 1 gezeigt ist. Die Steuerungsgeräte 12, die beispielsweise unter ausschließlicher Verwendung des von Fisher-Rosemount Systems, Inc. vertriebenen Steuerungsgeräts DeltaVTM implementiert werden können, können mit Steuerungselementen wie beispielsweise Feldvorrichtungen und Funktionsblöcken in den Feldvorrichtungen kommunizieren, die über die gesamte Prozessanlage 10 verteilt sind, um eine oder mehrere Prozesssteuerungsroutinen 19 auszuführen und so die gewünschte Steuerung der Prozessanlage 10 zu implementieren. Die Workstations 14 (bei denen es sich z.B. um Personal Computer handeln kann), können von einem oder mehreren Konfigurierungstechnikern benutzt werden, um die Prozesssteuerungsroutinen 19 zu konfigurieren, die von den Steuerungsgeräten 12 ausgeführt werden sollen, sowie die Displayroutinen, die von den Workstations 14 oder anderen Computern auszuführen sind, und um mit den Steuerungsgeräten 12 zu kommunizieren, um diese Prozesssteuerungsroutinen 19 in die Steuerungsgeräte 12 herunterzuladen. Ferner können die Workstations 14 Displayroutinen ausführen, die während des Betriebs der Prozessanlage 10 Information im Zusammenhang mit der Prozessanlage 10 oder Elementen dieser Anlage empfangen und anzeigen.
  • Jede der Workstations 14 beinhaltet einen Speicher 20 für die Speicherung von Applikationen, wie Konfigurierungsapplikationen und Display- oder Anzeigeapplikationen, und für die Speicherung von Daten, wie z.B. zur Prozessanlage 10 gehörige Konfigurierungsdaten. Jede der Workstations 14 umfasst auch einen Prozessor 21, der die Applikationen ausführt, um einem Konfigurierungstechniker die Entwicklung von Prozesssteuerungsroutinen und anderen Routinen und das Herunterladen dieser Prozesssteuerungsroutinen in die Steuerungsgeräte 12 oder andere Computer zu ermöglichen, oder um die Erfassung und Anzeige von Information für einen Nutzer während des Betriebs der Prozessanlage 10 zu realisieren.
  • Außerdem gehört zu jedem Steuerungsgerät 12 ein Speicher 22, der Steuerungs- und Kommunikationsapplikationen speichert, und ein Prozessor 24, der die Steuerungs- und Kommunikationsapplikationen auf bekannte Weise ausführt. In einem Fall speichern und führen alle Steuerungsgeräte 12 eine Steuerungsapplikation aus, die eine Steuerungsstrategie unter Verwendung einer Anzahl unterschiedlicher, unabhängig ausgeführter Steuerungsmodule oder Blöcke 19 implementiert. Die Steuerungsmodule 19 können alle aus im Allgemeinen als Funktionsblöcke bezeichneten Elementen bestehen, wobei jeder Funktionsblock ein Teil oder eine Subroutine einer Gesamtsteuerungsroutine ist und (über als Links bezeichnete Kommunikationen) gemeinsam mit anderen Funktionsblöcken arbeitet, um Prozesssregelungsschleifen innerhalb der Prozessanlage 10 zu implementieren. Wie allgemein bekannt, führen Funktionsblöcke, die Objekte in einem objektorientierten Programmprotokoll sein können, typischerweise entweder eine Eingabefunktion aus, die z.B. einem Messwertgeber, einem Sensor oder einer anderen Prozessparametermessvorrichtung zugeordnet ist, eine Steuerungsfunktion, die beispielsweise mit einer Steuerungsroutine, die PID-, Fuzzy-Logik und sonstige Steuerungen etc. ausführt, verbunden ist, oder eine Ausgabefunktion, die den Betrieb einer Vorrichtung steuert, beispielsweise eines Ventils, um eine physikalische Funktion innerhalb der Prozessanlage 10 auszuführen. Selbstverständlich existieren Hybrid- oder andere Typen komplexer Funktionsblöcke, z.B. Model Predictive Controller (MPCs), Optimierer etc. Während das Fieldbus-Protokoll und das DeltaVTM-Systemprotokoll in einem objektorientierten Programmprotokoll entwickelte und implementierte Steuerungsmodule und Funktionsblöcke nutzen, könnten die Steuerungsmodule unter Verwendung jedes gewünschten Steuerungsprogrammschemas entwickelt werden, einschließlich beispielsweise sequentiellen Funktionsblöcken, Kontaktplänen etc., ohne Beschränkung auf die Verwendung von Funktionsblöcken oder einer sonstigen speziellen Programmiertechnik.
  • Die Workstations 14 können über einen Bildschirm mit Darstellung der Steuerungselemente in den Prozesssteuerungsroutinen 19 eine graphische Darstellung der Prozesssteuerungsroutinen 19 in den Steuerungsgeräten 12 für einen Nutzer bereitstellen und die Konfiguration dieser Steuerungselemente für die Steuerung der Prozessanlage 10 zeigen. In dem System gemäß 1 ist eine Konfigurationsdatenbank 25 mit dem Ethernet-Bus 15 verbunden, um von den Steuerungsgeräten 12 und den Workstations 14 benutzte Konfigurationsdaten zu speichern und durch das Erfassen und Speichern von in der Prozessanlage 10 erzeugten Daten für eine spätere Nutzung als Datenhistorie zu dienen.
  • In der Prozessanlage 10 der 1 ist das Steuerungsgerät 12a über Bus 18 kommunikativ mit drei Grupppen gleich konfigurierter Reaktoren verbunden (bei denen es sich um mehrfach vorhandene Ausrüstungskomponenten innerhalb der Anlage 10 handelt), die hierin als Reactor_01, Reactor_02 und Reactor_03 bezeichnet werden. Reactor_01 umfasst einen Reaktionsbehälter oder Tank 100, drei Einlassventilsysteme (Ausrüstungsentitäten) 101, 102 und 103, die so angeschlossen sind, dass sie die Fluideinlassleitungen für Säure, Alkali bzw. Wasser zum Reaktionsbehälter 100 kontrollieren, und ein Auslassventilsystem 104, das den Fluidabfluss aus dem Reaktionsbehälter 100 kontrolliert. Ein Sensor 105, bei dem es sich um jeden gewünschten Sensortyp, wie z.B. einen Pegelmesser, einen Temperaturfühler, einen Drucksensor etc. handeln kann, ist im oder in der Nähe des Reaktionsbehälters 100 angeordnet. Für den Zweck dieser Ausführungen wird angenommen, dass es sich beim Sensor 105 um einen Pegelmesser handelt. Ferner ist ein gemeinsam genutztes Wasserheadersystem 110 an die Wasserleitung stromaufwärts von jedem der Reaktoren Reactor_01, Reactor_02 und Reactor_03 angeschlossen, um eine Hauptkontrolle für den Wasserfluss zu jedem dieser Reaktoren bereitzustellen.
  • Dementsprechend gehören zu Reactor_02 ein Reaktionsbehälter 200, drei Einlassventilsysteme 201, 202 und 203, ein Auslassventilsystem 204 und ein Pegelmesser 205, während Reactor_03 einen Reaktionsbehälter 300, drei Einlassventilsysteme 301, 302 und 303, ein Auslassventilsystem 304 und einen Pegelmesser 305 umfasst. Im Beispiel der 1 können die Reaktoren Reactor_01, Reactor_02 und Reactor_03 Salz produzieren, mit Zugabe von Säure durch die Einlassventilsysteme 101, 201 und 301, mit Zugabe von Alkali durch die Einlassventilsysteme 102, 202 und 302, während die Einlassventilsysteme 103, 203 und 303 in Verbindung mit dem gemeinsam genutzten Wasserheader 110 Wasser in den Reaktionsbehälter 100 einleiten. Die Auslassventilsysteme 104, 204 und 304 können so betätigt werden, dass das Produkt über eine Leitung, die in 1 nach rechts gerichtet ist, abgezogen und Abfall oder anderes unerwünschte Material durch eine in 1 nach unten gerichtete Leitung abgeleitet wird.
  • Das Steuerungsgerät 12a ist über den Bus 18 kommunikativ mit den Ventilsystemen 101-104, 110, 201-204 und 301-304 und den Sensoren 105, 205 und 305 verbunden, um den Betrieb dieser Elemente zu steuern und eine oder mehrere Operationen in Zusammenhang mit den Reaktoreinheiten Reactor_01, Reactor_02 und Reactor_03 auszuführen. Zu diesen allgemein als Phasen bezeichneten Operationen können beispielsweise das Befüllen der Reaktionsbehälter 100, 200, 300, das Erhitzen des Materials in den Reaktionsbehältern 100, 200, 300, das Entleeren der Reaktionsbehälter 100, 200, 300, das Reinigen der Reaktionsbehälter 100, 200, 300 etc. gehören.
  • Bei den in 1 dargestellten Ventilen, Sensoren und anderen Ausrüstungskomponenten kann es sich um beliebige Ausrüstungstypen handeln, z.B. auch um Fieldbus-Vorrichtungen, Standard 4-20mA-Vorrichtungen, HART-Vorrichtungen etc., die mit dem Steuerungsgerät 12 unter Verwendung aller bekannten oder gewünschten Kommunikationsprotokolle kommunizieren können, z.B. mit dem Fieldbus-Protokoll, dem HART-Protokoll, dem 4-20 mA-Analogprotokoll etc. Weiter können gemäß den hierin erläuterten Prinzipien andere Vorrichtungstypen mit den Steuerungsgeräten 12 verbunden und von ihnen gesteuert werden. Ferner können verschiedene Anzahlen und andere Typen von Steuerungsgeräten innerhalb der Anlage 10 angeschlossen werden, um andere mit der Prozessanlage 10 verbundene Vorrichtungen oder Bereiche zu steuern, und der Betrieb dieser zusätzlichen Steuerungsgeräte kann auf jede gewünschte Weise mit dem Betrieb des in 1 gezeigten Steuerungsgeräts 12a koordiniert werden.
  • Allgemein gesagt, die Prozessanlage 10 der 1 kann für die Implementierung von Batchprozessen eingesetzt werden, bei denen beispielsweise eine der Workstations 14 oder das Steuerungsgerät 12a eine Batchroutine ausführt, bei der es sich um eine übergeordnete Steuerungsroutine handelt, die den Betrieb einer oder mehrerer Reaktoreinheiten (sowie anderer Ausrüstungskomponenten) leitet, um eine Reihe verschiedener Schritte (gewöhnlich als Phasen bezeichnet) auszuführen, die für die Herstellung eines Produkts, z.B. einer bestimmten Salzart, erforderlich sind. Zur Implementierung verschiedener Phasen nutzt die Batchroutine im Allgemeinen eine Rezeptur, die die auszuführenden Schritte, die den Schritten zugeordneten Mengen und Zeiten sowie die Reihenfolge dieser Schritte vorgibt. Zu den Schritten einer Rezeptur kann beispielsweise das Befüllen eines Reaktionsbehälters mit den geeigneten Materialien bzw. den Ingredienzien, das Mischen der Materialien im Reaktionsbehälter, deren Erhitzung im Reaktionsbehälter auf eine bestimmte Temperatur während einer gewissen Zeit, das Entleeren des Reaktionsbehälters und dessen Reinigung zur Vorbereitung auf den nächsten Batchlauf gehören. Jeder dieser Schritte definiert eine Phase des Batchlaufs und die Batchroutine im Steuerungsgerät 12a führt einen unterschiedlichen Steuerungsalgorithmus für jede dieser Phasen aus. Selbstverständlich können sich die jeweiligen Materialien, ihre Mengen, die Temperaturen und Zeiten für die Erhitzung etc. für die verschiedenen Rezepturen voneinander unterscheiden, und diese Parameter können sich daher je nach hergestelltem Produkt und angewandter Rezeptur von Batchlauf zu Batchlauf ändern. Dem Fachmann ist klar, dass hierin zwar Steuerungsroutinen und Konfigurationen für Batchläufe in den in 1 gezeigten Reaktoren beschrieben werden, dass solche Steuerungsroutinen aber auch genutzt werden können, um andere gewünschte Vorrichtungen zu steuern, um jeden anderen gewünschten Batchprozesslauf oder auf Wunsch auch kontinuierliche Prozessläufe auszuführen.
  • Ferner ist klar, dass die gleichen Phasen oder Schritte eines Batchprozesses in jeder der verschiedenen Reaktoreinheiten der 1 zur gleichen oder zu verschiedenen Zeiten implementiert werden können. Ferner kann, da die Reaktoreinheiten der 1 im Allgemeinen die gleiche Anzahl und die gleichen Typen von Ausrüstungskomponenten umfassen, die gleiche generische Phasensteuerungsroutine für eine bestimmte Phase angewendet werden, um jede der verschiedenen Reaktoreinheiten zu steuern, wobei jedoch diese generische Phasensteuerungsroutine geändert werden muss, um die diversen, den verschiedenen Reaktoreinheiten zugeordneten Hardware- oder Ausrüstungskomponenten zu steuern. Um eine Befüllungsphase für Reactor_01 (in der die Reaktoreinheit befüllt wird) zu implementieren, öffnet beispielsweise eine Befüllsteuerungsroutine ein oder mehrere den Einlassventilsystemen 101, 102 und 103 zugeordnete Ventile für eine bestimmte Zeit, z.B. bis der Pegelmesser 105 feststellt, dass der Behälter 100 voll ist. Diese gleiche Steuerungsroutine kann jedoch auch angewandt werden, um eine Befüllungsphase für Reactor_02 zu implementieren, und zwar lediglich durch die Änderung der Bezeichnung des bzw. der Einlassventile in die mit den Ventilsystemen 201, 202 und 203 verbundene Bezeichnung anstelle der Bezeichnung für die Ventilsysteme 101, 102 und 103 und durch die Änderung der Bezeichnung des Pegelmessers, nämlich Pegelmesser 205 anstelle von Pegelmesser 105.
  • 2 zeigt genauere Einzelheiten eines der Reaktoren der 1, im Besonderen Reactor_01. Wie ähnlich in 1 dargestellt, umfasst der Reactor_01 der 2 den Reaktionsbehälter 100, die Einlassventilsysteme 101, 102, 103 und 110 für die Zugabe von Säure, Alkali und Wasser in den Behälter 100, das Auslassventilsystem 104 für das Ablassen von Material aus dem Behälter 100 und den Pegelmesser 105. Wie in 2 weiter gezeigt, benutzt jedes der Einlassventilsysteme 101, 102 und 110 eine ähnliche, als Zumessung bzw. Totalisator bezeichnete Ausrüstungsentität, zu der zwei parallel angeordnete Ventile und eine stromabwärts nach den beiden Ventilen angeordnete Durchflussmessvorrichtung gehören. Die Zumessung für das Einlassventilsystem 101, die in 3 genauer gezeigt wird, umfasst ein als Grobventil bezeichnetes Absperrventil 101a, ein als Feinventil bezeichnetes Absperrventil 101b und einen stromabwärts von den Ventilen 101a und 101b angeordneten Durchflussmesser 101c. Die Zumessung 101 besitzt ein oder mehrere ihr zugeordnete Steuerungsmodule oder Routinen, die genutzt werden, um unter Verwendung der vom Durchflussmesser 101c durchgeführten Messungen die Säurezugabe zu steuern. Mit einer ersten derartigen Steuerungsroutine kann durch die Zumessung 101 unter Nutzung von Grobventil 101a und Feinventil 101b ein schneller Strom gesteuert werden, während eine zweite derartige Steuerungsroutine mit der Zumessung 101 unter Nutzung von Grobventil 101a und Feinventil 101b den exakten Strom steuert.
  • Wie aus 2 zu ersehen, umfasst das Ventilsystem 102 für die Alkalizugabe eine Zumessung mit einem Grobventil 102a, einem Feinventil 102b und einem Durchflussmesser 102c, und das gemeinsam genutzte Wassereinlassventilsystem 110 umfasst ein Grobventil 110a, ein Feinventil 110b und einen Durchflussmesser 110c. Jede der Zumessungen 101, 102 und 110 hat den gleichen Typ mehrfach vorhandener Ausrüstungskomponenten, obwohl sie an verschiedenen Stellen in der gleichen Einheit, nämlich dem Reactor_01, eingesetzt werden. Ebenso umfassen Reactor_02 und Reactor_03 Zumessungen an den Einlassventilsystemen 201, 202, 301 und 302.
  • In gleicher Weise bildet das Auslassventilsystem 104 eine weitere der mehrfach vorhandenen Ausrüstungskomponenten, zu der drei Ventile gehören. Wie am besten aus 4 erkennbar, umfasst das Auslassventilsystem 104 ein Hauptauslassventil 104a, das geöffnet werden muss, um Material aus dem Tank 100 abzulassen, ein Produktventil 104b, das gemeinsam mit dem Hauptauslassventil 104a geöffnet werden muss, um das Produkt aus dem Tank 100 abzuziehen, und ein Entleerungsventil 104c, das gemeinsam mit dem Hauptauslassventil 104a geöffnet werden muss, um Material, beispielsweise Abfallprodukte, Reinigungsflüssigkeit etc. vom Tank 100 in ein Ablass- oder Entsorgungssystem abzuleiten. Selbstverständlich werden dem Auslassventilsystem 104 eine oder mehrere Steuerungsroutinen zugeordnet, um den Zustand der Ventile 104a, 104b und 104c zu steuern und den Behälter 100 zu schließen, zu entleeren oder um das Produkt aus dem Behälter 100 abzuziehen.
  • Um eine Steuerungsroutine für die Steuerung der verschiedenen, den Reaktoren Reactox_01, Reactox_02 und Reactox_03 der 1 zugeordneten Ausrüstungskomponenten zu erstellen, erzeugte ein Konfigurierungstechniker bisher vielleicht zunächst eine Anzahl von generischen Steuerungsmodultemplates bzw. Templatesteuerungsmodulen, die beispielsweise in einer Bibliothek in einer der Workstations 14 gespeichert wurden. Um eine Steuerungsmodultemplate zu erzeugen, verband der Ingenieur graphisch verschiedene Steuerungsfunktionsblöcke miteinander, um eine Steuerungsroutine für verschiedene, im Reaktor ausgeführte Elemente oder Regelschleifen bereitzustellen. Nach der typischerweise auf Basis eines Ventils oder einer Regelschleife erfolgten Erzeugung der generischen Steuerungsmodultemplates konnten diese Steuerungsmodultemplates kopiert und ihre Kopien von Hand mit der entsprechenden Ausrüstungskomponente innerhalb der Anlage 10, z.B. mit einer bestimmten Ausrüstungskomponente innerhalb der Reaktoren Reactor_01, Reactor_02 und Reactor_03 verknüpft werden. Nach ihrer Verknüpfung, die wie in der US-Patentschrift Nr. 6,385,496 genauer beschrieben entweder direkt oder unter Verwendung von Aliasnamen hergestellt wurde, wurden die verknüpften Kopien der Steuerungsmodule in eines oder mehrere Steuerungsgeräte 12 heruntergeladen und benutzt, um Prozesssteuerungsmaßnahmen in den Reaktoren durchzuführen, mit denen sie verbunden waren. Die aus den Steuerungsmodultemplates erzeugten verknüpften Steuerungsmodule hatten jedoch keinen Bezug bzw. keine Beziehung zu den Modultemplates, aus denen sie erzeugt wurden, und waren in Wirklichkeit bei ihrer Verwendung im Prozesssteuerungssystem eigenständige Steuerungsmodule oder Objekte.
  • In diesen Systemen musste die Konfigurierung außerdem auf einer Steuerungsmodulebene durchgeführt werden, was bedeutet, dass für jede der verschiedenen Ausrüstungskomponenten oder Regelschleifen innerhalb der Prozessanlage ein eigenes Steuerungsmodul erzeugt werden musste. Auf Steuerungsmodulebene gibt es typischerweise zahlreiche verschiedene Steuerungsmodultypen, die für jede der Prozessentitäten innerhalb der Prozessanlage erzeugt und mit ihr verbunden werden müssen. Im Ergebnis verbrachte der Konfigurierungstechniker viel Zeit lediglich mit dem Kopieren und Verbinden der einzelnen Steuerungsmodule mit den individullen Ausrüstungskomponenten innerhalb der Anlage. Beispielsweise musste ein Konfigurierungstechniker Dutzende von Steuerungsmodulen für eine Reaktoreinheit in der Anlage erzeugen und kopieren und dann jedes einzelne dieser Steuerungsmodule mit einer bestimmten Ausrüstungskomponente in dieser Reaktoreinheit verbinden. War die Reaktoreinheit in der Anlage mehrfach vorhanden, so wurde die Aufgabe des Konfigurierungstechnikers noch viel langwieriger, da der Konfigurierungstechniker diesen Kopier- und Verbindungsprozess für Dutzende von Steuerungsmodulen für jede der mehrfach vorhandenen Ausrüstungskomponenten durchführen musste, was zeitintensiv und äußerst anfällig für menschliche Fehler war.
  • Obwohl früher ein Konfigurierungstechniker ein Einheitenmodul entwickeln konnte, waren diese Einheitenmodule lediglich Behälter für die Phasen, die in einer Einheit ablaufen konnten, und umfassten keine Ausrüstungsmerkmale in Verbindung mit der Einheit oder mit Steuerungsschemata, die für die Steuerung der Basisoperationen der Ausrüstungskomponenten innerhalb der Einheiten verwendet wurden. Obwohl auch Templates für Steuerungselemente erzeugt werden konnten, die für die Steuerung verschiedener Ausrüstungskomponenten genutzt würden, gab es keine Steuerungsmodulpackages, die verwendet werden konnten, um auf mehrfach vorhandene übergeordnete Entitäten innerhalb der Anlage zu verweisen, z.B. auf Ausrüstungs- und Einheitenentitäten. Anders gesagt, um Steuerungsroutinen für verschiedene mehrfach vorhandene Entitäten innerhalb der Prozessanlage 10 zu erzeugen, musste der Konfigurierungstechniker Steuerungsmodule für jede der mehrfach vorhandenen Ausrüstungskomponenten auf der niedrigsten Steuerungsebene kopieren und jedes dieser Steuerungsmodule einer bestimmten Ausrüstungskomponente oder sonstigen Entität innerhalb der Prozessanlage 10 anpassen. In großen Anlagen mit einer Vielzahl mehrfach vorhandener Ausrüstungskomponenten konnte diese Aufgabe zeitraubend und anfällig für Konfigurierungsfehler sein. Außerdem mussten Änderungen an einem einer mehrfach vorhandenen Ausrüstungskomponente zugeordneten Steuerungsmodul von Hand an jedem dieser verschiedenen Steuerungsmodule für die verschiedenen Ausrüstungskomponenten vorgenommen werden, was ebenfalls langwierig, zeitintensiv und anfällig für vom Bediener verursachte Fehler war. Ebenso mussten Displays für den Bediener von den Steuerungsmodulen getrennt erzeugt werden und wie die Steuerungsmodule mussten auch die Displays individuell erzeugt, geändert und mit den Ausrüstungskomponenten innerhalb der Prozessanlage verbunden werden.
  • Für eine einfachere und weniger zeitraubende Erzeugung und Änderung einer Prozesskonfiguration umfasst eine in einer der Workstations 14 der 1 gespeicherte Konfigurierungsapplikation 50 einen Satz von Modulklassenobjekten 52 zur Anwendung bei der Konfigurierung der Prozesssteuerungsanlage 10. Die Modulklassenobjekte sind besonders nützlich bei der Konfigurierung einer Anlage mit zahlreichen Gruppen mehrfach vorhandener Ausrüstungskomponenten. Allgemein gesagt kann ein unterschiedliches Modulklassenobjekt 52 für jeden Typ der verschiedenen physikalischen Einheiten oder Ausrüstungskomponenten erzeugt werden, die innerhalb der Prozessanlage 10 mehrfach vorhanden sind oder genutzt werden, für jeden Typ einer Steuerungsmaßnahme, der in der Prozessanlage 10 mehrfach vorhanden ist oder genutzt wird, für jeden verschiedenen Typ von Displayapplikationen, der in der Prozessanlage 10 mehrfach vorhanden ist oder genutzt wird, etc. Nach ihrer Erzeugung können die Modulklassenobjekte 52 genutzt werden, um Elemente der Prozessanlage 10 zu konfigurieren, die Modulklassenobjekten entsprechen.
  • Die Modulklassenobjekte 52, bei denen es sich im Wesentlichen um generische Versionen von Prozessentitäten handelt und die nicht mit einer bestimmten Prozessentität verbunden sind, können ihnen zugeordnete Objekte oder Instanzen 53, 54, 55 und 56 einer niedrigeren Ebene haben (die hierin als Modulobjekte oder Modulblöcke bezeichnet werden). Jedes Modulobjekt wird aus einem Modulklassenobjekt erzeugt und erbt die gleiche Struktur und die gleichen Eigenschaften wie das Modulklassenobjekt, aus dem es erzeugt wurde. Jedes Modulobjekt ist jedoch mit einer bestimmten Entität innerhalb der Prozessanlage 10 verknüpft. So kann ein einzelnes Modulklassenobjekt 52 erzeugt werden, um einen bestimmten Typ einer Reaktoreinheit zu repräsentieren (unabhängig davon, wie viele dieser Reaktoreinheiten in der Anlage 10 vorhanden sind), während ein anderes Modulobjekt 53 vorhanden sein oder für jede der verschiedenen Reaktoreinheiten dieses Typs, die tatsächlich in der Anlage 10 vorhanden sind, erzeugt werden kann.
  • Die aus einem Modulklassenobjekt erzeugten Modulobjekte werden dem Modulklassenobjekt zugeordnet und sind diesem zugehörig. Im Ergebnis können Änderungen am Modulklassenobjekt automatisch an jedes diesem Modulklassenobjekt zugeordnete Modulobjekt übertragen werden oder in diesem zur Verfügung stehen. Wenn eine Anzahl von Modulobjekten aus einem bestimmten Modulklassenobjekt erzeugt und jedes dieser verschiedenen Modulobjekte mit verschiedenen Prozessentitäten verknüpft wurde, kann daher jedes der verschiedenen Modulobjekte einfach durch die Änderung des Modulklassenobjekts und die automatische Übertragung dieser Änderung auf die zugeordneten Modulobjekte geändert werden.
  • Auf die gleiche Weise können nach der Erzeugung der Modulobjekte aus einem Modulklassenobjekt diese Modulobjekte unter Verwendung eines Gruppeneditierungsverfahrens mit einer bestimmten Ausrüstungskomponente innerhalb der Prozessanlage 10 verknüpft werden. Insbesondere können, da die Modulobjekte eines bestimmten Modulklassenobjekts alle mit dem gleichen Modulklassenobjekt verbunden sind oder ihm zugehören, alle diese Modulobjekte beispielsweise unter Verwendung einer Applikation vom Typ Tabellenkalkulation gemeinsam konfiguriert werden, wodurch die Spezifizierung der besonderen Beziehungen zwischen den Modulobjekten und der entsprechenden Ausrüstungs komponente in der Anlage 10, der diese Modulobjekte zugeordnet sind, einfacher wird und weniger Zeit in Anspruch nimmt.
  • Die Modulklassenobjekte 52 der 1 können das sein, was in einer objektorientierten Programmumgebung oder -sprache gewöhnlich als Objekte bezeichnet wird. Im Ergebnis können diesen Objekten andere Objekte zugehörig sein bzw. sie können sich auf andere Objekte beziehen. Allgemein gesagt sind die Modulklassenobjekte 52 Objekte einer höheren Ebene, die Merkmale oder Definitionen individueller Elemente, wie z.B. von Steuerungsroutinen, Ausrüstungskomponenten oder anderen Elementen beinhalten können, die einer Prozessentität zugeordnet sind, zusammen mit einer Definition oder einer Kennzeichnung für die Art der Wechselbeziehungen zwischen diesen individuellen Elementen, z.B. die Art der Verbindung zwischen physikalischen Elementen oder die Art des Zusammenwirkens zwischen logischen Elementen und physikalischen Elementen. Anders gesagt, ein Modulklassenobjekt kann beispielsweise ein Objekt innerhalb einer objektorientierten Programmiersprache sein, das die Basis für die Steuerung und Ansicht einer bestimmten Ausrüstungskomponente oder einer Gruppe von Ausrüstungskomponenten bereitstellt, ein Steuerungselement, ein Display etc. innerhalb der Prozessanlage 10, das für die Erzeugung zahlreicher Instanzen dieses Elements nützlich sein kann, die für die Konfigurierung verschiedener, mehrfach vorhandener Ausrüstungskomponenten innerhalb der Prozesssteuerungsanlage 10 verwendet werden können.
  • Grundsätzlich ist jedes Modulklassenobjekt ein Konfigurationsbehälter, der eine generische Definition einer Prozessentität in Form aller der verschiedenen Steuexungs- und/oder Displayapplikationen oder -routinen umfasst, die auf diese Entität anwendbar sind, um von den Steuerungsgeräten 12 genutzt zu werden, um diese Entität zu steuern, oder um von den Workstations 14 für Displayaktivitäten in Bezug auf diese Entität genutzt zu werden. Das Modulklassenobjekt kann eine Prozessentität beliebiger Art repräsentieren, z.B. eine Einheit, eine Ausrüstungskomponente, eine Steuerungsentität, eine Displayapplikation etc. Während der Konfigurierung der Prozessanlage 10 kann das Modulklassenobjekt genutzt werden, um Konfigurierungsinstanzen der Prozessentität für eine beliebige Anzahl verschiedener Prozessentitäten zu erzeugen, die der vom Modulklassenobjekt bereitgestellten Definition entsprechen, wobei jede Konfigurierungsinstanz (das aus dem Modulklassenobjekt erzeugte Modulobjekt) einer anderen tatsächlichen Prozessentität zugeordnet oder mit ihr verknüpft wird. Diese verschiedenen Modulobjekte umfassen u.a. Steuerungsroutinen und/oder Displayroutinen, die mit besonderen, in der Prozessanlage 10 angeordneten Prozessentitäten verbunden sind, wobei diese Steuerungsroutinen in die Steuerungsgeräte 12 der 1 heruntergeladen und dort genutzt werden können, um aktuelle Steuerungsmaßnahmen in den Prozessentitäten durchzuführen, und wobei die Displayroutinen in die Workstations 14 heruntergeladen werden können, um aktuelle Displayaktivitäten in Bezug auf die Entitäten während des Betriebs der Prozessanlage 10 auszuführen.
  • Unterschiedliche Moduklassenobjekttypen können für Prozessentitäten unterschiedlicher Anwendungsbereiche stehen und daher Steuerungs- und/oder Displayroutinen enthalten, die für die Anwendung auf bzw. in Bezug auf Prozessentitäten unterschiedlicher Anwendungsbereiche konfiguriert sind. Je größer der Anwendungsbereich der Prozessentität, z.B. einer Einheit, umso mehr Steuerungs- und/oder Displayroutinen werden typischerweise dem Modulklassenobjekt zugeordnet und umso einfacher ist die Konfigurierung von Abschnitten der Anlage unter Nutzung dieser Modulklassenobjekte. Je größer jedoch der Anwendungsbereich der mit einem Modulklassenobjekt verbundenen Prozessentität ist, umso unwahrscheinlicher ist es, dass der Prozess mehrfach vorhandene Ausrüstungskomponenten entsprechend diesem Anwendungsbereich umfasst, und daher umso geringer die Wahrscheinlichkeit, dass das Modulklassenobjekt in großem Maßstab von Nutzen ist. Je kleiner jedoch im Gegensatz dazu der Anwendungsbereich der mit einem Modulklassenobjekt verbundenen Prozessentität ist, desto wahrscheinlicher kann das Modulklassenobjekt in mehreren verschiedenen Standorten der Anlage genutzt werden, während gleichzeitig die geringste Konfigurierung bei Verwendung dieses Modulklassenobjekts in einer bestimmten Instanz erforderlich wird. Die Modulklassenobjekte ermöglichen auf jeden Fall die Konfigurierung verschiedener mehrfach vorhandener Ausrüstungskomponenten auf einer höheren Abstraktionsebene als der Steuerungsmodulebene, was die Konfigurierung einer Prozessanlage mit mehrfach vorhandenen Einheiten und anderen Ausrüstungskomponenten bei Verwendung von Modulklassenobjekten, speziell Modulklassenobjekten mit größerem Anwendungsbereich wie z.B. auf Einheitenebene, einfacher und weniger zeitraubend gestaltet.
  • In einem Ausführungsbeispiel kann ein Konfigurierungstechniker bei der Konfigurierung eines Prozessssteuerungssystems ein einziges Modulklassenobjekt für die verschiedenen in der Prozessanlage mehrfach vorhandenen Elemente, wie z.B. die verschiedenen Reaktoren der 1 erzeugen. Anschließend kann der Konfigurierungstechniker Instanzen des Modulklassenobjekts (Modulobjekte) für jeden der tatsächlichen Reaktoren der 1 erzeugen. Jedes so erzeugte Modulobjekt umfasst vom Steuerungsgerät 12a genutzte Steuerungsroutinen, um einen der Reaktoren der 1 zu betreiben, und ist spezifisch mit den Ausrüstungskomponenten in diesem einen der Reaktoren der 1 verknüpft oder verbunden. Diese Steuerungsroutinen können dann in das Steuerungsgerät 12a heruntergeladen und während des Betriebs der Prozessanlage 10 angewandt werden. Auch nachdem es erzeugt wurde, ist jedes der Modulobjekte immer noch mit dem Modulklassenobjekt verknüpft und kann von dem Modulklassenobjekt beeinflusst werden, um es zu ändern, Zugriff auf das Modulobjekt zu gestatten oder zu sperren etc. Ebenso können Modulobjekte aus dem gleichen Modulklassenobjekt gemeinsam erzeugt und definiert werden, beispielsweise können sie unter Verwendung eines Tabellenprogramms mit einer Ausrüstungskomponente innerhalb der Anlage verbunden werden.
  • Obwohl viele verschiedene Typen von Modulklassenobjekten möglich sind, die innerhalb einer Prozessanlage erzeugt oder verwendet werden können, um Konfigurierungsaktivitäten innerhalb der Prozessanlage auszuführen, werden hierin vier spezifische Typen als Beispiele erläutert, nämlich Einheiten-Modulklassenobjekte, Ausrüstungs-Modulklassenobjekte, Steuerungs-Modulklassenobjekte und Display-Modulklassenobjekte. Allgemein gesagt ist jeder Typ der verschiedenen Modulklassenobjekte für einen anderen Steuerungsumfang oder Einsatzbereich innerhalb der Prozessanlage 10 ausgelegt oder vorgesehen. Ein Einheiten-Modulklassenobjekt ist für die Darstellung (und Konfigurierung) von Steuerungsmaßnahmen für ein breites Spektrum von Ausrüstungskomponenten innerhalb einer Prozessanlage gedacht. Insbesondere ist ein Einheiten-Modulklassenobjekt dazu bestimmt, eine miteinander verbundene Gruppe von Ausrüstungskomponenten (typischerweise mehrfach vorhandene Komponenten), wie z.B. die Reaktoren der 1, die individuelle, auf bekannte Art zusammenwirkende Elemente besitzen, zu modellieren bzw. für ihre Konfigurierung genutzt zu werden.
  • Ein Ausrüstungs-Modulklassenobjekt ist zur Verwendung bei der Darstellung (und Konfigurierung) von Steuerungsmaßnahmen für ein weniger breites Spektrum physikalischer Ausrüstungskomponenten innerhalb der Prozessanlage bestimmt. Bei den einem Ausrüstungs-Modulklassenobjekt zugeordneten Ausrüstungskomponenten handelt es sich im Allgemeinen um eine oder mehrere physikalische Entitäten, wie Ventile, Durchflussmesser etc., die ein Untersystem einer Einheit bilden, und das Ausrüstungs-Modulklassenobjekt kann eine oder mehrere Anweisungen oder Algorithmen beinhalten, bei denen es sich um anweisungsgesteuerte Algorithmen (CDAs), zustandsgesteuerte Algorithmen (SDAs), sequentielle Folgesteuerungs algorithmen (SFCs), Funktionsblockalgorithmen (FBDs), Phasenalgorithmen etc. handeln kann, die in Verbindung mit der betreffenden Ausrüstungskomponente auszuführen sind. Somit ist ein Ausrüstungs-Modulklassenobjekt dafür vorgesehen, die Konfigurierung der Steuerung mehrerer untergeordneter Komponenten oder Entitäten innerhalb einer Einheit zu bewirken, um einen Basisfunktionssatz für die betreffende Ausrüstungskomponente für die Verwendung in der jeweiligen Einheit bereitzustellen. Wie bekannt ist, wird ein anweisungsgesteuerter Algorithmus (anweisungsgesteuerte Steuerlogik) verwendet, wenn die untergeordneten Komponenten über mehrere Schritte aufeinander abgestimmt werden müssen, um eine Funktion auszuführen. Beispielsweise kann es sein, dass ein Ventil für einen bestimmten Zeitraum geöffnet und anschließend wieder geschlossen werden muss, während ein anderes Ventil geöffnet und geschlossen wird. Die Zumessung 101 der 3 nutzt diese Art eines anweisungsgesteuerten Algorithmus, um zunächst das Grobventil anzusteuern und einzustellen, und dann das Feinventil auf Basis der Anzeige des Durchflussmessers zu regeln, um den gewünschten Gesamtdurchsatz durch die Zumessung bereitzustellen. Ein zustandsgesteuerter Algorithmus (zustandsgesteuerte Steuerlogik) kann die Zustände verschiedener untergeordneter Konponenten vorgeben, die in einem einzigen Schritt gesteuert werden können. Ein solcher zustandsgesteuerter Algorithmus könnte z.B. für das Auslassventilsystem 104 der 4 verwendet werden, bei dem die Zustände der verschiedenen zugehörigen Ventile jeweils getrennt (aber in einem einzigen Schritt) auf Basis des gewünschten Zustands des Auslassventilsystem 104 zum Schließen des Behälters 100, zum Entleeren des Behälters 100 oder zum Abziehen von Produkt aus dem Behälter 100 gesteuert werden.
  • Ein Steuerungs-Modulklassenobjekt ist gedacht, um zur Darstellung (und zur Konfigurierung) von individuellen Steuerungselementen oder Steuerungsmodulen innerhalb der Prozessanlage zu dienen. Mit einem Steuerungs-Modulklassenobjekt wird eine bestimmte Form einer Steuerung bereitgestellt oder vorgegeben, die für eine Anlagenentität wie z.B. ein Ventil, eine Messeinrichtung etc., eine Ausrüstungskomponente oder eine ganze Einheit auszuführen ist. Allgemein gesagt, ein Steuerungs-Modulklassenobjekt stellt einen bestimmten Typ einer Steuerungsprogrammierung bereit, wie z.B. einen Satz kommunikativ miteinander verbundener Funktionsblöcke, die einige Steuerungsmodule definieren, die in einem Steuerungsgerät auszuführen sind, und die von Nutzen sind, um wiederholte Steuerungsaktivitäten innerhalb einer Prozessanlage auszuführen. In den meisten Fällen kann ein Steuerungs-Modulklassenobjekt eine generische Steuerungsstrategie bereitstellen, um eine einzelne Vorrichtung oder einen zusammenhängenden Satz von Vorrichtungen zu steuern.
  • Ein Display-Modulklassenobjekt ist zur Darstellung (und zur Konfigurierung) von Displayaktivitäten bestimmt, die während des Betriebs der Prozessanlage 10 für einen Nutzer wie z.B. einen Steuerungsbediener zur Darstellung gebracht werden. Ein Display-Modulklassenobjekt kann daher die Programmierung zur Erzeugung eines Displays eines bestimmten Typs innerhalb einer Bediener-Workstation 14 der 1 spezifizieren, und außerdem die Programmierung, die auf einer oder mehreren der Workstations 14 (oder in anderen Vorrichtungen innerhalb der Prozessanlage 10) ablaufen muss, damit das Display während des Anlagenbetriebs die korrekten Informationen betreffend die Anlage 10 erhält. Zu den Typen der Displayklassenmodule gehören beispielsweise Alarmdisplays, Konfigurationsdarstellungen, Funktionsdarstellungen, Diagnoseanzeigen etc. Selbstverständlich kann ein Display-Modulklassenobjekt ein Display bereitstellen, das jeden gewünschten Bereich physikalischer Elemente oder Entitäten innerhalb einer Prozessanlage repräsentieren kann bzw. diesen zugeordnet ist. Beispielsweise kann ein Display-Modulklassenobjekt Information über einen gesamten Bereich, eine Einheit, eine Ausrüstungskomponente, ein Steuerungselement oder eine beliebige Kombination dieser Elemente innerhalb der Prozessanlage 10 zur Darstellung bringen.
  • In 5 sind anhand eines hierarchischen Graphen die Verbindungen zwischen verschiedenen Typen von Modulklassenobjekten wiedergegeben, wie sie in der Konfigurierungsapplikation 50 der 1 eingesetzt sind, und außerdem die Beziehung zwischen den Modulklassenobjekten und den aus diesen Modulklassenobjekten entwickelten Modulobjekten. Im Graphen der 5 sind die Modulklassenobjekte in senkrechter Richtung nach Modulklassentypen in einen Einheiten-Modulklassentyp 400, einen Ausrüstungs-Modulklassentyp 402, einen Steuerungs-Modulklassentyp 404 und einen Display-Modulklassentyp 406 unterteilt. Selbstverständlich können ebenso andere Typen von Modulklassenobjekten bereitgestellt oder verwendet werden, so dass die vier hierin dargestellten Typen lediglich als beispielhafte Modulklassentypen anzusehen sind. Die individuellen Modulklassenobjekte (wobei es sich um höhere Objekte handeln kann, die beispielsweise in einer objektorientierten Programmiersprache abgefasst sein können, und die in 5 der Klarheit halber doppelt umrandet wiedergegeben sind) fallen unter die verschiedenen Modulklassentypen 400, 402, 404 und 406. Insbesondere können viele verschiedene Einheiten-Modulklassenobjekte für verschiedene Einheiten oder Typen von Einheiten innerhalb der Prozessanlage 10 vorhanden sein. Beispielsweise kann ein Einheiten-Modulklassenobjekt 410 für einen Reaktor einen bestimmten Typ oder eine bestimmte Konfiguration eines Reaktors innerhalb der Prozessanlage 10 darstellen. Ebenso kann ein Modulklassenobjekt 412 für eine Verpackungseinheit einen bestimmten Typ oder eine bestimmte Konfiguration einer Verpackungseinheit innerhalb der Prozessanlage 10 repräsentieren, und ein Modulklassenobjekt 414 für eine Trocknereinheit kann einen bestimmten Typ oder eine bestimmte Konfiguration einer Trocknereinheit innerhalb der Prozessanlage 10 repräsentieren. Selbstverständlich können mehrere Modulklassenobjekte für Reaktoreinheiten vorhanden sein, um Reaktoren darzustellen, die sich untereinander in ihren physikalischen Eigenschaften unterscheiden. An dieser Stelle wird nicht versucht, alle unterschiedlichen Typen von Einheiten innerhalb einer Anlage aufzulisten, die durch ein Einheiten-Modulklassenobjekt repräsentiert oder modelliert werden können. Dem Fachmann ist jedoch klar, dass viele verschiedene Einheitentypen in verschiedenen Typen von Anlagen durch Einheiten-Modulklassenobjekte modelliert oder repräsentiert werden können.
  • Entsprechend können viele verschiedene Ausrüstungs-Modulklassenobjekte verwendet werden, um unterschiedliche Typen von Ausrüstungskomponenten innerhalb der Prozessanlage 10 darzustellen, zu modellieren und zu konfigurieren. Die in 5 wiedergegebenen Beispiele enthalten ein Ausrüstungs-Modulklassenobjekt 416 für die Zumessung und ein Ausrüstungs-Modulklassenobjekt 418 für die Auslassventile, von denen jedes verschiedenen Typen von Ausrüstungskomponenten (und vorzugsweise mehrfach vorhandenen Ausrüstungskomponenten) innerhalb der Prozessanlage 10 zugeordnet ist. In der gleichen Weise können viele verschiedene Typen von Steuerungs-Modulklassenobjekten vorhanden sein, die in 5 als ein Steuerungs-Modulklassenobjekt 422 für ein Absperrventil, ein Steuerungs-Modulklassenobjekt 424 für einen Pegelmesser und ein Steuerungs-Modulklassenobjekt 426 für einen Durchflussmesser dargestellt sind. Außerdem sind in 5 Display-Modulklassenobjekte dargestellt, wie z.B. ein Display-Modulklassenobjekt 432 für Alarmmeldungen, ein Display-Modulklassenobjekt 434 für Ausgaben und ein Display-Modulklassenobjekt 436 für Diagnosen. Selbstverständlich können beliebige andere gewünschte Einheiten-, Ausrüstungs-, Steuerungs- und Display-Modulklassenobjekte erzeugt und gemäß den hierin beschriebenen Prinzipien innerhalb der Konfigurierungsapplikation 50 der Prozessanlage 10 verwendet werden.
  • Jedes Modulklassenobjekt kann über Unterobjekte verfügen, die ihm zugeordnet oder zugehörig sind. Diese Unterobjekte können selbst wieder Modulklassenobjekte sein, oder sie können, wie in 5 dargestellt, Modulobjekte sein, die als Instanzen aus den Modulklassenobjekten erzeugt wurden, zu denen sie gehören. Aus 5 geht hervor, dass dem Einheiten-Modulklassenobjekt 410 für den Reaktor drei Reaktor- Modulobjekte mit den Bezeichnungen Reactor_01, Reactor_02 und Reactor_03 zugeordnet sind, wobei diese Reaktor-Modulobjekte den jeweiligen Reaktoren der 1 entsprechen (d.h. mit diesen verknüpft sind). 5 zeigt außerdem, dass das Ausrüstungs-Modulklassenobjekt 416 für die Zumessung fünf verschiedene Modulobjekte hat bzw. diese besitzt, die die Bezeichnungen Water1, Acid1, Acid2, Alkali1 und Alkali2 tragen. Ebenso ist beim Steuerungs-Modulklassenobjekt 422 für die Absperrventile gezeigt, dass es über Modulobjekte mit den Bezeichnungen Coarse_Valve1, Coarse_Valve2, Coarse_Valve3, Fine_Valve1, Fine_Valve2 und Fine_Valve3 verfügt. In entsprechender Weise können jedem der anderen Einheiten-, Ausrüstungs-, Steuerungs- und Display-Modulklassenobjekte der 5 ein oder mehrere Modulobjekte zugeordnet sein. Der Klarheit halber sind diese Modulobjekte in 5 jedoch nicht wiedergegeben.
  • Im Graphen der 5 sind alle Einheiten-Modulobjekte Reactor_01, Reactor_02 und Reactor_03, die (Ausrüstungs-)Zumessmodulobjekte Acid1, Acid2, Alkali1, Alkali2 und Water1, die Steuerungs-Modulobjekte Coarse_Valve1, Coarse_Valve2, Coarse_Valve3, Fine_Valve1, Fine_Valve2 und Fine_Valve3 und die anderen Einheiten-, Ausrüstungs-, Steuerungs- und Display-Modulobjekte individuelle Objekte, die mit tatsächlichen Einheiten, Ausrüstungskomponenten, Steuerungsmodulen oder Displayapplikationen innerhalb der Prozessanlage 10 verknüpft sind. Zum Beispiel werden, da zahlreiche physikalisch vorhandene Säurezumessungen in der Anlage 10 eingesetzt sind, in der Konfigurierungsroutine zahlreiche Modulobjekte für Säurezumessungen erzeugt, so dass für jede der einzelnen in der Anlage 10 existierenden Säurezumessungen ein separates Modulobjekt für die Säurezumessung vorhanden ist. Dabei ist jedoch jedes der separaten Modulobjekte für die Zumessungen mit dem gleichen Modulklassenobjekt 416 für die Zumessungen verknüpft oder diesem zugehörig. Selbstverständlich zeigt der Graph der 5 nur eine begrenzte Anzahl von Modulklassenobjekten und damit verbundenen Modulobjekten und es versteht sich von selbst, dass andere Typen von Modulklassenobjekten bereitgestellt werden können, und dass jede gewünschte Anzahl von Modulobjekten aus jedem der verschiedenen Modulklassenobjekte erzeugt werden kann.
  • Jedes der Modulklassenobjekte der 5 (und somit auch jedes der Modulobjekte der 5) kann als Teil des Objekts eine Definition oder eine Angabe zu den physikalischen oder logischen Prozesselementen beinhalten, die das Modul definieren oder bilden, und wenn dies gewünscht ist, zur Axt und Weise, in der diese Prozesselemente sowohl physikalisch als auch logisch zusammenwirken, um Aktivitäten innerhalb der Prozessanlage 10 zu realisieren. Beispielsweise werden Einheiten-Modulklassenobjekte typischerweise eine Angabe aller physikalischen Elemente und Steuerungselemente enthalten, die zu der als die Einheit definierten Prozessentität gehören oder diese bilden. Das Einheiten-Modulklassenobjekt kann außerdem den jeweiligen Aufbau der einzelnen Teile festlegen und vorgeben, wie diese Teile physikalisch verknüpft sind, um als eine Einheit zu fungieren. Entsprechend wird ein Ausrüstungs-Modulklassenobjekt typischerweise die Steuerungsroutinen oder Steuerungsmodule enthalten, die zur Steuerung der als Ausrüstungskomponente definierten Entität verwendet werden, und Anweisungen, die die Steuerungsroutinen oder Steuerungsmodule verwenden, um die Art und Weise festzulegen-, in der die Teile physikalisch oder logisch zusammenwirken, um beim Einsatz in der Anlage 10 als Ausrüstungskomponente zu fungieren. Ebenso wird jedes Steuerungs-Modulklassenobjekt, typischerweise in Form eines geeigneten Steuerungsalgorithmus, eine Steuerungsaktivität festlegen, die in der Anlage auszuführen ist. Dazu kann jedes Display-Modulklassenobjekt unter anderem den Aufbau eines Anzeigebildschirms und die darzustellende Information definieren, ebenso die zu erfassenden Daten und die Art und Weise der Datenaufbereitung, die ggf. für bestimmte Typen von Einheiten, Ausrüstungskomponenten, Anlagenbereichen oder für andere physikalische oder logische Entitäten innerhalb der Anlage 10 auf die gesammelten Daten anzuwenden ist.
  • Als Teil einer Modulklassendefinition kann ein Modulklassenobjekt andere Modulklassenobjekte angeben oder definieren, die einzubeziehen oder einzusetzen sind. Wenn dies der Fall ist, wird das aus dem Modulklassenobjekt erzeugte Modulobjekt andere Modulobjekte, die entsprechend der auf Modulklassenebene definierten Beziehungen aus anderen Modulklassenobjekten erzeugt wurden, für sich übernehmen, auf diese verweisen oder sie einbeziehen. Obwohl nicht zwingend erforderlich, können Einheiten-Modulklassenobjekte andere Einheiten-Modulklassenobjekte, Ausrüstungs-Modulklassenobjekte, Steuerungs-Modulklassenobjekte und Display-Modulklassenobjekte für sich übernehmen, während Ausrüstungs-Modulklassenobjekte andere Ausrüstungs-Modulklassenobjekte, Steuerungs-Modulklassenobjekte und Display-Modulklassenobjekte für sich übernehmen können. Steuerungs-Modulklassenobjekte können andere Steuerungs-Modulklassenobjekte und Display-Modulklassenobjekte für sich übernehmen oder auf diese verweisen. Wenn dies gewünscht ist, können jedoch auch andere Beziehungen zwischen den Modulklassenobjekten verwendet werden. Diese Übernahmebeziehungen sind durch die großen Pfeile am unteren Rand von 5 veranschaulicht, die deutlich machen, dass jedes der Display-Modulklassenobjekte in jedes der Steuerungs-, Ausrüstungs- und Einheiten-Modulklassenobjekte einbezogen werden kann bzw. dass diese darauf Bezug nehmen können, dass jedes der Steuerungs-Modulklassenobjekte in jedes der Ausrüstungs- und Einheiten-Modulklassenobjekte einbezogen werden kann bzw. dass diese darauf Bezug nehmen können, und dass jedes der Ausrüstungs-Modulklassenobjekte in jedes der Einheiten-Modulklassenobjekte einbezogen werden kann bzw. dass dieses darauf Bezug nehmen kann. Es ist klar, dass Modulklassenobjekte andere Modulklassenobjekte des gleichen Typs übernehmen können. Beispielsweise kann ein Einheiten-Modulklassenobjekt ein anderes Einheiten-Modulklassenobjekt als Teil seiner Definition übernehmen. In entsprechender Weise kann ein Ausrüstungs-Modulklassenobjekt ein anderes Ausrüstungs-Modulklassenobjekt einbeziehen, ein Steuerungs-Modulklassenobjekt kann ein anderes Steuerungs-Modulklassenobjekt einbeziehen, und ein Display-Modulklassenobjekt kann ein anderes Display-Modulklassenobjekt einbeziehen. Selbstverständlich kann ein Modulklassenobjekt, wenn dies gewünscht ist, ein anderes Modulklassenobjekt mehrfach verwenden oder übernehmen. Beispielsweise kann ein Einheiten-Modulklassenobjekt für Reaktoren das Ausrüstungs-Modulklassenobjekt für die Zumessung mehrere Male übernehmen oder verwenden, da die durch das Einheiten-Modulklassenobjekt für Reaktoren modellierten Reaktoren mehrfach ausgeführte Zumessungen aufweisen.
  • Es versteht sich auch von selbst, dass dann, wenn ein erstes Modulklassenobjekt ein zweites Modulklassenobjekt übernimmt oder verwendet, jedes aus dem ersten Modulklassenobjekt erzeugte oder abgeleitete Modulobjekt ein Modulobjekt übernimmt oder verwendet, das aus dem zweiten Modulklassenobjekt erzeugt oder abgeleitet wurde. Wenn somit das Einheiten-Modulklassenobjekt 410 für Reaktoren ein Modulklassenobjekt 416 für eine Zumessung als Element oder Teil für sich selbst verwendet, wird das Modulobjekt Reactor_01 eines der Modulobjekte für Zumessungen, z.B. das Modulobjekt Acid1, als Element oder Teil für sich selbst verwenden oder einbeziehen. Entsprechend wird dann, wenn ein Ausrüstungs-Modulklassenobjekt für Zumessungen ein Ausrüstungs-Modulklassenobjekt für Auslassventile übernimmt oder einbezieht, ein aus dem Ausrüstungs-Modulklassenobjekt für Zumessungen erzeugtes Modulobjekt, das durch einen eindeutigen Namen, beispielsweise Totalizer_1, gekennzeichnet ist, ein Modulobjekt einbeziehen, das aus dem Ausrüstungs-Modulklassenobjekt für Auslassventile erzeugt wurde und durch einen eindeutigen Namen, beispielsweise Outlet_Valve_2, gekennzeichnet ist. Auf diese Weise spiegeln sich die Beziehungen zwischen den Modulklassenobjekten, die auf Modulklassenobjektebene definiert wurden, in den Modulobjekten wider, die aus diesen Modulklassenobjekten entwickelt oder erzeugt wurden. Diese Verbindung bzw. Bezugnahme zwischen Modulklassenobjekten (und somit den Modulobjekten) ermöglicht hohe Variabilität und Übertragbarkeit der Objekte bei den Konfigurierungsaktivitäten, so dass nach dem Erstellen eines grundlegenden Satzes von Modulklassenobjekten, beispielsweise Steuerungs- und Ausrüstungs-Modulklassenobjekten, komplexere Modulklassenobjekte, wie beispielsweise Einheiten-Modulklassenobjekte, in einfacher Weise durch Bezugnahme auf die grundlegenden Modulklassenobjekte erzeugt werden können. Obwohl Modulklassenobjekte auf andere Modulklassenobjekte verweisen oder diese verwenden können, ist es selbstverständlich möglich, dass sie zusätzlich hierzu oder stattdessen einfache Objekte oder Prozessentitäten definieren oder verwenden, beispielsweise Ventile, Sensoren etc., denen kein eigenes Modulklassenobjekt zugeordnet ist. Diese einfachen Objekte werden vollständig durch entsprechende Steuerungsroutinen innerhalb des Modulklassenobjekts selbst definiert.
  • Ein beispielhaftes Einheiten-Modulklassenobjekt 410 für Reaktoren ist in 6 dargestellt, um eine Axt und Weise der Beschreibung oder Definition der Entitäten zu verdeutlichen, die einem Einheiten-Modulklassenobjekt zugeordnet sind oder in diesem vorhanden sind. Wie 6 zeigt, enthält das Einheiten-Modulklassenobjekt 410 für Reaktoren eine Anzeige für einen Behälter 500, bei dem es sich um ein einfaches Objekt oder Element innerhalb der Prozessanlage 10 handelt, für das kein Modulklassenobjekt existiert. Der Behälter 500 ist durch gestrichelte Linien dargestellt, da keine Steuerungseingriffe oder untergeordnete Aktivitäten erforderlich sind, um Steuerungsaufgaben oder Maßnahmen zum Befüllen bzw. Entleeren des Behälters auszuführen. Der Behälter 500 ist somit ausschließlich deswegen einbezogen, um die Verbindungen mit den anderen, dem Einheiten-Modulklassenobjekt 410 für Reaktoren zugeordneten Objekten wiederzugeben. Das Einheiten-Modulklassenobjekt 410 für Reaktoren beinhaltet außerdem drei Zumessungen 501, 502 und 510 mit den Bezeichnungen Acid, Alkali und Water, bei denen es sich um drei verschiedene Referenzen zu dem aus 5 ersichtlichen Ausrüstungs-Modulklassenobjekt 416 für Zumessungen handelt. Das Modulklassenobjekt 510 für die Wasserzumessung ist in einem Abschnitt des Einheiten-Modulklassenobjekts 410 wiedergegeben, der durch gestrichelte Linien abgetrennt ist, um anzuzeigen, dass es sich hierbei um ein gemeinsam genutztes Modulklassenobjekt handelt, und dass somit das Einheiten-Modulklassenobjekt 410 zusammen mit anderen Einheiten-Modulklassenobjekten die Kontrolle über dieses Objekt hat. Das Objekt Outlet 504 der 6 ist eine Referenz zum Ausrüstungs-Modulklassenobjekt 418 für Auslassventile in der 5, der Pegelmesser 505 ist eine Referenz zum Steuerungs-Modulklassenobjekt 424 für Pegelmesser in der 5, und das Ventil water_in 503 ist eine Referenz zu einem Ventilobjekt, bei dem es sich um ein einfaches Ventilelement (das somit vollständig innerhalb des Einheiten-Modulklassenobjekts 410 definiert ist) handeln kann, oder um eine Referenz zu einem Steuerungs-Modulklassenobjekt für Ventile, das an beliebiger anderer Stelle der Konfigurierungsstrategie definiert sein kann. Die physikalischen Verbindungen zwischen den verschiedenen Entitäten oder Teilen des Einheiten-Modulklassenobjekts 410 für Reaktoren sind ebenfalls dargestellt, um die Verbindungen zwischen den verschiedenen Elementen zu definieren. Wie oben angemerkt, können das Einheiten-Modulklassenobjekt 410 oder andere Modulklassenobjekte von beliebigem Typ einfache Elemente enthalten, die vollständig innerhalb des Modulklassenobjekts definiert sind (einschließlich jedweder verbundenen generischen Steuerungsroutinen), und/oder Referenzen zu Modulklassenobjekten, die außerhalb des Modulklassenobjekts definiert sind.
  • Das Einheiten-Modulklassenobjekt 410 enthält außerdem zwei beispielhafte Display-Modulklassenobjekte mit den Bezeichnungen Reactor viewing display 520 und Reactor alarm display 522, bei denen es sich um Referenzen zum Display-Modulklassenobjekt 434 für die Anzeigen und zum Display-Modulklassenobjekt 432 für die Alarme der 5 handelt. Diese Objekte definieren generische Displayaktivitäten zur Anzeige der Zustände (beispielsweise Füllstand im Behälter) und der Alarme, die den Ausrüstungskomponenten oder Teilen der Reaktoreinheit zugeordnet sind, die im Einheiten-Modulklassenobjekt 410 für Reaktoren definiert ist. In entsprechender Weise kann das Einheiten-Modulklassenobjekt 410 andere Elemente enthalten, z.B. Phasenklassenobjekte, im Feld 524 als die Phasenklassenobjekte Dose, Mix, Drain und Flush bezeichnet (Dosieren, Mischen, Entleeren und Spülen), die jeweils eine generische Steuerungsroutine definieren, die auf die vom Einheiten-Modulklassenobjekt 410 definierte Einheit anzuwenden ist. Das Einheiten-Modulklassenobjekt kann keine oder mehrere Zuordnungen zu Phasenklassenobjekten aufweisen. Die Phasenklassenobjekte 524 können an beliebiger Stelle definiert und in jeder gewünschten Weise in das Einheiten-Modulklassenobjekt 410 importiert werden. In gewissem Sinn stellen die Phasenklassen 524 Anweisungen oder Routinen dar, die auf eine vom Einheiten-Modulklassenobjekt 410 definierte Einheit angewendet werden können, um verschiedene Funktionen auszuführen, beispielsweise Befüllen der Einheit, Erhitzen der Einheit, Entleeren der Einheit, Reinigen der Einheit etc.
  • Darüber hinaus kann das Einheiten-Modulklassenobjekt 410 einen Speicher bzw. einen Bereich 526 enthalten, in dem Referenzen zu den Modulklassenobjekten abgelegt sind, die mittels der Konfigurierungsapplikation 50 (1) aus diesem Einheiten-Modulklassenobjekt 410 erzeugt werden. Der Bereich 526 besteht im Wesentlichen aus einer Liste der Modulobjekte, die vom Einheiten-Modulklassenobjekt 410 erzeugt wurden und diesem zugehörig sind. (Selbstverständlich können diese Liste oder andere Angaben zu den zugehörigen Modulobjekten in jeder gewünschten Weise in der Workstation oder in der Konfigurierungsapplikation 50 gespeichert werden und müssen nicht physikalisch im Einheiten-Modulklassenobjekt 410 enthalten sein). In jedem Fall verfügt das Einheiten-Modulklassenobjekt 410 im Beispiel der 6 über die Einheitenmodulobjekte Reactor_01, Reactor_1, Reactor_02 etc., die alle aus dem Einheiten-Modulklassenobjekt 410 für Reaktoren erzeugt wurden.
  • Das Einheiten-Modulklassenobjekt 410 enthält außerdem einen Satz von Verfahren 530, die vom Einheiten-Modulklassenobjekt 410 entweder während oder nach den Konfigurierungsmaßnahmen zu beachten sind. Die Methoden 530 können eine Methode zur Änderung der Steuerungsstruktur oder eine Applikation beinhalten, mit der Veränderungen am Einheiten-Modulklassenobjekt 410 automatisch auf alle dem Einheiten-Modulklassenobjekt 410 zugehörigen Modulobjekte 526 übertragen werden. Andere Methoden können die Sicherheit des Systems betreffen, indem sie die Sicherheit bzw. die Zugriffsberechtigungen bezüglich des Einheiten-Modulklassenobjekts 410 und/oder bezüglich eines jeden der diesem zugehörigen Einheitenmodulobjekte 526 kontrollieren, oder Methoden, die es einem Nutzer oder einem Konfigurierungstechniker ermöglichen, Änderungs- und/oder Sicherheitsparameter für das Modulklassenobjekt oder für jedes der aus diesem erzeugten Modulobjekte zu spezifizieren. Selbstverständlich können die verschiedenen Methoden 530 jede andere Prozedur, die auf das oder in Bezug auf das Einheiten-Modulklassenobjekt 410 wirkt, ausführen.
  • Wenn dies gewünscht wird, kann das Einheiten-Modulklassenobjekt 410 die Art und Weise steuern, in der Änderungen, die am Modulklassenobjekt 410 vorgenommen wurden, auf die Einheitenmodulobjekte 526 übertragen werden, und ebenso die Art und Weise, in der die Zugriffssicherheit bzw. der Sicherheitszugriff in den Einheitenmodulobjekten 526 realisiert ist. Ein Verfahren zur Bereitstellung dieser Funktionalität besteht im Setzen eines oder mehrerer Flags oder Parameter innerhalb des Einheiten-Modulklassenobjekts 410, um die Art und Weise festzulegen, in der Änderungen auf die Einheitenmodulobjekte 526 zu übertragen sind, und wie deren Zugriffssicherheit zu handhaben ist. Insbesondere können ein oder mehrere Parameter betreffend die Übertragung von Änderungen gesetzt werden, um zu spezifizieren, ob am Einheiten- Modulklassenobjekt 410 vorgenommene Änderungen automatisch an eines oder mehrere der Einheitenmodulobjekte 526 zu übertragen sind. Die Parameter zur Steuerung der Anderungsübertragung können in den Einheitenmodulobjekten 526 gespeichert werden und für das gesamte Einheitenmodulobjekt oder für ein Unterelement auf Unterelementbasis spezifizieren, ob am Einheiten-Modulklassenobjekt vorgenommene Änderungen an die Einheitenmodulobjekte weitergegeben werden sollen. Beispielsweise kann das Einheiten-Modulklassenobjekt 410 einen globalen Änderungsparameter 534 (mit "C" bezeichnet) enthalten, der in jedem Einheitenmodulobjekt gesetzt werden kann, das aus dem Einheiten-Modulklassenobjekt 410 erzeugt wurde, um die automatische Weitergabe von am Einheiten-Modulklassenobjekt 410 vorgenommenen Änderungen an das Einheitenmodulobjekt zu sperren oder freizugeben. Ebenso kann ein jedes Unterelement bzw. jeder Block, beispielsweise die Blöcke 501-505, 510, 520 und 522, einen Änderungsparameter 536 enthalten, der ausschließlich für den jeweiligen Block angibt, ob Änderungen, die im Einheiten-Modulklassenobjekt 410 an diesem Block vorgenommen wurden, an das Einheitenmodulobjekt weiterzugeben sind. Selbstverständlich können die verschiedenen Blöcke eines Einheitenmodulobjekts unterschiedlich gesetzt sein, so dass beispielsweise Änderungen, die am Acid block (Säureblock) 501 des Einheiten-Modulklassenobjekts 410 vorgenommen werden, an den korrespondierenden Säureblock eines bestimmten unter den Modulobjekten 526 weitergegeben werden, jedoch derart, dass Änderungen, die am Alkali block (Alkaliblock) 502 des Einheiten-Modulklassenobjekts 410 vorgenommen werden, nicht an den Alkaliblock dieses bestimmten Einheitenmodulobjekts weitergegeben werden. Darüber hinaus können die verschiedenen Einheitenmodulobjekte, die aus einem Einheiten-Modulklassenobjekt erzeugt wurden, jeweils unterschiedlich gesetzte Änderungsparameter aufweisen, so dass Änderungen am Alkaliblock 502 innerhalb des Einheiten-Modulklassenobjekts 410 an den korrespondierenden Alkaliblock eines ersten der Einheitenmodulobjekte 526 weitergegeben werden, nicht aber an den korrespondierenden Alkaliblock eines zweiten der Einheitenmodulobjekte 526. Selbstverständlich kann die Verfahrensmethode des Einheiten-Modulklassenobjekts 410 zur Veränderung der Steuerungsstruktur auf die Änderungsparameter der Einheitenmodulobjekte 526 zugreifen und sie nutzen, um eine Änderung an diesen Objekten vorzunehmen bzw. die Änderung zu unterlassen, wenn die betreffende Änderung am Einheiten-Modulklassenobjekt 410 vorgenommen wird.
  • In entsprechender Weise kann das Einheiten-Modulklassenobjekt 410 einen oder mehrere Sicherheitsparameter aufweisen, die die Art und Weise bestimmen, in der die Sicherheit oder der Zugriffsschutz in jedem der Einheitenmodulobjekte 526 kontrolliert wird. Das Einheiten-Modulklassenobjekt 410 kann einen globalen Sicherheitsparameter 538 enthalten (mit "S" bezeichnet), der jede gewünschte Höhe der Zugriffssicherheit zum gesamten Einheitenmodulobjekt für Reaktoren, das aus dem Einheiten-Modulklassenobjekt 410 für Reaktoren erzeugt wurde, einstellen kann, und/oder es kann verschiedene Sicherheitsparameter 540 für jedes Unterelement des Einheiten-Modulklassenobjekts 410 enthalten, beispielsweise für jeden der Blöcke 501-505, 510, 520, 522 etc., die jeweils auf blockweiser Basis eine Höhe der Zugriffssicherheit für jeden dieser Blöcke spezifizieren. Der globale Sicherheitsparameter 538 kann als Zugangssperre wirken, die das Einheiten-Modulklassenobjekt für den Zugriff durch alle Nutzer sperrt, mit Ausnahme solcher, die über eine im Voraus bestimmte Höhe der Zugriffsberechtigung verfügen. Selbstverständlich können die Sicherheitsparameter 538 und 540 jede beliebige Höhe der Zugriffssicherheit entsprechend mehreren Stufen spezifizieren, beispielsweise kein Zugriff, begrenzter Zugriff, Zugriff für bestimmte Nutzergruppen oder einzelne Nutzer etc., und die Sicherheitshöhen können für die verschiedenen Blöcke und die verschiedenen Einheitenmodulobjekte, die aus dem gleichen Einheiten-Modulklassenobjekt erzeugt wurden, unterschiedlich gesetzt werden. Wenn gewünscht, können Teile der Sicherheitsmaßnahmen Verschlüsselungen für eine oder mehrere Methoden oder Algorithmen beinhalten, die dem Einheiten-Modulklassenobjekt zugeordnet sind.
  • Es versteht sich von selbst, dass die, Änderungs- und Sicherheitsparameter des Einheiten-Modulklassenobjekts 410 mit Standardwerten vorbesetzt werden können, und dass die entsprechenden Änderungs- und Sicherheitsparameter jedes Einheitenmodulobjekts 526, das aus dem Einheiten-Modulklassenobjekt 410 erzeugt wurde, bei der Erzeugung die betreffenden Standardwerte übernehmen können. Jedoch können die Standardwerte für die Änderungs- und Sicherheitsparameter in den Einheitenmodulobjekten 526 auch individuell verändert werden (durch einen Nutzer mit entsprechender Zugriffsberechtigung), nachdem diese Einheitenmodulobjekte erzeugt wurden. Auch wenn die Änderungs- und Sicherheitsparameter hierin in Bezug auf ein Einheiten-Modulklassenobjekt für Reaktoren erläutert werden, können entsprechende Änderungs- und Sicherheitsparameter auch in anderen Typen von Einheiten-Modulklassenobjekten sowie in allen gewünschten Typen von Ausrüstungs-Modulklassenobjekten, Steuerungs-Modulklassenobjekten, Display-Modulklassenobjekten etc. bereitgestellt werden.
  • Wenn gewünscht, kann das Einheiten-Modulklassenobjekt 410 Referenzen wie beispielsweise URLs oder andere Verweise auf Dokumentation enthalten, die für das Einheiten-Modulklassenobjekt gespeichert oder diesem zugeordnet ist, einschließlich Dokumentation, die der dem Einheiten-Modulklassenobjekt 410 zugehörigen Einheit oder beliebigen Unterelementen der Einheit zugeordnet ist. Solche Verweise sind in 6 als Referenzen 549 dargestellt.
  • Als weiteres Beispiel eines Modulklassenobjekts ist in 7 ein Ausrüstungs-Modulklassenobjekt 416 für Zumessungen dargestellt. Das Ausrüstungs-Modulklassenobjekt 416 für Zumessungen enthält Steuerungs-Modulklassenobjekte mit den Bezeichnungen Coarse_Valve 550 und Fine_Valve 552 (beides Steuerungs-Modulklassenobjekte für Öffnen/Schließen) und ein Steuerungs-Modulklassenobjekt mit der Bezeichnung Flow_Meter 554 (bei dem es sich um ein Steuerungs-Modulklassenobjekt für Durchflussmesser handelt) sowie die angedeuteten Verbindungen zwischen diesen Elementen. Außerdem enthält das Ausrüstungs-Modulklassenobjekt 416 für Zumessungen Referenzen zu Display-Modulklassenobjekten einschließlich eines Display-Modulklassenobjekts 560 für Zumessungsalarme, und zu einem oder mehreren Algorithmen 564, die im Ausrüstungs-Modulklassenobjekt 416 implementiert werden können. Auch wenn die dargestellte Auflistung der Algorithmen 564 eine Anweisung Totalize_Fast und eine Anweisung Totalize_Accurate enthält, können beliebige andere Anweisungen oder Algorithmen ebenso einbezogen oder verwendet werden. Des Weiteren kann der Anweisungsalgorithmus 564, der mit einem Ausrüstungs-Modulklassenobjekt verbunden oder in dieses einbezogen ist, jede beliebige Form haben, wobei es sich beispielsweise um anweisungsgesteuerte Algorithmen (CDAs – command driven algorithms), zustandsgesteuerte Algorithmen (SDAs – state driven algorithms), sequentielle Folgesteuerungsalgorithmen (SFC – sequential flow chart algorithms), Funktionsblockalgorithmen (FBD – function block diagram algorithms), Phasenalgorithmen etc. handeln kann. Allgemein gesagt, sind jedoch alle der Algorithmen 564 von einem bestimmten Typ, wie beispielsweise CDA oder SDA. Selbstverständlich können die Algorithmen 564 in jeder gewünschten Sprache oder Programmierumgebung geschrieben werden, beispielsweise den C- bzw. C++-Umgebungen, in jeder beliebigen sequentiellen Folgesteuerungsumgebung, einer Funktionsblockumgebung etc.
  • Das Ausrüstungs-Modulklassenobjekt 416 für Zumessungen beinhaltet ferner eine Liste oder einen Speicher mit Angaben (und falls erforderlich Kommunikationspfaden) zu einem Satz zugehöriger Ausrüstungsmodulobjekte 566 mit der Bezeichnung Acid1, Acid2, Alkali1, Alkali2, Water_Hdr1, etc., die aus dem Ausrüstungs-Modulklassenobjekt 416 erzeugt wurden. Das Ausrüstungs-Modulklassenobjekt 416 für Zumessungen umfasst ferner einen Satz Methoden 570 einschließlich einer Methode zur Veränderung der Steuerungsstruktur, die gemeinsam mit dem globalen Änderungsparameter 572 und/oder den Änderungsparametern 574 auf Objektbasis verwendet werden kann, um die Übertragung von Änderungen auf die Ausrüstungsmodulobjekte 566 zu steuern. Das Ausrüstungs-Modulklassenobjekt 416 für Zumessungen beinhaltet ferner einen globalen Sicherheitsparameter 580 sowie einen Sicherheitsparameter 582 auf Objektbasis. Die Änderungs- und Sicherheitsparameter 572, 574, 580 und 582 fungieren generell wie beschrieben bezüglich der Änderungs- und Sicherheitsparameter des Einheiten-Modulklassenobjekts 410 der 6 und können auf jedes der Elemente des Steuerungs-Modulklassenobjekts einschließlich der Anweisungen 564 angewandt werden. Des Weiteren können entweder nur die Änderungs- oder die Sicherheitsparameter oder beide auf jeder gewünschten anderen als der globalen Ebene oder auf Objekt- oder Elementebene innerhalb der Modulklassenobjekte (und damit innerhalb der daraus erzeugten Modulobjekte) bereitgestellt werden, wie hierin ausführlicher beschrieben. Wenn gewünscht, können die Änderungs- und Sicherheitsparameter eines Modulklassenobjekts oder eines daraus erzeugten Modulobjekts unter Verwendung einer Gruppenkonfigurierungsapplikation oder eines Gruppenkonfigurierungsprogramms, wie z.B. einem Tabellenkalkulationsprogramm, gesetzt oder konfiguriert werden, so dass ein Konfigurierungstechniker die verschiedenen Änderungs- und Sicherheitsparameter für das gesamte Modulklassenobjekt oder ein Modulobjekt auf einfache und unkomplizierte Weise setzen oder vorgeben kann.
  • Wenn gewünscht, kann das Ausrüstungs-Modulklassenobjekt 416 Referenzen wie beispielsweise URLs oder andere Verweise auf Dokumentation enthalten, die für das Ausrüstungs-Modulklassenobjekt gespeichert oder diesem zugeordnet ist, einschließlich Dokumentation, die der dem Ausrüstungs-Modulklassenobjekt 416 zugehörigen Ausrüstungskomponente oder beliebigen Unterelementen der Ausrüstungskomponente zugeordnet ist. Solche Verweise sind in 7 als Referenzen 599 dargestellt. Ebenso kann jeder der Algorithmen des Ausrüstungs-Modulklassenobjekts 416, beispielsweise jeder der Algorithmen 564, verschlüsselt sein oder über einen zugeordneten Sicherheitsparameter verfügen, der diese Algorithmem 564 verschlüsselt oder entschlüsselt. Eine solche Verschlüsselung oder Entschlüsselung kann, wenn gewünscht, durch eine Methode 570 erfolgen.
  • Um die Prozessanlage 10 zu konfigurieren, legt ein Konfigurierungstechniker nach Bedarf die erforderlichen Einheiten-, Ausrüstungs-, Steuerungs- und Display- Modulklassenobjekte in einer der Konfigurierungsapplikation 50 (1) zugeordneten Bibliothek an. Der Konfigurierungstechniker kann, wenn gewünscht, mit den Entitäten mit jeweils geringerem Umfang beginnen, beispielsweise den Steuerungs- und Displaymodulklassen, und anschließend die Modulklassenobjekte für die Entitäten mit größerem Umfang, wie z.B. die Ausrüstungs- und Einheiten-Modulklassenobjekte entwickeln, die die Entitäten mit geringerem Umfang verwenden oder auf diese Bezug nehmen können. Danach kann der Konfigurierungstechniker die Modulklassenobjekte wie erforderlich auswählen oder spezifizieren, um tatsächliche Modulobjekte entsprechend den gewählten Modulklassenobjekten für jede der Prozessentitäten innerhalb der Anlage zu erzeugen. Bei der Konfigurierung mehrfach vorhandener Ausrüstungskomponenten erzeugt der Konfigurierungstechniker ein Modulobjekt für jede Instanz der mehrfach vorhandenen Ausrüstungskomponenten aus dem jeweils gleichen Modulklassenobjekt. Somit kann der Konfigurierungstechniker für die Reaktoren der 1 ein Einheiten-Modulklassenobjekt für Reaktoren erzeugen (was die Erzeugung der anderen Modulklassenobjekte beinhaltet, auf die das Einheiten-Modulklassenobjekt für Reaktoren Bezug nimmt, wenn solche anderen Modulklassenobjekte nicht bereits in der Bibliothek vorhanden sind). Danach kann der Konfigurierungstechniker den Prozess konfigurieren, indem er für jeden der Reaktoren Reactor_01, Reactor_02 und Reactor_03 der 1 ein Einheitenmodulobjekt für Reaktoren aus dem Einheiten-Modulklassenobjekt für Reaktoren erzeugt.
  • Nach der Erzeugung eines oder mehrerer Modulobjekte aus einem Modulklassenobjekt kann der Konfigurierungstechniker die Modulobjekte (einschließlich der Unterobjekte oder der durch Referenz einbezogenen Objekte) mit den spezifischen Ausrüstungskomponenten der Anlage verbinden. Da die Einheitenmodulobjekte einem einzigen Einheiten-Modulklassenobjekt zugeordnet sind, können die Aliasnamen, Parameter und andere Variablen für die verschiedenen Einheitenmodulobjekte gemeinsam mittels beispielsweise einer Gruppenverarbeitungsapplikation, wie z.B. einer Tabellenkalkulation spezifiziert werden. Selbstverständlich spezifiziert der Konfigurierungstechniker eigentlich bei der Verknüpfung der Modulobjekte mit bestimmten Ausrüstungskomponenten die Steuervariablen und Kommunikationspfadnamen, die von den Steuerungsroutinen oder Steuerungsmodulen in den Steuerungsgeräten 12 genutzt werden, um Steuerungsaktivitäten im Betrieb der Prozessanlage 10 auszuführen, oder die Displayvariablen, die von den Displayroutinen im Betrieb der Prozessanlage 10 beispielsweise in den Workstations 14 verwendet werden. Nachdem die Maßnahmen zur Verknüpfung abgeschlossen sind, kann der Konfigurierungstechniker die gebundenen Steuerungsroutinen in die Steuerungsgeräte 12 und die gebundenen Displayroutinen in die Workstations 14 herunterladen.
  • 816 zeigen Bildschirmdarstellungen, die von der Konfigurierungsapplikation 50 der 1 erzeugt werden können, wenn der Konfigurierungstechniker bei der Konfigurierung Modulklassenobjekte erzeugt und verwendet, um die Prozessanlage 10 zu konfigurieren. Wie zu erkennen ist, enthalten die meisten der Bildschirmdarstellungen der 816 ein Explorer-Fenster im linken Bildschirmteil, in dem anhand einer Baumstruktur die Konfiguration der Prozessanlage 10 wiedergegeben ist. Ebenso enthalten die meisten der Bildschirmdarstellungen der 816 ein oder mehrere Informationsfenster im rechten Bildschirmteil. Diese Informationsfenster stellen weitere Information über im Explorer-Fenster ausgewählte Elemente bereit. Die Information, die einem Nutzer zur Anzeige gebracht oder die von einem Nutzer in den Informationsfenstern geändert werden kann, kann mittels der Steuerungs- und Sicherheitsparameter 534, 536, 538, 540, 572, 574, 580 und 582 der 6 und 7 festgelegt oder kontrolliert werden, die für jedes der verschiedenen Modulklassenobjekte oder deren Unterelemente gesetzt wurden. Folglich kann ein bestimmtes Element des Explorer-Fensters anhand der Sicherheits- und Steuerungsparameter, die im Modulklassenobjekt gesetzt sind, für einen Nutzer einsehbar und/oder veränderbar dargestellt und an die im Explorer-Fenster aufgeführten Modulobjekte übertragen werden. Wie weiter oben ausgeführt, kann Information selbstverständlich als grundsätzlich versteckt, als nur nach entsprechender Passwort- oder Sicherheitscodeeingabe eines Nutzers einsehbar oder veränderbar, als stets einsehbar aber unveränderlich, als stets einsehbar und veränderbar oder unter jeder beliebigen anderen Kombination dieser oder anderer Sicherheits- und Änderungsparameter gehalten werden. Wenn gewünscht, kann außerdem die Einsehbarkeit oder Veränderbarkeit eines Elements im Explorer-Fenster durch Hervorhebung, Abschattierung, Farbgebung oder beliebige andere Techniken angezeigt werden, um dem Nutzer Hinweise zu geben, welche Elemente in detaillierterer Form 8 eine Bildes darstelung 600 einen Abschnitt eines Explorer-Konfigurationsfensters 602, der auf der linken Seite des Display gezeigt ist. Der Abschnitt des Explorer-Fensters 602 zeigt eine Bibliothek, in der eine Vielzahl von Modulklassenobjekten gespeichert ist, einschließlich Einheiten-Modulklassenobjekten 604, Ausrüstungs-Modulklassenobjekten 606 und Steuerungs-Modulklassenobjekten 608. Ein Einheiten-Modulklassenobjekt 610 für Reaktoren (das dem Einheiten-Modulklassenobjekt 410 für Reaktoren der 6 entsprechen kann) ist in der Einheiten-Modulklassenbibliothek 604 gespeichert und enthält Angaben zu einer Vielzahl von Unterelementen einschließend die Phasenklassenobjekte Dose, Mix, Drain und Flush und die Ausrüstungs-Modulklassenobjekte Acid, Alkali, Water und Outlet, Steuerungs-Modulklassenobjekte Water In und Level Meter und weitere gewünschte Elemente. Somit enthält entsprechend der Definition in der Einheiten-Modulklassenbibliothek 604 das Einheiten-Modulklassenobjekt 610 für Reaktoren Angaben zu Phasenklassen sowie Angaben zu Ausrüstungs-Modulklassenobjekten und Steuerungs-Modulklassenobjekten. Da im Bildschirm 600 das Einheiten-Modulklassenobjekt 610 für Reaktoren angewählt ist, sind dessen Elemente im rechten Teil 612 des Bildschirms 600 in detaillierterer Form aufgelistet.
  • Des Weiteren enthält die Ausrüstungs-Modulklassenbibliothek 606 ein Ausrüstungs-Modulklassenobjekt 614 für Zumessungen (das dem Ausrüstungs-Modulklassenobjekt 416 für Zumessungen in 7 entsprechen kann) und ein Ausrüstungs-Modulklassenobjekt Reactor Outlet 616. Das Ausrüstungs-Modulklassenobjekt 614 für Zumessungen enthält drei verschiedene Abschnitte eines Algorithmus (z.B. einen der Algorithmen 564 der 7) mit den Bezeichnungen Command_00001, Command_00002 und Command_00003. Das Modulklassenobjekt 614 enthält außerdem Referenzen zu Steuerungsmodulobjekten mit den Bezeichnungen Coars_Valve und Fine_Valve (bei denen es sich um Steuerungs-Modulklassenobjekte für Absperrelemente handelt) und Flow_Meter (bei dem es sich um ein Steuerungs-Modulklassenobjekt für Durchflussmesser handelt). Weiter enthält das Ausrüstungs-Modulklassenobjekt Reactor_Outlet 616 einen zustandsgesteuerten Algorithmus, der verschiedene Zustände mit den Bezeichnungen State_00001, State_00002 und State_00003, Module mit den Bezeichnungen Target, Drive, Monitor und Readback, und Steuerungsmodulobjekte für Ventile mit den Bezeichnungen Outlet, Drain und Product umfasst (wobei es sich bei den letzteren um Angaben zu oder um Referenzen auf Modulblöcke des Typs Steuerungs-Modulklassenobjekt für Absperrelemente handeln kann, die die Bezeichnungen Outlet, Drain und Product tragen, oder wobei diese auch nur einfache Objekte sein können). Bei den anweisungs- und zustandsgesteuerten Algorithmen, die den Modulklassenobjekten Totalizer 614 und Reactor_Outlet 616 zugeordnet sind, kann es sich um beliebige, wie gewünscht aufgebaute Routinen handeln, die auf Steuerungsmodulobjekte innerhalb des Ausrüstungs-Modulklassenobjekts Bezug nehmen können, die in Verbindung mit den betreffenden Anweisungen verwendet werden sollen. Insbesondere können die CDA- und SDA-Anweisungsalgorithmen der Ausrüstungs-Modulklassenobjekte Ausdrücke oder Maßnahmen enthalten, die auf Steuerungsmodule (oder andere Ausrüstungsmodule) Bezug nehmen, indem sie die Bezeichnungen der Modulblöcke übernehmen, die diesen Modulen entsprechen, um anzugeben, welche Ausrüstungskomponente bei der Ausführung des Algorithmus zu manipulieren ist. Die Verwendung des Namens des Modulblocks, der dem Steuerungsmodul (oder einem anderen Ausrüstungsmodul) innerhalb dieser Algorithmen entspricht, spezifiziert das Steuerungsmodulobjekt, auf das vom Ausrüstungsmodulobjekt, in dem sich der Algorithmus befindet, Bezug genommen wird bzw. das diesem zugeordnet ist, und die spezifischen Bezeichnungen werden eingebunden oder instantiiert, wenn das Ausrüstungsmodulobjekt aus dem Ausrüstungs-Modulklassenobjekt erzeugt wird.
  • 9 zeigt einen Konfigurationsbildschirm 620, in dem das Ausrüstungs-Modulklassenobjekt 614 für Zumessungen expandiert dargestellt ist, um die damit verbundene Ablauflogik aufzuzeigen, die die anweisungsgesteuerten Algorithmen mit den Bezeichnungen Command_00002, Command_00003 und Command_00099 enthält. Im rechten Teil 622 des Bildschirms 620 sind detailliertere Informationen zu den Steuerungsroutinen der Ablauflogik enthalten. Insbesondere handelt es sich bei Command_00002 um eine Routine für die exakte Zumessung, die für die Steuerung des exakten oder feinen Stroms der Zumessung genutzt wird. Command_00003 ist eine Routine für die Grobzumessung, die genutzt wird, um den schnellen Strom der Zumessung zu steuern bzw. durch diesen zu befüllen, und Command_00099 ist eine Rücksetzroutine, die die Zumessung zurücksetzt. Der Block mit der Bezeichnung Monitor im Bildschirm 620 ist ein der Ablauflogik zugeordneter Funktionsblock, der Überwachungsaktivitäten bereitstellt. Wie aus 8 und 9 hervorgeht, hat jedes der Elemente innerhalb der Modulklassenobjekte der Bibliotheken 604, 606 und 608 Unterobjekte und Unterelemente, und in einigen oder allen Fällen nehmen die Unterelemente Bezug auf oder übernehmen Steuerungsroutinen oder Displayroutinen, die im Betrieb der Prozessanlage 10 von einem Computer wie beispielsweise einem Steuerungsgerät oder einer Workstation auszuführen sind. Die Steuerungs- und Displayroutinen und die sonstigen Bezugnahmen auf Ausrüstungskomponenten innerhalb der Modulklassenobjekte sind jedoch generischer Natur, so dass sie mit keinen bestimmten tatsächlichen Ausrüstungskomponenten der Prozessanlage 10 verknüpft oder verbunden sind.
  • 10 zeigt eine weitere Bildschirmdarstellung 630, die die Details der Routine Command_00002 in der Ablauflogik des Ausrüstungs-Modulklassenobjekts Totalizer 614 aufzeigt. Wie in einem Pop-up-Fenster 632, das von einem Editor 634 zur Programmierung sequentieller Funktionspläne erzeugt wird, zu erkennen ist, enthält die Routine Command_00002 eine Folge von Schritten, wobei jeder Schritt eine Folge von Maßnahmen umfasst. Nur die erste Maßnahme (A1) des ersten Schritts (S1) der Routine Command_00002 ist im Fenster 632 dargestellt. Dabei ist anzumerken, dass die erste Maßnahme des ersten Schritts der Routine Command_00002 den Parameter Reset des Steuerungsmodulobjekts Flow_Meter auf "True" setzt, und anschließend auf Basis der Zustände der Variablen SP den Parameter Target_State des Steuerungsmodulobjekts (oder Modulblocks) Coarse Valve auf "Valve:Open" und den Parameter Target_State des Steuerungsmodulobjekts (oder Modulblocks) Fine Valve auf "Valve:Open" setzt. Es versteht sich von selbst, dass dieser Abschnitt der Routine Command_00002 auf die Steuerungsmodulobjekte (oder Modulblöcke) Flow_Meter, Coarse Valve und Fine Valve Bezug nimmt, die an diesem Punkt in generischer Form dem Ausrüstungs-Modulklassenobjekt Totalizer zugeordnet sind, dass aber die Routine Command_00002 jedes tatsächlichen Ausrüstungsmodulobjekts für Zumessungen, das aus dem Ausrüstungs-Modulklassenobjekt für Zumessungen erzeugt wurde, auf den tatsächliche Namen des Steuerungsmodulobjekts Bezug nehmen wird, das mit dem oder als Teil des Ausrüstungsmodulobjekts für Zumessungen erzeugt wurden.
  • 11 ist eine Bildschirmdarstellung 640, die Details eines Steuerungsalgorithmus zeigt, der der Phasenklasse Dose 642 zugeordnet ist, die vom Einheiten-Modulklassenobjekt Reactor 610 der 8 verwendet werden oder auf die dieses Bezug nehmen kann. Insbesondere enthält die Phasenklasse Dose 642 einen Satz verschiedener allgemeiner Steuerungsmaßnahmen, zu denen Abort, Fail, Hold, Restart und Run gehören. Die mit der Maßnahme Run verbundene Logik (als Run_Logic bezeichnet) umfasst eine Folge von Schritten, die im Bildschirmabschnitt 644 als Step 1 (S1), Step 2 (S2) und Step 3 (S3) bezeichnet sind, außerdem zwei Ubergänge (Transitions) T1 und T2 und einen Abschluss (Termination). Ein Editor für sequentielle Funktionspläne 646 liefert eine grafische Darstellung der Schritte und der Übergänge in Form eines Blockdiagramms. Ein Pop-up-Bildschirm 648 bringt die tatsächliche, mit Action 1 (A1) von Step 1 (S1) verbundene Steuerlogik zur Ausgabe. Insbesondere enthält die Ablauflogik im Fenster 648, bei dem es sich um einen Logikeditor handelt, die Maßnahmen für die Zuteilung des gemeinsam genutzten Wasserheaders für den Reaktor, das Öffnen des Ventils water in und das anschließende Rücksetzen aller dem Reaktor zugehörigen Zumessungen.
  • Da die Phasenklasse Dose unabhängig vom Reaktor geschrieben ist, verwendet sie Aliasnamen für den Bezug auf Ausrüstungskomponenten, die zur Laufzeit oder zu einem früheren Zeitpunkt spezifiziert werden, die aber selbst verständlich nicht im Einheiten-Modulklassenobjekt für Reaktoren spezifiziert werden können. Jedoch beziehen sich die Referenzen auf tatsächliche Vorrichtungen oder andere Prozesselemente, die im Steuerungsalgorithmus 648 verwendet werden, auf solche Vorrichtungen, die innerhalb des gleichen Modulklassenobjekts vorliegen, in diesem Fall im Einheiten-Modulklassenobjekt für Reaktoren. In der Steuerungsroutine 648 werden Aliasnamen mit dem Symbol # versehen, so dass #WATER_IN# ein Aliasname für das Steuerungsmodul water_in im gleichen Modul ist, d.h. im Einheiten-Modulklassenobjekt 610. In gleicher Weise beziehen sich die Bezeichnungen #WATER#, #ACID# und #ALKALI# auf die Zumessungs-Modulblöcke Water, Acid und Alkali im Einheiten-Modulklassenobjekt Reactor 610. Selbstverständlich ist klar, dass die Ausrüstungs-Modulklassenobjekte für Zumessungen und Reaktorauslass und das Steuerungs-Modulklassenobjekt für Absperrventile dem Einheiten-Modulklassenobjekt für Reaktoren durch entsprechende Ausrüstungsmodulobjekte für Zumessungen und Reaktoren (mit beispielsweise den Bezeichnungen Alkali1, Acid1 etc.) und Steuerungsmodulobjekte für Absperrventile (mit beispielsweise den Bezeichnungen Coarse_Valve1, Fine_Valve1, Outlet1 etc.) zugeordnet sind und auf diese Weise logische Teile des betreffenden Einheitenklassenobjekts werden.
  • 12 zeigt eine Bildschirmdarstellung 650, in der das Ausrüstungs-Modulklassenobjekt Reactor Outlet 616 detaillierter dargestellt ist. Die dem Ausrüstungs-Modulklassenobjekt Reactor_Outlet 616 zugeordnete Run Logic ist im Bildschirmabschnitt 652 gezeigt und umfasst die Elemente Drive, Monitor und Readback, und insbesondere einen zustands-gesteuerten Algorithmus mit vier separaten Zuständen, die zur Steuerung der Ventile dienen, die dem Ausrüstungs-Modulklassenobjekt Reactor Outlet 616 zugeordnet sind. Der rechte Bildschirmabschnitt 654 enthält Einzelheiten zu den Elementen Drive mit den Bezeichnungen Drain_SP, Outlet_SP und Product_SP in den Steuerblöcken oder Steuerungsmodulen, die zum Öffnen oder Schließen der tatsächlichen Ventile verwendet werden, und außerdem die Kommunikationspfadspezifikationen für jedes Steuerungsmodul Target_State in den Modulblöcken mit den Bezeichnungen Drain, Outlet und Product. Eine Rücklesepfadspezifikation stellt den Kommunikationspfad für den Readback-Parameter von Current_State in jedem der Modulblöcke Drain, Outlet und Product bereit, außerdem werden die Zustände der Ventile für die verschiedenen Zustände der Ausrüstungskomponente Reactor_Outlet angegeben. Demgemäß zeigen die Einzelheiten zu Drive im Bildschirmabschnitt 654, dass bei Reactor_Outlet 616 im geschlossenen Zustand die Entleerungs-, Auslass- und Produktventile alle geschlossen sind, dass während des Entleerungsvorgangs (Draining) die Entleerungs- und Auslassventile geöffnet sind, während das Produktventil geschlossen ist, und dass während des Abziehens des Produkts das Entleerungsventil geschlossen und das Auslass- und das Produktventil geöffnet sind. Es ist klar, dass die Bildschirmdarstellung 650 der 12 nur eine Art und Weise verdeutlicht, die zustandsgesteuerte Steuerlogik für ein Ausrüstungs-Modulklassenobjekt zu spezifizieren, und dass ebenso gut jede gewünschte andere Art und Weise gewählt werden kann.
  • Wenn gewünscht, können selbstverständlich diese oder ähnliche Bildschirme wie die Bildschirme 9–12 von einem Konfigurierungstechniker verwendet werden, um Steuerungsalgorithmen innerhalb der Phasenklassen Dose oder anderen zu erzeugen und zu spezifizieren, oder auch für beliebige der anderen Module, wie z.B. Einheiten-Modulklassenobjekte, Ausrüstungs-Modulklassenobjekte und Display-Modulklassenobjekte, um auf diese Weise jedes gewünschte Modulklassenobjekt zu erzeugen.
  • Nach dem Erzeugen eines oder mehrerer Modulklassenobjekte gemäß vorstehender Beschreibung kann der Konfigurierungstechniker anschließend diese Modulklassenobjekte verwenden, um Elemente innerhalb der Prozessanlage 10 zu konfigurieren. 13 zeigt einen Bildschirm 660, der eine hierarchische Darstellung 661 aufweist, in der eine Systemkonfiguration 662 der Prozessanlage 10 zur Anzeige gebracht wird. Die Systemkonfiguration 662 enthält einen Abschnitt mit der Bezeichnung Control Strategies 664, der die Steuerungsstrategien für die Prozessanlage 10 und insbesondere für die Nutzung bei der Steuerung der Prozessentitäten der Prozessanlage 10 spezifiziert. Die Steuerungsstrategien 664 sind in logische Gruppierungen unterteilt, beispielsweise entsprechend den physikalischen Bereichen der Anlage 10. Ein Bereich Area_A 665 ist im Fenster 661 wiedergegeben. Area_A 665 umfasst eine Sektion zur Salzherstellung 666 mit der Bezeichnung Salts, die eine Vielzahl von Teilen oder Beispielen mehrfach vorhandener Ausrüstungskomponenten enthalten kann, die für die Salzherstellung genutzt werden.
  • Um die Sektion der Anlage 10 zur Salzherstellung zu konfigurieren, kann der Konfigurierungstechniker das Einheiten-Modulklassenobjekt 610 für Reaktoren aus der Einheiten-Modulklassenbibliothek 604 der 8 wählen und dieses durch Ziehen oder auf andere Weise unter die Uberschrift Salts 666 kopieren, um eine Instanz eines Reaktors entsprechend der durch das Einheiten-Modulklassenobjekt 610 für Reaktoren spezifizierten Form zu erzeugen. Dieser Reaktor ist in 13 als das Einheitenmodulobjekt Reactor_1 668 wiedergegeben. Die Konfigurierungsapplikation 50 kann das Einheitenmodulobjekt Reactor_1 668 automatisch auf Basis des Namens des Einheiten-Modulklassenobjekts, aus dem es erzeugt wurde, benennen, und zwar in einer Axt und Weise, die die Eindeutigkeit innerhalb des Konfigurierungssystems sicherstellt. Wie in 13 gezeigt, enthält das Einheitenmodulobjekt Reactor_1 668 ein Ausrüstungsmodulobjekt für Zumessungen Acid_1, ein Ausrüstungsmodulobjekt für Zumessungen Alkali_1, und ein Ausrüstungsmodulobjekt Outlet 2, die den Modulklassenobjekten für Säure, Alkali und Auslassventile entsprechen, die im Einheiten-Modulklassenobjekt 610 für Reaktoren spezifiziert sind. Außerdem umfasst das Einheitenmodulobjekt Reactox_1 668 die Einheitenphasen Dose, Drain, Flush und Mix (aus den Phasenklassen abgeleitet) gemäß der Spezifikation durch das Modulklassenobjekt 610. Ein Ordner mit der Bezeichnung Aliases stellt eine Aliasauflösungstabelle bereit, die die Zuordnung der Aliasnamen enthält, die von den Steuerungsroutinen an beliebigen Stellen des Einheitenmodulobjekts Reactor_1 668 verwendet werden. Durch die Aliasauflösungstabelle im Einheitenmodulobjekt Reactor_1 668 ist es möglich, die Steuerungsroutinen vor der oder zur Laufzeit zu analysieren, um sie einer bestimmten Ausrüstungskomponente innerhalb der Prozessanlage 10 zuzuordnen. Die Verwendung von Einheitenphasen und Aliasauflösungstabellen ist detailliert in der US-Patentschrift Nr. 6,385,496 beschrieben, die für die Anmelderin dieses Patents angemeldet wurde, und die hierin ausdrücklich durch Referenz einbezogen ist. Außerdem enthält das Einheitenmodulobjekt Reactor_1 668 die Modulobjekte Water_HDR1 und Water_In, die dem Ausrüstungs-Modulklassenobjekt für die Wasserzumessung entsprechen, auf die im Einheitenklassenobjekt Reactor 610 und im Steuerungs-Modulklassenobjekt für Absperrventile Water_In des Einheitenklassenobjekts Reactor 610 Bezug genommen wird. Selbstverständlich kann die Konfigurierungsapplikation 50 wiederum automatisch das Bezeichnungsschema, das für die Elemente des Einheitenmodulobjekts Reactor_1 688 verwendet wurde, auf Basis der Namen der entsprechenden Elemente im Einheiten-Modulklassenobjekt Reactor 610 bereitstellen, aus dem die einzelnen Elemente des Einheitenmodulobjekts Reactox_1 668 erzeugt wurden, und zwar in einer Axt und Weise, die die Eindeutigkeit innerhalb der Konfigurierungsstrategie sicherstellt.
  • Aus der Erläuterung unter Bezug auf das Einheiten-Modulklassenobjekt Reactor 610 geht hervor, dass Water_HDR1 ein gemeinsam genutzter Wasserheader ist (entsprechend dem Wassereinlassventilsystem 110 der 1). Deshalb wird ein separates Ausrüstungsmodulobjekt unter dem Eintrag Salts 666 mit der Bezeichnung Water_HDR1 670 bereitgestellt. Selbstverständlich kann der Konfigurierungstechniker das Modulobjekt Water_HDR1 670 aus dem Ausrüstungs-Modulklassenobjekt 614 für Zumessungen der 8 erzeugen, indem ex das Element durch Kopieren oder Ziehen in das Bildschirmfenster 661 kopiert. Wie hierbei zu erwarten, umfasst der gemeinsam genutzte Wasserheader Water_HDR1 670 in der Darstellung spezielle Steuerungsmodulobjekte für Absperrventile (mit den Bezeichnungen Coarse_Valve4 und Fine_Valve 4) und ein spezielles Steuerungsmodulobjekt für einen Durchflussmesser (mit der Bezeichnung Flow_Meter4), die den Steuerungs-Modulklassenobjekten Coarse Valve, Fine Valve und Flow_Meter des Ausrüstungs-Modulklassenobjekt 614 für Zumessungen der 8 entsprechen. Außerdem bezieht sich die Referenz Water_HDR1 im Modulobjekt Reactor_1 668 auf das Ausrüstungsmodulobjekt Water_HDR1 670.
  • Selbstverständlich könnten beliebige der Ausrüstungs- oder Steuerungsmodule innerhalb eines Einheiten-Modulklassenobjekts als gemeinsam genutzte oder als nicht gemeinsam genutzte Modulobjekte gekennzeichnet werden. Ein nicht gemeinsam genutztes Modulobjekt ist vollständig dem übergeordneten Modulobjekt zugehörig, in dem das nicht gemeinsam genutzte Modulobjekt erzeugt wurde. Ein gemeinsam genutztes Modulobjekt ist mehreren übergeordneten Modulobjekten zugehörig oder diesen zugeordnet. Die Eigenschaft gemeinsam genutztes bzw. nicht gemeinsam genutzes Modulobjekt wirkt sich auf die Anzeige eines Modulobjekts im Explorerfenster aus. Insbesondere bewirkt die Kennzeichnung als nicht gemeinsam genutztes Modulobjekt, dass das Modulobjekt nur unter dem übergeordneten Modulobjekt innerhalb der Steuerungsstrategie aufgelistet wird, während eine Kennzeichnung als gemeinsam genutztes Modulobjekt dazu führt, dass der gemeinsam genutzte Modulblock bzw. das Modulobjekt unter jedem der übergeordneten Modulobjekte aufgelistet wird, die das Element gemeinsam nutzen, und außerdem als eigenständiges Modulobjekt in der Explorerhieraxchie eingetragen wird.
  • Es ist klar, dass der Konfigurierungstechniker innerhalb der Sektion Control Strategies 664 des Konfigurierungssystems eine Steuerungsstrategie für einen vollständigen Reaktor erzeugen kann, indem er einfach ein Einheiten-Modulklassenobjekt 610 für Reaktoren kopiert und damit eine Instanz desselben erzeugt (das Einheitenmodulobjekt Reactor 668), die über alle Elemente verfügt, die im Einheiten-Modulklassenobjekt 610 für Reaktoren spezifiziert sind. Die einzelnen Einheiten und insbesondere die Steuerungselemente des Einheitenmodulobjekts Reactor 668 können jedoch mit bestimmten Entitäten innerhalb der Prozessanlage 10 verknüpft oder verbunden werden, indem Bezeichnungen für Eingänge/Ausgänge verwendet werden, die von Modulobjekt zu Modulobjekt variieren, wobei ein Dialogfenster zur Konfigurierung verwendet wird, das generiert wird, damit ein Konfigurierungstechniker die Art und Weise spezifizieren kann, in der die Modulobjekte in die Prozessanlage eingebunden werden. Wie weiter oben verdeutlicht, ist das erzeugte Modulobjekt Reactor 668 immer noch mit dem Einheiten-Modulklassenobjekt 610 für Reaktoren verbunden und diesem zugehörig, so dass Änderungen, die am Einheiten-Modulklassenobjekt 610 für Reaktoren vorgenommen werden, wenn gewünscht automatisch auf das Modulobjekt Reactor_1 668 übertragen werden können und somit auch in diesem zur Verfügung stehen. In jedem Fall kann der Konfigurierungstechniker die erzeugten Modulobjekte verändern oder individuell anpassen, z.B. das Modulobjekt Reactor_1 668, so dass Änderungen am Stamm-Modulklassenobjekt akzeptiert oder zurückgewiesen werden, und zwar auf einer globalen (objektweiten) Basis oder auf einer Basis von Element zu Element.
  • Der rechte Abschnitt 672 des Bildschirms 660 zeigt bzw. listet die Parameter, Alarme etc. auf, die mit jedem der Elemente im Modulobjekt Reactor_1 668 (da dieses das in der Sektion 661 angewählte Element ist) verbunden sind, und außerdem die diesen zugeordneten Ventile, Filter und weitere Informationen. Selbstverständlich kann der Konfigurierungstechniker diese Daten für jedes der Elemente des Modulobjekts Reactor_1 668 wie gewünscht ändern oder spezifizieren, um so einzelne Modulobjekte, die aus dem Modulklassenobjekt erzeugt wurden, in jeder gewünschten Weise anzupassen.
  • 14 zeigt eine Bildschirmausgabe 680, die die Konfiguration des Ausrüstungsmodulobjekts Acid1 682 des Einheitenmodulobjekts Reactor_1 668 verdeutlicht. Da das Ausrüstungsmodulobjekt Acid1 682 in 14 angewählt ist, sind die Elemente desselben im rechten Abschnitt 684 des Bildschirms 680 aufgezeigt. Diese Elemente umfassen Steuerungsmodulobjekte Coarse_Valve1, Fine_Valve1 und Flow_Meter1 und sichtbare Parameter.
  • Ein Pop-up-Fenster 686 stellt Information bezüglich der Modulunterobjekte bereit, die dem Ausrüstungsmodulobjekt Acid1 zugeordnet sind, und ebenso hinsichtlich der Modulklasse, aus der diese Modulunterobjekte herstammen bzw. erzeugt wurden. Insbesondere gehört das Ausrüstungsmodulobjekt Acid1 zum Ausrüstungs-Modulklassenobjekt für Zumessungen, die Modulobjekte Coarse_Valve1 und Fine_Valve1 gehören zum Steuerungs-Modulklassenobjekt für Absperrventile aus der Bibliothekssektion 608 der 8, und das Modulobjekt Flow_Meter1 gehört zum Steuerungs-Modulklassenobjekt Flow_Meter in der Bibliothekssektion 608 der 8.
  • Das Pop-up-Fenster Acid1 Configuration 686 weist Reiter mit den Bezeichnungen Parameters, IO (Eingabe/Ausgabe), Alarms und Fieldbus auf. Der Reiter Parameters kann dazu dienen, die Parameter eines jeden der Elemente der Zumessung Acid1 des Modulobjekts Reactor_1 668 zu spezifizieren oder einzusetzen. Der Reiter IO kann dazu dienen, die Ein-/Ausgabeverbindungen zwischen jedem der Elemente des Modulobjekts der Zumessung Acid1 682 des Modulobjekts Reactor_1 668 zu spezifizieren, um damit die einzelnen Elemente mit den tatsächlichen Ausrüstungskomponenten innerhalb der Prozessanlage 10 zu verbinden. Wenn gewünscht, können diese Verbindungen mit Hilfe eines Tabellenkalkulationsalgorithmus bzw. -programms entsprechend 15 spezifiziert werden, um die Verbindungen zwischen allen Elementen eines Modulobjekts (auf jeder Ebene) und den tatsächlichen Elementen innerhalb der Prozessanlage 10 auf einer globalen oder Gruppenbasis zu spezifizieren. Das Tabellenschema 688 der 15 liefert eine tabellarische Ansicht, die es einem Konfigurierungstechniker ermöglicht, die Grobventile verschiedener Ausrüstungsmodule für Zumessungen insgesamt mit den Ausrüstungkomponenten der Prozessanlage 10 zu verbinden. In diesem Fall sind die Pfadnamen IO_Out und IO_Readback für die Ventile mit den Bezeichnungen VLV-101A, VLV201A, VLV-301A und VLV-401A spezifiziert. Wenn dies gewünscht ist, können jedoch auch verschiedene Elemente des gleichen Moduls gemeinsam spezifiziert werden.
  • Bezug nehmend auf 14 kann der Reiter Alarms des Pop-up-Fensters 686 dazu dienen, Alarme in Verbindung mit dem Modulobjekt Acid_1 zu spezifizieren oder zu konfigurieren, mit dem Reiter Fieldbus können Verbindungen zu einzelnen Fieldbus-Vorrichtungen wie erforderlich spezifiziert werden. Selbstverständlich können ähnliche Konfigurierungsbildschirme für andere Modulobjekte innerhalb des Modulobjekts Reactor_1 668 oder für das gesamte Modulobjekt Reactor_1 668 eingesetzt werden. Ebenso können die gleichen oder ähnliche Konfigurierungsbildschirme für andere Modulobjekte verwendet werden. Es ist klar, dass die Konfigurierungsbildschirme auf jeder Modulobjektebene einschließlich der Einheitenmodulebene, der Ausrüstungsmodulebene, der Steuerungsmodulebene etc. ausgegeben und genutzt werden können.
  • 16 zeigt eine Bildschirmdarstellung 690, die ein Explorer-Fenster 661 des Konfigurierungssystems für die Prozessanlage 10 enthält, in der der Konfigurierungstechniker ein weiteres Modulobjekt 692 für Reaktoren mit der Bezeichnung Reactor_1_1 hinzugefügt hat, das aus dem Einheiten-Modulklassenobjekt 610 für Reaktoren der 8 kopiert oder erzeugt wurde. Selbstverständlich kann der Kon figurierungstechniker bei der Erzeugung des Modulobjekts Reactor_1_1 692 abweichende Parameter, abweichende Verknüpfungen zu anderen Vorrichtungen und sogar abweichende Steuerungsroutinen spezifizieren, die in den einzelnen Unterelementen zur Anwendung kommen sollen. Wie 16 zeigt, enthält das Modulobjekt Reactor_1_1 Unterobjekte für jedes der Ausrüstungs-Modulklassenobjekte innerhalb des Einheiten-Modulklassenobjekts 610 für Reaktoren der 8, einschließlich der Ausrüstungsmodulobjekte Acid2, Alkali2 und Outlet4. Das Modulobjekt Reactor_1_1 enthält außerdem Steuerungsmodulobjekte Water_In2 und Level_Meter2, eine Referenz zu den gemeinsam genutzten Ausrüstungmodulobjekten mit den Bezeichnungen Water_HDR1 und den Einheitenphasen Dose, Drain, Flush und Mix. Die ausschließlich dem Modulobjekt Reactor_1_1 692 zugeordneten Unterobjekte tragen eindeutige Bezeichnungen, während die gemeinsam genutzten Einheiten, beispielsweise das Modulobjekt Water_HDR1, mit dem Namen des gemeinsam genutzten Wasserheaders bezeichnet sind.
  • Es ist klar, dass der Konfigurierungstechniker in entsprechender Weise auch andere Einheiten-Modulklassenobjekte, Ausrüstungs-Modulklassenobjekte, Steuerungs-Modulklassenobjekte und Display-Modulklassenobjekte verwenden kann, um Konfigurierungselemente für Einheiten-, Ausrüstungs-, Steuerungs- und Displayelemente innerhalb der Prozesssteuerungsumgebung entsprechend den jeweils beschriebenen Prinzipien zu erzeugen. Außerdem ist klar, dass die Nutzung dieser Modulklassenobjekte, die von sehr differenzierter Art sein können, dem Konfigurierungstechniker deutliche Vorteile bei der Erzeugung einer Konfiguration bieten, da der Techniker nicht jedes individuelle Steuerungselement einzeln erzeugen oder jedes individuelle Steuerungselement einzeln aus einer Steuerungstemplate kopieren muss, sondern stattdessen Modulklassenobjekte verwenden kann, die auf immer höherer Ebene oder mit immer größerem Umfang bereitgestellt werden, um immer umfassendere Gruppenkonfigurierungselemente für die Konfigurierung der Prozessanlage 10 zu erzeugen.
  • Außerdem kann der Konfigurierungstechniker Änderungen an den Konfigurierungselementen verschiedener Prozesseentitäten auf einer globalen Basis vornehmen, indem er ein oder mehrere der Einheiten-Modulklassenobjekte ändert und dabei die Übertragung dieser Änderungen auf jedes der Modulobjekte veranlasst, die aus den jeweiligen Einheiten-Modulklassenobjekten erzeugt wurden und diesen zugeordnet sind. Dieses Merkmal macht Änderungen innerhalb der Konfiguration, die nach der eigentlichen Erzeugung der Konfiguration notwendig werden, einfacher und weniger zeitraubend. Darüber hinaus kann der Konfigurierungstechniker eine Zugriffsebene für verschiedene Elemente oder Komponenten von Modulobjekten innerhalb des Konfigurierungssystems spezifizieren, indem er Sicherheitsparameter innerhalb der Modulklassenobjekte setzt. Wie oben erwähnt, kann der Konfigurierungstechniker einen Zugriffsschutz auf modulweiser Basis auf jeder Ebene einrichten, beispielsweise auf der Einheitenmodulebene, der Ausrüstungsmodulebene, der Steuerungsmodulebene und der Displaymodulebene. Auf diese Weise können einige Elemente eines Einheitenmodulobjekts einsehbar sein, während andere unsichtbar sind.
  • Selbstverständlich können nach der kompletten Erstellung des Konfigurierungssystems und nachdem die Modulobjekte mit den einzelnen Prozessentitäten innerhalb der Prozessanlage 10 verbunden sind, die Steuerungs- und Displaymodule oder diesen Modulen zugeordneten Elemente in die jeweiligen Steuerungsgeräte 12 und Workstations 14 der 1 heruntergeladen werden, von denen sie im Betrieb der Prozessanlage 10 ausgeführt werden.
  • 17 ist ein Flussdiagramm einer beispielhaften Routine 700 für die Konfigurierung eines Prozessanlagenelements zur Begrenzung des Zugriffs auf das Element. Die Routine 700 kann durch ein oder mehrere Rechnersysteme wie z.B. eine oder mehrere Workstations 14 und/oder die Steuerungsgeräte 12 der Prozessanlage 10 der 1 implementiert werden. Die Routine 700 kann auch durch ein von der Prozessanlage 10 getrenntes Rechnersystem implementiert werden. So könnte beispielsweise ein Drittanbieter die Routine 700 nutzen, um den Zugriff z.B. auf ein vom Drittanbieter entwickeltes Modulobjekt, Modulklassenobjekt, eine Modultemplate, eine Composite-Template etc. zu begrenzen. Das entwickelte Modulobjekt, Modulklassenobjekt, die Composite-Template etc. könnten dann von einem Kunden des Drittanbieters genutzt werden, aber es wäre dem Kunden beispielsweise nicht möglich, Einsicht in einige oder alle der internen Elemente des entwickelten Modulobjekts, Modulklassenobjekts, der Composite-Template etc. zu nehmen. Generell kann es sich bei dem Prozessanlagenelement, das konfiguriert werden soll, beispielsweise um ein Modulobjekt, ein Modulklassenobjekt, eine Composite-Template etc. handeln. Die Routine 700 kann als Teil einer Konfigurierungsapplikation, wie z.B. der Konfigurierungsapplikation 50, implementiert werden. So kann die Routine 700 z.B. während oder nach der Konfigurierung eines Modulobjekts, eines Modulklassenobjekts, einer Composite-Template etc. unter Verwendung der Konfigurierungsapplikation 50 implementiert werden. Die Routine 700 kann aber auch durch eine von der Konfigurierungsapplikation 50 getrennte Applikation implementiert werden.
  • In einem Block 702 wird eine Nutzereingabe empfangen, die anzeigt, dass der Zugriff auf das Prozessanlagenelement gesteuert werden muss (d.h. dem Prozessanlagenelement zugeordnete Daten müssen geschützt werden). Ein Konfigurierer des Elements kann z.B. ein Kästchen markieren, ein Bedienelement oder ein Menüelement etc. anwählen, das anzeigt, dass dem Element zugeordnete Daten geschützt werden müssen. Die Nutzereingabe kann wahlweise auch anzeigen, welche dem Element zugeordneten Daten geschützt werden müssen. Der Nutzer kann beispielsweise entscheiden, bestimmte Daten zu schützen, während andere Daten ungeschützt bleiben.
  • Alternativ kann dem Nutzer keine Wahlmöglichkeit gegeben werden, welche Daten detektiert werden. Beispielsweise kann es möglich sein, dass dem Nutzer nur die Wahl offensteht, ob ein Element geschützt werden soll oder nicht. Wenn ein Nutzer entscheidet, einem Modulobjekt oder einem Modulklassenobjekt zugeordnete Daten zu schützen, kann ein dem Modulobjekt oder dem Modulklassenobjekt zugeordneter Datensatz geschützt werden, während nicht im Satz enthaltene Daten nicht geschützt sind. Beispielsweise können Funktionsblöcke, die ein Modulobjekt oder ein Modulklassenobjekt bilden, sowie ihre Verbindungen geschützt werden, aber die Parameter des Modulobjekts oder des Modulklassenobjekts sind nicht geschützt.
  • 18A und 18B sind beispielhafte Bildschirmdarstellungen, die von einer Konfigurierungsapplikation wie der Konfigurierungsapplikation 50 der 1 erzeugt werden können. Ähnliche Bildschirmdarstellungen könnten durch andere Applikationstypen erzeugt werden, wie z.B. durch eine Applikation, die genutzt wird, um einen Prozess während des Ablaufs zu überwachen, durch eine Applikation zur Fehlerbereinigung für die Fehlerbereinigung einer Konfiguration, durch eine Asset-Managementapplikation etc. Die Bildschirmdarstellung 720 umfasst einen Abschnitt 722 eines Explorer-Fensters mit einer Bibliothek 724 von Composite-Templates. Eine der Composite-Templates ist die Composite-Template DYN FULL 726. Die Composite-Template DYN FULL 726 beinhaltet verschiedene Unterelemente, die, da die Composite-Template DYN_FULL 726 im Explorer-Fenster 722 angewählt wurde, auf der rechten Seite 728 der Bildschirmdarstellung 720 zur Ansicht gebracht werden. Die Unterelemente, aus denen die Composite-Template DYN FULL 726 besteht, umfassen Parameter und Funktionsblöcke 730.
  • In der Bildschirmdarstellung 720 wurde die Composite-Template DYN FULL 726 nicht als geschützt konfiguriert und somit werden die Funktionsblöcke 730 auf der rechten Seite 728 der Bildschirmdarstellung 720 zur Ansicht gebracht. Dagegen zeigt 18B eine Bildschirmdarstellung 732, die der als geschützt konfigurierten Composite-Template DYN FULL 726 entspricht. In der Bildschirmdarstellung 732 sind die Funktionsblöcke 730 daher in der rechten Seite 728 nicht gezeigt (d.h. sie sind unsichtbar). Die Parameter der Composite-Template DYN FULL 726 erscheinen jedoch weiterhin, obwohl diese als geschützt konfiguriert wurde.
  • In dem ebenfalls in 17 abgebildeten Block 704 kann der Nutzer aufgefordert werden, ein Passwort einzugeben. Beispielsweise kann ein Fenster, ein Bildschirm, ein akustisches Signal etc. den Nutzer auffordern, ein Passwort einzugeben. Wie nachstehend beschrieben, kann das Passwort zu einem späteren Zeitpunkt genutzt werden, um auf die geschützten Daten zuzugreifen und/oder das Element neu zu konfigurieren, um den Schutz aufzuheben. In einem Block 706 kann das Passwort empfangen werden. Das Passwort kann beispielsweise über eine Tastatur, einen Tastenblock, einen Sensor-Bildschirm, einen Lichtgriffel, eine Maus etc. eines Rechnersystems eingegeben werden.
  • In einem Block 708 kann eine Angabe zu den dem Prozessanlagenelement zugeordneten und zu schützenden Daten gespeichert und dem Element zugeordnet werden. Ist das Element beispielsweise ein Objekt, so kann die Angabe als Teil dieses Objekts gespeichert werden. In einem weiteren Beispiel könnte die Angabe getrennt vom Objekt gespeichert und ein Link als Verweis könnte als Teil des Objekts gespeichert werden. In noch einem anderen Beispiel könnte die Angabe als Teil eines Modulklassenobjekts gespeichert werden, wenn das Prozessanlagenlement ein aus dem betreffenden Modulklassenobjekt erzeugtes Element ist. Hat der Nutzer keine Wahlmöglichkeit, welche Daten geschützt werden sollen, kann der Block 708 entfallen.
  • In einem Block 710 kann das im Block 706 empfangene Passwort gespeichert und dem Element zugeordnet werden. Wenn das Element z.B. ein Objekt ist, kann das Passwort als Teil dieses Objekts gespeichert werden. In einem weiteren Beispiel könnte das Passwort getrennt vom Objekt gespeichert und ein Link zum Passwort als Teil des Objekts gespeichert werden. In noch einem anderen Beispiel könnte das Passwort als Teil eines Modulklassenobjekts gespeichert werden, wenn das Prozessanlagenlement ein aus dem betreffenden Modulklassenobjekt erzeugtes Element ist.
  • Wahlweise können die zu schützenden Daten und/oder das Passwort verschlüsselt werden. Bei diesen Implementierungen können die Blöcke 708 und 710 das Speichern und das Zuordnen der verschlüsselten Daten und/oder des verschlüsselten Passworts umfassen. Außerdem könnten die geschützten oder die verschlüsselten Daten als Teil eines Modulklassenobjekts gespeichert werden, wenn das Prozessanlagenelement ein aus dem betreffenden Modulklassenobjekt erzeugtes Element ist.
  • Wenn das Element ein Modulklassenobjekt ist, kann die Angabe der zu schützenden Daten und des Passworts an Elemente übertragen werden, die aus dem Modulklassenobjekt erzeugt wurden.
  • Eine der Routine 700 ähnliche Routine könnte genutzt werden, um den Schutz des Prozessanlagenelements oder spezieller, dem Element zugeordneter Daten aufzuheben. Hierfür könnte eine Nutzereingabe mit der Angabe empfangen werden, dass der Schutz von einem geschützten Prozessanlagenelement zugeordneten Daten aufgehoben werden soll. Der Nutzer könnte dann aufgefordert werden, ein Passwort einzugeben. Entspricht das empfangene Passwort dem in Block 710 der Routine 700 gespeicherten und dem geschützten Prozessanlagenelement zugeordneten Passwort, könnte der Nutzer zur Angabe aufgefordert werden, bei welchen (oder ob bei allen) der geschützten Daten der Schutz aufzuheben ist. Die gespeicherte und dem Element in Block 708 der Routine 700 zugeordnete Angabe könnte dann geändert werden, um anzuzeigen, dass der Schutz einiger oder aller Daten aufgehoben wurde.
  • 19 ist ein Flussdiagramm einer beispielhaften Routine 750 für die Konfigurierung einer Gruppe von Prozessanlagenelementen, um den Zugriff auf die Gruppe zu begrenzen. Die Routine 750 kann von einem oder mehreren Rechnersystemen implementiert werden, z.B. durch eine oder mehrere der Workstations 14 und/oder die Steuerungsgeräte 12 der Prozessanlage 10 in 1. Bei den Prozessanlagenelementen der Gruppe kann es sich beispielsweise um Modulobjekte, Modulklassenobjekte und/oder Composite-Templates handeln. Die Routine 750 kann als Teil einer Konfigurierungsapplikation, wie z.B. der Konfigurierungsapplikation 50, implementiert werden. Die Routine 750 kann beispielsweise nach der Konfigurierung von Elementen der Gruppe unter Verwendung der Konfigurierungsapplikation 50 implementiert werden. Die Routine 750 kann aber auch durch eine von der Konfigurierungsapplikation 50 getrennte Applikation implementiert werden.
  • In einem Block 752 wird eine Nutzereingabe empfangen, die anzeigt, dass der Zugriff auf die Gruppe von Elementen gesteuert werden muss (d.h. die Gruppe von Prozessanlagenelementen muss geschützt werden). Beispielsweise kann der Zugriff auf jedem Element der Gruppe zugeordnete Daten geschützt werden. Außerdem kann die Hinzufügung von Elementen zu der Gruppe oder das Löschen von Elementen aus der Gruppe nicht zulässig sein. Die Gruppe von Elementen kann beispielsweise eine Bibliothek von Elementen, einen Ordner mit Elementen, eine Klasse von Elementen, eine Kategorie von Elementen etc. umfassen.
  • Eine Person, die die Gruppe von Elementen konfiguriert, kann die Gruppe zunächst beispielsweise durch Markieren der Gruppe von Elementen, die Anwahl des Namens einer Bibliothek, eines Ordners, einer Klasse, einer Kategorie etc. auswählen. Unter Bezugnahme auf 18A könnte die betreffende Person z.B. die Unterbibliothek 734 oder die Kategorie 736 auswählen, eine Vielzahl von Modulen der Kategorie 736 markieren etc. Dann kann die Person z.B. ein Kästchen markieren oder ein Bedienelement, ein Menüelement etc. anwählen, die anzeigen, dass die Gruppe geschützt werden soll.
  • In 19 kann der Nutzer in einem Block 754 aufgefordert werden, ein Passwort einzugeben. Beispielsweise kann ein Fenster, ein Bildschirm, ein akustisches Signal etc. den Nutzer auffordern, ein Passwort einzugeben. Wie nachstehend beschrieben, kann das Passwort zu einem späteren Zeitpunkt für den Zugriff auf die geschützte Gruppe und/oder die Neukonfigurierung der Gruppe zur Aufhebung des Schutzes genutzt werden. In einem Block 756 kann das Passwort empfangen werden, das beispielsweise über eine Tastatur, einen Tastenblock, einen Sensor-Bildschirm, einen Lichtgriffel, eine Maus etc. eines Rechnersystems eingegeben werden kann.
  • In einem Block 758 kann die Angabe, dass die Gruppe von Elementen geschützt werden soll, gespeichert und der Gruppe von Elementen zugeordnet werden. Wenn es sich beispielsweise bei der Gruppe um eine Kategorie von Elementen handelt, kann die Angabe, dass die Kategorie geschützt werden muss, gespeichert werden, und diese Angabe kann der betreffenden Kategorie zugeordnet werden, so dass bei einem nachfolgenden Versuch, die Kategorie zu ändern, festgestellt werden kann, dass die Kategorie geschützt ist. Zusätzlich kann eine Angabe mit jedem Element der Gruppe verbunden werden. Handelt es sich bei den Elementen beispielsweise um Objekte, so kann die Angabe, dass das Element Teil einer geschützten Gruppe ist, als Teil jedes Objekts gespeichert werden. Die Angabe kann auch getrennt von jedem Objekt gespeichert werden, wobei ein Link als Verweis als Teil jedes Objekts gespeichert werden kann.
  • In einem Block 760 kann das im Block 756 empfangene Passwort gespeichert und der Gruppe von Elementen zugeordnet werden. Handelt es sich z.B. bei der Gruppe um eine Kategorie von Elementen, kann das Passwort gespeichert werden und dieses Passwort kann der Kategorie zugeordnet werden. Zusätzlich kann das Passwort jedem Element der Gruppe zugeordnet werden. Wenn es sich bei den Elementen beispielsweise um Objekte handelt, so kann das Passwort als Teil jedes Objekts gespeichert werden. Das Passwort kann auch getrennt von jedem Objekt gespeichert werden, wobei ein Link zum Passwort als Teil jedes Objekts gespeichert werden kann.
  • Entsprechend der Routine 700 in 17 kann eine der Routine 750 ähnliche Routine genutzt werden, um den Schutz der Gruppe von Prozessanlagenelementen aufzuheben.
  • 20 ist ein Flussdiagramm einer beispielhaften Routine 770 für die Entscheidung, ob die Einsicht in Daten, die einem Prozessanlagenelement zugeordnet sind, das geschützt oder ungeschützt sein kann, zulässig sein soll. Die Routine 770 kann durch ein oder mehrere Rechnersysteme, wie eine oder mehrere der Workstations 14 und/oder die Steuerungsgeräte 12 der Prozessanlage 10 in 1 implementiert werden. Das Prozessanlagenelement kann beispielsweise ein Modulobjekt, ein Modulklassenobjekt, eine Composite-Template etc. umfassen. Die Routine 770 kann als Teil einer Konfigurierungsapplikation, wie z.B. der Konfigurierungsapplikation 50 implementiert werden. Die Routine 770 kann auch als Teil einer anderen Applikation, beispielsweise einer Überwachungs-Applikation, einer Applikation zur Fehlerbereinigung, einer Asset-Managementapplikation etc. implementiert werden.
  • In einem Block 772 kann eine Anforderung zur Anzeige von einem Prozessanlagenelement zugeordneten Daten empfangen werden. Ein Nutzer kann beispielsweise ein Element in einem Explorer-Fenster anwählen und versuchen, direkt in ein Modul einzuklicken, um Komponenten des Moduls etc. zur Ansicht zu bringen. Unter Bezugnahme auf 18B als Beispiel hat ein Nutzer die Composite-Template DYN_FULL 726 im Abschnitt 722 des Explorer-Fensters in der Bildschirmdarstellung 732 angewählt. Damit sollen Unterelemente der Composite-Template DYN FULL 726 im rechten Teil 728 der Bildschirmdarstellung 732 zur Ansicht gebracht werden.
  • In einem Block 774 wird festgestellt, ob dem Element zugeordnete Daten geschützt sind. Es kann beispielsweise festgestellt werden, dass eine dem Element zugeordnete Angabe existiert, wie z.B. die in Block 708 der 17 gespeicherte Angabe, die anzeigt, dass mit dem Element verbundene Daten geschützt sind. Weiter kann beispielsweise festgestellt werden, ob eine dem Element zugeordnete Angabe vorhanden ist, wie die in Block 758 der 19 gespeicherte Angabe, die anzeigt, dass das Element Teil einer geschützten Gruppe von Elementen ist.
  • Sind die dem Element zugeordneten Daten nicht geschützt, so kann der Ablauf zu einem Block 776 wechseln, in dem dem Element zugeordnete Daten angezeigt werden. Wenn der Nutzer das Element beispielsweise in einem Explorer-Fenster angewählt hat, können Unterelemente dieses Elements in einem Abschnitt eines Bildschirms angezeigt werden. Unter Bezugnahme auf 18A als Beispiel hat ein Nutzer die Composite-Template DYN FULL 726 in Abschnitt 722 des Explorer-Fensters in der Bildschirmdarstellung 720 angewählt. Damit werden Unterelemente der Composite-Template DYN_FULL 726 einschließlich der Funktionsblöcke 730 im rechten Abschnitt 728 der Bildschirmdarstellung 720 angezeigt. Fordert der Nutzer andererseits beispielsweise Einsicht in ein Modul an, um Komponenten des Moduls einzusehen, so könnten die Komponenten dieses Moduls auf einem Bildschirm oder in einem Fenster sichtbar gemacht werden.
  • Wird in Block 774 festgestellt, dass die dem Element zugeordneten Daten geschützt sind, so kann der Ablauf zu einem Block 786 wechseln, in dem mit dem Element verbundene geschützte Daten nicht angezeigt werden, wogegen ungeschützte Daten angezeigt werden können.
  • Wenn in Block 774 festgestellt wird, dass die dem Element zugeordneten Daten geschützt sind, kann der Ablauf wahlweise zu einem Block 778 wechseln. In Block 778 kann der Nutzer beispielsweise über ein Fenster, einen Bildschirm oder mittels eines akustischen Signals aufgefordert werden, ein Passwort einzugeben. In einem Block 780 kann das vom Nutzer eingegebene Passwort empfangen werden. Das Passwort kann z.B. über eine Tastatur, einen Tastenblock, einen Sensor-Bildschirm, einen Lichtgriffel, eine Maus etc. eines Rechnersystems eingegeben werden. In einem Block 782 kann das im Block 780 empfangene Passwort mit einem gespeicherten Passwort verglichen werden, das dem Element zugeordnet ist. Das empfangene Passwort kann beispielsweise mit dem in Block 710 der 17 gespeicherten Passwort oder mit dem in Block 760 der 19 gespeicherten Passwort verglichen werden.
  • In einem Block 784 kann bestimmt werden, ob das in Block 780 empfangene Passwort dem gespeicherten und dem Element zugeordneten Passwort entspricht. Ist das der Fall, so können die dem Element zugeordneten Daten in Block 776 angezeigt werden. Stimmen die Passwörter nicht überein, so werden dem Element zugeordnete geschützte Daten nicht angezeigt, während ungeschützte Daten in Block 786 zur Ansicht gebracht werden können. Beispielsweise werden in 18B Parameter des Moduls DYN FULL 726 im rechten Abschnitt 728 der Bildschirmdarstellung 732 angezeigt, während die Funktionsblöcke, aus denen das Modul DYN FULL 726 besteht, nicht angezeigt werden.
  • Es ist klar, dass die Blöcke 778, 780, 782 und 784 optional sind und entfallen können. In diesem Fall kann, wie vorstehend erläutert, der Ablauf in Block 786 fortgesetzt werden, wenn in Block 774 festgestellt wird, dass die Daten geschützt sind.
  • 21 ist ein Flussdiagramm einer beispielhaften Routine 800 für die Entscheidung, ob die Änderung eines Prozessanlagenelements oder einer Gruppe von Prozessanlagenelementen zulässig sein soll, das bzw. die geschützt oder ungeschützt sein kann. Die Routine 800 kann durch ein oder mehrere Rechnersysteme wie eine oder mehrere der Workstations 14 und/oder der Steuerungsgeräte 12 der Prozessanlage 10 in 1 implementiert werden. Zu den Prozessanlagenelementen können z.B. Modulobjekte, Modulklassenobjekte und/oder Composite-Templates gehören. Die Routine 800 kann als Teil einer Konfigurierungsapplikation wie der Konfigurierungsapplikation 50 implementiert werden. Die Routine 800 kann auch als Teil einer anderen Applikation wie beispielsweise einer Asset-Managementapplikation implementiert werden.
  • In einem Block 802 kann eine Anforderung auf Änderung eines Prozessanlagenelements oder einer Gruppe von Prozessanlagenelementen empfangen weiden. Ein Nutzer kann beispielsweise ein Element in einem Explorer-Fenster anwählen, um es zu ändern, er kann eine Komponente eines Elements zur Änderung anwählen etc. Weiter kann der Nutzer z.B. versuchen, ein Element aus einer Gruppe von Elementen zu löschen, ein neues Element zu einer Gruppe von Elementen hinzuzufügen etc.
  • In einem Block 804 wird festgestellt, ob das Element oder die Gruppe von Elementen geschützt ist. Es kann beispielsweise festgestellt werden, ob eine dem Element zugeordnete Angabe vorhanden ist, wie die in Block 708 der 17 gespeicherte Angabe, die anzeigt, dass das Element geschützt ist. Weiter kann beispielsweise festgestellt werden, ob eine dem Element zugeordnete Angabe existiert, wie die in Block 758 in 19 gespeicherte Angabe, die anzeigt, dass das Element Teil einer geschützten Gruppe von Elementen ist. Als noch ein weiteres Beispiel kann festgestellt werden, ob es eine der Gruppe von Elementen zugeordnete Angabe gibt, wie die in Block 758 der 19 gespeicherte Angabe, die anzeigt, dass die Gruppe von Elementen geschützt ist.
  • Sind die dem Element oder der Gruppe von Elementen zugeordneten Daten nicht geschützt, kann der Ablauf zu Block 806 wechseln, in dem Anderungen zulässig sind. Wird in Block 804 jedoch festgestellt, dass das Element oder die Gruppe von Elementen geschützt ist, kann der Ablauf zu einem Block 808 wechseln. In Block 808 kann eine Meldung (z.B. ein Fenster, ein Bildschirm, ein akustisches Signal etc.) erzeugt werden, die anzeigt, dass das Element oder die Gruppe von Elementen, die der Nutzer zu ändern versucht, geschützt ist. Wahlweise kann Block 808 entfallen. In diesem Fall kann das Element oder die Gruppe von Elementen so zur Ansicht gebracht werden, dass dem Nutzer der geschützte Zustand des Elements oder der Gruppe von Elementen angezeigt wird. Eine Darstellung des Elements oder der Gruppe von Elementen auf einem Bildschirm kann beispielsweise abschattiert sein oder ein Symbol etc. enthalten, um anzuzeigen, dass das Element oder die Gruppe geschützt ist. In einem anderen Beispiel kann keine Angabe vorhanden sein, die dem Nutzer anzeigt, dass das Element oder die Gruppe geschützt ist. In diesem Fall ist es dem Nutzer einfach nur unmöglich, das Element oder die Gruppe zu ändern. Nach Block 808, oder wenn Block 808 entfällt, kann die Routine beendet werden.
  • Wahlweise kann der Ablauf in einem Block 810 fortgesetzt werden. In Block 810 kann der Nutzer beispielsweise über ein Fenster, einen Bildschirm, ein akustisches Signal etc. aufgefordert werden, ein Passwort einzugeben. In einem Block 812 kann das vom Nutzer eingegebene Passwort empfangen werden, das beispielsweise mittels einer Tastatur, eines Tastenblocks, eines Sensor-Bildschirms, eines Lichtgriffels, einer Maus etc. eines Rechnersystems eingegeben werden kann. In einem Block 814 kann das in Block 812 empfangene Passwort mit einem gespeicherten und dem Element oder der Gruppe von Elementen zugeordneten Passwort verglichen werden. Das empfangene Passwort kann z.B. mit dem in Block 710 der 17 oder mit dem in Block 760 der 19 gespeicherten Passwort verglichen werden.
  • In einem Block 816 kann bestimmt werden, ob das in Block 812 empfangene Passwort dem gespeicherten und dem Element oder der Gruppe von Elementen zugeordneten Passwort entspricht. Stimmen die Passwörter überein, kann die Änderung in Block 806 zugelassen werden. Besteht keine Übereinstimmung der Passwörter, kann in Block 818 eine Nachricht erzeugt werden, dass die Änderung nicht zugelassen wird. Alternativ oder zusätzlich kann die Nachricht angeben, dass das in Block 812 empfangene Passwort nicht richtig war.
  • Wie vorstehend erläutert, sind die Blöcke 810, 812, 814, 816 und 818 optional und können entfallen. In diesem Fall endet die Routine nach Block 808. Auch Block 808 ist optional und kann entfallen. In diesem Fall kann die Routine enden oder ggf. zum optionalen Block 810 wechseln, wenn in Block 804 festgestellt wurde, dass das Element oder die Gruppe geschützt ist.
  • Obwohl in 17 und 19-21 Passwörter für die Begrenzung des Zugriffs auf Prozessanlagenelemente behandelt wurden, können alternativ oder zusätzlich zu Passwörtern andere Techniken für die Zugriffsbegrenzung angewandt werden. Beispielsweise könnten eine oder mehrere im Voraus genehmigte Sicherheitsebenen für den Zugriff mit Angabe des zum Zugriff auf Elemente befugten Personals, eine Auflistung von Merkmalen bestimmter Personen (z.B. Log-In-Namen, ID-Nummern etc.) mit Zugriffsberechtigung, biometrische Daten etc. verwendet werden. Ferner können einem Element oder einer Gruppe von Elementen zusätzliche Daten im Zusammenhang mit einer Sicherheitsebene zugeordnet werden, zum Beispiel ob jeder Zugriff verboten ist, ob Read-only-Zugriff gestattet ist, unterschiedliche Sicherheitsebenen für verschiedene Personen und/oder Freigabestufen etc. Außerdem kann bei manchen Implementierungen dem Nutzer die Wahl verschiedener Sicherheitsebenen für Unterelemente eines Elements gestattet werden. Generell können Zugriffsschutzdaten (z.B. Passwort, biometrische Daten, im Voraus genehmigte Sicherheitsebenen für den Zugriff, eine Auflistung befugter Personen und/oder IDs etc.) gespeichert und einem Prozessanlagenelement zugeordnet werden, und diese Zugriffsschutzdaten können mit Nutzersicherheitsdaten (z.B. ein von einem Nutzer eingegebenes Passwort, die ID des Nutzers, die Log-In-ID des Nutzers, vom Nutzer erhaltene biometrische Daten etc.) verglichen werden, um festzustellen, ob dem Nutzer der Zugriff auf das Element und/oder bestimmte Unterelemente des Elements gestattet ist.
  • In 17 können, wenn gewünscht, die Blöcke 704, 706 und 710 entfallen. Ein Nutzer könnte beispielsweise angeben, dass das Prozessanlagenelement oder dem Prozessanlagenelement zugeordnete Daten geschützt werden müssen. Dann könnte der Nutzer eine der Routine 750 in 19 ähnliche Routine anwenden, um eine Gruppe von Elementen zu schützen, die das Prozessanlagenelement beinhaltet, das der Nutzer zu schützen wünscht. Auf diese Weise könnte der Nutzer andere daran hindern, die Konfiguration des Elements zu ändern, um die geschützten Daten einzusehen.
  • 22 ist ein Flussdiagramm einer beispielhaften Routine 830 für das Exportieren eines Prozessanlagenelements. Die Routine 830 kann durch ein oder mehrere Rechnersysteme wie eine oder mehrere der Workstations 14 und/oder die Steuerungsgeräte 12 der Prozessanlage 10 in 1 implementiert werden. Die Routine 830 kann auch durch ein von der Prozessanlage 10 getrenntes Rechnersystem implementiert werden. So könnte die Routine 830 beispielsweise durch ein Rechnersystem eines Drittanbieters oder ein Rechnersystem einer anderen Prozessanlage implementiert werden, um ein Prozessanlagenelement zu einem Kunden oder zur Prozessanlage 10 zu exportieren. Zum Prozessanlagenelement kann beispielsweise ein Modulobjekt, ein Modulklassenobjekt oder eine Composite-Template gehören. Die Routine 830 kann als Teil einer Konfigurierungsapplikation wie z.B. der Konfigurierungsapplikation 50 implementiert werden. Die Routine 830 kann aber auch als Teil einer anderen Applikation, wie beispielsweise einer Asset-Managementapplikation oder einer z.B. vom Drittanbieter angewandten Applikation implementiert werden.
  • In einem Block 832 kann eine Anforderung empfangen werden, ein Prozessanlagenelement zu exportieren. Ein Nutzer kann beispielsweise ein Element in einem Explorer-Fenster anwählen, um es zu exportieren. In einem anderen Beispiel kann der Nutzer eine Gruppe von Prozessanlagenelementen anwählen, um sie zu exportieren, und die Routine 830 kann für jedes Element der Gruppe implementiert werden.
  • In einem Block 834 wird festgestellt, ob mit dem Element verbundene Daten geschützt sind. Es kann beispielsweise festgestellt werden, ob eine dem Element zugeordnete Angabe vorliegt, wie die in Block 708 der 17 gespeicherte Angabe, die anzeigt, dass dem Element zugeordnete Daten geschützt sind. Beispielsweise kann auch festgestellt werden, ob eine dem Element zugeordnete Angabe vorliegt, wie die in Block 758 der 19 gespeicherte Angabe, die anzeigt, dass das Element Teil einer geschützten Gruppe von Elementen ist. Sind dem Element zugeordnete Daten nicht geschützt, so kann der Ablauf in einem Block 836 fortgesetzt werden, in dem das Element exportiert werden kann.
  • Wird jedoch in Block 834 festgestellt, dass die mit dem Element verbundenen Daten geschützt sind, kann der Ablauf zu einem Block 838 wechseln. In Block 838 können die geschützten Daten höherwertig geschützt werden. In Block 840 kann dann ein dem Element zugeordnetes Passwort verschlüsselt werden. So wird beispielsweise das in Block 706 der 17 oder das in Block 756 der 19 empfangene Passwort verschlüsselt.
  • In einem Block 842 kann das Element exportiert werden, wobei jedoch die geschützten Daten durch die verschlüsselten geschützten Daten und das Passwort durch das verschlüsselte Passwort ersetzt werden. Ist das Prozessanlagenelement ein aus einem Modulklassenobjekt erzeugtes Element, so könnten die verschlüsselten Daten und/oder das verschlüsselte Passwort beispielsweise als Teil des Modulklassenobjekts oder des Elements exportiert werden.
  • 23 ist ein Blockdiagramm eines beispielhaften Konfigurierungssystems 900, das verwendet werden kann, um eine Versionskontrolle und Prüfpfadinformation in Verbindung mit einer Prozessanlage bereitzustellen. Weitere Aspekte von Versionskontroll- und Prüfpfadtechniken, die verwendet werden können, werden in der US-Patentschrift Nr. 6,449,624 mit dem Titel "Version Control and Audit Trail in a Process Control System" beschrieben, die für die Anmelderin dieses Patents angemeldet wurde. Es ist klar, dass die in der US-Patentschrift Nr. 6,449,624 beschriebenen Techniken nicht angewandt werden müssen und auch davon abweichende Techniken verwendet werden können. Die US-Patentschrift Nr. 6,449,624 wird hiermit durch Bezugnahme ausdrücklich zu allen Zwecken in ihrer Gesamtheit in diese Anmeldung einbezogen.
  • Das Konfigurierungssystem 900 umfasst eine Nutzerschnittstelle 904, die beispielsweise in einer Display-Vorrichtung der Workstation 14 (1) oder in einer anderen Rechnervorrichtung erzeugt werden kann. Die Nutzerschnittstelle 904 kann es einem Nutzer ermöglichen, eine Prozessanlage oder einen Abschnitt einer Prozessanlage über eine oder mehrere Konfigurierungsapplikationen 906 zu konfigurieren. Zu den Konfigurierungsapplikationen 906 kann eine Konfigurierungsapplikation wie z.B. die Konfigurierungsapplikation 50 (1) gehören. Die Nutzerschnittstelle 904 kommuniziert außerdem mit einem Versionskontroll- und Prüfpfadsystem 908 (im Folgenden "das VCAT-System"), das generell mit den Konfigurierungsapplikationen 906 zusammenwirkt, um zurückliegende Informationen bezüglich der Konfigurierung der Prozessanlage oder des Abschnitts der Prozessanlage zu protokollieren und zu verwalten. Sowohl die Konfigurierungsapplikationen 906 als auch das VCAT-System 908 haben Zugriff auf eine Konfigurationsdatenbank 912, in der für eine aktuelle Konfiguration der Prozessanlage oder des Abschnitts der Prozessanlage (im Folgenden die "Prozesskonfiguration") repräsentative Daten gespeichert sein können und kommunizieren mit dieser. Das VCAT-System 908 kommuniziert ferner mit einer Versionskontrolldatenbank 910.
  • Die Versionskontrolldatenbank 910 kann zurückliegende Konfigurationsdaten beinhalten, die eine Anzahl früherer Versionen jedes Elements anzeigen, die in der Prozesskonfigurierung verwendet wurden. Insgesamt können die historischen Daten aller Elemente genutzt werden, um frühere Konfigurationen des Prozesses zu rekonstruieren. Insbesondere sind für jedes Element der Konfigurationsdatenbank 912 (auch für solche, die nicht mehr in der Konfigurationsdatenbank 912 vorliegen) für die Konfiguration des betreffenden Elements repräsentative Daten für eine Vielzahl von Versionen gespeichert. Ein Element kann beispielsweise seit seiner Erzeugung dreimal verändert worden sein. Die Versionskontrolldatenbank 910 würde daher Daten enthalten, die die Konfiguration des Elements zum Zeitpunkt der Erzeugung anzeigen, die als "Version 1" bezeichnet werden kann, sowie Daten, die die Konfiguration des Elements nach jeder der drei Änderungen anzeigen und die der "Version 2", "Version 3" und "Version 4" entsprechen würden.
  • Die historischen Konfigurationsdaten können somit Daten enthalten, die für alle an Modulobjekten und Modulklassenobjekten vorgenommenen Änderungen repräsentativ sind. Die Änderungen können, müssen aber nicht unter Verwendung der Konfigurierungsapplikationen 906 vorgenommen werden. Die Nutzerschnittstelle 904, die Konfigurierungsapplikationen 906 und das VCAT-System 908 können insgesamt oder in Teilen zu einem einzigen integrierten System kombiniert werden. Der Klarheit halber werden die Aufgaben hierin jedoch beschrieben, als ob sie der Nutzerschnittstelle 904, den Konfigurierungsapplikationen 906 und dem VCAT-System 908 getrennt zugeordnet wären.
  • Das VCAT-System 908 kann unter Verwendung eines oder mehrerer Rechnersysteme, wie z.B. der Workstation 14 (1) so implementiert werden, dass eine Überwachung der Änderungen der Prozesskonfiguration möglich ist. Die Nutzerschnittstelle 904 und die Konfigurierungsapplikationen 906 können in dem/den gleichen Rechnersystemen) implementiert werden wie das VCAT-System 908, oder in anderen Rechnersystemen, die mit dem Rechnersystem kommunizieren, die das VCAT-System 908 implementieren.
  • Die Daten in der einen oder in beiden Datenbanken 910, 912 können in einem computerlesbaren Medium gespeichert werden, das physikalisch an einer beliebigen Stelle innerhalb der Prozessanlage 10 angeordnet sein kann, wie z.B. in einem mit den Workstations 14 verbundenen flüchtigen Speicher oder in einem magnetischen oder optischen Speichermedium. Alternativ können die eine oder beide Datenbanken 910, 912 an einem entfernten Standort so gespeichert werden, dass ein Rechnersystem wie die Workstation 14 über ein Netzwerk, wie beispielsweise ein Intranet, das Internet oder ein beliebiges anderes Kommunikationsmedium Zugriff auf die darin gespeicherten Daten hat. Ferner brauchen die in jeder der Datenbanken 910, 912 gespeicherten Daten nicht im gleichen computerlesbaren Medium gespeichert zu werden, so dass ein beliebiger Abschnitt jeder der Datenbanken 910, 912 in einer jeweils anderen Speichervorrichtung oder auf einem anderen Medium gespeichert werden kann als in der Vorrichtung bzw. dem Medium, in der/dem andere Abschnitte gespeichert sind.
  • In 23 wird das VCAT-System 908 als unterschiedlich und getrennt von der Versionskontrolldatenbank 910 gezeigt. Alternativ könnte die Versionskontrolldatenbank 910 einen Abschnitt des VCAT-Systems 908 bilden. In gleicher Weise können die Konfigurationsdatenbank 912 und die Versionskontrolldatenbank 910 getrennte und verschiedene Datenstrukturen bilden, was jedoch nicht zwingend ist. Das heisst, die Datenbanken 910, 912 können im gleichen Speichermedium abgelegt sein und sogar Abschnitte einer gemeinsamen Datenbank speziell für die Prozessanlage 10 bilden. Der hierin benutzte Begriff "Datenbank" sollte daher so verstanden werden, dass er sich nicht auf eine bestimmte Datenstruktur beschränkt.
  • 24 ist ein Flussdiagramm einer beispielhaften Routine 930 für eine einfachere Verwaltung von Versionen eines Prozessanlagenelements. Das Prozessanlagenelement kann beispielsweise Modulobjekte und/oder Modulklassenobjekte umfassen. Die Routine 930 kann z.B. durch das VCAT-System 908 der 23 implementiert werden und wird unter Bezug auf 23 erläutert.
  • In einem Block 932 kann eine Änderung eines Prozessanlagenelements detektiert werden. Beispielsweise kann ein Nutzer versuchen, der Prozesskonfiguration unter Verwendung der Konfigurierungsapplikationen 906 ein neues Element hinzuzufügen. Als weiteres Beispiel kann der Nutzer die Sicherung eines Elements in der Konfigurationsdatenbank 912 anfordern, nachdem er dieses verändert hat. Als noch ein weiteres Beispiel kann der Nutzer das Eintragen eines Elements in die Konfigurationsdatenbank 912 anfordern, nachdem es von ihm verändert wurde. Die US-Patentschrift Nr. 6,449,624 beschreibt Techniken im Zusammenhang mit den Verfahren zum Eintragen und Entfernen, die angewandt werden können.
  • In einem Block 934 kann festgestellt werden, welche Modulklassenobjekte, wenn überhaupt, genutzt wurden, um das geänderte Element zu erzeugen. So könnte z.B. ein erstes Modulklassenobjekt genutzt worden sein, um ein zweites Modulklassenobjekt zu erzeugen, das seinerseits genutzt wurde, um das Element zu erzeugen. Wurden ein oder mehrere Modulklassenobjekte genutzt, um das veränderte Element zu erzeugen, so kann in Block 936 die Version jedes genutzten Modulklassenobjekts festgestellt werden.
  • In einem Block 938 wird ein Versionsidentifizierer für das geänderte Element erzeugt. Der Versionsidentifizierer kann Ziffern, Buchstaben, Symbole etc. beinhalten. Der Versionsidentifizierer zeigt die Version an, die der in Block 932 detektierten Änderung entspricht. War die in Block 932 detektierte Änderung z.B. die Erzeugung des Elements, so kann der Versionsidentifizierer eine Ursprungsversion bezeichnen. Wenn es sich als weiteres Beispiel bei der in Block 932 detektierten Änderung um eine Änderung einer ersten Version des Elements handelt, kann der Versionsidentifizierer eine zweite Version bezeichnen.
  • In einem Block 940 kann der in Block 938 erzeugte Versionsidentifizierer gespeichert und dem geänderten Element zugeordnet werden. Handelt es sich bei dem Element beispielsweise um ein Objekt, so kann der Versionsidentifizierer als Teil dieses Objekts gespeichert werden. Als weiteres Beispiel könnte der Versionsidentifizierer getrennt vom Objekt gespeichert werden und ein Link zum Versionsidentifizierer könnte als Teil des Objekts gespeichert werden.
  • In einem Block 942 kann der Versionsidentifizierer des in Block 936 bestimmten Modulklassenobjekts bzw. mehrerer Modulklassenobjekte, aus dem bzw. denen, wenn überhaupt, das Element erzeugt wurde, gespeichert und dem veränderten Element zugeordnet werden. Handelt es sich bei dem Element beispielsweise um ein Objekt, so kann der Versionsidentifizierer als Teil dieses Objekts gespeichert werden. Als weiteres Beispiel könnten der/die Versionsidentifizierer getrennt vom Objekt gespeichert und ein Link oder Links zum/zu den Versionsidentifizierer(n) als Teil des Objekts gespeichert werden. Als ein weiteres Beispiel könnte der in Block 938 erzeugte Versionsidentifizierer unter Verwendung der in Block 936 bestimmten Versionsidentifizierer erzeugt werden. Die in Block 936 bestimmten Versionsidentifi zierer könnten beispielsweise in die in Block 938 erzeugten Versionsidentifizierers verschlüsselt werden. In diesem Fall könnte Block 940 Block 942 beinhalten.
  • 25 ist ein Flussdiagramm einer beispielhaften Routine 948 für eine einfachere Verwaltung der Versionen von Prozessanlagenelementen. Die Prozessanlagenelemente können beispielsweise Modulobjekte und/oder Modulklassenobjekte umfassen. Die Routine 948 kann z.B. durch das VCAT-System 908 der 23 implementiert werden.
  • In einem Block 950 kann bestimmt werden, ob eine neue Version eines Modulklassenobjekts erzeugt wurde. Es könnte beispielsweise detektiert werden, wann die neue Version eines Modulklassenobjekts eingetragen wurde. In einem Block 952 können Prozessanlagenelemente bestimmt werden, die unter Nutzung des Modulklassenobjekts erzeugt wurden. Unter Bezugnahme auf 6 könnte beispielsweise der Speicher 526 geprüft werden, um festzustellen, welche Modulobjekte aus dem Modulklassenobjekt erzeugt wurden. Außerdem könnte der Speicher 526 oder ein anderer Speicher oder Speicherabschnitt geprüft werden, um zu bestimmen, welche anderen Modulklassenobjekte aus dem Modulklassenobjekt erzeugt wurden.
  • In einem Block 954 können die neue Version des Modulklassenobjekts oder die am Modulklassenobjekt vorgenommenen Änderungen auf die in Block 952 bestimmten Elemente übertragen werden. Dann kann in einem Block 958 der Versionsidentifizierer der neuen Version des Modulklassenobjekts gespeichert und den in Block 952 bestimmten Elementen zugeordnet werden. Als ein Beispiel werden die Versionsidentifizierer der in Block 952 bestimmten Elemente nicht zur Verfügbarmachung der neuen Versionen der Elemente aktualisiert. Optional werden in einem anderen Beispiel die Versionsidentifizierer der in Block 952 bestimmten Elemente in einem Block 959 aktualisiert. Danach können die neuen Versionsidentifizierer der Elemente gespeichert und den Elementen zugeordnet werden.
  • Die in den Blöcken 940 und 942 der 24 und in den Blöcken 958 und 959 der 25 gespeicherten Versionsidentifizierer können einen Nutzer dabei unterstützen, zurückzuverfolgen welche Versionen der Elemente und welche Versionen der Modulklassenobjekte, aus denen die Elemente erzeugt wurden, in einer aktuellen Konfiguration verwendet werden. Beispielsweise könnte eine Konfigurierungsapplikation, eine Asset-Managementapplikation etc. die Konfigurationsdatenbank 912 (23) abfragen, um die Versionen der Elemente und die Versionen der Modulklassenobjekte zu bestimmen, aus denen die Elemente erzeugt wurden. Als weiteres Beispiel könnte eine Applikation zur Fehlerbereinigung, eine Überwachungsapplikation etc. einen Speicher eines Steuerungsgeräts 12 prüfen, um beispielsweise die Versionen der Elemente und die Versionen der Modulklassenobjekte zu bestimmen, aus denen die Elemente erzeugt wurden.
  • 26 ist ein Flussdiagramm einer beispielhaften Routine 960 für eine einfachere Konfigurierung eines Prozessanlagenelements. Die Routine 960 kann z.B. implementiert werden, wenn ein Prozessanlagenelement durch eine Konfigurierungsapplikation in einer Bildschirmausgabe zur Anzeige gebracht wird. Das Prozessanlagenelement kann beispielsweise Modulobjekte und/oder Modulklassenobjekte umfassen. Die Routine 960 kann z.B. durch die Konfigurierungsapplikationen 906 und/oder das VCAT-System 908 der 23 implementiert werden und wird unter Bezug auf 23 erläutert.
  • In einem Block 962 kann bestimmt werden, welche Modulklassenobjekte, wenn überhaupt, genutzt wurden, um das Element zu erzeugen. Beispielsweise könnte ein erstes Modulklassenobjekt genutzt worden sein, um ein zweites Modulklassenobjekt zu erzeugen, das seinerseits verwendet wurde, um das Element zu erzeugen. Wenn ein oder mehrere Modulklassenobjekte genutzt wurden, um das Element zu erzeugen, kann in Block 964 eine aktuelle Version jedes dieser Modulklassenobjekte bestimmt werden. In einem Block 966 kann die Version jedes der Modulklassenobjekte bestimmt werden, die genutzt wurden, um das Element zu erzeugen. Beispielsweise könnten die in Block 942 der 24 gespeicherten und dem Element zugeordneten Versionsidentifizierer abgerufen werden.
  • In einem Block 968 kann für jedes der für die Erzeugung des Elements genutzten Modulklassenobjekte bestimmt werden, ob sich die aktuelle Version des Modulklassenobjekts von der Version des Modulklassenobjekts unterscheidet, die genutzt wurde, um das Element zu erzeugen. Gibt es keine Unterschiede, so kann die Routine beendet werden. Werden jedoch ein oder mehrere Unterschiede detektiert, so kann in Block 970 eine Nachricht erzeugt werden. Im Allgemeinen kann die Nachricht anzeigen, dass eine neue Version eines für die Erzeugung des Elements genutzten Modulklassenobjekts verfügbar ist. Die Nachricht kann Text, Symbole, Farben, ein akustisches Signal etc. beinhalten. Beispielsweise kann ein Textfeld oder -fenster neben oder überlappend mit einer graphischen Darstellung des Elements auf einem Konfigurationsbildschirm angezeigt werden. Als weiteres Beispiel kann ein Symbol in oder in der Nähe der Darstellung des Elements zur Ansicht gebracht werden. Als noch ein anderes Beispiel kann die Farbe, die Helligkeit etc. der Darstellung des Elements verändert werden. Die Nachricht selbst kann anzeigen, für welche Modulklassenobjekte eine neue Version verfügbar ist. Alternativ kann die Nachricht dem Nutzer zwar nicht anzeigen, für welche Modulklassenobjekte eine neue Version verfügbar ist, aber der Nutzer kann zusätzliche Schritte ausführen, um diese Information beispielsweise durch die Anwahl eines Menuelements, Doppelklicken auf ein Symbol, Hineinklicken in das Elements selbst etc. zu erhalten.
  • Optional kann dem Nutzer dann eine Nutzerschnittstellenführung bereitgestellt werden, um einen Prozess für die Änderung des Prozessanlagenelements durch die Aktualisierung des Elements unter Nutzung der neuen Versionen der Modulklassenobjekte zu initiieren. Dem Nutzer kann beispielsweise eine Bedientaste zur Verfügung gestellt werden, um den Prozess zu starten. Als weiteres Beispiel kann für den Nutzer eine Nutzerschnittstellenführung bereitgestellt werden, um zu wählen, welche von möglicherweise mehreren Modulklassenobjekten, die neue Versionen haben, genutzt werden sollen, um das Prozessanlagenelement zu aktualisieren. Dem Nutzer kann es beispielsweise möglich sein, Kästchen zu markieren, graphische Darstellungen hervorzuheben etc., die den Modulklassenobjekten mit neuen Versionen entsprechen, die genutzt werden sollen, um das Prozessanlagenelement zu aktualisieren.
  • 27 ist ein Flussdiagramm einer beispielhaften Routine 980 für eine einfachere Konfigurierung von Prozessanlagenelementen. Die Routine 980 kann beispielsweise implementiert werden, wenn Prozessanlagenelemente geändert und/oder eingetragen werden. Das Prozessanlagenelement kann z.B. ein Modulklassenobjekt umfassen. Die Routine 980 kann beispielsweise durch die Konfigurierungsapplikationen 906 und/oder das VCAT-System 908 der 23 implementiert werden und wird unter Bezug auf 23 erläutert.
  • In einem Block 982 kann festgestellt werden, ob eine neue Version eines Modulklassenobjekts erzeugt wurde. Es könnte beispielsweise detektiert werden, wann eine neue Version eines Modulklassenobjekts eingetragen wurde. In einem Block 984 können die Prozessanlagenelemente bestimmt werden, die unter Nutzung des Modulklassenobjekts erzeugt wurden. Unter Bezug auf 6 könnte beispielsweise der Speicher 526 geprüft werden, um die Modulobjekte festzustellen, die aus dem Modulklassenobjekt erzeugt wurden. Der Speicher 526 oder ein anderer Speicher oder Speicherabschnitt könnten auch geprüft werden, um festzustellen, welche anderen Modulklassenobjekte aus dem Modulklassenobjekt erzeugt wurden.
  • In einem Block 986 könnte der Nutzer aufgefordert werden anzugeben, ob die Änderungen an den Modulklassenobjekten auf eines oder mehrere der in Block 984 bezeichneten Prozessanlagenelemente übertragen werden sollen. Es kann z.B. ein Textfeld, ein Fenster, ein Bildschirm, ein akustisches Signal etc. genutzt werden, um den Nutzer zu dieser Angabe aufzufordern.
  • Optional kann für den Nutzer eine Nutzerschnittstellenführung bereitgestellt werden, um spezifische, in Block 984 bezeichnete Prozessanlagenelemente auszuwählen, auf die Änderungen übertragen werden sollen. Dazu kann es dem Nutzer ermöglicht werden, Kästchen zu markieren, graphische Darstellungen hervorzuheben etc., die den Prozessanlagenelementen entsprechen, auf die Änderungen übertragen werden sollen.
  • In einem Block 988 wird eine Nutzerreaktion auf die von Block 986 erzeugte Aufforderung erhalten. In einem Block 990 kann bestimmt werden, ob die Nutzerreaktion angibt, dass die Änderungen übertragen werden sollen. Sollen die Änderungen nicht übertragen werden, so kann die Routine beendet werden. Sollen die Änderungen übertragen werden, so werden in einem Block 992 die Änderungen auf die in Block 984 bezeichneten Prozessanlagenelemente übertragen. Optional können die Änderungen auf ausgewählte der in Block 984 bezeichneten Prozessanlagenelemente übertragen werden.
  • Obwohl die 17, 19-22 und 24-27 in Bezug auf Prozessanlagenelemente beschrieben wurden, können ähnliche Routinen genutzt werden, um den Zugriff auf Prozessanlagenelemente zu begrenzen, an diesen Elementen vorgenommene Änderungen zurückzuverfolgen und Änderungen in Bezug auf Sequenzen von Steuerungsschritten, die von diesen Elementen ausgeführt werden sollen, zu übertragen. Den Routinen der 17, 19-22 und 24-27 ähnliche Routinen können z.B. genutzt werden, um den Zugriff auf Phasenklassen, Einheitenphasen und/oder Gruppen von Phasenklassen oder Einheitenphasen zu begrenzen, daran vorgenommene Änderungen zurückzuverfolgen oder Änderungen zu übertragen.
  • 28 ist eine beispielhafte Bildschirmdarstellung 1000 einer Nutzerschnittstelle für die Konfigurierung eines Modulklassenobjekts. Im Bildschirm 1000 werden Details eines Modulklassenobjekts mit der Bezeichnung "CALCULATION" gezeigt. Der Bildschirm 1000 umfasst einen Editierungsabschnitt 1004 für die Editierung des Objekts. Wie in 28 gezeigt, umfasst das Modulklassenobjekt CALCULATION einen Multipliziererfunktionsblock 1008 und einen Addiererfunktionsblock 1012. Der Bildschirm 1000 beinhaltet außerdem einen Abschnitt 1020, der Parameter des Modulklassenobjekts CALCULATION anzeigt, die nicht versteckt sind, wenn der Zugriff auf das Modulklassenobjekt CALCULATION begrenzt ist. Die nicht versteckten Parameter umfassen einen Versionsidentifizierer 1026, der eine Version eines Modulobjekts anzeigt, das aus dem Modulklassenobjekt CALCULATION erzeugt wurde und einen Versionsidentifizierer 1028, der eine Version des Modulklassenobjekts CALCULATION anzeigt.
  • 29 ist eine weitere beispielhafte Bildschirmdarstellung 1030 einer Nutzerschnittstelle, um Parameter des Modulklassenobjekts CALCULATION zu bestimmen, die nicht versteckt werden. Der Bildschirm 1030 umfasst die Tastensymbole 1032 und 1034 für das Hinzufügen bzw. das Löschen von Parametern einer Gruppe von Parametern, die nicht versteckt sind. Die Bildschirmdarstellung 1030 zeigt, dass ein Parameter MULTIPLIER 1038 zu der Gruppe von Parametern hinzugefügt wird, die nicht versteckt sind. Mit Bezug auf 28 entspricht der Parameter MULTIPLIER 1038 auch dem Eingang "IN2" des Multipliziererfunktionsblocks 1008.
  • 30 ist eine beispielhafte Bildschirmdarstellung 1040 einer Nutzerschnittstelle für eine Applikation zur Fehlerbereinigung. Im Bildschirm 1040 werden Details eines Modulobjekts CALCULATION_1 zur Ansicht gebracht. Das Modulobjekt CALCULATION_1 wurde aus dem Modulklassenobjekt CALCULATION erzeugt. In diesem Beispiel wurde der Zugriff auf das Modulklassenobjekt CALCULATION nicht begrenzt. Der Bildschirm 1040 zeigt daher generell Details der Unterelemente, aus denen das Modulobjekt CALCULATION_1 aufgebaut ist. Beispielsweise zeigt ein Abschnitt 1044, dass das Modulobjekt CALCULATION_1 den Multipliziererfunktionsblock 1008 und den Addiererfunktionsblock 1012 beinhaltet. Der Bildschirm 1040. umfasst ferner einen Abschnitt 1048, der Parameter des Modulobjekts CALCULATION_1 anzeigt. Das Modulobjekt CALCULATION_1 beinhaltet beispielsweise die Versionsidentifizierer 1026 und 1028 und den Parameter MULTIPLIER 1038. Ferner umfasst der Bildschirm 1040 auch einen Abschnitt 1050, der die Funktionsblöcke anzeigt, aus denen sich das Modulobjekt CALCULATION_1 zusammensetzt. Insbesondere zeigt der Abschnitt 1050, dass das Modulobjekt CALCULATION_1. einen Addiererfunktionsblock und einen Multipliziererfunktionsblock beinhaltet.
  • 31 ist die beispielhafte Bildschirmdarstellung 1040 für den Fall, dass der Zugriff auf das Modulklassenobjekt CALCULATION begrenzt wurde. Der Bildschirm 1040 zeigt daher generell nicht alle Details der Unterelemente, aus denen sich das Modulobjekt CALCULATION_1 zusammensetzt. Die Abschnitte 1044 und 1050 zeigen beispielsweise nicht, dass das Modulobjekt CALCULATION_1 den Multipliziererfunktionsblock 1008 und den Addiererfunktionsblock 1012 beinhaltet. Abschnitt 1048 zeigt jedoch nach wie vor die Parameter des Modulobjekts CALCULATION_1 an.
  • Es ist für den Fachmann klar, dass verschiedene Variationen der hierin beschriebenen Techniken angewandt werden können. So kann beispielsweise die Reihenfolge der Blöcke verändert werden, Blöcke können entfallen, neue Blöcke können hinzugefügt werden etc. Außerdem könnten verschiedene hierin beschriebene Techniken kombiniert werden. Eine der Routine 700 in 17 ähnliche Routine könnte z.B. genutzt werden, um einige einem Modulklassenobjekt zugeordnete Daten zu schützen. Dann könnte eine Modultemplate aus dem Modulklassenobjekt erzeugt werden. Als Nächstes könnte eine der Routine 700 der 17 ähnliche Routine genutzt werden, um einige einer Modultemplate zugeordnete Daten zu schützen, wenn diese nicht im Zusammenhang mit dem Modulklassenobjekt geschützt wurde. Anschließend könnte eine besondere Instanz der Modultemplate erzeugt werden, die den in Zusammenhang mit dem Modulklassenobjekt und der Modultemplate spezifizierten Schutz umfasst.
  • Nach der Implementierung kann jede hierin beschriebene Software in einem computerlesbaren Speicher abgelegt werden, wie z.B. einer Magnetplatte, einer Laserplatte oder einem anderen Speichermedium, in einem RAM oder ROM eines Rechners oder Prozessors etc. Ebenso kann diese Software für einen Nutzer, eine Prozessanlage oder eine Bediener-Workstation bereitgestellt werden, indem bekannte oder gewünschte Bereitstellungsverfahren genutzt werden, z.B. eine computerlesbare Platte oder eine andere transportable Computerspeichereinrichtung, oder die Übertragung über einen Kommunikationskanal wie z.B. eine Telefonleitung, das Internet, das World Wide Web, ein beliebiges anderes lokales Netzwerk (LAN) oder Fernnetz (WAN) etc. (wobei diese Bereitstellung als die gleiche oder als eine mit der Bereitstellung dieser Software auf einem transportablen Speichermedium austauschbare Methode gilt). Ferner kann diese Software direkt ohne Modulation oder Verschlüsselung bereitgestellt oder unter Nutzung einer geeigneten Modulationsträgerwelle und/oder Verschlüsselungstechnik vor der Übertragung über einen Kommunikationskanal moduliert und/oder verschlüsselt werden.
  • Während die vorliegende Erfindung unter Bezugnahme auf spezifische Ausführungsformen beschrieben worden ist, die die Erfindung nur verdeutlichen und nicht einschränken sollen, wird es für den Fachmann offensichtlich sein, daß Anderungen, Hinzufügungen oder Weglassungen an den offenbarten Ausführungsformen vorgenommen werden können, ohne vom Geist und Geltungsbereich der Erfindung abzuweichen.

Claims (67)

  1. Objektentität zur Nutzung bei der Konfigurierung einer Prozessanlage, wobei die Objektentität aufweist: einen computerlesbaren Speicher; ein Objekt, das in dem computerlesbaren Speicher gespeichert ist, wobei das Objekt eine Prozessentität innerhalb der Prozessanlage repräsentiert und dabei umfasst: einen ersten Speicherbereich, der dafür ausgelegt ist, Angaben einer oder mehrerer Funktionen zu speichern, die von der Prozessentität im Betrieb der Prozessanlage ausgeführt werden sollen; und einen zweiten Speicherbereich, der dafür ausgelegt ist, eine Angabe zu speichern, ob der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll.
  2. Objektentität nach Anspruch 1, wobei das Objekt ein Klassenobjekt beinhaltet, das generisch die Prozessentität innerhalb der Prozessanlage repräsentiert.
  3. Objektentität nach Anspruch 1, wobei das Objekt ein Objekt umfasst, das spezifisch die Prozessentität innerhalb der Prozessanlage repräsentiert.
  4. Objektentität nach Anspruch 1, wobei das Objekt eine Composite-Template umfasst.
  5. Objektentität nach Anspruch 1, wobei die Angabe, ob der Zugriff auf das Objekt begrenzt sein soll, eine Angabe zu der dem Objekt zugeordneten Höhe der Zugriffssicherheit umfasst.
  6. Objektentität nach Anspruch 4, wobei die Angabe zur Höhe der Zugriffssicherheit mindestens eine der folgenden Angaben umfasst, nämlich eine Angabe, dass kein Zugriff zulässig sein soll, eine Angabe, dass kein Zugriff durch bestimmte Personen zulässig sein soll, eine Angabe, dass kein Zugriff durch bestimmte Nutzerkategorien zulässig sein soll, eine Angabe für einen Read-Only-Zugriff, eine Angabe für einen Read-Only-Zugriff durch bestimmte Personen und eine Angabe für einen Read-Only-Zugriff durch bestimmte Nutzerkategorien.
  7. Objektentität nach Anspruch 1, wobei der erste Speicherbereich dafür ausgelegt ist, Angaben zu einer Vielzahl von Unterelementobjekten zu speichern, die den Funktionen entsprechen, die von der Prozessentität beim Betrieb der Prozessanlage ausgeführt werden sollen; wobei die Angabe, ob der Zugriff auf das Objekt begrenzt sein soll, eine Vielzahl von Angaben zu Unterelementen beinhaltet, wobei jede Angabe zu einem Unterelement anzeigt, ob der Zugriff auf ein Unterelementobjekt aus mindestens einer Untergruppe der Vielzahl von Unterelementobjekten begrenzt sein soll.
  8. Objektentität nach Anspruch 7, wobei die Angabe, ob der Zugriff auf das Objekt begrenzt sein soll, außerdem eine globale Angabe beinhaltet, dass der Zugriff auf das Objekt als Ganzes begrenzt sein soll.
  9. Objektentität zur Nutzung bei der Konfigurierung einer Prozessanlage, wobei die Objektentität aufweist: einen computerlesbaren Speicher; ein Objekt, das in dem computerlesbaren Speicher gespeichert ist, wobei das Objekt einen oder mehrere Schritte repräsentiert, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden können und dabei umfasst: einen ersten Speicherbereich, der dafür ausgelegt ist, Angaben zu dem einen oder mehreren Schritten zu speichern; und einen zweiten Speicherbereich, der dafür ausgelegt ist, eine Angabe zu speichern, ob der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll.
  10. Objektentität nach Anspruch 9, wobei das Objekt einen oder mehrere Schritte repräsentiert, die von jeder Prozessentität in einer Gruppe von Prozessentitäten ausgeführt werden können.
  11. Objektentität nach Anspruch 10, wobei das Objekt ein Phasenklassenobjekt umfasst.
  12. Objektentität nach Anspruch 9, wobei das Objekt einen oder mehrere Schritte repräsentiert, die von einer spezifischen Prozessentität ausgeführt werden sollen.
  13. Objektentität nach Anspruch 12, wobei das Objekt ein Einheitenphasenobjekt umfasst.
  14. Verfahren zur einfacheren Konfigurierung von Prozessanlagenelementen zur Nutzung bei der Steuerung oder Überwachung mindestens eines Abschnitts einer Prozessanlage, wobei das Verfahren umfasst: Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung eines Objekts, das mindestens für eine Prozessentität innerhalb der Prozessanlage und für einen oder mehrere Schritte repräsentativ sein kann, die durch eine oder mehrere Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; Empfang von Nutzereingabedaten über die Nutzerschnittstelle, die anzeigen, dass der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll; und Zuordnung einer Angabe zu dem Objekt, dass der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll.
  15. Verfahren nach Anspruch 14, wobei zur Bereitstellung der Nutzerschnittstelle die Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung eines Klassenobjekts gehört, dass generisch die Prozessentität innerhalb der Prozessanlage repräsentieren kann.
  16. Verfahren nach Anspruch 14, wobei zur Bereitstellung der Nutzerschnittstelle die Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung eines Objekts gehört, dass spezifisch die Prozessentität innerhalb der Prozessanlage repräsentieren kann.
  17. Verfahren nach Anspruch 14, wobei zur Bereitstellung der Nutzerschnittstelle die Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung mindestens einer Composite-Template, einer Modultemplate, einer Phasenklasse oder einer Einheitenphase gehört.
  18. Verfahren nach Anspruch 14, das außerdem den Empfang von Nutzereingabedaten über die Nutzerschnittstelle umfasst, die eine dem Objekt zugeordnete Höhe der Zugriffssicherheit anzeigen.
  19. Verfahren nach Anspruch 18, wobei die Daten, die die Höhe der Zugriffssicherheit angeben, mindestens eine der folgenden Datenangabe beinhalten, nämlich Daten, die anzeigen, dass kein Zugriff zulässig sein soll, Daten, die anzeigen, dass kein Zugriff durch bestimmte Personen zulässig sein soll, Daten, die anzeigen, dass kein Zugriff durch bestimmte Nutzerkategorien zulässig sein soll, sowie Daten, die einen Read-Only-Zugriff anzeigen, Daten, die einen Read-Only Zugriff durch bestimmte Personen anzeigen, Daten, die einen Read-Only-Zugriff durch bestimmte Nutzerkategorien anzeigen.
  20. Verfahren nach Anspruch 14, wobei der Empfang von Nutzereingabedaten über die Nutzerschnittstelle, die anzeigen, dass der Zugriff auf das Objekt begrenzt sein soll, für jedes von mindestens einigen Unterelementobjekten aus einer Vielzahl von Unterelementobjekten, die den Funktionen entsprechen, die von der Prozessentität beim Betrieb der Prozessanlage ausgeführt werden sollen, den Empfang entsprechender Daten umfasst, die anzeigen, dass der Zugriff auf das Unterelementobjekt begrenzt sein soll.
  21. Verfahren nach Anspruch 20, wobei zum Empfang der Nutzereingabedaten über die Nutzerschnittstelle, die anzeigen, dass der Zugriff auf das Objekt begrenzt sein soll, ferner der Empfang von Daten gehört, die anzeigen, dass der Zugriff auf das Objekt als Ganzes begrenzt sein soll.
  22. Verfahren nach Anspruch 14, zu dem außerdem der Empfang von Nutzereingabedaten über die Nutzerschnittstelle gehört, die einen Unterabschnitt des Objekts angeben, worauf der Zugriff begrenzt sein soll.
  23. Verfahren für die Kontrolle des Zugriffs auf mit einer Prozessanlage verbundene Daten, wobei das Verfahren umfasst: Empfang einer Anforderung über eine Nutzerschnittstelle für den Zugriff auf ein Objekt, das für mindestens eine Prozessentität innerhalb der Prozessanlage und für einen oder mehrere Schritte repräsentativ ist, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; Prüfung von Zugriffskontrolldaten, die dem Objekt zugeordnet sind, um festzustellen, ob der Zugriff auf das Objekt begrenzt sein soll; Bestimmung einer angemessenen Zugriffshöhe auf Basis der geprüften Zugriffskontrolldaten; und Bereitstellung der angemessenen Zugriffshöhe.
  24. Verfahren nach Anspruch 23, wobei zum Empfang der Anforderung der Empfang einer Anforderung zur Anzeige von Unterelementen des Objekts gehört; wobei zur Bestimmung der angemessenen Zugriffshöhe die Bestimmung gehört, ob eines oder mehrere der Unterelemente unsichtbar sein sollten; wobei zur Bereitstellung der angemessenen Zugriffshöhe gehört, dass die Anzeige der Unterelemente, die nicht unsichtbar sein sollten, gestattet ist, und dass die Anzeige von Unterelementen, die unsichtbar sein sollten, verhindert wird.
  25. Verfahren nach Anspruch 23, wobei der Empfang der Anforderung den Empfang einer Anforderung zur Änderung des Objekts beinhaltet; wobei die Bestimmung der angemessenen Zugriffshöhe auch die Bestimmung umfasst, ob eine Änderung des Objekts zulässig sein soll; wobei zur Bereitstellung der angemessenen Zugriffshöhe die Zulassung der Änderung des Objekts nur gehört, wenn bestimmt wird, dass die Änderung des Objekts zulässig sein soll.
  26. Verfahren nach Anspruch 23, wobei zur Bestimmung der angemessenen Zugriffshöhe außerdem die Bestimmung der angemessenen Zugriffshöhe auf Basis von Information gehört, die einem Nutzer zugeordnet ist, der die Anforderung zum Zugriff auf das Objekt initiiert hat.
  27. Verfahren nach Anspruch 26, wobei zur Bestimmung der angemessenen Zugriffshöhe die Bestimmung der angemessenen Zugriffshöhe auf Basis der Identität des Nutzers gehört.
  28. Verfahren nach Anspruch 26, wobei zur Bestimmung der angemessenen Zugriffshöhe die Bestimmung der angemessenen Zugriffshöhe auf Basis einer dem Nutzer zugeordneten Höhe der Zugriffssicherheit gehört.
  29. Verfahren nach Anspruch 26, das außerdem umfasst: Aufforderung an den Nutzer zur Eingabe eines Passworts; Empfang eines vom Nutzer eingegebenen Passworts; Vergleich des vom Nutzer eingegebenen Passworts mit den gespeicherten Passwortdaten; wobei zur Bestimmung der angemessenen Zugriffshöhe die Bestimmung der angemessenen Zugriffshöhe auf Basis des Vergleichs des vom Nutzer eingegebenen Passworts mit den gespeicherten Passwortdaten gehört.
  30. Verfahren nach Anspruch 23, wobei die Bereitstellung der angemessenen Zugriffshöhe mindestens eines von Folgendem umfasst, nämlich einem Nutzer die Änderung des Objekts nicht zu gestatten, dem Nutzer die Änderung des Objekts zu gestatten, dem Nutzer lediglich die Änderung einiger Unterelemente zu gestatten, aus denen sich das Objekt zusammensetzt, die Unterelemente für den Nutzer unsichtbar zu machen, nur einige der Unterelemente für den Nutzer unsichtbar zu machen, und alle Unterelemente für den Nutzer sichtbar zu machen.
  31. Verfahren nach Anspruch 23, wobei der Empfang der Anforderung für den Zugriff auf das Objekt über die Nutzerschnittstelle den Empfang einer Anforderung über die Nutzerschnittstelle umfasst, Zugriff auf ein Klassenobjekt zu erhalten, dass generisch die Prozessentität innerhalb der Prozessanlage repräsentiert.
  32. Verfahren nach Anspruch 23, wobei der Empfang der Anforderung für den Zugriff auf das Objekt über die Nutzerschnittstelle den Empfang einer Anforderung über die Nutzerschnittstelle umfasst, Zugriff auf ein Klassenobjekt zu erhalten, dass spezifisch die Prozessentität innerhalb der Prozessanlage repräsentiert.
  33. Verfahren nach Anspruch 23, wobei der Empfang der Anforderung für den Zugriff auf das Objekt über die Nutzerschnittstelle den Empfang einer Anforderung über die Nutzerschnittstelle umfasst, auf mindestens ein Composite- Template, ein Modultemplate, eine Phasenklasse oder eine Einheitenphase zugreifen zu können.
  34. Verfahren zur Zugriffskontrolle auf Elemente, die mit einer Prozessanlage verbunden sein können, wobei das Verfahren umfasst: Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung einer Gruppe von Elementen, wobei jedes Element der Gruppe von Elementen mindestens eine Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentieren kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; Empfang von Nutzereingabedaten über die Nutzerschnittstelle, die anzeigen, dass der Zugriff auf die Gruppe von Elementen begrenzt sein soll; und Zuordnung einer Angabe zu der Gruppe von Elementen, dass der Zugriff auf die Gruppe von Elementen durch eine Konfigurierungsapplikation begrenzt sein soll.
  35. Verfahren nach Anspruch 34, wobei zur Bereitstellung der Nutzerschnittstelle die Bereitstellung einer Nutzerschnittstelle zur einfacheren Konfigurierung einer Gruppe von Objekten gehört, wobei jedes Objekt der Gruppe von Objekten mindestens eine Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentieren kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen.
  36. Verfahren nach Anspruch 35, wobei mindestens eines der Objekte ein Klassenobjekt umfasst, das generisch eine Prozessentität innerhalb der Prozessanlage repräsentieren kann.
  37. Verfahren nach Anspruch 35, wobei mindestens eines der Objekte ein Objekt umfasst, das spezifisch eine Prozessentität innerhalb der Prozessanlage repräsentieren kann.
  38. Verfahren nach Anspruch 35, wobei mindestens eines der Objekte mindestens ein Composite-Template, ein Modultemplate, eine Phasenklasse oder eine Einheitenphase umfasst.
  39. Verfahren nach Anspruch 34, wobei zu den Nutzereingabedaten, die anzeigen, dass der Zugriff auf die Gruppe von Elementen begrenzt sein soll, Daten gehören, die anzeigen, dass zu jedem Element der Gruppe von Elementen ein Read-Only-Zugriff bereitgestellt werden soll.
  40. Verfahren nach Anspruch 34, wobei zu den Nutzereingabedaten, die anzeigen, dass der Zugriff auf die Gruppe von Elementen begrenzt sein soll, Daten gehören, die anzeigen, dass ein oder mehrere Elemente nicht aus der Gruppe von Elementen entfernt werden können.
  41. Verfahren nach Anspruch 34, wobei zu den Nutzereingabedaten, die anzeigen, dass der Zugriff auf die Gruppe von Elementen begrenzt sein soll, Daten gehören, die anzeigen, dass ein oder mehrere Elemente nicht zu der Gruppe von Elementen hinzugefügt werden können.
  42. Verfahren nach Anspruch 34, zu dem ferner der Empfang von Nutzereingabedaten über die Nutzerschnittstelle gehört, die eine der Gruppe von Elementen zugeordnete Höhe der Zugriffssicherheit anzeigen.
  43. Verfahren nach Anspruch 42, wobei die Daten, die die Höhe der Zugriffssicherheit anzeigen, mindestens eine der folgenden Datenangabe beinhalten, nämlich Daten, die anzeigen, dass für bestimmte Personen nur Read-Only-Zugriff zulässig sein soll, Daten, die anzeigen, dass für bestimmte Nutzerkategorien nur Read-Only-Zugriff zulässig sein soll, und Daten, die anzeigen, dass für Nutzer, deren zugeordnete Nutzersicherheitsdaten nur eine Zulassung für einen Read-Only-Zugriff anzeigen, nur ein Read-Only-Zugriff zulässig sein soll.
  44. Verfahren nach Anspruch 43, wobei die Nutzersicherheitsdaten ein vom Nutzer eingegebenes Passwort umfassen.
  45. Verfahren zur Zugriffskontrolle auf Daten, die einer Prozessanlage zugeordnet sind, wobei das Verfahren umfasst: Empfang einer Anforderung zur Änderung einer Gruppe von Elementen über eine Nutzerschnittstelle, wobei jedes Element der Gruppe von Elementen für mindestens eine korrespondierende Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentativ ist, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; Prüfung der der Gruppe von Elementen zugeordneten Zugriffskontrolldaten, um zu bestimmen, ob der Zugriff auf die Gruppe von Elementen zulässig sein soll; Bestimmung, ob eine Änderung der Gruppe von Elementen auf Basis der geprüften Zugriffskontrolldaten zulässig sein soll; und Zulassung der Änderung der Gruppe von Elementen nur, wenn bestimmt wird, dass die Änderung der Gruppe von Elementen zugelassen werden soll.
  46. Verfahren nach Anspruch 45, wobei der Empfang der Änderungsanforderung den Empfang einer Anforderung auf Änderung einer Gruppe von Objekten über die Nutzerschnittstelle umfasst, wobei jedes Objekt der Gruppe von Objekten für mindestens eine korrespondierende Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentativ ist, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen.
  47. Verfahren nach Anspruch 46, wobei mindestens ein Objekt der Gruppe von Objekten generisch eine korrespondierende Prozessentität innerhalb der Prozessanlage repräsentiert.
  48. Verfahren nach Anspruch 46, wobei mindestens ein Objekt der Gruppe von Objekten spezifisch eine korrespondierende Prozessentität innerhalb der Prozessanlage repräsentiert.
  49. Verfahren nach Anspruch 46, wobei mindestens ein Objekt der Gruppe von Objekten mindestens ein Composite-Template, ein Modultemplate, eine Phasenklasse oder eine Einheitenphase umfasst.
  50. Verfahren nach Anspruch 46, wobei der Empfang der Anforderung zur Änderung der Gruppe von Objekten mindestens einen der folgenden Vorgänge umfasst: Empfang einer Änderungsanforderung für ein oder mehrere Objekte der Gruppe von Objekten; Empfang einer Anforderung für das Entfernen eines oder mehrerer Objekte der Gruppe von Objekten; und Empfang einer Anforderung für das Hinzufügen eines oder mehrerer neuer Objekte zu der Gruppe von Objekten.
  51. Verfahren nach Anspruch 45, wobei zur Bestimmung, ob die Änderung einer Gruppe von Elementen zulässig sein soll, die Bestimmung gehört, ob die Änderung der Gruppe von Elementen außerdem auf Basis einer einem Nutzer zugeordneten Information zulässig sein soll, der die Anforderung auf Änderung der Gruppe von Elementen initiiert hat.
  52. Verfahren nach Anpruch 51, wobei die dem Nutzer zugeordnete Information Daten umfasst, die eine Identität des Nutzers angeben.
  53. Verfahren nach Anspruch 51, wobei die dem Nutzer zugeordnete Information Daten umfasst, die eine dem Nutzer zugeordnete Höhe der Zugriffssicherheit angeben.
  54. Verfahren nach Anspruch 51, das ferner umfasst: Aufforderung an den Nutzer zur Eingabe eines Passworts; Empfang eines vom Nutzer eingegebenen Passworts; und Vergleich des vom Nutzer eingegebenen Passworts mit gespeicherten Pas swortdaten; wobei die Bestimmung der angemessenen Zugriffshöhe die Bestimmung der angemessenen Zugriffshöhe auf Basis des Vergleichs des vom Nutzer eingegebenen Passworts mit den gespeicherten Passwortdaten umfasst.
  55. Verfahren nach Anspruch 45, wobei die Bereitstellung der angemessenen Zugriffshöhe mindestens eines von Folgendem umfasst, nämlich eine Änderung des Objekts durch den Nutzer nicht zuzulassen, eine Änderung des Objekts durch den Nutzer zuzulassen, nur die Änderung einiger Unterelemente durch den Nutzer zuzulassen, aus denen sich das Objekt zusammensetzt, die Unterelemente für den Nutzer unsichtbar zu machen, nur einige der Unterelemente für den Nutzer unsichtbar zu machen, und alle Unterelemente für den Nutzer sichtbar zu machen.
  56. Verfahren für das Exportieren von Daten, die mit einer Prozessanlage verbunden werden können, das umfasst: Empfang einer Anforderung über eine Nutzerschnittstelle zum Exportieren eines oder mehrerer Objekte, wobei jedes Objekt mindestens ein Element in einer Prozessanlage und einen oder mehrere Schritte repräsentieren kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; für jedes Objekt die Prüfung der dem Objekt zugeordneten Zugriffskontrolldaten, um zu bestimmen, ob der Zugriff auf Daten des Objekts begrenzt sein soll; für jedes Objekt, wenn der Zugriff auf Daten des Objekts begrenzt sein soll, die Verschlüsselung der Daten zur Erzeugung verschlüsselter Daten; für jedes Objekt, wenn der Zugriff auf Daten des Objekts begrenzt sein soll, den Ersatz der Daten durch die verschlüsselten Daten; und Exportieren des einen oder mehrerer Objekte.
  57. Verfahren nach Anspruch 56, wobei mindestens ein Objekt des oder der Objekte generisch eine korrespondierende Prozessentität innerhalb der Prozessanlage repräsentiert.
  58. Verfahren nach Anspruch 56, wobei mindestens ein Objekt des oder der Objekte spezifisch eine korrespondierende Prozessentität innerhalb der Prozessanlage repräsentiert.
  59. Verfahren nach Anspruch 56, wobei mindestens ein Objekt des oder der Objekte ein Composite-Template umfasst.
  60. Verfahren nach Anspruch 56, das ferner umfasst: für jedes Objekt, wenn der Zugriff auf Daten des Objekts begrenzt sein soll, die Verschlüsselung der dem Objekt zugeordneten Zugriffssicherheitsdaten; für jedes Objekt, wenn der Zugriff auf Daten des Objekts begrenzt sein soll, den Ersatz der Zugriffssicherheitsdaten durch die verschlüsselten Zugriffssicherheitsdaten.
  61. Konfigurierungssystem zur einfacheren Konfigurierung einer Prozessanlage, das aufweist: ein computerlesbares Medium; einen mit dem computerlesbaren Medium kommunikativ verbundenen Prozessor; eine Datenbank zur Speicherung eines Objekts, das für mindestens eine Prozessentität innerhalb der Prozessanlage und für einen oder mehrere Schritte repräsentativ sein kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; eine im computerlesbaren Medium gespeicherte Konfigurierungsroutine, die konfiguriert ist, um vom Prozessor ausgeführt zu werden, um: eine Nutzerschnittstelle zur einfacheren Konfigurierung des Objekts bereitzustellen; über die Nutzerschnittstelle Nutzereingabedaten zu empfangen, die angeben, dass der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll; und um dem Objekt eine Angabe zuzuordnen, wonach der Zugriff auf das Objekt durch eine Anzeige- oder Konfigurierungsapplikation begrenzt sein soll.
  62. System zur einfacheren Konfigurierung oder Anzeige einer Konfiguration, die mindestens einem Abschnitt einer Prozessanlage zugeordnet ist, das aufweist: ein computerlesbares Medium; einen mit dem computerlesbaren Medium kommunikativ verbundenen Prozessor; eine Datenbank zur Speicherung eines Objekts, das für mindestens eine Prozessentität innerhalb der Prozessanlage und für einen oder mehrere Schritte repräsentativ ist, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; eine im computerlesbaren Medium gespeicherte Routine, die konfiguriert ist, um vom Prozessor ausgeführt zu werden, um: über eine Nutzerschnittstelle eine Anforderung für den Zugriff auf das Objekt zu empfangen; die dem Objekt zugeordneten Zugriffskontrolldaten zu prüfen, um zu bestimmen, ob der Zugriff auf das Objekt begrenzt sein soll; eine angemessene Zugriffshöhe auf Basis der geprüften Zugriffskontrolldaten zu bestimmen; und um die angemessene Zugriffshöhe bereitzustellen.
  63. Verfahren nach Anspruch 62, wobei die Routine konfiguriert ist, um vom Prozessor ausgeführt zu werden, um die Anforderung für den Zugriff auf das Objekt über mindestens eine einem Konfigurierungssystem zugeordnete Nutzerschnittstelle, eine einem Fehlerbereinigungssystem zugeordnete Nutzerschnittstelle, eine einem Überwachungssystem zugeordnete Nutzerschnittstelle oder eine einem Asset-Managementsystem zugeordnete Nutzerschnittstelle zu empfangen.
  64. Konfigurierungssystem zur einfacheren Konfigurierung einer Prozessanlage, das aufweist: ein computerlesbares Medium; einen mit dem computerlesbaren Medium kommunikativ verbundenen Prozessor; eine Datenbank zur Speicherung einer Gruppe von Elementen, wobei jedes Element der Gruppe von Elementen mindestens eine Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentieren kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; eine im computerlesbaren Medium gespeicherte Konfigurierungsroutine, die konfiguriert ist, um vom Prozessor ausgeführt zu werden, um: eine Nutzerschnittstelle zur einfacheren Konfigurierung der Gruppe von Elementen bereitzustellen; über die Nutzerschnittstelle Nutzereingabedaten zu empfangen, die anzeigen, dass der Zugriff auf die Gruppe von Elementen begrenzt sein soll; und um der Gruppe von Elementen eine Angabe zuzuordnen, die anzeigt, dass der Zugriff auf die Gruppe von Elementen durch eine Konfigurierungsapplikation begrenzt sein soll.
  65. System zur einfacheren Konfigurierung oder Anzeige einer mindestens einem Abschnitt einer Prozessanlage zugeordneten Konfiguration, das aufweist: ein computerlesbares Medium; einen mit dem computerlesbaren Medium kommunikativ verbundenen Prozessor; eine Datenbank zur Speicherung einer Gruppe von Elementen, wobei jedes Element der Gruppe von Elementen für mindestens eine korrespondierende Prozessentität innerhalb der Prozessanlage und für einen oder mehrere Schritte repräsentativ ist, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; eine im computerlesbaren Medium gespeicherte Routine, die konfiguriert ist, um vom Prozessor ausgeführt zu werden, um: über eine Nutzerschnittstelle eine Anforderung zur Änderung der Gruppe von Elementen zu empfangen; die der Gruppe von Elementen zugeordneten Zugriffskontrolldaten zu prüfen, um zu bestimmen, ob der Zugriff auf die Gruppe von Elementen zulässig sein soll; zu bestimmen, ob die Änderung der Gruppe von Elementen auf Basis der geprüften Zugriffskontrolldaten zulässig sein soll; und um die Änderung der Gruppe von Elementen nur zuzulassen, wenn bestimmt wird, dass die Änderung der Gruppe von Elementen zulässig sein soll.
  66. Verfahren nach Anspruch 65, bei dem die Routine konfiguriert ist, um vom Prozessor ausgeführt zu werden, um die Anforderung auf Änderung der Gruppe über mindestens eine einem Konfigurierungssystem zugeordnete Nutzerschnittstelle, eine einem Fehlerbereinigungssystem zugeordnete Nutzerschnittstelle, eine einem Überwachungssystem zugeordnete Nutzerschnittstelle oder eine einem Asset-Managementsystem zugeordnete Nutzerschnittstelle zu empfangen.
  67. Konfigurierungssystem zur einfacheren Konfigurierung einer Prozessanlage, das aufweist: ein computerlesbares Medium; einen mit dem computerlesbaren Medium kommunikativ verbundenen Prozessor; eine Datenbank zur Speicherung eines oder mehrerer Objekte, wobei jedes Objekt mindestens eine Prozessentität innerhalb der Prozessanlage und einen oder mehrere Schritte repräsentieren kann, die von einer oder mehreren Prozessentitäten innerhalb der Prozessanlage ausgeführt werden sollen; eine im computerlesbaren Medium gespeicherte Konfigurierungsroutine, die konfiguriert ist, um vom Prozessor ausgeführt zu werden, um: über eine Nutzerschnittstelle eine Anforderung zum Exportieren einiger oder aller des einen oder der mehreren Objekte zu empfangen; für jedes Objekt die dem Objekt zugeordneten Zugriffskontrolldaten zu prüfen, um zu bestimmen, ob der Zugriff auf die Daten des Objekts begrenzt sein soll; für jedes Objekt, wenn der Zugriff auf die Daten des Objekts begrenzt sein soll, die Daten zu verschlüsseln, um verschlüsselte Daten zu erzeugen; für jedes Objekt, wenn der Zugriff auf die Daten des Objekts begrenzt sein soll, die Daten durch die verschlüsselten Daten zu ersetzen; und um einige oder alle des einen oder der mehreren Objekte zu exportieren.
DE102004038807A 2004-05-25 2004-08-10 Sicherheit für Objekte in einem Konfigurationssystem für Prozessanlagen Pending DE102004038807A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/853655 2004-05-25
US10/853,655 US7526347B2 (en) 2003-02-18 2004-05-25 Security for objects in a process plant configuration system

Publications (1)

Publication Number Publication Date
DE102004038807A1 true DE102004038807A1 (de) 2005-12-22

Family

ID=33030326

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004038807A Pending DE102004038807A1 (de) 2004-05-25 2004-08-10 Sicherheit für Objekte in einem Konfigurationssystem für Prozessanlagen

Country Status (6)

Country Link
US (3) US7526347B2 (de)
JP (1) JP4889929B2 (de)
CN (2) CN1702582A (de)
DE (1) DE102004038807A1 (de)
GB (2) GB2449585B (de)
HK (2) HK1086081A1 (de)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US9983559B2 (en) * 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
DE10348563B4 (de) 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US6963814B2 (en) * 2002-12-23 2005-11-08 Siemens Energy & Automation, Inc. Systems, devices, and methods for acceptance testing a fieldbus component configuration program
US7117052B2 (en) 2003-02-18 2006-10-03 Fisher-Rosemount Systems, Inc. Version control for objects in a process plant configuration system
US7526347B2 (en) * 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
JP3963174B2 (ja) * 2003-03-14 2007-08-22 オムロン株式会社 表示・編集装置及び表示方法並びにプログラム
US20050246040A1 (en) * 2004-04-29 2005-11-03 Caterpillar Inc. Operator profile control system for a work machine
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
JP5096359B2 (ja) 2005-12-05 2012-12-12 フィッシャー−ローズマウント システムズ,インコーポレイテッド 同時プロセスシミュレーションを伴う多目的予測プロセス最適化
US9626643B2 (en) * 2005-12-30 2017-04-18 Sap Se Object-based information collection in operation performance
WO2007143005A2 (en) * 2006-05-31 2007-12-13 Active Automation, Inc. Cost effective system and method for monitoring machinery units
US8370224B2 (en) 2006-09-27 2013-02-05 Rockwell Automation Technologies, Inc. Graphical interface for display of assets in an asset management system
US7835806B2 (en) * 2007-01-29 2010-11-16 Rockwell Automation Technologies, Inc. Method for indirect access to controller data using name stored in string tag
US20080255681A1 (en) * 2007-04-10 2008-10-16 Cindy Alsup Scott Methods and apparatus to manage process plant alarms
US9244455B2 (en) * 2007-09-10 2016-01-26 Fisher-Rosemount Systems, Inc. Location dependent control access in a process control system
JP5168012B2 (ja) * 2008-07-28 2013-03-21 株式会社ジェイテクト プログラマブルコントローラのプログラム編集装置
GB2476011B (en) * 2008-09-29 2013-05-15 Fisher Rosemount Systems Inc Efficient design and configuration of elements in a process control system
US9582234B2 (en) * 2008-09-30 2017-02-28 Rockwell Automation Technologies, Inc. System and method for the automatic aggregation of industrial automation displays
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US8489210B2 (en) 2009-03-24 2013-07-16 Rockwell Automation Technologies, Inc. Electronic operator interface based controller and device automatic downloads
CN101639690B (zh) * 2009-06-19 2012-05-02 新奥科技发展有限公司 一种藻类反应控制系统和方法
US20110022197A1 (en) * 2009-07-27 2011-01-27 Rec Advanced Silicon Materials Llc Process control application development environment and features
US9164501B2 (en) * 2009-10-05 2015-10-20 Fisher-Rosemount Systems, Inc. Methods and apparatus to manage data uploading in a process control environment
US8825183B2 (en) * 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
JP5091283B2 (ja) 2010-06-25 2012-12-05 株式会社日立製作所 制御装置の保守ツール
US9217565B2 (en) 2010-08-16 2015-12-22 Emerson Process Management Power & Water Solutions, Inc. Dynamic matrix control of steam temperature with prevention of saturated steam entry into superheater
US9447963B2 (en) 2010-08-16 2016-09-20 Emerson Process Management Power & Water Solutions, Inc. Dynamic tuning of dynamic matrix control of steam temperature
US9335042B2 (en) 2010-08-16 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using dynamic matrix control
US8538559B2 (en) * 2011-04-04 2013-09-17 Relcom, Inc. Fieldbus system function block enhancements using transducer block
US9581994B2 (en) * 2011-04-05 2017-02-28 Fisher-Rosemount Systems, Inc. Methods and apparatus to manage process control resources
US9927788B2 (en) * 2011-05-19 2018-03-27 Fisher-Rosemount Systems, Inc. Software lockout coordination between a process control system and an asset management system
US9163828B2 (en) 2011-10-31 2015-10-20 Emerson Process Management Power & Water Solutions, Inc. Model-based load demand control
US9467297B2 (en) 2013-08-06 2016-10-11 Bedrock Automation Platforms Inc. Industrial control system redundant communications/control modules authentication
US8868813B2 (en) 2011-12-30 2014-10-21 Bedrock Automation Platforms Inc. Communications control system with a serial communications interface and a parallel communications interface
US11144630B2 (en) 2011-12-30 2021-10-12 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
US9600434B1 (en) 2011-12-30 2017-03-21 Bedrock Automation Platforms, Inc. Switch fabric having a serial communications interface and a parallel communications interface
US8862802B2 (en) 2011-12-30 2014-10-14 Bedrock Automation Platforms Inc. Switch fabric having a serial communications interface and a parallel communications interface
US9437967B2 (en) 2011-12-30 2016-09-06 Bedrock Automation Platforms, Inc. Electromagnetic connector for an industrial control system
US9727511B2 (en) 2011-12-30 2017-08-08 Bedrock Automation Platforms Inc. Input/output module with multi-channel switching capability
US8971072B2 (en) 2011-12-30 2015-03-03 Bedrock Automation Platforms Inc. Electromagnetic connector for an industrial control system
US10834094B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Operator action authentication in an industrial control system
US11314854B2 (en) 2011-12-30 2022-04-26 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
US10834820B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Industrial control system cable
US9191203B2 (en) 2013-08-06 2015-11-17 Bedrock Automation Platforms Inc. Secure industrial control system
US12061685B2 (en) 2011-12-30 2024-08-13 Analog Devices, Inc. Image capture devices for a secure industrial control system
US11967839B2 (en) 2011-12-30 2024-04-23 Analog Devices, Inc. Electromagnetic connector for an industrial control system
US20130282190A1 (en) * 2012-04-24 2013-10-24 General Electric Company System and method for configuration and management of power plant assets
CN103558809B (zh) 2012-05-09 2019-06-18 布里斯托尔D/B/A远程自动化解决方案公司 配置过程控制设备的方法和装置
US11216159B2 (en) 2012-10-08 2022-01-04 Fisher-Rosemount Systems, Inc. Configuration element for graphic elements
US11774927B2 (en) 2012-10-08 2023-10-03 Fisher-Rosemount Systems, Inc. Methods and apparatus to provide a role-based user interface
US9792004B2 (en) 2012-10-08 2017-10-17 Fisher-Rosemount Systems, Inc. Derived and linked definitions with override
US9958863B2 (en) 2012-10-31 2018-05-01 General Electric Company Method, system, and device for monitoring operations of a system asset
DE112014000087T5 (de) * 2013-03-19 2015-02-19 Smart-Foa Informationssammelsystem, Informationssammelverfahren, und Speichermedium
US9733902B2 (en) * 2013-05-13 2017-08-15 Mitutoyo Corporation Machine vision system program editing environment including operating context aware copy and paste feature
JP2016527844A (ja) * 2013-08-06 2016-09-08 ベドロック・オートメーション・プラットフォームズ・インコーポレーテッド 安全な産業用制御システム
US10613567B2 (en) 2013-08-06 2020-04-07 Bedrock Automation Platforms Inc. Secure power supply for an industrial control system
JP6235868B2 (ja) * 2013-10-31 2017-11-22 株式会社smart−FOA 情報収集システム
GB2522338B (en) * 2014-01-03 2020-12-16 Fisher Rosemount Systems Inc Reusable graphical elements with quickly editable features for use in user displays of plant monitoring systems
CN103728957B (zh) * 2014-01-15 2017-02-01 浙江大学 一种基于实时数据库的hart现场设备管理方法及系统
CN104035349B (zh) * 2014-06-09 2016-06-22 杭州电子科技大学 四支架自动调平控制系统电路
CN105281061A (zh) 2014-07-07 2016-01-27 基岩自动化平台公司 工业控制系统电缆
US10372107B2 (en) 2014-10-15 2019-08-06 Rockwell Automation Technologies, Inc. Custom properties in an application environment
CA2968475C (en) * 2014-11-24 2023-07-04 Bayer Aktiengesellschaft Method for configuring a production plant designed for performing at least one chemical reaction
DE102015103727A1 (de) * 2015-03-13 2016-09-15 Phoenix Contact Gmbh & Co. Kg Projektiergerät und Verfahren zum Konfigurieren und/oder Parametrieren von Automatisierungskomponenten eines Automatisierungssystems
WO2017032860A1 (en) * 2015-08-25 2017-03-02 Inexto Sa Multiple authorization modules for secure production and verification
US9703546B1 (en) 2015-12-21 2017-07-11 Schneider Electric Software, Llc Monitoring application states for deployment during runtime operations
US10382312B2 (en) 2016-03-02 2019-08-13 Fisher-Rosemount Systems, Inc. Detecting and locating process control communication line faults from a handheld maintenance tool
US11605037B2 (en) 2016-07-20 2023-03-14 Fisher-Rosemount Systems, Inc. Fleet management system for portable maintenance tools
US10554644B2 (en) 2016-07-20 2020-02-04 Fisher-Rosemount Systems, Inc. Two-factor authentication for user interface devices in a process plant
US9805528B1 (en) * 2016-07-20 2017-10-31 Fisher-Rosemount Systems, Inc. Authentication and authorization to control access to process control devices in a process plant
US10270853B2 (en) 2016-07-22 2019-04-23 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and an asset management system
US10599134B2 (en) 2016-07-22 2020-03-24 Fisher-Rosemount Systems, Inc. Portable field maintenance tool configured for multiple process control communication protocols
US10375162B2 (en) 2016-07-22 2019-08-06 Fisher-Rosemount Systems, Inc. Process control communication architecture
US10374873B2 (en) 2016-07-22 2019-08-06 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and a process control instrument
US10585422B2 (en) 2016-07-22 2020-03-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool system having interchangeable functional modules
US10764083B2 (en) 2016-07-25 2020-09-01 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with resistor network for intrinsically safe operation
US10481627B2 (en) 2016-07-25 2019-11-19 Fisher-Rosemount Systems, Inc. Connection check in field maintenance tool
US10505585B2 (en) 2016-07-25 2019-12-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with a bus for powering and communicating with a field device
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
US10810289B2 (en) 2016-08-15 2020-10-20 Fisher-Rosemount Systems, Inc. Apparatuses, systems, and methods for providing access security in a process control system
CN106649236B (zh) * 2016-12-15 2019-05-07 平安科技(深圳)有限公司 修改提示的方法及装置
US20180314531A1 (en) * 2017-04-28 2018-11-01 VCE IP Holding Company LLC Dependency resolution system and method for an integrated computing system
CN106997181A (zh) * 2017-05-22 2017-08-01 广东天润自动化科技有限公司 一种设备安全控制系统及其控制方法
US10571901B2 (en) * 2017-08-08 2020-02-25 Fisher-Rosemount Systems, Inc. Controlled roll-out of module classes
EP3495903B1 (de) * 2017-12-05 2020-02-26 Siemens Aktiengesellschaft Verfahren zum bedienen und beobachten einer zu steuernden technischen anlage sowie operator-system
EP3502806A1 (de) * 2017-12-22 2019-06-26 Siemens Aktiengesellschaft Verfahren zum schutz der produktionsdaten zur herstellung eines produkts
US11062013B2 (en) * 2018-03-02 2021-07-13 Bently Nevada, Llc Two-step hardware authentication
US11150632B2 (en) * 2018-03-16 2021-10-19 Yokogawa Electric Corporation System and method for field device management using class parameter set
JP7032206B2 (ja) * 2018-03-30 2022-03-08 住友重機械工業株式会社 射出成形用データ管理装置、および射出成形機
US10761514B2 (en) 2018-09-27 2020-09-01 Rockwell Automation Technologies, Inc. Intelligent binding and selection of hardware via automation control objects
US11079743B2 (en) 2018-09-27 2021-08-03 Rockwell Automation Technologies, Inc. Project autonomy in industrial automation design environments
US12032362B2 (en) 2018-09-27 2024-07-09 Rockwell Automation Technologies, Inc. Multi-user collaboration across domains for industrial automation design
US11119463B2 (en) * 2018-09-27 2021-09-14 Rockwell Automation Technologies, Inc. Automation objects for integrated design environments
US11567486B2 (en) 2018-09-27 2023-01-31 Rockwell Automation Technologies, Inc. Automated industrial process testing via cross-domain object types
US11768877B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Smart search capabilities in a process control system
US11768878B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Search results display in a process control system
US11092939B2 (en) 2019-10-07 2021-08-17 Fisher-Rosemount Systems, Inc. Preview mode for configuration logic
CN112782414B (zh) * 2019-11-11 2024-01-23 深圳迈瑞生物医疗电子股份有限公司 一种样本分析系统及其设置方法
CN111966066B (zh) * 2020-08-18 2021-12-10 北京联合普肯工程技术股份有限公司 设备数据处理方法、装置和电子设备
EP3995909A1 (de) * 2020-11-10 2022-05-11 ABB Schweiz AG Konfiguration von modularen industrieanlagen
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning

Family Cites Families (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0650442B2 (ja) 1983-03-09 1994-06-29 株式会社日立製作所 設備群制御方法およびシステム
US4736320A (en) 1985-10-08 1988-04-05 Foxboro Company Computer language structure for process control applications, and translator therefor
US4885717A (en) 1986-09-25 1989-12-05 Tektronix, Inc. System for graphically representing operation of object-oriented programs
US5051898A (en) 1988-06-13 1991-09-24 Eda Systems, Inc. Method for specifying and controlling the invocation of a computer program
US4972328A (en) 1988-12-16 1990-11-20 Bull Hn Information Systems Inc. Interactive knowledge base end user interface driven maintenance and acquisition system
US5014208A (en) 1989-01-23 1991-05-07 Siemens Corporate Research, Inc. Workcell controller employing entity-server model for physical objects and logical abstractions
JPH0658624B2 (ja) 1990-03-30 1994-08-03 インターナショナル・ビシネス・マシーンズ・コーポレーション グラフィカル・ユーザ・インターフェース管理装置
US5295242A (en) * 1990-11-02 1994-03-15 Consilium, Inc. Apparatus and method for viewing relationships in a factory management system
US5603018A (en) 1991-07-15 1997-02-11 Mitsubishi Denki Kabushiki Kaisha Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats
US5485600A (en) 1992-11-09 1996-01-16 Virtual Prototypes, Inc. Computer modelling system and method for specifying the behavior of graphical operator interfaces
ATE176953T1 (de) 1993-01-18 1999-03-15 Siemens Ag Realzeit-steuerungssystem
US5446903A (en) * 1993-05-04 1995-08-29 International Business Machines Corporation Method and apparatus for controlling access to data elements in a data processing system based on status of an industrial process by mapping user's security categories and industrial process steps
US6684261B1 (en) 1993-07-19 2004-01-27 Object Technology Licensing Corporation Object-oriented operating system
US5594858A (en) 1993-07-29 1997-01-14 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming
US5530643A (en) 1993-08-24 1996-06-25 Allen-Bradley Company, Inc. Method of programming industrial controllers with highly distributed processing
US5576946A (en) 1993-09-30 1996-11-19 Fluid Air, Inc. Icon based process design and control system
US5555385A (en) 1993-10-27 1996-09-10 International Business Machines Corporation Allocation of address spaces within virtual machine compute system
US5485620A (en) 1994-02-25 1996-01-16 Automation System And Products, Inc. Integrated control system for industrial automation applications
US5546301A (en) 1994-07-19 1996-08-13 Honeywell Inc. Advanced equipment control system
US5611059A (en) 1994-09-02 1997-03-11 Square D Company Prelinked parameter configuration, automatic graphical linking, and distributed database configuration for devices within an automated monitoring/control system
US6983227B1 (en) * 1995-01-17 2006-01-03 Intertech Ventures, Ltd. Virtual models of complex systems
SE504085C2 (sv) * 1995-02-01 1996-11-04 Greg Benson Sätt och system för att hantera dataobjekt i enlighet med förutbestämda villkor för användare
US7143290B1 (en) * 1995-02-13 2006-11-28 Intertrust Technologies Corporation Trusted and secure techniques, systems and methods for item delivery and execution
US7133846B1 (en) * 1995-02-13 2006-11-07 Intertrust Technologies Corp. Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management
US7133845B1 (en) * 1995-02-13 2006-11-07 Intertrust Technologies Corp. System and methods for secure transaction management and electronic rights protection
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US7124302B2 (en) * 1995-02-13 2006-10-17 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6658568B1 (en) * 1995-02-13 2003-12-02 Intertrust Technologies Corporation Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management
US5499333A (en) 1995-04-20 1996-03-12 International Business Machines Corporation Method and apparatus for at least partially instantiating an object in a compound document using the object's parent class configuration data when the object's configuration data is unavailable
US5812394A (en) 1995-07-21 1998-09-22 Control Systems International Object-oriented computer program, system, and method for developing control schemes for facilities
US5802276A (en) * 1996-01-03 1998-09-01 International Business Machines Corporation Information handling system, method, and article of manufacture including a vault object for encapsulation of object security credentials
US5787427A (en) * 1996-01-03 1998-07-28 International Business Machines Corporation Information handling system, method, and article of manufacture for efficient object security processing by grouping objects sharing common control access policies
US5765153A (en) * 1996-01-03 1998-06-09 International Business Machines Corporation Information handling system, method, and article of manufacture including object system authorization and registration
US6253251B1 (en) * 1996-01-03 2001-06-26 International Business Machines Corp. Information handling system, method, and article of manufacture including integration of object security service authorization with a distributed computing environment
US6094600A (en) 1996-02-06 2000-07-25 Fisher-Rosemount Systems, Inc. System and method for managing a transaction database of records of changes to field device configurations
US6032208A (en) 1996-04-12 2000-02-29 Fisher-Rosemount Systems, Inc. Process control system for versatile control of multiple process devices of various device types
US5909368A (en) 1996-04-12 1999-06-01 Fisher-Rosemount Systems, Inc. Process control system using a process control strategy distributed among multiple control elements
US5862052A (en) 1996-04-12 1999-01-19 Fisher-Rosemount Systems, Inc. Process control system using a control strategy implemented in a layered hierarchy of control modules
US6574654B1 (en) * 1996-06-24 2003-06-03 Oracle Corporation Method and apparatus for lock caching
US5950168A (en) * 1996-12-18 1999-09-07 Knowmed Systems Collapsible flowsheet for displaying patient information in an electronic medical record
US6948173B1 (en) * 1997-08-04 2005-09-20 Fred Steven Isom Method of sequencing computer controlled tasks based on the relative spatial location of task objects in a directional field
US5943496A (en) 1997-05-17 1999-08-24 Intertop Corporation Methods for developing and instantiating object classes using a java virtual machine extension
JPH10320205A (ja) * 1997-05-20 1998-12-04 Fujitsu Ltd 情報処理装置
DE19732011A1 (de) * 1997-07-25 1999-01-28 Abb Patent Gmbh Verfahren zum ortstransparenten Austausch von Prozeßdaten
US6292790B1 (en) * 1997-10-20 2001-09-18 James E. Krahn Apparatus for importing and exporting partially encrypted configuration data
US5950006A (en) 1997-11-05 1999-09-07 Control Technology Corporation Object-oriented programmable controller
US7092914B1 (en) * 1997-11-06 2006-08-15 Intertrust Technologies Corporation Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6668257B1 (en) 1997-11-06 2003-12-23 International Business Machines Corporation Migrating non-persistent objects when one or more of the superclass fields of the object are modified
US6202066B1 (en) * 1997-11-19 2001-03-13 The United States Of America As Represented By The Secretary Of Commerce Implementation of role/group permission association using object access type
US6138174A (en) 1997-11-24 2000-10-24 Rockwell Technologies, Llc Industrial control system providing remote execution of graphical utility programs
US6028998A (en) 1998-04-03 2000-02-22 Johnson Service Company Application framework for constructing building automation systems
US6167316A (en) 1998-04-03 2000-12-26 Johnson Controls Technology Co. Distributed object-oriented building automation system with reliable asynchronous communication
US20020013834A1 (en) * 1998-04-20 2002-01-31 Jeffrey Esakov Tracking and graphical display of user activity on an information network
CN1127023C (zh) * 1998-04-28 2003-11-05 株式会社山武 信息浏览系统
US6161051A (en) 1998-05-08 2000-12-12 Rockwell Technologies, Llc System, method and article of manufacture for utilizing external models for enterprise wide control
US6157864A (en) 1998-05-08 2000-12-05 Rockwell Technologies, Llc System, method and article of manufacture for displaying an animated, realtime updated control sequence chart
BR9910512A (pt) * 1998-05-15 2001-01-02 Tridium Inc Sistema e métodos para controle orientado a objeto de sistemas eletromecânicos diversos usando uma rede de computador
US6396516B1 (en) * 1998-05-29 2002-05-28 Plexus Systems, Llc Graphical user interface shop floor control system
US6523045B1 (en) * 1998-05-29 2003-02-18 Plexus Systems, Llc Graphical user interface shop floor control system
US6571273B1 (en) * 1998-07-13 2003-05-27 Yokogawa Electric Corporation Process control system
US6292798B1 (en) * 1998-09-09 2001-09-18 International Business Machines Corporation Method and system for controlling access to data resources and protecting computing system resources from unauthorized access
US6625603B1 (en) * 1998-09-21 2003-09-23 Microsoft Corporation Object type specific access control
US6412070B1 (en) * 1998-09-21 2002-06-25 Microsoft Corporation Extensible security system and method for controlling access to objects in a computing environment
GB9822963D0 (en) 1998-10-20 1998-12-16 Agner Erik Improvements in or relating to chromatography
US6442512B1 (en) 1998-10-26 2002-08-27 Invensys Systems, Inc. Interactive process modeling system
US6442515B1 (en) 1998-10-26 2002-08-27 Invensys Systems, Inc. Process model generation independent of application mode
US6546297B1 (en) 1998-11-03 2003-04-08 Robertshaw Controls Company Distributed life cycle development tool for controls
TW451143B (en) * 1998-11-05 2001-08-21 Ecomagents Inc Method for controlling access to information
US6813640B1 (en) * 1998-12-08 2004-11-02 Macrovision Corporation System and method for controlling the editing by user action of digital objects created in a document server application
US6760711B1 (en) * 1999-01-11 2004-07-06 Microsoft Corporation Merchant owned, ISP-hosted online stores with secure data store
US6598052B1 (en) 1999-02-19 2003-07-22 Sun Microsystems, Inc. Method and system for transforming a textual form of object-oriented database entries into an intermediate form configurable to populate an object-oriented database for sending to java program
US6298454B1 (en) 1999-02-22 2001-10-02 Fisher-Rosemount Systems, Inc. Diagnostics in a process control system
US6385496B1 (en) 1999-03-12 2002-05-07 Fisher-Rosemount Systems, Inc. Indirect referencing in process control routines
US6789054B1 (en) * 1999-04-25 2004-09-07 Mahmoud A. Makhlouf Geometric display tools and methods for the visual specification, design automation, and control of adaptive real systems
AU5273100A (en) * 1999-05-17 2000-12-05 Foxboro Company, The Methods and apparatus for control configuration with versioning, security, composite blocks, edit selection, object swapping, formulaic values and other aspects
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6515683B1 (en) 1999-06-22 2003-02-04 Siemens Energy And Automation Autoconfiguring graphic interface for controllers having dynamic database structures
US6510352B1 (en) 1999-07-29 2003-01-21 The Foxboro Company Methods and apparatus for object-based process control
US6708276B1 (en) * 1999-08-03 2004-03-16 International Business Machines Corporation Architecture for denied permissions in Java
US6526513B1 (en) * 1999-08-03 2003-02-25 International Business Machines Corporation Architecture for dynamic permissions in java
US6415418B1 (en) 1999-08-27 2002-07-02 Honeywell Inc. System and method for disseminating functional blocks to an on-line redundant controller
US6477435B1 (en) 1999-09-24 2002-11-05 Rockwell Software Inc. Automated programming system for industrial control using area-model
US6449624B1 (en) 1999-10-18 2002-09-10 Fisher-Rosemount Systems, Inc. Version control and audit trail in a process control system
US6707474B1 (en) * 1999-10-29 2004-03-16 Agilent Technologies, Inc. System and method for manipulating relationships among signals and buses of a signal measurement system on a graphical user interface
US7089242B1 (en) * 2000-02-29 2006-08-08 International Business Machines Corporation Method, system, program, and data structure for controlling access to sensitive functions
WO2001082068A1 (en) * 2000-04-21 2001-11-01 Togethersoft Corporation Methods and systems for identifying dependencies between object-oriented elements
EP1152330A1 (de) * 2000-05-04 2001-11-07 Carels Innovative Software, BVBA/SPRL Verfahren zur automatischen Bildung und Kontrolle eines graphischen Objektsatzes in einem Kunden-Server-Umgebung
JP2001344106A (ja) * 2000-05-31 2001-12-14 Nec Corp オブジェクトの動的アクセス権制御システム
JP3790661B2 (ja) * 2000-09-08 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセス制御システム
GB2366969A (en) * 2000-09-14 2002-03-20 Phocis Ltd Copyright protection for digital content distributed over a network
WO2002023798A1 (en) * 2000-09-14 2002-03-21 Probix, Inc. System for protecting objects distributed over a network
JP2002091553A (ja) 2000-09-20 2002-03-29 Toshiba Corp プラント監視制御用ソフトウェア業務支援装置
US8671460B1 (en) 2000-09-25 2014-03-11 Fisher-Rosemount Systems, Inc. Operator lock-out in batch process control systems
GB2371378A (en) 2000-10-12 2002-07-24 Abb Ab Object oriented control system
SE518491C2 (sv) * 2000-10-12 2002-10-15 Abb Ab Datorbaserat system och metod för behörighetskontroll av objekt
JP2002140685A (ja) * 2000-11-01 2002-05-17 Fuji Photo Film Co Ltd 画像管理システム及び画像管理方法
US6988109B2 (en) * 2000-12-06 2006-01-17 Io Informatics, Inc. System, method, software architecture, and business model for an intelligent object based information technology platform
JP2002366202A (ja) * 2001-06-07 2002-12-20 Yamatake Sangyo Systems Co Ltd セキュリティシステム
US7650607B2 (en) 2001-06-22 2010-01-19 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having a layered architecture
EP1410204B1 (de) 2001-06-22 2016-11-09 Wonderware Corporation Überwachungsprozesssteuer- und herstellungsinformationssystemanwendung mit erweiterbarem komponentenmodell
WO2003001376A1 (en) * 2001-06-22 2003-01-03 Wonderware Corporation A customizable system for creating supervisory process control and manufacturing information applications
US20020199123A1 (en) 2001-06-22 2002-12-26 Wonderware Corporation Security architecture for a process control platform executing applications
GB0115690D0 (en) 2001-06-27 2001-08-22 British Telecomm Software system
GB2377045A (en) 2001-06-28 2002-12-31 Sony Service Ct Configuration manager
US7191196B2 (en) 2001-06-28 2007-03-13 International Business Machines Corporation Method and system for maintaining forward and backward compatibility in flattened object streams
JP2003022123A (ja) * 2001-07-06 2003-01-24 Toshiba Corp 発電プラント監視診断システム及び発電プラント監視診断方法
CA2354443A1 (en) * 2001-07-31 2003-01-31 Ibm Canada Limited-Ibm Canada Limitee Method and system for visually constructing xml schemas using an object-oriented model
US7366738B2 (en) 2001-08-01 2008-04-29 Oracle International Corporation Method and system for object cache synchronization
US20030061482A1 (en) * 2001-08-23 2003-03-27 Efunds Corporation Software security control system and method
US7093298B2 (en) * 2001-08-30 2006-08-15 International Business Machines Corporation Apparatus and method for security object enhancement and management
US6857104B1 (en) * 2001-10-17 2005-02-15 At&T Corp Organizing graphical user interfaces to reveal hidden areas
GB2381092B (en) * 2001-10-19 2005-10-19 Ibm Object locking in a shared VM environment
US20030081007A1 (en) 2001-10-31 2003-05-01 James Cyr Object oriented explorer type environment
JP2003178149A (ja) * 2001-12-07 2003-06-27 Hitachi Ltd プラントの保守管理システム及びプラントの保守方法
FR2833374A1 (fr) * 2001-12-12 2003-06-13 Cp8 Procede et dispositif de controle d'acces dans un systeme embarque
JP2003208251A (ja) * 2002-01-11 2003-07-25 Mitsubishi Heavy Ind Ltd 電子手順実行プログラムおよび電子手順実行サーバ
GB0207354D0 (en) * 2002-03-28 2002-05-08 Ibm Inheritance of access controls within a hierarchy of data processing system resources
JP2003295943A (ja) * 2002-03-29 2003-10-17 Yamatake Corp 施設管理システム
US7350184B2 (en) * 2002-05-02 2008-03-25 Bea Systems, Inc. System and method for enterprise application interactions
JP2004015141A (ja) 2002-06-04 2004-01-15 Fuji Xerox Co Ltd データ伝送システムおよびその方法
US7441264B2 (en) * 2002-06-24 2008-10-21 International Business Machines Corporation Security objects controlling access to resources
DE10239062A1 (de) 2002-08-26 2004-04-01 Siemens Ag Verfahren zum Übertragen von verschlüsselten Nutzdatenobjekten
US7266702B2 (en) * 2002-10-21 2007-09-04 Solid Information Technology Oy Method and system for managing security material and services in a distributed database system
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US20040117392A1 (en) * 2002-12-16 2004-06-17 Hermann Burgmeier Value mapping
US7636853B2 (en) * 2003-01-30 2009-12-22 Microsoft Corporation Authentication surety and decay system and method
US7043311B2 (en) 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system
US7526347B2 (en) * 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
US7117052B2 (en) 2003-02-18 2006-10-03 Fisher-Rosemount Systems, Inc. Version control for objects in a process plant configuration system
US7788489B2 (en) * 2003-05-06 2010-08-31 Oracle International Corporation System and method for permission administration using meta-permissions
US7814477B2 (en) * 2003-05-20 2010-10-12 Oracle International Corp. Packaging system for customizing software
US7242413B2 (en) * 2003-05-27 2007-07-10 International Business Machines Corporation Methods, systems and computer program products for controlling tree diagram graphical user interfaces and/or for partially collapsing tree diagrams
US7480798B2 (en) * 2003-06-05 2009-01-20 International Business Machines Corporation System and method for representing multiple security groups as a single data object
US6799080B1 (en) * 2003-06-12 2004-09-28 The Boc Group, Inc. Configurable PLC and SCADA-based control system
US7515717B2 (en) * 2003-07-31 2009-04-07 International Business Machines Corporation Security containers for document components
DE60321009D1 (de) 2003-11-19 2008-06-26 Sony Deutschland Gmbh Kopiergeschützte digitale Daten
US7337412B2 (en) * 2003-12-15 2008-02-26 International Business Machines Corporation Methods, systems and computer program products for providing multi-dimensional tree diagram graphical user interfaces
US7515977B2 (en) * 2004-03-30 2009-04-07 Fisher-Rosemount Systems, Inc. Integrated configuration system for use in a process plant
DE102004028177A1 (de) 2004-06-04 2005-12-29 Siemens Ag System zum Bedienen einer Anlage durch Editieren von grafischen Objekten
JP4829686B2 (ja) 2006-06-07 2011-12-07 大阪瓦斯株式会社 サウナ装置
JP4231890B2 (ja) 2007-08-01 2009-03-04 興代 伊達 アンコイラー及びその使用方法

Also Published As

Publication number Publication date
GB0815497D0 (en) 2008-10-01
US7526347B2 (en) 2009-04-28
CN1702582A (zh) 2005-11-30
HK1086081A1 (en) 2006-09-08
JP2005339495A (ja) 2005-12-08
US20110224808A1 (en) 2011-09-15
GB2414568A (en) 2005-11-30
US7971052B2 (en) 2011-06-28
US20050027376A1 (en) 2005-02-03
HK1124669A1 (en) 2009-07-17
US8788071B2 (en) 2014-07-22
GB2449585B (en) 2009-03-11
US20090287321A1 (en) 2009-11-19
GB0418080D0 (en) 2004-09-15
CN103616868B (zh) 2017-09-26
JP4889929B2 (ja) 2012-03-07
GB2414568B (en) 2009-03-11
GB2449585A (en) 2008-11-26
CN103616868A (zh) 2014-03-05

Similar Documents

Publication Publication Date Title
DE102004038807A1 (de) Sicherheit für Objekte in einem Konfigurationssystem für Prozessanlagen
DE102004038808A1 (de) Versionskontrolle für Objekte in einem Konfigurationssystem für Prozessanlagen
DE102004007435A1 (de) Modulklassenobjekte in einem Prozessanlagenkonfigurierungssystem
DE60119171T2 (de) Verfahren und gerät zur erzeugung einer anwendung für ein automatisiertes steuerungssystem
DE112005001031B4 (de) Grafisches Bildschirmkonfigurationsgerüst für vereinheitlichte Prozesssteuerungssystemoberfläche
DE102007046642A1 (de) Verfahren und Modulklassenobjekte zur Konfiguration von fehlenden Einrichtungen in verfahrenstechnischen Anlagen
DE112013004924T9 (de) Dynamisch wiederverwendbare Klassen
DE102015100024A1 (de) Wiederverwendbare Grafikelemente mit schnell bearbeitungsfähigen Merkmalen zur Verwendung in Benutzeranzeigen von Anlagenüberwachungssystemen
DE10348564B4 (de) Objekteinheit, Prozeßflußmodulsystem, Prozeßflußverfolgungssystem und Verbinderobjekteinheit zum Gebrauch in einer Prozeßanlage
DE102007041917B4 (de) Prozessanlagenüberwachung auf der Grundlage von multivariater statistischer Analyse und Online-Prozesssimulation
DE112004001716B4 (de) Verfahren zur Freigabe von Softwareobjekten zur Verwendung in einem sicherheitsgerichteten System und Freigabesystem für Softwareobjekte zur Verwendung in einem Prozesssteuersystem mit einem Prozessor
DE102010038146A1 (de) Verfahren zum Auswählen von Formen in einer Grafikanzeige
DE102011001460A1 (de) Verfahren und Gerät für eine datengesteuerte Schnittstelle basierend auf Relationen zwischen Prozesssteuerungsetiketten
DE102004011162A1 (de) Verknüpfungsautomatik von Prozess-Ereignisdaten zu einem Datenarchivsystem
DE10102205A1 (de) Programmierwerkzeug zum Konfigurieren und Verwalten eines Prozeßsteuerungsnetzes einschließlich der Nutzung von räumlichen Informationen
DE10011661A1 (de) Prozeßsteuersystem mit Prozeßsteuerroutinen unter Verwendung von indirekter Referenzierung
DE10206902A1 (de) Engineeringverfahren und Engineeringsystem für industrielle Automatisierungssysteme
DE10049025A1 (de) Process control configuration system for use with an AS-inferface device network
EP2012205A2 (de) Vorrichtung und Verfahren zum Generieren einer Bedienoberflächenkonfiguration für ein Feldgerät
EP1634130B1 (de) Vorrichtung und verfahren zur programmierung und/oder ausführung von programmen für industrielle automatisierungssysteme
WO2021156483A1 (de) Verfahren und system zum validieren eines steuerungsprogramms
DE102016121788A1 (de) Konfiguration einer Automatisierungsanlage

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20110427

R016 Response to examination communication