DE10147050A1 - Bedienersperre in Steuersystemen von Batchprozessen - Google Patents
Bedienersperre in Steuersystemen von BatchprozessenInfo
- Publication number
- DE10147050A1 DE10147050A1 DE10147050A DE10147050A DE10147050A1 DE 10147050 A1 DE10147050 A1 DE 10147050A1 DE 10147050 A DE10147050 A DE 10147050A DE 10147050 A DE10147050 A DE 10147050A DE 10147050 A1 DE10147050 A1 DE 10147050A1
- Authority
- DE
- Germany
- Prior art keywords
- module object
- unit module
- value
- unit
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24167—Encryption, password, user access privileges
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
- Safety Devices In Control Systems (AREA)
- Programmable Controllers (AREA)
Abstract
Ein Prozeßsteuersystem weist Attribute auf Modulebene auf, die zur Steuerung des Zugangs zum Schreiben von Informationen zu Einheitsmudulobjekten und Modulobjekten genutzt werden können. Ein Sicherheitsprüfprozeß prüft die Attribute auf Modulebene, die OPERMODE- und OPERLOCK-Attribute aufweisen können, deren Werte bestimmen, ob Informationen zu Einheitsmodulobjekten oder Modulobjekten geschrieben werden darf. Die Werte der Attribute auf Modulebene können auf der Basis, ob ein bestimmtes Modulobjekt von dem Prozeßsteuersystem genutzt wird, gesteuert werden.
Description
Die Erfindung betrifft allgemein Prozeßsteuerungsnetze und
speziell die Möglichkeit, Bediener daran zu hindern,
Modulobjekte oder Geräte, die zum Gebrauch in einem Prozeß
wie etwa einem Batchprozeß bestimmt sind, während des Ablaufs
des Prozesses zu modifizieren.
Prozeßsteuerungsnetze, wie sie in chemischen, Erdöl- oder
anderen Prozessen verwendet werden, umfassen im allgemeinen
ein zentrales Prozeßsteuergerät, das kommunikativ mit einer
oder mehreren Feldeinrichtungen verbunden ist, die
beispielsweise Ventilpositionierer, Schalter, Sensoren (etwa
Temperatur-, Druck- und Durchflußmengensensoren) usw. sein
können. Diese Feldeinrichtungen können physische
Steuerfunktionen innerhalb des Prozesses ausüben (etwa ein
Ventil öffnen oder schließen), Messungen innerhalb des
Prozesses zum Gebrauch bei der Steuerung des Betriebs
vornehmen oder alle möglichen anderen gewünschten Funktionen
innerhalb des Prozesses ausführen. Prozeßsteuergeräte werden
historisch mit Feldeinrichtungen über eine oder mehrere
Analogsignalleitungen oder Bussen verbunden, die
beispielsweise Signale von 4-20 mA zu und von den
Feldeinrichtungen führen können. Neuerdings hat jedoch die
Prozeßsteuerungsindustrie eine Reihe von offenen, digitalen
oder kombiniert digitalen und analogen Standard-
Kommunikationsprotokollen wie etwa die Protokolle
FOUNDATION™ FIELDBUS (nachstehend "Fieldbus"), HART®,
PROFIBUS®; WORLDFIP®; Device-Net© und CAN entwickelt, die
dazu Verwendet werden können, Kommunikationen zwischen einem
Steuergerät und Feldeinrichtungen zu implementieren.
Allgemein gesagt empfängt das Prozeßsteuergerät Signale, die
Messungen, die von einer oder mehreren Feldeinrichtungen
vorgenommen wurden, und/oder andere Informationen, die die
Feldeinrichtungen betreffen, bezeichnen, nutzt diese
Informationen zur Implementierung einer typischerweise
komplexen Steuerroutine und erzeugt Steuersignale, die auf
den Signalleitungen oder Bussen zu den Feldeinrichtungen
gesendet werden, um so den Betrieb des Prozesses zu steuern.
Bestimmte Arten von Prozeßsteuerungsnetzen wie etwa
diejenigen, die in Batchprozessen verwendet werden, umfassen
charakteristisch eine Vielzahl von Gruppen von sich
wiederholenden Geräten, die dazu bestimmt sind, gleiche oder
gleichartige Einrichtungen zu haben, die im wesentlichen die
gleiche Funktion innerhalb der Prozesse ausüben.
Beispielsweise kann eine Keksfabrik eine Reihe von
Mischgeräten (z. B. Mischeinheiten), eine Reihe von
Backeinrichtungen (d. h. Backeinheiten) und eine Reihe von
Verpackungseinrichtungen (d. h. Verpackungseinheiten) haben,
wobei einige oder sämtliche Mischeinheiten imstande sind,
parallel zu arbeiten, und so verbunden sind, daß sie in Reihe
mit einigen oder sämtlichen Backeinheiten und den
Verpackungseinheiten arbeiten.
Typischerweise führt ein Batchprozeß eine Reihe von
verschiedenen Phasen oder Schritten aufeinanderfolgend aus,
wobei die erste Stufe beendet wird, bevor die zweite Stufe
beginnt. Bei der oben beschriebenen Keksfabrik kann also der
Batchprozeß eine erste Phase oder einen ersten Schritt
ablaufen lassen, um die Mischeinheit zu steuern, kann dann
eine zweite Phase ablaufen lassen, um die Backeinheit an dem
von der Mischeinrichtung hergestellten Produkt einzusetzen,
und kann dann eine dritte Phase ablaufen lassen, die die
Verpackungseinheit steuert, um das von der Backeinheit
erzeugte Produkt zu verpacken. Typischerweise hat jede
Einheit ein zugehöriges Einheitsmodulobjekt, das Software
sein kann, die ausgebildet ist, um den Zustand einer Einheit
(z. B. einer Hardwarekomponente) darzustellen.
Einheitsmodulobjekts können Algorithmen sein, die in
Softwarebefehlen verkörpert sind, die so optimiert sind, daß
sie die Ausführung von Modulen einer unteren Ebene
koordinieren (nachstehend werden die Module einer unteren
Ebene einfach als "Modulobjekte" bezeichnet). Modulobjekte
können, wie nachstehend noch im einzelnen beschrieben wird,
einen variablen Bereich und einen Algorithmusbereich
aufweisen. Typischerweise ist ein Modulobjekt so ausgebildet,
daß es eine einzelne logische Funktion wie etwa das Öffnen
eines Ventils oder das Befüllen eines Tanks ausführt. Kurz
gesagt werden Modulobjekte verwendet, um den Zustand einer
Hardwarekomponente zu ändern.
Der vorstehende beispielhafte Batchprozeß zum Herstellen von
Keksen zeigt zwar, daß jede Phase an einer bestimmten Einheit
wirksam ist, das ist aber nicht unbedingt immer der Fall. In
Abhängigkeit von der Anzahl Schritte jeder Phase kann eine
Vielzahl von Geräteeinheiten verwendet werden, um eine
bestimmte Phase auszuführen. Wenn beispielsweise anstelle
eines Batchprozesses, der zur Herstellung von Keksen
geschrieben und verwendet wird, die Keksherstellung eine
Einzelphase eines größeren Batchprozesses ist, könnte eine
solche Phase Misch-, Back- und Verpackungseinheiten steuern.
Jede Einheit (und ihr zugehöriges Einheitsmodulobjekt) kann
ein oder mehr ihr zugeordnete Modulobjekte haben. Wenn ein
Einheitsmodulobjekt untergeordnete Modulobjekte hat, kann man
typischerweise sagen, daß die untergeordneten Modulobjekte im
Besitz des Einheitsmodulobjekts sind. Beispielsweise kann ein
Mischeinheitsmodulobjekt eine Reihe von Ventilen zur Abgabe
von Ingredienzien in einen Mischer besitzen, und jedes
einzelne der Reihe von Ventilen kann ein zugehöriges
Modulobjekt zur Steuerung der Position eines bestimmten
Ventils haben. Ein Modulobjekt kann Eingangs-, Verarbeitungs-
und Ausgangsbereiche haben. Im Betrieb kann der
Eingangsbereich ein Signal von einem Sensor empfangen und das
empfangene Signal an den Verarbeitungsbereich zur
Verarbeitung leiten. Der Verarbeitungsbereich kann das
empfangene Signal mit einem Sollwert vergleichen und auf der
Basis der Differenz zwischen den beiden Signalen ein
Ausgangssignal erzeugen. Das Ausgangssignal des
Verarbeitungsbereichs wird dem Ausgangsbereich zugeführt, der
einen Ausgangswert erzeugt, der zur Steuerung eines
Hardwarebereichs (z. B. eines Ventils) genutzt wird.
Beispielsweise kann während einer Mischphase ein
Ventilmodulobjekt eine Anzeige der Milchmenge in dem Mischer
empfangen. Der Verarbeitungsbereich des Modulobjekts kann die
Milchmengenanzeige mit einem Sollwert, der die erwünschte
Milchmenge in dem Mischer darstellt, unter Anwendung einer
PID-Steuerroutine vergleichen, um zu bestimmen, ob dem
Mischer weitere Milch hinzugefügt werden muß. Auf der Basis
der Ergebnisse des Vergleichs zwischen der Milchmengenanzeige
und dem Sollwert kann das Modulobjekt ein Ventil so steuern,
daß es den Milchfluß in den Mischer erhöht, verringert oder
anhält.
Bei dem obigen Beispiel kann ein einem Ausgangsventil
zugeordnetes zusätzliches Modulobjekt verwendet werden, um
den Fluß von Keksteig aus dem Mischer durch Öffnen eines
Ventils während einer Mischphase zu steuern. Individuelle
Modulobjekte können von unterschiedlichen Phasen in einem
Batchprozeß genutzt werden. Ferner kann ein Bediener die
Programmierung eines bestimmten Modulobjekts ändern wollen.
Beispielsweise kann ein Bediener einen Sollwert eines
Modulobjekts ändern, während die Mischeinheit gereinigt wird.
Die Änderung der Programmierung eines Modulobjekts kann zwar
einem Bediener die Durchführung notwendiger Funktionen wie
etwa Reinigen, Warten, Reparatur und dergleichen ermöglichen,
aber die Änderung der Programmierung eines Modulobjekts
während der Ausführung eines Batchprozesses oder einer Phase
unter Verwendung dieses Modulobjekts kann den Ablauf dieses
Batchprozesses oder dieser Phase stören.
Daher müssen Bediener sehr vorsichtig sein, um
sicherzustellen, daß ein bestimmtes Modulobjekt nicht gerade
in Gebrauch oder planmäßig in Betrieb zu nehmen ist, bevor
die Programmierung dieses Modulobjekts geändert wird.
Beispielsweise kann ein Bediener Parameter wie etwa
Sollwerte, Durchflußmengen, die zeitliche Steuerung oder
andere Parameter eines bestimmten Modulobjekts ändern wollen.
Aber ungeachtet der Sorgfalt, mit der ein Bediener handelt,
kann doch eine ungewollte Neuprogrammierung eines
Modulobjekts auftreten und die Ausführung eines
Batchprozesses oder einer Phase stören, was zu einem
potentiellen Verlust oder einer Kontaminierung des Produkts
(z. B. des Keksteigs) führen kann.
Bei anderen Anwendungen, die nichts mit der Herstellung zu
tun haben, kann eine unbeabsichtigte Neuprogrammierung eines
Modulobjekts schwererwiegende Folgen haben. Wenn
beispielsweise ein Modulobjekt in einem Batchprozeß oder
einer Phase verwendet wird, die zur Steuerung eines
Kernkraftwerks dient, kann eine unbeabsichtigte
Neuprogrammierung zu einem katastrophalen Unfall führen.
Ein Prozeßsteuersystem umfaßt Parameter auf Modulebene, die
in Einheitsmodulobjekten und Modulobjekten enthalten sind.
Solche Parameter können dazu verwendet werden, den Zugang zu
einem Modulobjekt zu steuern, um eine versehentliche
Neuprogrammierung des Modulobjekts zu verhindern. Der
Modulobjektzugriff kann individuell auf einer von-Modul-zu-
Modul-Basis gesteuert werden, oder er kann hierarchisch auf
der Basis der Modulobjekte, die einem Einheitsmodulobjekt
gehören oder von einer Phase genutzt werden, gesteuert
werden. Insbesondere kann der Zugang zu einem Modulobjekt
gesperrt, freigegeben oder eingeschränkt werden. Wenn ein
Modulobjekt gesperrt ist, können Parameter oder die
Programmierung dieses Modulobjekts nicht geändert werden
(beispielsweise können keine Informationen zu diesem
Modulobjekt geschrieben werden). Wenn ein Modulobjekt
freigegeben ist, können umgekehrt Parameter oder eine
Programmierung dieses Modulobjekts geändert werden (z. B.
können Informationen zu diesem Modulobjekt geschrieben
werden). Eingeschränkter Zugang ist eine Kombination aus
gesperrtem und freigegebenem Zustand, wobei das Modulobjekt
für einen Bediener, der einen gültigen Zugangscode hat,
freigegeben wird, jedoch für einen Bediener, der den gültigen
Zugangscode nicht hat, gesperrt ist. Die Parameter der
Modulobjektebene können verhindern, daß Bediener
unbeabsichtigt ein Modulobjekt modifizieren, das von einem
Batchprozeß oder einer Phase desselben gerade oder später
genutzt wird, wodurch verhindert wird, daß der Batchprozeß
oder die entsprechende Phase ungewollt gestört wird.
Gemäß einer ersten Ausführungsform kann die vorliegende
Erfindung ein Verfahren zur Steuerung des Zugriffs zum
Schreiben von Information an ein Modulobjekt zur Verwendung
in einem Prozeßsteuersystem sein, das ein Einheitsmodulobjekt
hat, das für einen Zustand einer Hardwarekomponente
repräsentativ ist, wobei das Modulobjekt dem
Einheitsmodulobjekt zugeordnet ist und verwendet wird, um den
Zustand der Hardwarekomponente zu ändern, wobei das
Einheitsmodulobjekt ein Einheitsmodulobjekt-Betriebsattribut
hat, das einen Wert hat. Das Verfahren kann die folgenden
Schritte aufweisen: Bestimmen des Werts des
Einheitsmodulobjekt-Betriebsartattributs und selektives
Zulassen des Zugangs zum Schreiben von Information in das
Modulobjekt auf der Basis des Werts des Einheitsmodulobjekt-
Betriebsartattributs.
Bei manchen Ausführungsformen kann der Schritt des selektiven
Zulassens des Zugangs zum Schreiben von Information zu dem
Modulobjekt einen Schritt des Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt, wenn sich der
Wert des Einheitsmodulobjekt-Betriebsartattributs in einem
freigegebenen Zustand befindet, aufweisen. Zusätzlich kann
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen Schritt
des Nichtzulassens des Zugangs zum Schreiben von Information
zu dem Modulobjekt, wenn sich der Wert des
Einheitsmodulobjekt-Betriebsartattributs in einem gesperrten
Zustand befindet, aufweisen. Ferner kann der Schritt des
selektiven Zulassens des Zugangs zum Schreiben von
Information zu dem Modulobjekt einen Schritt aufweisen, in
dem bestimmt wird, ob ein Anwender befugt ist, Information zu
dem Modulobjekt zu schreiben.
Bei anderen Ausführungsformen kann das Modulobjekt ein
Modulobjekt-Betriebsartattribut aufweisen, das einen Wert
hat, wobei der Schritt des selektiven Zulassens des Zugangs
zum Schreiben von Information zu dem Modulobjekt einen
Schritt der Steuerung des Zugangs zum Schreiben von
Information zu dem Modulobjekt auf der Basis des Werts des
Einheitsmodulobjekt-Betriebsartattributs und auf der Basis
des Werts des Modulobjekt-Betriebsartattributs aufweisen
kann.
Bei anderen Ausführungsformen kann das Einheitsmodulobjekt
ein Einheitsmodulobjekt-Sperrattribut aufweisen, das einen
Wert hat, wobei der Schritt des selektiven Zulassens des
Zugangs zum Schreiben von Information zu dem Modulobjekt
einen Schritt der Steuerung des Zugangs zum Schreiben von
Information zu dem Modulobjekt auf der Basis des Werts des
Einheitsmodulobjekt-Sperrattributs aufweisen kann. Zusätzlich
kann das Prozeßsteuersystem eine Phase aufweisen, und der
Schritt des selektiven Zulassens von Zugang zum Schreiben von
Information zu dem Modulobjekt kann einen Schritt der
Bestimmung des Werts des Einheitsmodulobjekt-Sperrattributs
durch Bestimmen, ob das Einheitsmodulobjekt von der Phase
genutzt wird, aufweisen.
Zusätzlich kann das Prozeßsteuersystem eine Phase aufweisen,
die eine Bedienersperre aufweist, wobei der Schritt des
selektiven Zulassens von Zugang zum Schreiben von Information
zu dem Modulobjekt einen Schritt des Bestimmens des Werts des
Einheitsmodulobjekt-Sperrattributs durch Bestimmen, ob die
Bedienersperre für die Phase gesetzt ist, die das
Einheitsmodulobjekt nutzt, aufweisen. Ferner kann das
Einheitsmodulobjekt ein Einheitsmodulobjekt-Sperrattribut,
das einen Wert hat, aufweisen, und das Prozeßsteuersystem
kann eine Vielzahl von Modulobjekten aufweisen, die dem
Einheitsmodulobjekt zugeordnet sind, wobei der Schritt des
selektiven Zulassens des Zugangs zum Schreiben von
Information zu dem Modulobjekt einen Schritt der Steuerung
des Zugangs zum Schreiben von Information zu der Vielzahl von
Modulobjekten auf der Basis des Werts des
Einheitsmodulobjekt-Sperrattributs aufweist.
Gemäß einer zweiten Ausführungsform kann die Erfindung ein
Zugangssteuersystem zur Steuerung des Zugangs zum Schreiben
von Information zu einem Modulobjekt zum Gebrauch in einem
Prozeßsteuersystem sein, das einen Prozessor und ein
Einheitsmodulobjekt hat, das für einen Zustand einer
Hardwarekomponente repräsentativ ist, wobei das Modulobjekt
dem Einheitsmodulobjekt zugeordnet ist und dazu dient, den
Zustand der Hardwarekomponente zu ändern, wobei das
Einheitsmodulobjekt ein Einheitsmodulobjekt-
Betriebsartattribut hat. Das System kann folgendes aufweisen:
einen Speicher, eine in dem Speicher gespeicherte erste
Routine, um den Prozessor zu veranlassen, den Wert des
Einheitsmodulobjekt-Betriebsartattributs zu bestimmen, und
eine in dem Speicher gespeicherte zweite Routine, um den
Prozessor zu veranlassen, den Zugang zum Schreiben von
Information zu dem Modulobjekt auf der Basis des Werts des
Einheitsmodulobjekt-Betriebsartattributs selektiv zuzulassen.
Gemäß einer dritten Ausführungsform kann die Erfindung ein
Verfahren zur Steuerung des Zugangs zum Schreiben von
Information zu einem Modulobjekt zum Gebrauch in einem
Prozeßsteuersystem sein, das ein Einheitsmodulobjekt hat, das
für einen Zustand einer Hardwarekomponente repräsentativ ist,
wobei das Modulobjekt dem Einheitsmodulobjekt zugeordnet ist
und dazu dient, den Zustand der Hardwarekomponente zu ändern,
wobei das Modulobjekt ein Modulobjekt-Betriebsartattribut
hat, das einen Wert hat. Bei einer solchen Ausführungsform
kann das Verfahren die Schritte aufweisen: Bestimmen des
Werts des Modulobjekt-Betriebsartattributs und selektives
Zulassen des Zugangs zum Schreiben von Information zu dem
Modulobjekt auf der Basis des Werts des Modulobjekt-
Betriebsartattributs.
Gemäß einer vierten Ausführungsform kann die Erfindung ein
Prozeßsteuersystem sein, das Prozeßsteuerungseinrichtungen
und ein den Prozeßsteuerungseinrichtungen zugeordnetes
Modulobjekt aufweist, wobei das Modulobjekt einen Parameter
aufweist, der zur Steuerung des Betriebs der
Prozeßsteuerungseinrichtungen genutzt wird, und wobei das
Modulobjekt ein Modulobjekt-Betriebsartattribut zum
selektiven Zulassen des Zugangs zum Schreiben von Information
zu dem Parameter des Modulobjekts aufweist.
Die Erfindung wird nachstehend auch hinsichtlich weiterer
Merkmale und Vorteile anhand der Beschreibung von
Ausführungsbeispielen unter Bezugnahme auf die beiliegenden
Zeichnungen näher erläutert. Die Zeichnungen zeigen in
Fig. 1 einen Ausschnitt eines Blockdiagramms und einen
Ausschnitt einer schematischen Darstellung eines
Ausschnittes eines Prozeßsteuerungsnetzes, das
Parameter auf Modulebene zur Steuerung des
Modulzugangs verwenden kann;
Fig. 2 ein Blockdiagramm einer Objektstruktur, wobei eine
logische Konfiguration des Prozeßsteuerungsnetzes
von Fig. 1 veranschaulicht ist;
Fig. 3 eine Benutzeroberfläche, die zur Steuerung oder zur
Konstruktion einer Phase unter Verwendung einer
graphischen Darstellung der Phase genutzt werden
kann;
Fig. 4 eine Beziehung zwischen einem Einheitsmodulobjekt
und drei beispielhaften Modulobjekten, die dem
Einheitsmodulobjekt gehören;
Fig. 5 einen Ablauf, mit dem ein Einheitsmodul einen Wert
für seinen OPERLOCK-Parameter bestimmt;
Fig. 6A einen Sicherheitsprüfungsablauf, der Bediener daran
und 6B hindert, unbeabsichtigt Änderungen an Modulen eines
Prozeßsteuersystems vorzunehmen.
Gemäß Fig. 1 weist ein Prozeßsteuerungsnetz 10 eine
Prozeßsteuerung 12 auf, die mit zahlreichen Workstations 14
beispielsweise über eine Ethernetverbindung 15 verbunden ist.
Die Steuerung 12 ist außerdem mit Einrichtungen oder Geräten
innerhalb eines Prozesses (allgemein mit 16 bezeichnet) über
eine Ein-/Ausgabe- bzw. E/A-Einrichtung (nicht gezeigt) und
eine Gruppe von Kommunikationsleitungen oder einen Bus 18
verbunden. Die Steuerung 12, die nur beispielhaft eine
DeltaV™ Steuerung von Fisher-Rosemount Systems, Inc. ist,
kann mit Steuerelementen wie etwa Feldeinrichtungen und
Funktionsblöcken innerhalb von Feldeinrichtungen, die in dem
gesamten Prozeß 16 verteilt sind, kommunizieren, um eine oder
mehrere Prozeßsteuerroutinen auszuführen und dadurch eine
gewünschte Steuerung des Prozesses 16 zu implementieren.
Diese Prozeßsteuerroutinen können kontinuierliche oder
Batchprozeß-Steuerroutinen oder -vorgänge sein. Die
Workstations 14 (die beispielsweise Personalcomputer sein
können), können von einem oder mehreren Ingenieuren oder
Technikern benutzt werden, um Prozeßsteuerroutinen zu
entwerfen, die von der Steuerung 12 auszuführen sind, um mit
der Steuerung 12 zum Herunterladen solcher
Prozeßsteuerroutinen zu kommunizieren, um während des Ablaufs
des Prozesses 16 Informationen, die den Prozeß 16 betreffen,
zu empfangen und anzuzeigen, und um anderweitig mit den von
der Steuerung 12 ausgeführten Prozeßsteuerroutinen
zusammenzuwirken. Jede Workstation 14 weist einen Speicher 20
auf, um Anwendungen wie etwa Konfigurationsentwurfs
anwendungen zu speichern und Daten wie etwa
Konfigurationsdaten zu speichern, die die Konfiguration des
Prozesses 16 betreffen. Jede Workstation 14 weist ferner
einen Prozessor 21 auf, der die Anwendungen ausführt, um
einem Benutzer zu ermöglichen, Prozeßsteuerroutinen zu
entwerfen und diese Prozeßsteuerroutinen in die Steuerung 12
herunterzuladen. Ebenso umfaßt die Steuerung 12 einen
Speicher 22 zum Speichern von Konfigurationsdaten und
Prozeßsteuerroutinen, die zur Steuerung des Prozesses 16 zu
verwenden sind, und hat einen Prozessor 24, der die
Prozeßsteuerroutinen ausführt, um eine
Prozeßsteuerungsstrategie zu implementieren. Wenn die
Steuerung 12 eine DeltaV-Steuerung ist, kann es eine
graphische Darstellung der Prozeßsteuerroutinen innerhalb der
Steuerung 12 an einen Anwender zur Anzeige der Steuerelemente
innerhalb der Prozeßsteuerroutine und der Art und Weise, wie
diese Steuerelemente konfiguriert sind, über eine der
Workstations 14 liefern, um die Steuerung des Prozesses 16
auszuführen.
Bei dem in Fig. 1 gezeigten beispielhaften Prozeßsteuernetz
10 ist die Steuerung 12 kommunikativ über den Bus 18 mit zwei
Gruppen von gleichartig konfigurierten Einrichtungen
verbunden, wobei jede Gruppe eine Reaktoreinheit, die hier
als Reaktor_01 (R1) oder Reaktor_02 (R2) bezeichnet ist, eine
Filtereinheit, die hier als Filter_01 (F1) oder Filter_02
(F2) bezeichnet ist, und eine Trocknereinheit, die hier als
Trockner_01 (D1) oder Trockner_02 (D2) bezeichnet ist, hat.
Reaktor_01 umfaßt einen Reaktorbehälter 100, zwei
Einlaßventile 101 und 102, die so geschaltet sind, daß sie
Fluideinlaßleitungen steuern, die Fluid beispielsweise von
einem (nicht gezeigten) Kopfbehälter in den Reaktorbehälter
100 einleiten, und ein Auslaßventil 103, das so geschaltet
ist, daß es den Fluidstrom aus dem Reaktorbehälter 100 durch
eine Fluidauslaßleitung steuert. Eine Einrichtung 105, die
ein Sensor wie etwa ein Temperatursensor, ein Drucksensor,
ein Flüssigkeitspegelmesser usw. oder eine sonstige
Einrichtung wie ein elektrisches Heizgerät oder ein
Dampfheizgerät sein kann, ist in oder nahe dem
Reaktorbehälter 100 angeordnet. Der Reaktor_01 ist über das
Ventil 103 mit dem Filter_01 verbunden, der eine
Filtereinrichtung 110 hat, die wiederum mit dem Trockner_01,
der eine Trocknereinrichtung 120 hat, verbunden. Ebenso
umfaßt die zweite Gruppe von Einrichtungen den Reaktor_02,
der einen Reaktorbehälter 200, zwei Einlaßventile 201 und
202, ein Auslaßventil 203 und eine Einrichtung 205 hat. Der
Reaktor_02 ist mit dem Filter_02 verbunden, der eine
Filtereinrichtung 210 hat, der wiederum mit dem Trockner_02,
der eine Trocknereinrichtung 220 hat, verbunden ist. Die
Filtereinrichtungen 110 und 210 und die Trocknereinrichtungen
120 und 220 können zusätzliche Steuerelemente (wie Heizer,
Förderbänder und dergleichen), Sensoren usw. haben, die ihnen
zugeordnet sind.
Wie Fig. 1 zeigt, ist die Steuerung 12 kommunikativ mit den
Ventilen 101 bis 103, 201 bis 302, den Einrichtungen 105,
205, den Filtern 110, 210 und den Trocknern 120 und 220 (und
den sonstigen zugehörigen Einrichtungen) über den Bus 18
verbunden, um den Betrieb dieser Elemente zu steuern, so daß
sie eine oder mehrere Operationen in bezug auf diese
Einheiten ausführen. Diese Operationen können beispielsweise
umfassen: Füllen der Reaktorbehälter oder Trockner, Erwärmen
des Materials innerhalb der Reaktorbehälter oder Trockner,
Entleeren der Reaktorbehälter oder Trockner, Reinigen der
Reaktorbehälter oder Trockner, Aktivieren der Filter usw.
Die Ventile, Sensoren und sonstigen Einrichtungen, die in
Fig. 1 gezeigt sind, können jede gewünschte Art von
Einrichtung sein, was beispielsweise Fieldbus-Einrichtungen,
4-20 mA-Standardeinrichtungen, HART-Einrichtungen usw. umfaßt,
und können mit der Steuerung 12 unter Anwendung jedes
bekannten oder gewünschten Kommunikationsprotokolls wie etwa
des Fieldbus-Protokolls, des HART-Protokolls, des 4-20 mA-
Analogprotokolls usw. kommunizieren. Ferner können andere
Arten von Einrichtungen mit der Steuerung 12 verbunden sein
und davon gesteuert werden. Außerdem können andere
Steuerungen mit der Steuerung 12 und den Workstations 14 über
die Ethernet-Kommunikationsleitung 15 verbunden sein, um
andere Einrichtungen oder Bereiche, die zu dem Prozeß 16
gehören, zu steuern, und der Betrieb dieser zusätzlichen
Steuerungen kann mit dem Betrieb der in Fig. 1 gezeigten
Steuerung 12 auf jede gewünschte Weise koordiniert sein.
Allgemein gesprochen kann das Prozeßsteuersystem von Fig. 1
verwendet werden, um Batchprozesse zu implementieren, wobei
beispielsweise eine der Workstations 14 oder die Steuerung 12
eine Batch-Ausführungsroutine oder eine Batchprozedur
ausführt. Die Batchprozedur (die typischerweise in einer der
Workstations 14 abläuft) ist eine problemorientierte
Steuerroutine, die den Betrieb von einem oder mehreren
Einheitsabläufen steuert, die Unterroutinen oder Prozeduren
sind, die an einer einzigen Einheit wirksam sind, wie etwa
einer der Reaktoreinheiten, der Filtereinheiten, der
Trocknereinheiten oder anderen Einrichtungen. Jede
Einheitsprozedur (die im allgemeinen ebenfalls an der
Workstation 14 abläuft) kann eine Serie von Operationen
ausführen, von denen jede eine oder mehrere Phasen an einer
Einheit, die ein zugehöriges Einheitsmodul hat, ausführen
kann. Für die Zwecke dieser Beschreibung ist eine Phase die
Tätigkeit oder der Schritt auf der untersten Ebene, der an
einer Einheit ausgeführt wird, und wird charakteristisch in
einer der Steuerungen 12 implementiert oder ausgeführt; eine
Operation ist eine Gruppe von Phasen, die eine bestimmte
Funktion an der Einheit ausführt und charakteristisch an
einer der Workstations 14 implementiert oder ausgeführt wird,
indem eine Serie von Phasen aufgerufen wird, während eine
Einheitsprozedur eine Serie von einer oder mehreren
Operationen ist, die an einer einzigen Einheit ausgeführt
werden und typischerweise als eine Gruppe von
Operationsaufrufen implementiert wird. Als Ergebnis kann jede
Einheitsprozedur eine oder mehrere Phasen und/oder eine oder
mehrere Operationen umfassen. Auf diese Weise führt die
Batchausführungsroutine verschiedene Stufen (d. h.
Einheitsprozeduren) aus, die erforderlich sind, um ein
Produkt wie etwa ein Nahrungsmittelerzeugnis, ein Medikament
usw. herzustellen.
Zur Implementierung von verschiedenen Einheitsprozeduren,
Operationen und Phasen verwendet die Batchprozedur etwas, was
allgemein als eine Rezeptur bezeichnet wird, die die
auszuführenden Schritte, die Mengen und Zeiten, die den
Schritten zugeordnet sind, sowie die Reihenfolge der Schritte
angibt. Schritte für eine Rezeptur können beispielsweise
umfassen: Füllen eines Reaktorbehälters mit den geeigneten
Materialien oder Ingredienzien, Vermischen der Materialien
innerhalb des Reaktorbehälters, Erwärmen der Materialien in
dem Reaktorbehälter auf eine bestimmte Temperatur über einen
bestimmten Zeitraum, Entleeren des Reaktorbehälters und
anschließendes Reinigen des Reaktorbehälters als Vorbereitung
auf den nächsten Chargendurchlauf, Betreiben eines Filters,
um das Ausgangsprodukt eines Reaktors zu filtern, und
anschließendes Betreiben eines Trockners, um das in dem
Reaktorbehälter erzeugte Produkt zu trocknen. Jeder der Serie
von Schritten, die einer jeweils verschiedenen Einheit
zugeordnet sind, definiert eine Einheitsprozedur des
Batchdurchlaufs, und die Batch-Ausführungsroutine oder
Batchprozedur innerhalb der Steuerung 12 führt für jede
einzelne dieser Einheitsprozeduren einen anderen
Steueralgorithmus aus. Selbstverständlich können die
speziellen Materialien, Materialmengen, Heiztemperaturen und
-zeiten usw. für verschiedene Rezepturen verschieden sein,
und somit können sich diese Parameter von einem
Batchdurchlauf zum nächsten in Abhängigkeit von dem
herzustellenden oder zu erzeugenden Produkt und der
verwendeten Rezeptur ändern. Der Fachmann versteht, daß zwar
im vorliegenden Fall Steuerroutinen und Konfigurationen für
Batchdurchläufe in den Reaktoreinheiten, den Filtereinheiten
und den Trocknereinheiten, die in Fig. 1 gezeigt sind,
beschrieben werden, daß aber Steuerroutinen verwendet werden
können, um andere gewünschte Einrichtungen so zu steuern, daß
sie andere gewünschte Batch-Prozeßdurchläufe oder, falls
gewünscht, kontinuierliche Prozeßdurchläufe ausführen.
Ferner versteht der Fachmann, daß die gleichen Phasen,
Operationen oder Einheitsprozeduren eines Batchprozesses an
jeder der verschiedenen Reaktoreinheiten von Fig. 1 zur
gleichen Zeit oder zu verschiedenen Zeiten implementiert
werden können. Da die Reaktoreinheiten von Fig. 1 im
allgemeinen die gleiche Anzahl und Art von Einrichtungen
aufweisen (d. h. da sie zu derselben Klasse von Einheiten
gehören), kann die gleiche generische Phasensteuerroutine für
eine bestimmte Phase genutzt werden, um jede der
verschiedenen Reaktoreinheiten zu steuern, mit der Ausnahme,
daß diese generische Phasensteuerroutine modifiziert werden
muß, um die unterschiedliche Hardware oder die
unterschiedlichen Einrichtungen zu steuern, die den
verschiedenen Reaktoreinheiten zugeordnet sind. Um
beispielsweise eine Füllphase für Reaktor_01 zu
implementieren (wobei die Reaktoreinheit gefüllt wird),
öffnet eine Füllsteuerroutine eines oder mehrere der
Einlaßventile 101 oder 102 während eines bestimmten
Zeitraums, bis beispielsweise der Flüssigkeitspegelmesser 105
erfaßt, daß der Behälter 100 gefüllt ist. Die gleiche
Steuerroutine kann jedoch verwendet werden, um eine Füllphase
für den Reaktor_02 zu implementieren, indem einfach die
Bezeichnung des Einlaßventils (der Einlaßventile) 201 oder
202 anstelle der Ventile 101 oder 102 geändert wird und die
Bezeichnung des Fluidpegelmessers geändert wird, so daß es
sich um den Fluidpegelmesser 205 und nicht den
Fluidpegelmesser 105 handelt.
Die Objektstruktur oder der Baum von Fig. 2 zeigt spezifische
Objekte in Kästchen, während allgemeine Kategorien von
Objekten (oder Objektarten) über den Objekten in dem Baum
ohne Kästchen angegeben sind. Wie Fig. 2 zeigt, umfaßt das
Prozeßsteuerungsnetz 10 einen oder mehrere Bereiche, die
beispielsweise Gebäude oder andere geographische
Bereichsbezeichnungen innerhalb einer Anlage sein können. In
dem Objektbaum von Fig. 2 hat der Prozeß zwei Bereichsobjekte
mit der Bezeichnung Gebäude_01 und Gebäude_02. Jedes
Bereichsobjekt kann in Prozeßzellen unterteilt sein, von
denen jede einen anderen Aspekt des in dem Bereich
durchgeführten Prozesses oder eine Gruppe von miteinander
verbundenen Einrichtungen in dem Bereich kennzeichnet. Das
Gebäude_01-Bereichsobjekt von Fig. 2 umfaßt, wie gezeigt,
wenigstens zwei Prozeßzellobjekte, die als Zelle_01 und
Zelle_02 bezeichnet sind. Jedes Zellobjekt kann keine, eine
oder mehr Einheitsklassen aufweisen, die verschiedene
Kategorien oder Gruppierungen von Hardware kennzeichnen, die
in der Prozeßzelle verwendet werden.
Eine Einheitsklasse ist ein bezeichnetes Objekt, das eine
gemeinsame Konfiguration einer Gruppe von duplizierten
Geräten hat und insbesondere eine Ansammlung von Einheiten
ist, die sehr ähnliche, wenn nicht identische,
Prozeßinstrumente haben, von denen jedes eine sehr ähnliche,
wenn nicht identische, Funktion innerhalb eines Prozesses
ausführt. Einheitsklassenobjekte sind typischerweise so
benannt, daß sie die Arten von Einheiten innerhalb des
Prozeßsteuersystems, zu dem sie gehören, beschreiben. Fig. 2
zeigt eine Kopfbehälter-Einheitsklasse, eine Reaktor-
Einheitsklasse, eine Filter-Einheitsklasse und eine Trockner-
Einheitsklasse, die dem Zell_01-Objekt zugeordnet sind.
Gleichartige Einheitsklassen findet man in Zelle_02, während
andere Gruppierungen von Einheiten anderen Zellen zugeordnet
sein könnten. Selbstverständlich sind in den meisten
Prozeßsteuerungsnetzen ebenfalls viele andere Arten von
Einheitsklassen vorgesehen oder definiert.
Wie für die Reaktor-Einheitsklasse von Fig. 2 gezeigt ist,
kann jedes Einheitsklassenobjekt Einheitsmodulobjekte und
Phasenklassenobjekte (d. h. Phasen) haben, die ihm zugeordnet
sind. Einheitsmodulobjekte bezeichnen im allgemeinen
bestimmte Beispiele von replizierter Hardware innerhalb der
genannten Einheitsklasse, während Phasenklassen im
allgemeinen die Phasen bezeichnen, die bei den der
Einheitsklasse zugehörigen Einheitsmodulobjekten anwendbar
sind. Dabei kann ein Einheitsmodulobjekt ein benanntes
Softwareobjekt sein, das sämtliche Variablen und
Einheitsphasen für eine einzige Prozeßeinheit hält und
typischerweise so benannt ist, daß es bestimmte
Prozeßeinrichtungen identifiziert. Beispielsweise hat die
Reaktor-Einheitsklasse von Zelle_01 von Fig. 2 die R1- und
R2-Phasenobjekte, die den in Fig. 1 gezeigten Reaktor_01- und
Reaktor_02-Einheitsmodulen entsprechen. Die Kopfbehälter-
Einheitsklasse von Zelle_01 weist das einzelne Einheitsmodul
HT1 auf. Ebenso hat die Filter-Einheitsklasse von Zelle_01
das spezielle Filtermodul F1, während die Trockner-
Einheitsklasse von Zelle_01 die ihr zugeordneten
Trocknereinheiten D1 und D2 hat. Gleichermaßen hat die
Zelle_02 Einheitsklassen eines Kopfbehälters (mit einem
einzigen Einheitsmodul HT1), eines Reaktors (mit einem
einzigen Reaktor-Einheitsmodul R3), eines Filters (mit
Filter-Einheitsmodulen F2 und F3).
Wie Fig. 2 zeigt, kann jedes Einheitsphasenobjekt eines oder
mehrere zugehörige Modulobjekte haben, von denen jedes
Eingangs-, Verarbeitungs- und Ausgangsbereiche sowie einen
Bereich hat, der einen Sollwert überwacht (der in dem
Verarbeitungsbereich enthalten sein kann oder nicht).
Beispielsweise kann das Einheitsphasenobjekt 1 (das als ein
Einheitsmodulobjekt angesehen werden kann) Modulobjekte 1 und
2 besitzen. Zusätzlich kann das Einheitsphasenobjekt 2 (das
ebenfalls als ein Einheitsmodulobjekt angesehen werden kann)
das Modulobjekt 2 besitzen. Wie der Fachmann erkennt, können
Modulobjekte einem oder mehreren verschiedenen
Einheitsmodulobjekten oder Einheitsphasenobjekten zugeordnet
sein. Im allgemeinen kann, obwohl ein bestimmtes Modulobjekt
mit zwei oder mehr verschiedenen Einheitsmodulobjekten
assoziiert ist, nur eines dieser Einheitsmodulobjekte das
spezielle Modulobjekt zu einem bestimmten Zeitpunkt benutzen.
Jedes Modulobjekt, das einem Einheitsmodulobjekt zugeordnet
ist, kann als im Besitz dieses Einheitsmodulobjekts
befindlich gesehen werden.
Phasenklassen sind benannte Objekte, die die gemeinsame
Konfiguration für eine Phase halten, die an den vielfachen
Einheiten, die zur gleichen Einheitsklasse gehören, ablaufen
kann und, falls gewünscht, an einer Vielzahl von
verschiedenen Einheitsklassen ablaufen kann. Grundsätzlich
ist jede Phasenklasse eine jeweils verschiedene
Steuerroutine, die von der Steuerung 12 geschaffen und
genutzt wird, um Einheitsmodule innerhalb der gleichen oder
verschiedener Einheitsklassen zu steuern. Typischerweise ist
jede Phasenklasse entsprechend dem Verb benannt, das eine an
einem Einheitsmodul ausgeführte Aktion beschreibt. Wie Fig. 2
zeigt, hat beispielsweise die Reaktor-Einheitsklasse eine
Füll-Phasenklasse, die dazu dient, jeden der Reaktorbehälter
100 oder 200 von Fig. 1 zu füllen, eine Wärme-Phasenklasse,
die dazu dient, jeden der Reaktorbehälter 100 oder 200 von
Fig. 1 zu erwärmen, eine Entleerungs-Phasenklasse, die dazu
dient, jeden der Reaktorbehälter 100 oder 200 von Fig. 1 zu
entleeren, und eine Reinigungs-Phasenklasse, die dazu dient,
jeden der Reaktorbehälter 100 oder 200 von Fig. 1 zu
reinigen. Selbstverständlich können dieser oder jeder anderen
Einheitsklasse andere Phasenklassen zugeordnet sein. In Fig.
2 sind zwar keine speziellen Phasenklassen für die
Kopfbehälter-, Filter- und Trockner-Einheitsklassen gezeigt,
aber für jede existiert wenigstens eine Phasenklasse und wird
von einer Batchprozedur genutzt, um einen Teil eines
Batchprozesses, einer Einheitsprozedur oder -operation unter
Verwendung des Einheitsmodulobjekts, dem die Phasenklasse
zugeordnet ist, zu implementieren.
Eine Phasenklasse kann im allgemeinen als eine Subroutine
betrachtet werden, die von einer Operation einer
Einheitsprozedur (sämtlich innerhalb einer Batch-
Ausführungsroutine) aufgerufen wird, um irgendeine Funktion
auszuführen, die in einem Batch-Gesamtprozeß erforderlich ist
und durch die Rezeptur für diesen Batchprozeß definiert ist.
Eine Phasenklasse kann aufweisen: keinen oder mehrere
Phaseneingangsparameter, die im Grunde die Ausgänge der
Phasenklassen-Subroutine sind, die zu der Batch-
Ausführungsroutine oder zu einer anderen Phasenklasse
zurückgeleitet werden, keine oder mehrere Phasenmeldungen,
die Meldungen sein können, die für den Anwender anzuzeigen
sind und die Operation der Phasenklasse betreffen,
Information, die auf andere Phasenklassen bezogen ist, mit
denen diese Phasenklasse auf irgendeine Weise assoziiert ist,
und keinen oder mehrere Phasenalgorithmus-Parameter, die zur
Schaffung von Parametern in Phasenlogikmodulen oder
Einheitsphasen auf der Basis dieser Phasenklasse führen.
(Einheitsphasen sind einfach die instanzierten Versionen der
Phasenklasse für eine bestimmte Einheit.) Diese
Phasenalgorithmus-Parameter werden als vorübergehende
Speicherplätze oder Variablen während der Ausführung der
Phase genutzt und sind für den Anwender oder die Batch-
Ausführungsroutine nicht notwendigerweise sichtbar. Jede
Phase enthält eine oder mehrere Phasenalgorithmus-
Definitionen (PAD), die im allgemeinen die Steuerroutinen
sind, die zur Implementierung der Phase genutzt werden.
Ferner hat jede Phasenklasse eine Liste von Assoziationen mit
keiner, einer, zwei oder mehreren Einheitsklassen, und diese
Liste definiert die Einheitsklassen, bei denen diese
Phasenklasse und infolgedessen die PAD der Phasenklasse
angewendet werden kann. Somit kann dieselbe Phasenklasse
denselben Einheitsklassen von verschiedenen Prozeßzellen
zugeordnet sein, oder sie kann verschiedenen Einheitsklassen
der gleichen oder von verschiedenen Prozeßzellen oder
Einrichtungszügen zugeordnet sein.
Unter erneuter Bezugnahme auf die Einheitsmodule von Fig. 2
weist jedes Einheitsmodulobjekt keinen oder mehrere
Einheitskennsatzobjekte (UT-Objekte) oder Parameter mit
Anfangswerten auf. Die UT-Objekte sind nur für die R1- und
R2-Module in Fig. 2 gezeigt. Diese Parameter können
Einstellungen und Konfigurationsparametern der dem
Einheitsmodul zugehörigen Einrichtungen entsprechen. Diese
Einheitskennsätze können beispielsweise die Kapazität der
Einheit, die Materialien, aus denen die Einheit besteht, den
Hersteller der Einheit oder andere mit der Einheit
zusammenhängende Daten oder Parameter definieren. Diese Daten
können entweder feste Daten, wie etwa Herstellerdaten oder
variable Daten, wie etwa der letzte Zeitpunkt des Gebrauchs
der Einheit, der letzte Prozeß oder das letzte in die Einheit
eingebrachte Material usw. sein. Ferner können jedem
Einheitsmodulobjekt Alarme, Ressourcenkennzeichnungen, ein
Kontrolldisplay (etwa ein Mensch-Maschine-
Schnittstellenbild), eine Liste der Ressourcen, die für
dieses Einheitsmodul erforderlich sind,
Prozeßzelleninformation usw. zugeordnet sein.
Es ist bekannt, daß eine Batch-Steuerroutine oder eine
Batchprozedur geschaffen wird, um einen bestimmten
Batchprozeß an einer Gruppe oder einem Satz von Einrichtungen
auszuführen, die beispielsweise jede der Reaktoreinheiten
(R1, R2, R3, R4), der Filtereinheiten (F1, F2, F3) und der
Trocknereinheiten (D1, D2, D3) umfassen können. Im
allgemeinen implementiert eine solche Batchprozedur eine oder
mehr Einheitsprozeduren oder Einheitsmodulobjekte oder ruft
sie auf, wobei jedes von diesen einer bestimmten Einheit
zugeordnet sein und ein oder mehr Modulobjekte besitzen kann,
wenn diese Einheitsprozedur während der gesamten
Batchprozedur ausgeführt werden muß. Anstatt jedoch die in
jeder der verschiedenen Einheitsprozeduren zu verwendenden
speziellen Einheiten anzugeben, wenn die Batchprozedur
geschrieben oder mit ihrer Ausführung erstmals begonnen wird,
kann die Batchprozedur eine dynamische Auswahlroutine
aufweisen, die eine für jede bestimmte Einheitsprozedur oder
Stufe einer Batchprozedur zu verwendende Einheit auswählt,
wenn diese Einheitsprozedur oder Stufe ausgeführt werden
soll. Der Zeitpunkt dieser Auswahl kann lange nach dem
Schreiben und ersten Start zum Ablauf der Batchprozedur
liegen. Tatsächlich kann in einigen Fällen die dynamische
Einheitsauswahl für spätere Stufen einer Batchprozedur
Stunden oder sogar Tage nach dem ersten Start einer
Batchprozedur erfolgen.
Im allgemeinen wird eine Batchprozedur geschrieben, um
verschiedene Einheitsprozeduren oder Einheitsmodule, die
verschiedenen Gruppen (oder manchmal derselben Gruppe) von
Einheiten oder Geräten zugeordnet sind, aufzurufen. Wenn sie
geschrieben ist, kann die Batchprozedur eine bestimmte oder
spezielle Prozeßzelle bezeichnen, für die sie ablaufen soll,
oder sie kann geschrieben sein, um einem Anwender oder
Bediener zu erlauben, eine Prozeßzelle auszuwählen, die zu
Beginn der Batchprozedur zu verwenden ist. Nachdem jedoch
eine bestimmte Prozeßzelle ausgewählt und die Batchprozedur
gestartet ist, ist die Batchprozedur auf die Verwendung von
Geräten oder Einheitsmodulen beschränkt, die der ausgewählten
Prozeßzelle zugeordnet sind.
Bei der Schaffung oder beim Schreiben der Batchprozedur kann
ein Ingenieur natürlich einfach die Batchprozedur
veranlassen, die dynamische Einheitsauswahlroutine
aufzurufen, wenn eine neue Einheitsprozedur auszuführen ist.
Der Ingenieur kann für jede Einheitsprozedur, Einheitsklasse,
jedes Einheitsobjekt usw., das von der Auswahlroutine für die
dynamische Auswahl von Einheiten zu verwenden ist, ein
Einheitszuordnungstabellenobjekt kreieren. Diese
Einheitszuordnungstabelle kann beispielsweise einen
Eignungsausdruck und einen Prioritätsausdruck enthalten, die
für die zugehörige Einheitsprozedur, Einheitsklassen,
Einheitsmodule usw. zu implementieren sind. Der Ingenieur muß
auch sicherstellen, daß die Einheitskennsätze für jedes
Einheitsmodul die von der Auswahlroutine benötigten
Einheitsparameter enthalten. Der Ingenieur kann dann die
Batchprozedur, die Auswahlroutine, die
Einheitszuordnungstabellen und die Einheitskennsätze in die
entsprechenden Datenbanken innerhalb der entsprechenden
Steuerung 12 und/oder der entsprechenden Workstation 14
herunterladen, und dann kann die Batchprozedur ausgeführt
werden.
Gemäß Fig. 3 kann ein Abbild einer Benutzeroberfläche 300
eine Phasendiagrammgraphik 305 in Flußdiagrammform aufweisen,
die verschiedene Blöcke enthält, die Schritte einer Phase
darstellen. Eine solche Benutzeroberfläche 300 kann einer
Benutzeroberfläche gleichen, die auf einem Videodisplay einer
Workstation (z. B. 14) angezeigt werden kann, während ein
Bediener eine Phase oder einen Batchprozeß konstruiert oder
überwacht. Die durch die verschiedenen Blöcke in dem
Phasendiagramm dargestellten Schritte können unter Verwendung
verschiedener Einheitsmodulobjekte und/oder Modulobjekte
ausgeführt werden.
Die Benutzeroberfläche 300 kann ferner ein Bedienersperre-
Prüfkästchen 310 enthalten, das einen Parameter darstellt,
der einem Anwender erlaubt, Sperrfeatures von
Einheitsmodulobjekten und/oder Modulobjekten freizugeben und
zu sperren, wenn die Einheitsmodulobjekte und/oder
Modulobjekte von der Phase genutzt werden, die durch das auf
der Benutzeroberfläche 300 gezeigte Flußdiagramm 305
dargestellt sind. Im vorliegenden Zusammenhang bedeutet der
Ausdruck "gesperrt", daß Informationen nicht zu einem
Einheitsmodulobjekt oder Modulobjekt geschrieben werden
dürfen, und "freigegeben" bedeutet, daß Informationen zu
einem Einheitsmodulobjekt oder einem Modulobjekt geschrieben
werden dürfen. Informationen, die zu Modulobjekten
geschrieben werden dürfen, können - ohne daß dies eine
Einschränkung darstellt - Parameter wie etwa Sollwerte,
Durchflußmengen, zeitliche Steuerungen oder andere Parameter
aufweisen. Für die Zwecke der vorliegenden Beschreibung wird
ein bestimmtes Einheitsmodulobjekt und/oder ein Modulobjekt
als einer bestimmten Phase gehörig bezeichnet, wenn diese
Phase dieses spezielle Einheitsmodulobjekt und/oder
Modulobjekt während der Ausführung der Phase benutzt. Um die
Störung des Phasenablaufs zu verhindern, kann dabei der
Zugang zu Einheitsmodulobjekten und/oder ihren zugehörigen
Modulobjekten vorteilhaft durch Anwendung des Prüfkästchens
310 gesteuert werden. Wenn beispielsweise ein Bediener, der
eine Phase entwirft oder modifiziert, das Sperrfeature durch
die Anwendung des Prüfkästchens 310 freigibt, können die im
Eigentum einer bestimmten Phase befindlichen
Einheitsmodulobjekte und/oder Modulobjekte gesperrt werden,
wenn diese Phase aktiv ist. Eine Phase kann verschiedene
Betriebsarten haben, und während dieser Betriebsarten kann
die Phase als aktiv angesehen werden. Beispielsweise kann
eine Phase als aktiv angesehen werden, wenn die Phase
abläuft, hält, stoppt, abbricht oder neu startet. Wenn eine
Phase inaktiv, komplett, angehalten oder abgebrochen ist,
können Modulobjekte, die ihren Einheitsmodulobjekten gehören,
eventuell nicht gesperrt sein. Alternativ können
Einheitsobjekte und/oder Modulobjekte gesperrt sein, auch
wenn eine Phase inaktiv ist.
Wie Fig. 4 zeigt, kann ein Einheitsmodulobjekt 320 ein
OPERLOCK-Attribut, einen OPERLOCK-Parameter oder ein
OPERLOCK-Feld 325 und ein OPERMODE-Attribut, -Parameter oder
-Feld 330 aufweisen, die jeweils Attribute darstellen, die
genutzt werden können, um den Bedienerzugang zu
Einheitsmodulobjekten und/oder Modulobjekten im Besitz von
Einheitsmodulobjekten zu steuern. Das OPERLOCK-Attribut ist
ein für den Modulebenennamen vorgegebener Parameter, der in
jedem Einheitsmodulobjekt und/oder Modulobjekt enthalten ist.
Die OPERMODE-Felder und OPERLOCK-Felder 325, 330 können Pull
down-Menüs haben, die von einem Anwender genutzt werden
können, um die Felder 325, 330 mit verschiedenen Werten zu
füllen. Alternativ können an den OPERMODE- und OPERLOCK-
Feldern 325, 330 von Softwarebereichen Operationen ausgeführt
werden (d. h. gesperrt, freigegeben usw.). Wie ebenfalls in
Fig. 4 gezeigt ist, gibt es drei Modulobjekte 335, 340, 345,
die dem Einheitsmodulobjekt 320 gehören. Jedes Modulobjekt
335, 340 und 345 hat ein OPERMODE-Feld 330. In die OPERLOCK-
und OPERMODE-Felder 325, 330 eingetragene Werte steuern den
Zustand eines Einheitsmodulobjekts und/oder Modulobjekts.
Beispielsweise kann ein Einheitsmodulobjekt oder Modulobjekt
auf der Basis der Werte gesperrt oder freigegeben sein, die
in die OPERLOCK- und OPERMODE-Felder 325, 330 eingetragen
sind. Weitere Einzelheiten in bezug auf den Zugang durch den
Anwender und wie dieser unter Anwendung der OPERLOCK- und
OPERMODE-Felder 325, 330 gesteuert werden kann, ergeben sich
in bezug auf die Fig. 5, 6A und 6B und ihre zugehörige
Beschreibung.
Das OPERLOCK-Feld 325 kann Pull-down-Menüpunkte haben, die
die Werte GESPERRT, FREIGEGEBEN bzw. EINGESCHRÄNKT 350, 355,
bzw. 357 umfassen können, die von einem Bediener ausgewählt
werden können. Beispielsweise kann ein Bediener eine Maus,
eine Tastatur oder eine andere Eingabeeinrichtung an einer
Workstation 14 verwenden, um aus den Pull-down-Menüs einen
Wert auszuwählen. Alternativ kann der Wert des OPERLOCK-Felds
325 auf der Basis des Bedienersperre-Prüfkästchens 310 (Fig.
3) und des Werts des OPERMODE-Felds 300 errechnet oder
bewertet werden, wie noch im einzelnen beschrieben wird. Wenn
ein Bediener beispielsweise eine Phase editiert oder kreiert
und das Bedienersperre-Prüfkästchen 310 auswählt, kann das
OPERLOCK-Feld 325 des Einheitsmodulobjekts 320 mit dem
GESPERRT-Wert ausgefüllt werden, wenn eine Phase, die dieses
Einheitsmodulobjekt 320 verwendet, beginnt. Alternativ kann
das OPERLOCK-Feld 325 des Einheitsmodulobjekts 320 unabhängig
davon gesteuert werden, ob eine das Einheitsmodulobjekt 320
verwendende Phase abläuft oder nicht, oder kann den Zustand
des OPERMODE-Felds 325 verfolgen. Wenn das OPERMODE-Feld 330
des Einheitsmodulobjekts 320 und der Modulobjekte 335, 340,
345 richtig eingestellt ist (wie nachstehend im einzelnen
beschrieben wird), kann das OPERLOCK-Feld 325 dazu genutzt
werden, den Zugang zu dem Einheitsmodul 320 und den Modulen
335, 340, 345 zu steuern. Daher kann das OPERLOCK-Feld 325
vorteilhaft genutzt werden, um einen Bediener daran zu
hindern, eine Phase durch Ändern der Software oder von
Attributen des Einheitsmodulobjekts 320 oder der Modulobjekte
335, 340, 345 zu stören. Die Operation des OPERLOCK-Felds 325
und seine Bewertung werden nachstehend unter Bezugnahme auf
Fig. 5 im einzelnen beschrieben.
Das OPERMODE-Feld 330, das in dem Einheitsmodulobjekt 320
und/oder den Modulobjekten 335, 340, 345 enthalten sein kann,
kann Pull-down-Menüs enthalten, die Werte von GESPERRT,
FREIGEGEBEN, EINGESCHRÄNKT oder AUTOMATISCH enthalten, wie
durch Bezugszeichen 360, 365, 370 und 375 in Fig. 4 angegeben
ist. Wenn das OPERMODE-Feld 330 einen Wert GESPERRT hat,
werden alle Schreibversuche zu diesem Einheitsmodulobjekt
und/oder zu einem diesem Einheitsmodulobjekt gehörenden
Modulobjekt verhindert. Daher wird ein Bediener daran
gehindert, Änderungen an einem Einheitsmodulobjekt oder einem
Modulobjekt vorzunehmen, das ein OPERMODE-Feld 330 hat, das
einen Wert GESPERRT bezeichnet. Wenn umgekehrt das OPERMODE-
Feld 330 einen Wert FREIGEGEBEN hat, können Schreibvorgänge
zu dem Einheitsmodulobjekt oder Modulobjekt (eventuell mit
einer Standard-Sicherheitsprüfung) vorgenommen werden. Wenn
ein Einheitsmodulobjekt oder Modulobjekt ein OPERMODE-Feld
330 mit einem Wert EINGESCHRÄNKT hat, kann dieses
Einheitsmodulobjekt oder Modulobjekt nur geändert werden,
wenn der Bediener, der die Änderungen vornehmen will, einen
entsprechenden Berechtigungscode hat. Beispielsweise muß ein
Bediener einen gültigen Code, eine persönliche
Identifikationsnummer (PIN) oder ein Paßwort in eine
Workstation 14 eingeben, bevor dem Bediener gestattet wird,
Änderungen an eingeschränkten Objekten oder Modulen
vorzunehmen.
Das OPERMODE-Feld 330 von Einheitsmodulobjekten und
Modulobjekten kann auch einen Wert AUTOMATISCH haben. Während
die Operation des OPERMODE-Felds 330 mit den Werten GESPERRT,
FREIGEGEBEN und EINGESCHRÄNKT im wesentlichen ähnlich
zwischen dem Einheitsmodulobjekt und Modulobjekten abläuft
(z. B. werden Änderungen zugelassen, verhindert oder basieren
auf eingeschränktem Zugang), kann ein Wert AUTOMATISCH eines
OPERMODE-Felds 330 geringfügig anders funktionieren in
Abhängigkeit davon, ob das OPERMODE-Feld 330 in einem
Einheitsmodulobjekt 320 oder in einem Modulobjekt 335, 340,
345 liegt.
Wenn das OPERMODE-Feld 330 für das Einheitsmodulobjekt 320
einen Wert AUTOMATISCH hat, wird das Einheitsmodulobjekt 320
in Abhängigkeit von dem OPERLOCK-Zustand des
Einheitsmodulobjekts 320 entweder gesperrt oder freigegeben.
Einzelheiten hinsichtlich der Bewertung des OPERLOCK-Zustands
ergeben sich in Verbindung mit der Beschreibung von Fig. 5.
Wenn beispielsweise das OPERMODE-Feld 330 des
Einheitsmodulobjekts 320 einen Wert AUTOMATISCH und das
OPERLOCK-Feld 325 einen Wert GESPERRT hat, ist das
Einheitsmodulobjekt 320 gesperrt, und daher wird ein Bediener
daran gehindert, Änderungen an dem Einheitsmodulobjekt 320
vorzunehmen. In Fällen, in denen das OPERMODE-Feld 330 des
Einheitsmodulobjekts auf AUTOMATISCH eingestellt ist, kann
der Wert des OPERLOCK-Felds 325 darauf basierend bestimmt
werden, ob eine das Modulobjekt verwendende Phase aktiv ist.
Wenn umgekehrt das OPERMODE-Feld 330 einen Wert AUTOMATISCH
und das OPERLOCK-Feld 325 einen Wert FREIGEGEBEN hat, kann
ein Bediener Änderungen an dem Einheitsmodulobjekt 320
vornehmen.
Wenn das OPERMODE-Feld 330 in einem Modulobjekt (z. B. dem
Modulobjekt 335) einen Wert AUTOMATISCH hat, wird der Zustand
des Modulobjekts 335 (z. B. gesperrt, freigegeben oder
eingeschränkt) auf der Basis des Werts des OPERMODE-Felds 330
des Einheitsmodulobjekts 320, dem das Modulobjekt 335 gehört,
bestimmt. Wenn beispielsweise unter Bezugnahme auf Fig. 4 das
OPERMODE-Feld 330 des Modulobjekts 335 einen Wert AUTOMATISCH
hat, bestimmt das Modulobjekt 335 seinen Zustand durch
Auswertung des OPERLOCK-Felds 325. Daher kann der Zugang zu
Modulobjekten hierarchisch gesteuert werden, indem der Zugang
zu den Einheitsmodulobjekten, denen verschiedene Modulobjekte
gehören, gesteuert wird.
Wenn beide OPERMODE-Felder 330 des Einheitsmodulobjekts 320
und des Modulobjekts 335 einen Wert AUTOMATISCH haben, wird
der Zustand des Modulobjekts 335 von dem OPERLOCK-Feld 325
des Einheitsmodulobjekts 320 gesteuert. Wenn beispielsweise
das OPERLOCK-Feld 325 einen Wert GESPERRT hat, ist das
Modulobjekt 335 gesperrt. Wenn umgekehrt das OPERLOCK-Feld
325 des Einheitsmodulobjekts 320 einen Wert FREIGEGEBEN hat,
ist das Modulobjekt 325 freigegeben.
Da sowohl OPERLOCK als auch OPERMODE Modulebenen-Parameter
sind, könnten Vielfachphasen ihre Operation koordinieren, um
OPERLOCK- und OPERMODE-Parameter verschiedener Modulobjekte
und/oder Einheitsmodulobjekte zu ändern. Beispielsweise
könnte eine Phase ein Modulobjekt sperren, indem zu dem
OPERMODE des Modulobjekts ein SPERR-Wert zu Beginn der Phase
geschrieben wird, und könnte das Modulobjekt wieder in den
Automatikmodus bringen, indem ein AUTOMATISCH-Wert zu dem
OPERMODE des Modulobjekts geschrieben wird, nachdem die Phase
im wesentlichen beendet ist.
Es wird nun auf Fig. 5 Bezug genommen. Eine
Einheitsmodulobjekt-OPERLOCK-Bestimmungsfunktion 400 weist
verschiedene Schritte oder Prozeduren auf, die durch
verschiedene Blöcke dargestellt sind. Die in Fig. 5 gezeigten
Schritte oder Prozeduren können unter Anwendung von
Softwarebefehlen, die in einer geeigneten Sprache geschrieben
sind, ausgeführt werden, wobei die Softwarebefehle auf einem
Prozessor ausgeführt werden können, wie er in der Steuerung
12 oder den Workstations 14 vorhanden sein kann. Ein
Einheitsmodulobjekt kann periodisch einen Wert seines
OPERLOCK-Attributs bestimmen, so daß das OPERLOCK-Attribut
des Einheitsmodulobjekts von verschiedenen anderen Teilen von
Software einschließlich der Sicherheitsprüfungs-
Prozeßsoftware, die in Verbindung mit den Fig. 6A und 6B
beschrieben wird, gelesen werden kann.
Für Einheitsmodulobjekt-OPERMODE-Feldwerte SPERREN, FREIGEBEN
und EINGESCHRÄNKT verfolgt im allgemeinen das OPERLOCK-
Attribut den Wert des OPERMODE-Felds 330 des
Einheitsmodulobjekts 320 (Fig. 4). Wenn jedoch das OPERMODE-
Feld 330 des Einheitsmodulobjekts 320 den Wert AUTOMATISCH
hat, wird der Wert des OPERLOCK-Attributs darauf basierend
bestimmt, ob das Einheitsmodulobjekt von einer Phase genutzt
wird und ob das Bedienersperr-Prüfkästchen 310 (Fig. 3)
dieser Phase ausgewählt ist.
Es wird nun erneut auf Fig. 5 Bezug genommen. In einem Block
402 bestimmt der Prozeß 400, ob das OPERMODE-Attribut einen
Wert GESPERRT hat. Wenn das OPERMODE-Attribut einen Wert
GESPERRT hat, geht die Steuerung von dem Block 402 zu einem
Block 404, der das OPERLOCK-Attribut des Einheitsmodulobjekts
320 auf GESPERRT setzt (d. h. auf den gleichen Wert wie das
OPERMODE-Attribut) und die Steuerung an einen Block 406
weitergibt, um den Prozeß 400 zu beenden. Wenn jedoch das
OPERMODE-Attribut einen Wert GESPERRT nicht hat, gibt der
Block 402 die Steuerung an Block 408 weiter.
Block 408 bestimmt, ob der Wert des OPERMODE-Attributs mit
FREIGEGEBEN vorgegeben ist. Wenn Block 408 bestimmt, daß das
OPERMODE-Attribut mit FREIGEGEBEN vorgegeben ist, geht die
Steuerung von Block 408 zu Block 410, der das OPERLOCK-
Attribut auf FREIGEGEBEN setzt (d. h. in den gleichen Zustand
wie das OPERMODE-Attribut). Nachdem Block 410 seine
Ausführung beendet hat, gibt Block 410 die Steuerung an Block
412 weiter, der den Prozeß 400 beendet. Wenn Block 408
bestimmt, daß das OPERMODE-Attribut des Einheitsmodulobjekts
320 nicht mit FREIGEGEBEN vorgegeben ist, geht die Steuerung
von Block 408 zu einem Block 414 weiter.
Ebenso wie die Blöcke 402 und 408 testet der Block 414 den
Wert des OPERMODE-Attributs. Der Block 414 jedoch testet, um
zu bestimmen, ob das OPERMODE-Attribut auf EINGECHRÄNKT
gesetzt ist. Wenn der Block 414 bestimmt, daß das OPERMODE-
Attribut auf EINGESCHRÄNKT gesetzt ist, geht die Steuerung
von Block 414 zu Block 416 weiter, der den Wert des OPERLOCK-
Attributs gleich EINGESCHRÄNKT setzt. Nachdem die Ausführung
des Blocks 416 komplett ist, geht die Steuerung zu einem
Block 418, der die Ausführung des Prozesses 400 beendet.
Wenn die Antworten auf die in den Blöcken 402, 408 und 414
gestellten Fragen sämtlich NEIN sind, geht die Steuerung
schließlich zu einem Block 420. Da die Blöcke 402, 408 und
414 prüfen, ob das OPERMODE-Attribut des Einheitsmodulobjekts
gleich GESPERRT, FREIGEGEBEN bzw. EINGECHRÄNKT ist, muß dann,
wenn die Ausführung des Prozesses 400 den Block 20 erreicht,
das OPERMODE-Attribut gleich AUTOMATISCH sein. Der Block 420
bestimmt, ob eine Phase das Einheitsmodulobjekt 320 aktuell
nutzt, und wenn das Einheitsmodulobjekt aktuell in Benutzung
ist, ob das Bedienersperr-Prüfkästchen 310 (Fig. 3) für die
Phase, die das Einheitsmodulobjekt 32 nutzt, ausgewählt ist.
Dies ist möglich, weil jedes Modul die Identitäten der
Einheitsmodule, denen es gehört, kennt. Wenn das
Einheitsmodulobjekt 320 in Gebrauch ist und das
Bedienersperr-Prüfkästchen 310 der Phase, die das
Einheitsmodulobjekt 320 benutzt, ausgewählt ist, geht die
Steuerung zu einem Block 422. Der Block 422 setzt das
OPERLOCK-Attribut gleich GESPERRT und gibt die Steuerung an
einen Block 424 weiter, der die Ausführung des Prozesses 400
beendet.
Der in Fig. 5 gezeigte Prozeß 400 ist zwar so dargestellt,
daß die als Blöcke 402, 408, 414 und 420 gezeigten Fragen in
einer bestimmten Reihenfolge vorliegen, aber der Fachmann
erkennt ohne weiteres, daß die Reihenfolge der Fragen
geändert werden kann. Beispielsweise kann die von dem Block
402 durchgeführte Abfrage nach jeder der von den Blöcken 408
oder 414 durchgeführten Abfrage ausgeführt werden. Als
weiteres Beispiel einer Neuordnung der Abfragen in Fig. 5
soll angenommen werden, daß dann, wenn die Antworten auf die
von den Blöcken 402, 408 und 414 vorgenommenen Abfragen
sämtlich NEIN sind, der Block 420 annimmt, daß OPERMODE in
einem AUTOMATISCH-Modus ist. Eine solche Annahme kann
erfolgen, weil OPERMODE von den Blöcken 402, 408 und 414 vor
Ausführung des Blocks 420 geprüft wurde. Anstatt der letzten
Abfrage, die annimmt, daß OPERMODE AUTOMATISCH ist, können
Abfragen hinzugefügt oder umgeordnet werden, um einer letzten
Abfrage zu ermöglichen anzunehmen, daß OPERMODE
beispielsweise GESPERRT ist. Wenn beispielsweise der Block
402 von Fig. 5 geändert wurde, um zu prüfen, ob OPERMODE
AUTOMATISCH anstelle von GESPERRT ist, könnte dann, wenn die
Ausführung des Prozesses 400 den Block 420 erreicht, der
Block 420 annehmen, daß OPERMODE GESPERRT war, weil die von
den Blöcken 402, 408 und 414 durchgeführten Abfragen
sämtliche die Antwort NEIN hatten.
Es wird nun zu Block 420 zurückgegangen. Wenn entweder das
Einheitsmodulobjekt 320 derzeit nicht von einer Phase benutzt
wird oder das Bedienersperr-Prüfkästchen 310 einer das
Einheitsmodulobjekt 320 benutzenden Phase nicht ausgewählt
ist, geht die Steuerung von Block 420 zu einem Block 426. Der
Block 426 setzt das OPERLOCK-Attribut gleich FREIGEGEBEN,
bevor er die Steuerung an einen Block 428 weitergibt, was den
Prozeß 400 beendet.
Wenn, wie aus der vorstehenden Beschreibung von Fig. 5
ersichtlich ist, das OPERMODE-Attribut des
Einheitsmodulobjekts 320 auf AUTOMATISCH gesetzt ist, sind
die Blöcke 420-428 automatisch wirksam und setzen das
OPERLOCK-Atrribut entweder auf GESPERRT oder FREIGEGEBEN in
Abhängigkeit davon, ob das Einheitsmodulobjekt 320 von einer
Phase genutzt wird und ob die Sperrung durch das
Bedienersperr-Prüfkästchen 310 ausgewählt ist. Wie in bezug
auf den Sicherheitsprüfungsablauf 500 von Fig. 6A und 6B
beschrieben wird, ist das OPERLOCK-Attribut nützlich, um den
Zugang des Bedieners zu Einheitsmodulobjekten und/oder
Modulobjekten während des Phasenbetriebs zu verhindern.
Um einen Bediener daran zu hindern, ungewollt Informationen
oder Parameter wie Sollwerte, Durchflußmengen und dergleichen
zu einem Einheitsmodulobjekt und/oder einem Modulobjekt zu
schreiben, wird ein Sicherheitsprüfprozeß 500, wie er in den
Fig. 6A und 6B gezeigt ist, durchgeführt, wenn ein Bediener
Information an ein Einheitsmodulobjekt und/oder ein
Modulobjekt schreiben möchte. Weitere oder andere
Sicherheitsprüfungen können zusätzlich zu dem Prozeß gemäß
Fig. 6A-6B durchgeführt werden. Um die Beschreibung zu
vereinfachen, wird davon ausgegangen, daß ein Modulobjekt, zu
dem Information geschrieben werden soll, als Zielmodulobjekt
bezeichnet wird, weil es das Ziel von Informationen ist, die
geschrieben werden sollen. Informationen, die zu einem
Einheitsmodulobjekt und/oder einem Modulobjekt geschrieben
werden sollen, können eine Adresse haben, wobei die Adresse
einen Parameternamen und einen Feldnamen umfassen kann. Ein
Parametername kann verwendet werden, um eine Datenstruktur zu
kennzeichnen, in der Information geschrieben werden soll. Ein
Feldname kann verwendet werden, um einen bestimmten Ort
innerhalb einer Datenstruktur zu kennzeichnen, in den
Information geschrieben werden soll. Daher können der
Feldname und die Parameternamen als Adresse für Information
dienen, die zu dem Zielmodul geschrieben werden soll.
Wie noch in der folgenden Beschreibung hervorgehoben wird,
ist ein Bediener imstande, Information zu einem
Zielmodulobjekt auf der Basis der OPERMODE-Attribute des
Zielmodulobjekts und des Einheitsmodulobjekts, dem das
Zielmodulobjekt gehört, zu schreiben. Ferner kann die
Fähigkeit, Information zu dem Zielmodulobjekt zu schreiben,
von dem Wert des OPERLOCK-Attribits des Einheitsmodulobjekts,
dem das Zielmodulobjekt gehört, abhängig sein.
Wenn in den Fig. 6A und 6B der Prozeß 500 beginnt, bestimmt
ein Block 502, ob das Feld, in das die Information zu
schreiben ist, Sicherheitsbedingungen unterliegt. Wenn die zu
dem Zielmodulobjekt zu schreibende Information keinen
Sicherheitsbedingungen unterliegt, geht die Steuerung zu
einem Block 504, der das Schreiben zu dem Zielmodulobjekt
freigibt. Nach Beendigung von Block 504 endet der
Sicherheitsprüfprozeß 500 in Block 506. Wenn jedoch das Feld,
in das die Information zu schreiben ist,
Sicherheitsbedingungen unterliegt, geht die Steuerung von
Block 502 zu Block 508, der bestimmt, ob der in das
Zielmodulobjekt zu schreibende Parameter
Sicherheitsbedingungen unterliegt. Wenn der in das
Zielmodulobjekt zu schreibende Parameter keinen
Sicherheitsbedingungen unterliegt, geht die Steuerung zu
Block 510, der das Schreiben zu dem Zielmodulobjekt freigibt
und die Steuerung zu Block 512 weitergibt, wodurch der
Sicherheitsprüfprozeß 500 beendet wird. Ob ein Feld oder ein
Parameter Sicherheitsbedingungen unterliegt, kann eine bloße
Wahl bei der Konstruktion sein. Beispielsweise kann die
Bestätigung von Alarmen oder anderen Statusbedingungen keinen
Sicherheitsbedingungen unterliegen, weil ein Bediener immer
auf Alarme, Statuszustände und dergleichen reagieren muß.
Wenn die zu dem Zielmodulobjekt zu schreibende Information
ein Parameter ist, der Sicherheitsbedingungen unterliegt,
gibt der Block 508 die Steuerung weiter an Block 514, der den
OPERMODE des Zielmodulobjekts liest.
Nachdem OPERMODE des Zielmodulobjekts in Block 514 gelesen
wurde, geht die Steuerung zu Block 516. Wenn OPERMODE des
Zielmodulobjekts GESPERRT ist, gilt der Block 516 die
Steuerung an Block 518, der das Schreiben zu dem
Zielmodulobjekt sperrt und den Bediener informieren kann, daß
das Zielmodulobjekt gesperrt ist. Nachdem der Block 518
fertig ist, geht die Steuerung zu Block 520, bei dem die
Sicherheitsprüfung 500 endet. Wenn OPERMODE des
Zielmodulobjekts nicht gesperrt ist, geht der Block 516 zu
Block 522, der bestimmt, ob OPERMODE des Zielmodulobjekts
EINGESCHRÄNKT ist. Wenn OPERMODE EINGESCHRÄNKT ist, geht die
Steuerung von Block 522 zu Block 524, der bestimmt, ob der
Bediener einen richtigen Schlüssel hat, um ihm zu erlauben,
Information zu dem Zielmodulobjekt zu schreiben. Der richtige
Schlüssel kann eine persönliche Identifikationsnummer (PIN),
ein Bedienername, ein Paßwort oder irgendeine andere
geeignete Information sein, die zur Identifikation des
Bedieners verwendet werden kann. Wenn der Bediener nicht den
richtigen Schlüssel hat, gibt der Block 524 die Steuerung an
Block 526 ab, der das Schreiben zu dem Zielmodulobjekt sperrt
und den Anwender informieren kann, daß er/sie keinen Zugang
zum Schreiben zu dem Zielmodulobjekt hat. Nach Ausführung des
Blocks 526 geht die Steuerung zu Block 528, der die
Ausführung des Sicherheitsprüfprozesses 500 beendet. Wenn
jedoch der Bediener einen richtigen Schlüssel hat, gibt der
Block 524 die Steuerung an einen Block 530 ab, der das
Schreiben von Information zu dem Zielmodulobjekt freigibt und
außerdem die Steuerung an Block 532 abgibt, wodurch der
Sicherheitsprüfprozeß 500 endet.
Wenn OPERMODE des Zielmoduls nicht GESPERRT und nicht
EINGESCHRÄNKT ist, geht die Steuerung von Block 522 zu Block
534, der bestimmt, ob OPERMODE AUTOMATISCH ist. Wenn OPERMODE
nicht auf AUTOMATISCH gesetzt ist, muß OPERMODE auf
FREIGEGEBEN gesetzt werden, und der Block 534 gibt die
Steuerung an Block 536 ab, der das Schreiben von Information
zu dem Zielmodul freigibt. Nach beendeter Ausführung des
Blocks 536 geht die Steuerung zu Block 538, der den
Sicherheitsprüfprozeß 500 beendet.
Wenn jedoch der Block 534 bestimmt, daß OPERMODE auf
AUTOMATISCH gesetzt ist, geht die Steuerung zu einem Block
540, der das Einheitsmodulobjekt bestimmt, dem das
Zielmodulobjekt gehört. Wenn beispielsweise unter erneuter
Bezugnahme auf Fig. 4 OPERMODE des Modulobjekts 335 auf
AUTOMATISCH gesetzt ist, bestimmt der Block 540 von Fig. 6A,
daß das Modulobjekt 335 dem Einheitsmodulobjekt 320 gehört.
Das ist möglich, weil jedes Modul die Identitäten der
Einheitsmodule, denen es gehört, kennt. Nachdem das
Einheitsmodul, dem das Zielmodulobjekt gehört, bestimmt ist,
geht die Steuerung von Block 540 zu Block 542, der OPERLOCK
des Einheitsmodulobjekts liest. Wie in Verbindung mit Fig. 5
beschrieben wird, ist OPERLOCK ein Attribut, das von OPERMODE
des Einheitsmodulobjekts bestimmt sein und/oder darauf
basieren kann, ob ein Einheitsmodulobjekt von einer Phase
genutzt wird und ob das Bedienersperrfeature der Phase
aktiviert ist.
Nachdem OPERLOCK des Einheitsmodulobjekts von dem Block 542
gelesen wurde, bestimmt Block 544, ob OPERLOCK des
Einheitsmodulobjekts auf GESPERRT gesetzt ist. Wenn OPERLOCK
des Einheitsmodulobjekts auf GESPERRT gesetzt ist, geht die
Steuerung von Block 544 zu Block 546, der das Schreiben von
Information zu dem Zielmodulobjekt freigibt. Nach beendeter
Ausführung des Blocks 546 geht die Steuerung zu Block 548,
der die Ausführung des Prozesses 500 beendet.
Wenn OPERLOCK des Einheitsmodulobjekts nicht auf GESPERRT
gesetzt ist, gibt der Block 544 die Steuerung an einen Block
550 ab, der bestimmt, ob OPERLOCK des Einheitsmodulobjekts
auf EINGESCHRÄNKT gesetzt ist. Wenn OPERLOCK des
Einheitsmodulobjekts auf EINGESCHRÄNKT gesetzt ist, geht die
Steuerung von Block 550 zu Block 552, der die Steuerung
selektiv entweder an Block 554 und Block 556 oder an Block
558 und Block 560 weitergibt. Gemeinsam führen die Blöcke
552-560 die Funktionen aus, daß sie bestimmen, ob ein
Bediener einen gültigen Schlüssel und/oder ein Paßwort hat,
um dem Bediener den Zugang zu eingeschränkten Modulobjekten
zu erlauben und die Möglichkeit des Schreibens durch den
Bediener auf der Basis des Schlüssels freizugeben oder zu
sperren. Die Blöcke 552-560 wirken im wesentlichen gleich wie
die Blöcke 524-532, die vorher beschrieben wurden.
Wenn Block 550 bestimmt, daß OPERLOCK des
Einheitsmodulobjekts nicht EINGESCHRÄNKT ist, muß OPERLOCK
des Einheitsmodulobjekts FREIGEGEBEN werden, und die
Steuerung geht zu Block 562, der das Schreiben von
Information zu dem Zielmodulobjekt freigibt. Nachdem der
Block 562 komplett ist, geht die Steuerung zu einem Block
564, der die Ausführung des Prozesses 500 beendet.
Wie der Fachmann erkennt, können ebenso wie in Fig. 5 die
Blöcke innerhalb des Prozesses 500 umgeordnet sein, während
gleichzeitig die zur Durchführung des Prozesses 500
erforderlichen Funktionen beibehalten werden. Beispielsweise
kann Block 508 vor Block 502 ausgeführt werden. Ferner können
die Blöcke 516, 522 und 534 in irgendeiner Reihenfolge
angeordnet sein, oder die Blöcke 544 und 550 können in
irgendeiner Reihenfolge angeordnet sein.
Wie der Fachmann erkennt, ermöglicht die Sicherheitsprüfung
500, wie sie in den Fig. 6A und 6B gezeigt ist, die
hierarchische Sperrung von Einheitsmodulobjekten und/oder
Modulobjekten. Beispielsweise kann OPERMODE jedes
Modulobjekts GESPERRT, FREIGEGEBEN oder EINGESCHRÄNKT sein,
was eine individuelle Steuerung jedes Modulobjekts
ermöglicht. Alternativ kann OPERMODE einer Vielzahl von
Modulobjekten auf AUTOMATISCH gesetzt sein, wodurch der
Zugang zu diesen Modulobjekten durch OPERMODE des
Einheitsmodulobjekts, dem diese Modulobjekte gehören,
gesteuert werden kann. Ferner kann OPERMODE des
Einheitsmodulobjekts, dem Modulobjekte gehören, auf
AUTOMATISCH gesetzt sein, so daß OPERLOCK des
Einheitsmodulobjekts dann den Zugang zu den Modulobjekten
steuert, die dem Einheitsmodulobjekt gehören, das einen
OPERMODE hat, der auf AUTOMATISCH gesetzt ist. Wenn OPERMODE
auf AUTOMATISCH gesetzt ist, wird OPERLOCK von Phasen, die
das Modul verwenden, gesteuert, und somit können die Phasen
das Schreiben zu den Modulen, die einem Einheitsmodul
gehören, steuern.
Es versteht sich, daß Prozeßsteuerungsroutinen wie etwa
Batchprozeduren, die eine Zugangssteuerung benutzen,
innerhalb jeder gewünschten Prozeßsteuerungs-
Programmierumgebung benutzt und implementiert werden können
und in jedem Prozeßsteuerungssystem benutzt werden können,
das jede beliebige Art von Prozeßsteuerungs-
Kommunikationsprotokoll verwendet, und daß sie ferner dazu
dienen können, jede Art von Funktion in bezug auf jede Art
von Einrichtung(en) oder Untereinheiten von Einrichtungen
auszuführen. Daher sind die in den hier beschriebenen
Flußdiagrammen gezeigten Funktionen nicht unbedingt darauf
beschränkt, auf die gezeigte Weise implementiert zu werden,
und der Fachmann erkennt ohne weiteres, daß sie auf viele
verschiedene Weisen implementiert werden können.
Prozeßsteuerungsroutinen, die eine Zugangssteuerung
verwenden, wie sie hier beschrieben ist, werden bevorzugt in
Software implementiert, die beispielsweise in einem
Steuergerät oder einer anderen Prozeßsteuereinrichtung
gespeichert ist. Diese Routinen können jedoch alternativ oder
zusätzlich in Hardware, Firmware, anwendungsspezifischen
integrierten Schaltungen, programmierbaren Logikschaltungen
usw. nach Wunsch implementiert sein. Wenn sie in Software
implementiert sind, können die Prozeßsteuerroutinen in jedem
computerlesbaren Speicher gespeichert sein, etwa auf einer
magneto-Disk, einer magneto-optical-Disk oder einem anderen
Speichermedium, in einem RAM oder einem ROM eines Computers,
einer Steuerung, einer Feldeinrichtung, einer programmierten
Logikeinrichtung usw. Weiterhin kann solche Software in
unkomprimierter oder komprimierter Form gespeichert sein,
wobei diese Software installiert werden muß, um
funktionsfähig zu sein. Ebenso kann diese Software zu einem
Anwender oder einer Einrichtung durch jede bekannte oder
gewünschte Lieferungsmethode geliefert werden, beispielsweise
über einen Kommunikationskanal wie eine drahtlose Verbindung,
eine Telefonleitung, das Internet, auf einem
transportierbaren Medium wie einer computerlesbaren Disk usw.
Die Erfindung wurde zwar unter Bezugnahme auf bestimmte
Beispiele beschrieben, die nur der Verdeutlichung dienen und
die Erfindung nicht einschränken sollen; für den Fachmann ist
ersichtlich, daß Änderungen, Hinzufügungen oder Weglassungen
an den beschriebenen Ausführungsformen vorgenommen werden
können, ohne vom Umfang der Erfindung abzuweichen.
Claims (37)
1. Verfahren zur Zugangssteuerung für das Schreiben von
Information zu einem Modulobjekt zum Gebrauch in einem
Prozeßsteuersystem, das ein Einheitsmodulobjekt hat, das
für einen Zustand einer Hardwarekomponente repräsentativ
ist, wobei das Modulobjekt dem Einheitsmodulobjekt
zugeordnet ist und benutzt wird, um den Zustand der
Hardwarekomponente zu ändern, wobei das
Einheitsmodulobjekt ein Einheitsmodulobjekt-
Betriebsartattribut hat, das einen Wert hat,
dadurch gekennzeichnet, daß das Verfahren die folgenden
Schritte aufweist:
Bestimmen des Werts des Einheitsmodulobjekt- Betriebsartattributs; und
selektives Zulassen des Zugangs zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Einheitsmodulobjekt-Betriebsartattributs.
Bestimmen des Werts des Einheitsmodulobjekt- Betriebsartattributs; und
selektives Zulassen des Zugangs zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Einheitsmodulobjekt-Betriebsartattributs.
2. Verfahren nach Anspruch 1, dadurch, gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt des Zulassens des Zugangs zum Schreiben von
Information zu dem Modulobjekt aufweist, wenn der Wert
des Einheitsmodulobjekt-Betriebsartattributs in einem
freigegebenen Zustand ist.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt des Nichtzulassens des Zugangs zum Schreiben von
Information zu dem Modulobjekt aufweist, wenn der Wert
des Einheitsmodulobjekt-Betriebsartattributs in einem
gesperrten Zustand ist.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem bestimmt wird, ob ein Anwender
berechtigt ist, Information zu dem Modulobjekt zu
schreiben.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
das Modulobjekt ein Modulobjekt-Betriebsartattribut hat,
das einen Wert hat, und daß der Schritt des selektiven
Zulassens des Zugangs zum Schreiben von Information zu
dem Modulobjekt einen Schritt aufweist, bei dem der
Zugang zum Schreiben von Information zu dem Modulobjekt
auf der Basis des Werts des Einheitsmodulobjekt-
Betriebsartattributs und auf der Basis des Werts des
Modulobjekt-Betriebsartattributs gesteuert wird.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
das Einheitsmodulobjekt ein Einheitsmodulobjekt-
Sperrattribut hat, das einen Wert hat, und daß der
Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Zugang zum Schreiben von
Information zu dem Modulobjekt auf der Basis des Werts
des Einheitsmodulobjekt-Sperrattributs gesteuert wird.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß
das Prozeßsteuersystem eine Phase aufweist und daß der
Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Wert des
Einheitsmodulobjekt-Sperrattributs durch Bestimmen, ob
das Einheitsmodulobjekt von der Phase genutzt wird,
bestimmt wird.
8. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß
das Prozeßsteuersystem eine Phase aufweist, die eine
Bedienersperre aufweist, und daß der Schritt des
selektiven Zulassens des Zugangs zum Schreiben von
Information zu dem Modulobjekt einen Schritt aufweist,
bei dem der Wert des Einheitsmodulobjekt-Sperrattributs
durch Bestimmen, ob die Bedienersperre für die das
Einheitsmodulobjekt nutzende Phase gesetzt worden ist,
bestimmt wird.
9. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
das Einheitsmodulobjekt ein Einheitsmodulobjekt-
Sperrattribut aufweist, das einen Wert hat, »und daß das
Prozeßsteuersystem eine Vielzahl von Modulobjekten
aufweist, die dem Einheitsmodulobjekt zugeordnet sind,
und daß der Schritt des selektiven Zulassens des Zugangs
zum Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Zugang zum Schreiben von
Information zu der Vielzahl von Modulobjekten auf der
Basis des Werts des Einheitsmodulobjekt-Sperrattributs
gesteuert wird.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu der Vielzahl von
Modulobjekten einen Schritt aufweist, bei dem der Zugang
zum Schreiben von Information zu der Vielzahl von
Modulobjekten nicht zugelassen wird, wenn der Wert des
Einheitsmodul-Sperrattributs in einem gesperrten Zustand
ist.
11. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu der Vielzahl von
Modulobjekten einen Schritt aufweist, bei dem der Zugang
zum Schreiben von Information zu der Vielzahl von
Modulobjekten zugelassen wird, wenn der Wert des
Einheitsmodul-Sperrattributs in einem freigegebenen
Zustand ist.
12. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
das Prozeßsteuersystem eine Vielzahl von Modulobjekten
aufweist, die dem Einheitsmodulobjekt zugeordnet sind,
und daß der Schritt des selektiven Zulassens des Zugangs
zum Schreiben von Information einen Schritt aufweist, bei
dem der Zugang zum Schreiben von Information zu der
Vielzahl von Modulobjekten auf der Basis des Werts des
Einheitsmodulobjekt-Betriebsartattributs gesteuert wird.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu der Vielzahl von
Modulobjekten einen Schritt aufweist, bei dem der Zugang
zum Schreiben von Information zu der Vielzahl von
Modulobjekten nicht zugelassen wird, wenn der Wert des
Einheitsmodul-Betriebsartattributs in einem gesperrten
Zustand ist.
14. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu der Vielzahl von
Modulobjekten einen Schritt aufweist, bei dem der Zugang
zum Schreiben von Information zu der Vielzahl von
Modulobjekten zugelassen wird, wenn der Wert des
Einheitsmodul-Betriebsartattributs in einem freigegebenen
Zustand ist.
15. Zugangssteuersystem zur Steuerung des Zugangs zum
Schreiben von Information zu einem Modulobjekt zum
Gebrauch in einem Prozeßsteuersystem, das einen Prozessor
und ein Einheitsmodulobjekt hat, das für einen Zustand
einer Hardwarekomponente repräsentativ ist, wobei das
Modulobjekt dem Einheitsmodulobjekt zugeordnet ist und
benutzt wird, um den Zustand der Hardwarekomponente zu
ändern, wobei das Einheitsmodulobjekt ein
Einheitsmodulobjekt-Betriebsartattribut hat, das einen
Wert hat,
dadurch gekennzeichnet, daß das Zugangssteuersystem
folgendes aufweist:
einen Speicher;
eine in dem Speicher gespeicherte erste Routine, die den Prozessor veranlaßt, den Wert des Einheitsmodul- Betriebsartattributs zu bestimmen; und
eine in dem Speicher gespeicherte zweite Routine, die den Prozessor veranlaßt, den Zugang zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Einheitsmodulobjekt-Betriebsartattributs selektiv zuzulassen.
einen Speicher;
eine in dem Speicher gespeicherte erste Routine, die den Prozessor veranlaßt, den Wert des Einheitsmodul- Betriebsartattributs zu bestimmen; und
eine in dem Speicher gespeicherte zweite Routine, die den Prozessor veranlaßt, den Zugang zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Einheitsmodulobjekt-Betriebsartattributs selektiv zuzulassen.
16. System nach Anspruch 15, dadurch gekennzeichnet, daß die
zweite Routine Anweisungen enthält, um den Prozessor zu
veranlassen, den Zugang zum Schreiben von Information zu
dem Modulobjekt zuzulassen, wenn der Wert des
Einheitsmodulobjekt-Betriebsartattributs in einem
freigegebenen Zustand ist.
17. System nach Anspruch 15, dadurch gekennzeichnet, daß die
zweite Routine Anweisungen enthält, um den Prozessor zu
veranlassen, den Zugang zum Schreiben von Information zu
dem Modulobjekt nicht zuzulassen, wenn der Wert des
Einheitsmodulobjekt-Betriebsartattributs in einem
gesperrten Zustand ist.
18. System nach Anspruch 15, dadurch gekennzeichnet, daß das
Modulobjekt ein Modulobjekt-Betriebsartattribut hat, das
einen Wert hat, und daß die zweite Routine Anweisungen
enthält, um den Prozessor zu veranlassen, den Zugang zum
Schreiben von Information zu dem Modulobjekt auf der
Basis des Werts des Einheitsmodulobjekt-
Betriebsartattributs und auf der Basis des Werts des
Modulobjekt-Betriebsartattributs zu steuern.
19. System nach Anspruch 15, dadurch gekennzeichnet, daß das
Einheitsmodulobjekt ein Einheitsmodulobjekt-Sperrattribut
hat, das einen Wert hat, und daß die zweite Routine
Anweisungen enthält, um den Prozessor zu veranlassen, den
Zugang zum Schreiben von Information zu dem Modulobjekt
auf der Basis des Werts des Einheitsmodulobjekt-
Sperrattributs zu steuern.
20. System nach Anspruch 19, dadurch gekennzeichnet, daß das
Prozeßsteuersystem eine Phase aufweist und daß die zweite
Routine Anweisungen enthält, um den Prozessor zu
veranlassen, den Wert des Einheitsmodulobjekt-
Sperrattributs durch Bestimmen, ob das
Einheitsmodulobjekt von der Phase genutzt wird, zu
bestimmen.
21. System nach Anspruch 19, dadurch gekennzeichnet, daß das
Prozeßsteuersystem eine Phase aufweist, die eine
Bedienersperre hat, und daß die zweite Routine
Anweisungen enthält, um den Prozessor zu veranlassen, den
Wert des Einheitsmodulobjekt-Sperrattributs durch
Bestimmen, ob die Bedienersperre für die das
Einheitsmodulobjekt nutzende Phase gesetzt worden ist, zu
bestimmen.
22. System nach Anspruch 15, dadurch gekennzeichnet, daß das
Einheitsmodulobjekt ein Einheitsmodulobjekt-Sperrattribut
aufweist, das einen Wert hat, und daß das
Prozeßsteuersystem eine Vielzahl von Modulobjekten
aufweist, die dem Einheitsmodulobjekt zugeordnet sind,
und daß die zweite Routine Anweisungen enthält, um den
Prozessor zu veranlassen, den Zugang zum Schreiben von
Information zu der Vielzahl von Modulobjekten auf der
Basis des Werts des Einheitsmodulobjekt-Sperrattributs zu
steuern.
23. System nach Anspruch 22, dadurch gekennzeichnet, daß die
zweite Routine Anweisungen enthält, um den Prozessor zu
veranlassen, den Zugang zum Schreiben von Information zu
der Vielzahl von Modulobjekten nicht zuzulassen, wenn der
Wert des Einheitsmodulobjekt-Sperrattributs in einem
gesperrten Zustand ist.
24. System nach Anspruch 22, dadurch gekennzeichnet, daß die
zweite Routine Anweisungen enthält, um den Prozessor zu
veranlassen, den Zugang zum Schreiben von Information zu
der Vielzahl von Modulobjekten zuzulassen, wenn der Wert
des Einheitsmodulobjekt-Sperrattributs in einem
freigegebenen Zustand ist.
25. Verfahren zum Steuern des Zugangs zum Schreiben von
Information zu einem Modulobjekt zum Gebrauch in einem
Prozeßsteuersystem, das ein Einheitsmodulobjekt hat, das
für einen Zustand einer Hardwarekomponente repräsentativ
ist, wobei das Modulobjekt dem Einheitsmodulobjekt
zugeordnet ist und benutzt wird, um den Zustand der
Hardwarekomponente zu ändern, wobei das Modulobjekt ein
Modulobjekt-Betriebsartattribut hat, das einen Wert hat,
dadurch gekennzeichnet, daß das Verfahren die folgenden
Schritte aufweist:
Bestimmen des Werts des Modulobjekt-Betriebsartattributs; und
selektives Zulassen des Zugangs zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Modulobjekt-Betriebsartattributs.
Bestimmen des Werts des Modulobjekt-Betriebsartattributs; und
selektives Zulassen des Zugangs zum Schreiben von Information zu dem Modulobjekt auf der Basis des Werts des Modulobjekt-Betriebsartattributs.
26. Verfahren nach Anspruch 25, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Zugang zum Schreiben von
Information zu dem Modulobjekt zugelassen wird, wenn der
Wert des Modulobjekt-Betriebsartattributs in einem
freigegebenen Zustand ist.
27. Verfahren nach Anspruch 25, dadurch gekennzeichnet, daß
der Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Zugang zum Schreiben von
Information zu dem Modulobjekt nicht zugelassen wird,
wenn der Wert des Modulobjekt-Betriebsartattributs in
einem gesperrten Zustand ist.
28. Verfahren nach Anspruch 25, dadurch gekennzeichnet, daß
das Einheitsmodulobjekt ein Einheitsmodulobjekt-
Betriebsartattribut hat, das einen Wert hat, und daß der
Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt des Bestimmens des Werts des Einheitsmodulobjekt-
Betriebsartattributs aufweist.
29. Verfahren nach Anspruch 28, dadurch gekennzeichnet, daß
das Einheitsmodulobjekt ein Einheitsmodulobjekt-
Sperrattribut hat, das einen Wert hat, und daß der
Schritt des selektiven Zulassens des Zugangs zum
Schreiben von Information zu dem Modulobjekt einen
Schritt aufweist, bei dem der Wert des
Einheitsmodulobjekt-Sperrattributs bestimmt wird.
30. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß
das Prozeßsteuersystem eine Phase aufweist und daß der
Schritt des Bestimmens des Werts des Einheitsmodulobjekt-
Sperrattributs einen Schritt aufweist, bei dem bestimmt
wird, ob das Modulobjekt von der Phase genutzt wird.
31. Verfahren nach Anspruch 30, dadurch gekennzeichnet, daß
der Schritt des Bestimmens des Werts des
Einheitsmodulobjekt-Sperrattributs einen Schritt
aufweist, bei dem bestimmt wird, ob für die Phase, die
das Einheitsmodulobjekt benutzt, eine Bedienersperre
gesetzt worden ist.
32. Prozeßsteuersystem,
gekennzeichnet durch
Prozeßsteuereinrichtungen; und
ein den Prozeßsteuereinrichtungen zugeordnetes Modulobjekt, wobei das Modulobjekt einen Parameter aufweist, der zur Steuerung des Betriebs der Prozeßsteuereinrichtungen dient, und wobei das Modulobjekt ein Modulobjekt-Betriebsartattribut aufweist, um selektiv den Zugang zum Schreiben von Information zu dem Parameter des Modulobjekts zuzulassen.
Prozeßsteuereinrichtungen; und
ein den Prozeßsteuereinrichtungen zugeordnetes Modulobjekt, wobei das Modulobjekt einen Parameter aufweist, der zur Steuerung des Betriebs der Prozeßsteuereinrichtungen dient, und wobei das Modulobjekt ein Modulobjekt-Betriebsartattribut aufweist, um selektiv den Zugang zum Schreiben von Information zu dem Parameter des Modulobjekts zuzulassen.
33. Prozeßsteuersystem nach Anspruch 32, gekennzeichnet durch
ein Einheitsmodulobjekt, das mit dem Modulobjekt
assoziiert ist, wobei das Einheitsmodulobjekt ein
Einheitsmodulobjekt-Betriebsartattribut aufweist, um den
Zugang zum Schreiben von Information zu dem Parameter des
Modulobjekts selektiv zuzulassen.
34. Prozeßsteuersystem nach Anspruch 33, dadurch
gekennzeichnet, daß das Einheitsmodulobjekt ferner ein
Einheitsmodulobjekt-Sperrattribut aufweist, um den Zugang
zum Schreiben von Information zu dem Parameter des
Modulobjekts selektiv zuzulassen.
35. Prozeßsteuersystem nach Anspruch 34, dadurch
gekennzeichnet, daß der Zugang zum Schreiben von
Information zu den Parametern ferner durch das
Einheitsmodulobjekt-Sperrattribut gesteuert wird.
36. Prozeßsteuersystem nach Anspruch 35, gekennzeichnet durch
eine Vielzahl von Modulobjekten, die dem
Einheitsmodulobjekt zugeordnet sind, wobei jedes der
Vielzahl von Modulobjekten Parameter aufweist und der
Zugang zu diesen von dem Einheitsmodulobjekt-
Sperrattribut gesteuert wird.
37. Prozeßsteuersystem nach Anspruch 33, gekennzeichnet durch
eine Vielzahl von Modulobjekten, die dem
Einheitsmodulobjekt zugeordnet sind, wobei jedes der
Vielzahl von Modulobjekten Parameter aufweist und der
Zugang zu diesen von dem Einheitsmodulobjekt-
Betriebsartattribut gesteuert.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/669,297 US8671460B1 (en) | 2000-09-25 | 2000-09-25 | Operator lock-out in batch process control systems |
US669297 | 2000-09-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10147050A1 true DE10147050A1 (de) | 2002-07-04 |
DE10147050B4 DE10147050B4 (de) | 2014-04-24 |
Family
ID=24685846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10147050.9A Expired - Lifetime DE10147050B4 (de) | 2000-09-25 | 2001-09-25 | Bedienersperre in Steuersystemen von Batchprozessen |
Country Status (4)
Country | Link |
---|---|
US (1) | US8671460B1 (de) |
JP (1) | JP5155509B2 (de) |
DE (1) | DE10147050B4 (de) |
GB (1) | GB2370665B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112004001716B4 (de) * | 2003-09-19 | 2021-02-04 | Fisher-Rosemount Systems, Inc. | Verfahren zur Freigabe von Softwareobjekten zur Verwendung in einem sicherheitsgerichteten System und Freigabesystem für Softwareobjekte zur Verwendung in einem Prozesssteuersystem mit einem Prozessor |
DE102004015616B4 (de) | 2003-04-01 | 2022-03-17 | Fisher-Rosemount Systems, Inc. | Sicherheitssystemsteuerung zur Verwendung in einer Prozessumgebung, Prozesssteuerungssystem sowie entsprechendes Steuerungsverfahren |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US7043311B2 (en) | 2003-02-18 | 2006-05-09 | Fisher-Rosemount Systems, Inc. | Module class objects in a process plant configuration system |
JP2007536634A (ja) | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | プロセス制御システムのためのサービス指向型アーキテクチャ |
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 |
US8881039B2 (en) | 2009-03-13 | 2014-11-04 | Fisher-Rosemount Systems, Inc. | Scaling composite shapes for a graphical human-machine interface |
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 |
CN103558809B (zh) * | 2012-05-09 | 2019-06-18 | 布里斯托尔D/B/A远程自动化解决方案公司 | 配置过程控制设备的方法和装置 |
US10503156B2 (en) * | 2015-09-18 | 2019-12-10 | Fisher-Rosemount Systems, Inc. | Methods and apparatus to define stages for multi-variate batch control analytics |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3116753A (en) * | 1961-12-21 | 1964-01-07 | Foxboro Co | Industrial process control apparatus |
US3377623A (en) * | 1965-09-29 | 1968-04-09 | Foxboro Co | Process backup system |
US4227245A (en) * | 1972-06-01 | 1980-10-07 | Westinghouse Electric Corp. | Digital computer monitored system or process which is configured with the aid of an improved automatic programming system |
US4215407A (en) * | 1972-08-22 | 1980-07-29 | Westinghouse Electric Corp. | Combined file and directory system for a process control digital computer system |
CA1108731A (en) * | 1977-05-13 | 1981-09-08 | Herbert N Klingbeil | Multiple control circuit with floating setpoint |
US4270168A (en) * | 1978-08-31 | 1981-05-26 | United Technologies Corporation | Selective disablement in fail-operational, fail-safe multi-computer control system |
US4827423A (en) * | 1987-01-20 | 1989-05-02 | R. J. Reynolds Tobacco Company | Computer integrated manufacturing system |
US5166678A (en) * | 1987-08-11 | 1992-11-24 | Rosemount Inc. | Dual master implied token communication system |
US5006992A (en) * | 1987-09-30 | 1991-04-09 | Du Pont De Nemours And Company | Process control system with reconfigurable expert rules and control modules |
US4886590A (en) * | 1987-11-02 | 1989-12-12 | Man-Gill Chemical Company | Chemical process control system |
JPH01217501A (ja) | 1988-02-25 | 1989-08-31 | Mitsubishi Electric Corp | 自家用発電設備の制御装置 |
US5263155A (en) * | 1991-02-21 | 1993-11-16 | Texas Instruments Incorporated | System for selectively registering and blocking requests initiated by optimistic and pessimistic transactions respectively for shared objects based upon associated locks |
DE4139179C2 (de) | 1991-11-28 | 1994-01-13 | Wacker Chemie Gmbh | Verfahren zur automatischen Steuerung von Chargenprozessen |
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 |
DE29604605U1 (de) | 1996-03-12 | 1996-05-23 | Siemens Ag | Schutzmechanismus für technische Systemressourcen vor unberechtigtem Zugriff |
JPH09319406A (ja) | 1996-05-28 | 1997-12-12 | Toshiba Fa Syst Eng Kk | 制御装置 |
US5784577A (en) * | 1996-08-05 | 1998-07-21 | Xilinx Inc | Automated control system for programming PLDs |
JP3715439B2 (ja) | 1998-07-31 | 2005-11-09 | 富士通株式会社 | ファイルアクセスシステムおよびファイル制御装置 |
US6425060B1 (en) * | 1999-01-05 | 2002-07-23 | International Business Machines Corporation | Circuit arrangement and method with state-based transaction scheduling |
US6467032B1 (en) * | 1999-06-04 | 2002-10-15 | International Business Machines Corporation | Controlled reissue delay of memory requests to reduce shared memory address contention |
US6496880B1 (en) * | 1999-08-26 | 2002-12-17 | Agere Systems Inc. | Shared I/O ports for multi-core designs |
US6662253B1 (en) * | 2000-09-13 | 2003-12-09 | Stmicroelectronics, Inc. | Shared peripheral architecture |
US6823411B2 (en) * | 2002-01-30 | 2004-11-23 | International Business Machines Corporation | N-way psuedo cross-bar having an arbitration feature using discrete processor local busses |
US6931470B2 (en) * | 2002-02-11 | 2005-08-16 | Motorola, Inc. | Dual access serial peripheral interface |
-
2000
- 2000-09-25 US US09/669,297 patent/US8671460B1/en active Active
-
2001
- 2001-09-24 GB GB0122847A patent/GB2370665B/en not_active Expired - Lifetime
- 2001-09-25 JP JP2001291552A patent/JP5155509B2/ja not_active Expired - Lifetime
- 2001-09-25 DE DE10147050.9A patent/DE10147050B4/de not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004015616B4 (de) | 2003-04-01 | 2022-03-17 | Fisher-Rosemount Systems, Inc. | Sicherheitssystemsteuerung zur Verwendung in einer Prozessumgebung, Prozesssteuerungssystem sowie entsprechendes Steuerungsverfahren |
DE112004001716B4 (de) * | 2003-09-19 | 2021-02-04 | Fisher-Rosemount Systems, Inc. | Verfahren zur Freigabe von Softwareobjekten zur Verwendung in einem sicherheitsgerichteten System und Freigabesystem für Softwareobjekte zur Verwendung in einem Prozesssteuersystem mit einem Prozessor |
Also Published As
Publication number | Publication date |
---|---|
DE10147050B4 (de) | 2014-04-24 |
US8671460B1 (en) | 2014-03-11 |
JP5155509B2 (ja) | 2013-03-06 |
GB2370665B (en) | 2005-06-29 |
GB0122847D0 (en) | 2001-11-14 |
JP2002116801A (ja) | 2002-04-19 |
GB2370665A (en) | 2002-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10031671A1 (de) | Dynamische Einheitsauswahl in einem Prozessregelsystem | |
DE10011661B4 (de) | Prozeßsteuersystem mit Prozeßsteuerroutinen unter Verwendung von indirekter Referenzierung | |
DE102005050608B4 (de) | Verfahren und System für die Batch-Verarbeitungseinschätzung in einem Prozesssteuerungssystem | |
DE102004025877A1 (de) | Stapelausführungsmaschine mit unabhängigen Stapelausführungsprozessen | |
DE10335116B4 (de) | Integrierte elektronische Authentifizierung für die Freigabe von Softwareobjekten für ein Prozesssteuerungssystem | |
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 | |
DE19940078B4 (de) | Verteiltes Stapelverarbeitungssystem und Verfahren | |
DE102004007435A1 (de) | Modulklassenobjekte in einem Prozessanlagenkonfigurierungssystem | |
EP0906596B1 (de) | Prozessautomatisierungssystem | |
DE102012104305A1 (de) | Software-Aussperrkoordination zwischen einem Prozessregelungssystem und einem Anlagenverwaltungssystem | |
DE10131531B4 (de) | Kampagnenmanagement für Chargenprozesse | |
DE10147115B4 (de) | Verwendung von entfernt gelegenen Softphasen in einem Prozeßsteuerungssystem | |
DE102007046572A1 (de) | Flexible Eingabe-/Ausgabegeräte zur Verwendung in Prozesssteuerungssystemen | |
DE10341574A1 (de) | Konfiguration und Betrachtungsanzeige für einen integrierten prädiktiven Modellsteuerungs- und Optimierungsfunktionsblock | |
DE10147050B4 (de) | Bedienersperre in Steuersystemen von Batchprozessen | |
EP3246773B1 (de) | Verfahren zur parametrierung einer verfahrens- oder prozesstechnischen anlage | |
DE10012258A1 (de) | Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung | |
DE102007046642A1 (de) | Verfahren und Modulklassenobjekte zur Konfiguration von fehlenden Einrichtungen in verfahrenstechnischen Anlagen | |
EP2098926A1 (de) | Verfahren und Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung | |
EP1346265B1 (de) | Feldgerät für automatisierungssysteme | |
EP2422248B1 (de) | System und verfahren zum verteilen von projektdaten einer sicherheitssteuerung einer automatisierten anlage auf die steuerungskomponenten | |
DE10143972A1 (de) | Algorithmus für das Protokoll des Foundation-Fieldbus | |
EP1643679B1 (de) | Konfiguration von Baugruppen in Automatisierungssystemen | |
EP2557464B1 (de) | Verfahren zum Betrieb eines Automatisierungssystems | |
DE102018119321A1 (de) | Kontrollierter Rollout von Modulklassen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final | ||
R020 | Patent grant now final |
Effective date: 20150127 |
|
R071 | Expiry of right |