DE102018119321A1 - Kontrollierter Rollout von Modulklassen - Google Patents

Kontrollierter Rollout von Modulklassen Download PDF

Info

Publication number
DE102018119321A1
DE102018119321A1 DE102018119321.1A DE102018119321A DE102018119321A1 DE 102018119321 A1 DE102018119321 A1 DE 102018119321A1 DE 102018119321 A DE102018119321 A DE 102018119321A DE 102018119321 A1 DE102018119321 A1 DE 102018119321A1
Authority
DE
Germany
Prior art keywords
module
class
version
process control
module class
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018119321.1A
Other languages
English (en)
Inventor
Julian K. Naidoo
Daniel R. Strinden
Cristopher Ian S. Uy
Prashant Joshi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of DE102018119321A1 publication Critical patent/DE102018119321A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4188Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by CIM planning or realisation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31418NC program management, support, storage, distribution, version, update
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32137Configure, connect, combine different program modules
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32154Object, attribute for geometry, technology, function oop
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32161Object oriented control, programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

Beschrieben sind modulbasierte Systeme und Verfahren für den kontrollierten Rollout von Modulklassen zum Konfigurieren einer Prozessanlage. In verschiedenen Aspekten erzeugen die modulbasierten Systeme und Verfahren eine zweite Version einer Modulklasse auf der Basis einer Änderung einer ersten Version der Modulklasse, wobei die Modulklasse mit einer oder mehreren Modulinstanzen verknüpft ist, die jeweils mit einem Prozesssteuerelement der Prozessanlage verknüpft sind. Die modulbasierten Systeme und Verfahren führen eine Rollout-Anweisung zum Aktualisieren eines upgegradeten Prozesssteuerelements aus, wobei das upgegradete Prozesssteuerelement mit einer neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft ist. Die Rollout-Anweisung ist ebenfalls zum Ignorieren oder Übergehen eines nicht upgegradeten Prozesssteuerelements ausgebildet, wobei das nicht upgegradete Prozesssteuerelement mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse verknüpft bleibt.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft allgemein Prozessanlagen und insbesondere einen kontrollierten Rollout von Modulklassen zum Konfigurieren einer Prozessanlage.
  • BESCHREIBUNG DES STANDES DER TECHNIK
  • Verteilte Prozesssteuerungen, wie sie typischerweise in der Energieerzeugung, chemischen Herstellung, Erdölverarbeitung, industriellen Fertigung oder anderen Arten von Anlagen verwendet werden, umfassen typischerweise ein oder mehrere Steuergeräte kommunizierend mit einer Vielzahl von Feldgeräten über analoge, digitale, kombiniert analoge/digitale oder drahtlose Busse gekoppelte Steuergeräte. Die Feldgeräte, die beispielsweise Ventile, Ventilstellungsregler, Schalter, Geber (beispielsweise Temperatur-, Druck, Füllstands- und Durchflussmengensensoren), Brenner, Wärmetauscher, Öfen usw. sein können, sind im Anlagenumfeld angeordnet und führen Prozessfunktionen wie das Öffnen oder Schließen von Ventilen, das Messen von Prozessparametern usw. als Reaktion auf von den Steuergeräten erzeugte und gesendete Steuersignale aus. Intelligente Feldgeräte wie Feldgeräte gemäß den Feldbus-Protokollen nach dem Stand der Technik können auch Steuerberechnungen, Alarmfunktionen und andere Funktionen ausführen, die allgemein in einem Anlagensteuergerät oder durch dieses ausgeführt sind. Die Anlagensteuergeräte, die ebenfalls typischerweise innerhalb des Anlagenumfelds angeordnet sind, empfangen Signale, die auf von den Feldgeräten durchgeführte Prozessmessungen hinweisen, und/oder andere Informationen in Bezug auf die Feldgeräte und führen eine Steueranwendung aus, die beispielsweise verschiedene Steuermodule ausführt, die Prozesssteuerentscheidungen treffen, Prozesssteuersignale auf der Basis der empfangenen Informationen erzeugen und mit den in Feldgeräten ausgeführten Steuermodulen oder Blöcken koordinieren, etwa HART™- und FOUNDATION™-basierte Feldbus-Feldgeräte. Die Steuermodule im Steuergerät senden die Prozesssteuersignale über die Kommunikationsleitungen oder -netzwerke an die Feldgeräte, um dadurch den Betrieb des Prozesses zu steuern.
  • Informationen von den Feldgeräten und dem Steuergerät werden üblicherweise über eine Datenautobahn für ein oder mehrere andere Computergeräte wie Bedienerarbeitsplätze, Personalcomputer, Datenhistoriker, Berichterzeuger, zentrale Datenbanken usw. zur Verfügung gestellt, die typischerweise in Steuerständen oder an anderen Orten entfernt von der raueren Anlagenumgebung angeordnet sind. Diese Computergeräte können ebenfalls Anwendungen ausführen, die beispielsweise einem Bediener das Ausführen von Funktionen in Bezug auf den Prozess ermöglichen, etwa das Ändern von Einstellungen der Prozesssteuerroutine, das Ändern des Betriebs der Steuermodule im Steuergerät oder in den Feldgeräten, das Anzeigen des aktuellen Zustands des Prozesses, das Anzeigen von den Feldgeräten und Steuergeräten erzeugten Alarmen, das Pflegen und Aktualisieren einer Konfigurationsdatenbank usw.
  • Beispielsweise umfasst die OVATION™-Steuerung, die von EMERSON PROCESS MANAGEMENT verkauft wird, mehrere in an verschiedenen Orten in einer Prozessanlage angeordneten verschiedenen Geräten gespeicherte und von diesen ausgeführte Anwendungen. Eine Konfigurationsanwendung, die in einem oder mehreren Bedienerarbeitsplätzen angeordnet ist, ermöglichen Anwendern das Erzeugen oder Ändern von Prozesssteuermodulen und das Herunterladen dieser Prozesssteuermodule über eine Datenautobahn auf bestimmte verteilte Steuergeräte. Typischerweise bestehen diese Steuermodule aus kommunizierend miteinander verbundenen Funktionsblöcken, die Objekte in einem objektorientierten Programmierungsprotokoll sind und Funktionen im Steuerschema auf der Basis von Eingaben hierfür ausführen sowie Ausgaben für andere Funktionsblöcke im Steuerschema liefern. Die Konfigurationsanwendung kann ebenfalls einem Entwickler das Erstellen oder Ändern von Bedienerschnittstellen ermöglichen, die von einer Anzeigeanwendung zum Anzeigen von Daten für einen Bediener verwendet werden und dem Bediener das Ändern von Einstellungen wie Sollwerten in der Prozesssteuerroutine ermöglichen. Jedes der bestimmten Steuergeräte und in einigen Fällen Feldgeräte speichert eine Steuergerätanwendung, welche die zugewiesenen und hierauf heruntergeladenen Steuermodule zum Ausführen der jeweiligen Prozesssteuerfunktionalität ausführt, und führt diese aus. Die Anzeigeanwendungen, die auf einem oder mehreren Bedienerarbeitsplätzen ausgeführt werden können, empfangen Daten von der Steuergerätanwendung über die Datenautobahn und zeigen diese Daten Prozesssteuerungsentwicklern, -bedienern oder -anwendern, welche die Benutzerschnittstellen verwenden, an. Eine Datenhistorikeranwendung ist typischerweise in einem Datenhistorikergerät gespeichert, das alle oder alle über die Datenautobahn bereitgestellten Daten sammelt und speichert, und wird von diesem ausgeführt, während eine Konfigurationsdatenbank-Anwendung auf einem weiteren an der Datenautobahn angeschlossenen Computer ausgeführt werden kann, um die aktuelle Prozesssteuerroutinen-Konfiguration und die damit verknüpften Daten zu speichern. Alternativ kann die Konfigurationsdatenbank am gleichen Arbeitsplatz wie die Konfigurationsanwendung angeordnet sein.
  • Momentan kann eine Prozessanlage mit Modulklassen und ihren entsprechenden Modulobjekten (auch als Modulinstanzen bezeichnet) konfiguriert sein. Eine „Modulklasse“ ist eine Vorlage für einen bestimmten Typ von Modul, beispielsweise ein Steuermodul. Eine „Modulinstanz“ einer Klasse ist effektiv ein „Kind“ der Modulklasse, das von seiner übergeordneten Modulklasse instanziiert wurde und daher auf dieser basiert.
  • Eine Modulinstanz kann einem bestimmten Element in der Prozesssteuerung entsprechen. Beispielsweise kann eine Ventilklasse zahlreiche Ventilinstanzen aufweisen, wobei jede Instanz einem einzigen Ventil in der Prozessanlage entspricht. Die Modulinstanzen werden live im Computerspeicher ausgeführt und können Daten in Bezug auf das Ventil speichern und/oder Funktionen zum Steuern des Ventils ausführen. In bestehenden Ausführungen, beispielsweise wie im US-Patent Nr. 7,043,311 mit dem Titel „Module Class Objects in a Process Plant Configuration System“ beschrieben, können Modulinstanzen aus ihren entsprechenden Modulklassenobjekten erzeugt werden, wobei die Modulobjekte mit der Modulklasse verknüpft sind und zu dieser gehören.
  • In aktuellen Systemen wird eine Eins-zu-Eins-Zuordnung zwischen einer Modulklasse und einer Instanz dieser Modulklasse zur Verwendung in einer Prozessanlage verwendet. In aktuellen Systemen können mehrere Liveversionen von Modulinstanzen für eine bestimmte Modulklasse nicht bestehen. Somit müssen, wenn eine Änderung an einer Klasse durchgeführt wird, alle untergeordneten Modulinstanzen ebenfalls geändert werden und somit sind alle Modulinstanzen für die Modulklasse unmittelbar von einer Änderung an der Modulklasse betroffen. Folglich spiegeln sich für die Modulklasse instanziierte neue Modulinstanzen oder an der Modulklasse durchgeführte Änderungen automatisch in jeder der mit diesem Modulklassenobjekt verknüpften Modulinstanzen wider und werden zu dieser propagiert. Wie vom US-Patent Nr. 7,043,311 beschrieben wird, wenn eine Zahl von Modulinstanzen von einer bestimmten Modulklasse erzeugt wurde, wobei jede der verschiedenen Modulinstanzen mit verschiedenen Prozessentitäten verbunden wurde, jede der verschiedenen Modulinstanzen einfach durch Bewirken einer Änderung an der Modulklasse automatisch geändert. Beispielsweise werden die Änderungen automatisch bis zu den verknüpften Modulinstanzen in der Prozessanlage hinunter propagiert.
  • Dies kann aber zu Problemen in einer Prozessanlage führen, insbesondere in Prozessanlagen, die zahlreiche Hardware unterschiedlichen Typs oder verschiedene Konfigurationen von Hardware umfassen, beispielsweise eine Prozessanlage, die zahlreiche Feldgeräte unterschiedlichen Typs oder verschiedene Konfigurationen von Feldgeräten, Prozesssteuerelementen wie CHARMs, Stellungsschaltern usw. umfasst. Wenn beispielsweise ein Bediener einer Prozessanlage, etwa ein Ingenieur, die Hardware der Prozessanlage aufrüsten wollte, bei der die neue Hardware eine neue Modulklasse und somit neue entsprechende Modulinstanzen erforderte (beispielsweise zum Steuern der neuen Hardware), müsste der Bediener zum Erhalten der Eins-zu-Eins-Zuordnung für alle ähnliche Hardware in der Anlage alle neue Versionen der Hardware gleichzeitig aktualisieren und installieren und die gesamte mit der alten Modulklasse und ihren entsprechenden Modulinstanzen verknüpfte alte Hardware entfernen. Andererseits würde solch ein Verfahren sicherstellen, dass alle neuen Modulinstanzen die gleiche Version aufweisen und somit die Eins-zu-Eins-Zuordnung zwischen der neuen Modulklasse und den neuen Modulinstanzen für die neue Hardware erhalten würden. Andererseits ist gegebenenfalls kein ausreichendes Budget vorhanden oder sind keine ausreichenden Ressourcen vorhanden, um die gesamte Hardware gleichzeitig zu kaufen und zu installieren.
  • Die bestehende Praxis zum Lösen dieses Problems besteht darin, dass ein Ingenieur gegebenenfalls gezwungen ist, einiges von der neuen Hardware zu installieren, aber nicht die gesamte. Solch eine Praxis zerstört aber die Eins-zu-Eins-Beziehung zwischen der Hardwareklasse und ihren Instanzen und ist daher unerwünscht. Solch eine Praxis würde beispielsweise die Aufnahme von neuer Hardware in den neuen Modulinstanzen erfordern und würde verschiedene Modulklassen für verschiedene Hardwarekonfigurationen erfordern, wodurch die Ingenieure in der Praxis gezwungen sind, Klassenverknüpfungen zu zerstören, um die neuen Modulklassen und entsprechenden Instanzen im Laufe der Zeit einzuführen. Somit könnte ähnliche Hardware über verschiedene Klassen verfügen, was zu einer Versionskontrollunterbrechung für ähnliche Hardware, Geräte, Elemente usw. in der Anlage führt, wodurch die Gesamtkonfiguration, -instandhaltung und -instandhaltbarkeit der Anlage weniger effektiv und gegebenenfalls gefährlich wird.
  • Beispielsweise kann eine Prozessanlage mit einer Ventilklasse verknüpft sein, wobei die Ventilklasse über 100 Instanzen entsprechend in der Prozessanlage angeordneten Hardwareventilen aufweisen kann. Im vorliegenden Beispiel muss die Logik der Ventilklasse gegebenenfalls geändert werden, um einen neuen Wert, ein neues Merkmal oder einen neuen Anwendungsfall in der Prozessanlage aufzunehmen. Da die Ventilklasse über mehr als 100 Ventilinstanzen verfügt, muss die Ausführung der Änderung auf die Instanzen mit der Installation der neuen Hardware (einschließlich beispielsweise der entsprechenden Kabel) im Laufe der Zeit synchronisiert werden. Gemäß aktuellen Praktiken würde eine Änderung an der Ventilklasse bewirken, dass alle entsprechenden Ventilinstanzen sofort betroffen sind, wobei die Änderungen ein automatisches Herunterladen von neuen Ventilinstanzen zu allen verknüpften Ventilen mit der vorgegebenen Wertklasse im bestehenden Onlinesystem bewirken würden. Das Herunterladen von neuen Ventilinstanzen auf alte Ventilhardware kann aber dazu führen, dass die Logik des alten Ventilmoduls nicht mehr ordnungsgemäß funktioniert, was Probleme, Fehlfunktionen und gegebenenfalls gefährliche Zustände in der Prozessanlage verursacht.
  • In der aktuellen Praxis müssen Ingenieure, um dies zu lösen, zunächst die Eins-zu-Eins-Zuordnung, welche die Klassenverknüpfung zwischen Ventilklasse und ihren Ventilklasseninstanzen darstellt, für Ventilinstanzen ausführende Hardware aufheben, bei welcher der Ingenieur nicht will, dass sie betroffen ist, bevor die Klasse geändert wird. Wie zuvor beschrieben ist dies unerwünscht, insbesondere in einer validierten Anlage, da diese unverknüpften Instanzen dann freistehend sind und ihre Logik willkürlich geändert werden kann. Dies schafft ein Versionskontrollproblem, das schwierig zu bewältigen und zu verfolgen ist und letztendlich für die Prozessanlage gefährlich ist. Ferner führt diese Situation zu mehr Aufwand für den Steuerungsingenieur zum Verfolgen der unverknüpften Instanzen und schafft Verwirrung und Fehler.
  • In einigen Fällen können Ingenieure eine neue Dummy-Modulklasse erzeugen und jeweils eine Instanz mit der neuen Dummy-Modulklasse verknüpfen / die Verknüpfung mit dieser lösen, um die gewünschten Änderungen im Laufe der Zeit auszuführen. Dieser zweite Ansatz benötigt jedoch nicht nur viel Zeit, sondern erzeugt auch einen Verwaltungsaufwand und kann ebenfalls zu Verwirrung und Fehlern führen, insbesondere wenn mehrere Ingenieure für das Konfigurieren und Instandhalten der Prozessanlage zuständig sind.
  • ZUSAMMENFASSUNG
  • Zum Lösen der zuvor beschriebenen Probleme sind nachfolgend modulbasierte Systeme und Verfahren für den kontrollierten Rollout von Modulklassen zum Konfigurieren einer Prozessanlage beschrieben. In verschiedenen Ausführungsformen können die modulbasierten Systeme und Verfahren einen oder mehrere zum Erzeugen einer zweiten Version einer Modulklasse auf der Basis einer Änderung an einer ersten Version der Modulklasse ausgebildete Prozessoren umfassen. In einigen Ausführungsformen kann die Modulklasse eine abgeleitete Modulklasse sein, wobei die abgeleitete Modulklasse die Eigenschaften oder Funktionalität einer übergeordneten Modulklasse erbt.
  • In einigen Ausführungsformen kann die Modulklasse mit einer oder mehreren Modulinstanzen verknüpft sein, wobei die Modulinstanzen jeweils mit einem Prozesssteuerelement der Prozessanlage verknüpft sein können. Ein Prozesssteuerelement kann ein Feldgerät oder einen Teil eines Feldgeräts umfassend beispielsweise ein Ventil umfassen.
  • Die zweite Version der Modulklasse kann einem geänderten Prozesssteuerelement der Prozessanlage umfassend beispielsweise eine Hardwareänderung entsprechen, wobei ein Prozesssteuerelement durch ein anderes Prozesssteuerelement ersetzt wird.
  • In einigen Ausführungsformen kann die Änderung an der ersten Version der Modulklasse das Hinzufügen von einem oder mehreren Eingaben (beispielsweise Rückmeldungseingaben) zur Modulklasse umfassen, wobei auf die eine oder mehreren Eingaben zugegriffen werden kann, um wenigstens teilweise ein Steuern des upgegradeten Prozesssteuerelements zu ermöglichen.
  • In verschiedenen Ausführungsformen sind die modulbasierten Systeme und Verfahren zum Ausführen einer Rollout-Anweisung ausgebildet. Die Rollout-Anweisung kann eine Routine zum Aktualisieren von einem oder mehreren Prozesssteuerelementen umfassen, wobei die upgegradeten Prozesssteuerelements jeweils mit einer neuen Modulinstanz auf der Basis der zweiten Version einer Modulklasse verknüpft werden. Die Rollout-Anweisung kann ebenfalls zum Ignorieren, beispielsweise Übergehen, von einem oder mehreren nicht upgegradeten Prozesssteuerelements ausgeführt werden, wobei die nicht upgegradeten Prozesssteuerelemente jeweils mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse verknüpft bleiben. Beispielsweise kann die Rollout-Anweisung über eine selektive Upgrade-Routine ausgeführt werden, wobei die selektive Upgrade-Routine die upgegradeten Prozesssteuerelemente mit den neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse verknüpft. Die selektive Upgrade-Routine kann einfach zum Ignorieren oder Übergehen der nicht upgegradeten Prozesssteuerelemente ausgeführt werden, so dass die nicht upgegradeten Prozesssteuerelemente nicht mit einer zweiten neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft werden.
  • In einigen Ausführungsformen kann die Rollout-Anweisung sofort ausgeführt werden. In anderen Ausführungsformen kann die Rollout-Anweisung zu einem geplanten Zeitpunkt ausgeführt werden.
  • In zusätzlichen Ausführungsformen kann, sobald die Rollout-Anweisung ausgeführt wurde, jede der upgegradeten Prozesssteuerelemente und der nicht upgegradeten Prozesssteuerelemente zusammen zum Steuern wenigstens eines Teils der Prozessanlage verwendet werden. In solchen Ausführungsformen würde die Prozessanlage wenigstens teilweise durch verschiedene Versionen, beispielsweise die erste Version und die zweite Version, der gleichen Modulklasse, einschließlich zum gleichen Zeitpunkt, gesteuert werden.
  • Die modulbasierten Systeme und Verfahren können zum Verfolgen von einer oder mehreren Modulinstanzen über einen Modulkonfigurationseintrag ausgebildet sein. In einigen Ausführungsformen kann der Modulkonfigurationseintrag eine Version der Modulklasse für jede der einen oder mehreren Modulinstanzen angeben. Der Modulkonfigurationseintrag kann ebenfalls angeben, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist.
  • In einigen Ausführungsformen können die modulbasierten Systeme und Verfahren zum Verhindern eines zusätzlichen Aktualisierens der Modulklasse, wenn der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist, ausgebildet sein.
  • In anderen Ausführungsformen können die upgegradeten Prozesssteuerelemente in einer upgegradeten Prozesssteuerelement-Menge enthalten sein, die jedes mit einer neuen Modulinstanz der zweiten Version der Modulklasse zu verknüpfende Prozesssteuerelement definiert. Die upgegradete Prozesssteuerelement-Menge kann erzeugt werden, wenn die Rollout-Anweisung ausgeführt wird. In bestimmten Ausführungsformen kann die upgegradete Prozesssteuerelement-Menge eine Untermenge aller Prozesssteuerelemente der Prozessanlage sein.
  • In einigen Ausführungsformen kann die Auswahl der Prozesssteuerelemente zur Aufnahme in der upgegradeten Prozesssteuerelement-Menge von den modulbasierten Systemen und Verfahren beispielsweise über eine Grafikschnittstelle empfangen werden, wobei ein Bediener auswählen kann, welche Prozesssteuerelemente in der upgegradeten Prozesssteuerelement-Menge enthalten sein sollen.
  • Beispielsweise kann in einigen Ausführungsformen die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einer bestimmten abgeleiteten Modulklasse verknüpften Prozesssteuerelementen umfassen. In anderen Ausführungsformen kann die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einer bestimmten Hierarchie der Prozessanlage verknüpften Prozesssteuerelementen umfassen. In noch weiteren Ausführungsformen kann die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einem physischen Bereich der Prozessanlage verknüpften Prozesssteuerelementen umfassen.
  • In verschiedenen Ausführungsformen kann eine zusätzliche Rollout-Anweisung ausgeführt werden, wobei die zusätzliche Rollout-Anweisung eine Konfigurationsänderung auf jede der neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse und ebenfalls auf die vorhergehenden Modulinstanzen auf der Basis der ersten Version der Modulklasse anwendet. Die Konfigurationsänderung kann eine zusätzliche Änderung umfassen, die auf die zweite Version einer Modulklasse und die erste Version der Modulklasse angewendet wird, um beispielsweise einen Patch oder eine Schnelllösung auf die Modulklasse insgesamt anzuwenden. Beispielsweise kann in einer Ausführungsform die zusätzliche Änderung eine Berechnungsfunktion zur zweiten Version einer Modulklasse und ersten Version der Modulklasse hinzufügen, um die Funktionalität der Modulklasse über beide Versionen hinweg zu verbessern.
  • Einem Fachmann werden die Vorteile anhand der folgenden Beschreibung der bevorzugten Ausführungsformen, die rein illustrativ dargestellt und beschrieben sind, klarer. Die vorliegenden Ausführungsformen können zu anderen und verschiedenen Ausführungsformen entwickelt werden und die Details können in verschiedener Hinsicht geändert werden. Die Zeichnungen und die Beschreibung sind daher rein als illustrativ zu betrachten und keinesfalls als einschränkend.
  • Figurenliste
  • Die nachfolgend beschriebenen Figuren zeigen verschiedene Aspekte der Systeme und der Verfahren wie hier offenbart. Jede Figur bildet eine Ausführungsform eines bestimmten Aspekts der offenbarten Systeme und Verfahren dar und jede Figur entspricht einer möglichen Ausführungsform von diesen. Ferner bezieht sich die folgende Beschreibung wenn möglich auf die in den folgenden Figuren enthaltenen Bezugszeichen, wobei in mehreren Figuren dargestellte Merkmale mit gleichen Bezugszeichen bezeichnet sind.
  • In den Zeichnungen sind zuvor beschriebene Anordnungen dargestellt; die vorliegenden Ausführungsformen sind jedoch nicht auf die genauen Anordnungen und Funktionen wie dargestellt beschränkt.
    • 1 zeigt ein Blockdiagramm einer Ausführungsform eines in einer Prozessanlage angeordneten verteilten Prozesssteuernetzwerks umfassend einen Bedienerarbeitsplatz, der eine Konfigurationsanwendung zum kontrollierten Rollout von Modulklassen zum Konfigurieren der Prozessanlage ausführt.
    • 2 zeigt eine Ausführungsform eines ersten Konfigurationsbildschirms, der zum Ändern einer ersten Version einer Modulklasse gemäß verschiedenen Ausführungsformen verwendet werden kann.
    • 3 zeigt eine Ausführungsform des Konfigurationsbildschirms von 2 zum Darstellen einer zweiten Version der Modulklasse von 2.
    • 4 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen von Prozesssteuerelementen zum Verknüpfen mit neuen Modulinstanzen der zweiten Version der Modulklasse von 3.
    • 5 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen von auf der Basis einer bestimmten abgeleiteten Klasse ausgewählten Prozesssteuerelementen, wobei die ausgewählten Prozesssteuerelemente mit neuen Modulinstanzen der zweiten Version der Modulklasse von 3 zu verknüpfen sind.
    • 6 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen der neuen Modulinstanzen der zweiten Version der Modulklasse von 3 im Rollout zu den Prozesssteuerelementen in der Prozessanlage.
    • 7 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen einer zusätzlichen Rollout-Anweisung zum Anwenden einer Konfigurationsänderung auf die neue Modulinstanz auf der Basis der zweiten Version der Modulklasse und auf die vorhergehende Modulinstanz auf der Basis der ersten Version der Modulklasse.
    • 8 zeigt eine Ausführungsform des Konfigurationsbildschirms von 7 zum Darstellen eines Rollout-Bestätigungsbildschirms zum Ausführen der zusätzlichen Rollout-Anweisung.
    • 9 zeigt eine Ausführungsform des Konfigurationsbildschirms zum Darstellen von mit einem bestimmten Typ von Prozesssteuerelement der Prozessanlage verknüpften Modulinstanzen.
    • 10 zeigt eine Ausführungsform eines Verfahrens für einen kontrollierten Rollout von Modulklassen zum Konfigurieren der Prozessanlage von 1.
  • Die Figuren zeigen bevorzugte Ausführungsformen ausschließlich für den Zweck der Veranschaulichung. Alternative Ausführungsformen der hier dargestellten Systeme und Verfahren können verwendet werden, ohne von den Prinzipien der hier beschriebenen Erfindung abzuweichen.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 1 zeigt ein Blockdiagramm einer Ausführungsform eines in einer Prozessanlage angeordneten verteilten Prozesssteuernetzwerks umfassend einen Bedienerarbeitsplatz, der eine Konfigurationsanwendung zum kontrollierten Rollout von Modulklassen zum Konfigurieren der Prozessanlage ausführt. In der Ausführungsform von 1 umfasst eine Prozessanlage 10 eine oder mehrere mit zahlreichen Arbeitsplätzen 14 über beispielsweise eine Ethernet-Verbindung oder einen Ethernet-Bus 15 gekoppelte Prozesssteuergeräte 12. Die Steuergeräte 12 sind ebenfalls mit Geräten oder Ausrüstung in der Prozessanlage 10 über Mengen von Kommunikationsleitungen oder -bussen 18 gekoppelt, wobei in 1 ausschließlich die mit dem Steuergerät 12a verbundene Menge von Kommunikationsleitungen 18 dargestellt ist. Die Steuergeräte 12, die beispielsweise mit dem von Fisher-Rosemount Systems Inc. verkauften OVATION™-Steuergerät ausgeführt werden können, können mit Prozesssteuerelementen wie Feldgeräten und Funktionsblöcken in der Prozessanlage 10 verteilten Feldgeräten zum Ausführen von einer oder mehreren Prozesssteuerroutinen 19 zum Ausführen der gewünschten Steuerung der Prozessanlage 10 kommunizieren. Die Arbeitsplätze 14 (die beispielsweise Personalcomputer sein können) können von einem oder mehreren Konfigurationsingenieuren zum Entwickeln der von den Steuergeräten 12 auszuführenden Prozesssteuerroutinen 19 und der von den Arbeitsplätzen 14 oder anderen Computern auszuführenden Anzeigeroutinen sowie zum Kommunizieren mit den Steuergeräten 12 zum Herunterladen der Prozesssteuerroutinen 19 auf die Steuergeräte 12 und 12a verwendet werden. Ferner können die Arbeitsplätze 14 Anzeigeroutinen ausführen, die zur Prozessanlage 10 gehörige Informationen oder Elemente hiervon während des Betriebs der Prozessanlage 10 empfangen und anzeigen.
  • Jeder der Arbeitsplätze 14 umfasst einen Speicher 20 zum Speichern von Anwendungen wie Konfigurationsentwicklungsanwendungen und Anzeige- oder Darstellungsanwendungen und zum Speichern von Daten wie zur Konfiguration der Prozessanlage 10 gehörige Konfigurationsdaten. Jeder der Arbeitsplätze 14 umfasst ebenfalls einen Prozessor 21, der die Anwendungen ausführt, um einen Konfigurationsingenieur das Entwickeln von Prozesssteuerroutinen und anderen Routinen und das Herunterladen dieser Prozesssteuerroutinen auf die Steuergeräte 12 oder andere Computer oder das Sammeln und Anzeigen der Informationen für einen Benutzer während des Betriebs der Prozessanlage 10 zu ermöglichen.
  • Ferner umfasst jedes der Steuergeräte 12 einen Speicher 22, der Steuer- und Kommunikationsanwendungen speichert, und einen Prozessor 24, der die Steuer- und Kommunikationsanwendungen auf eine Weise nach dem Stand der Technik ausführt. In einem Fall speichert jedes der Steuergeräte 12 eine Steuergerätanwendung, die eine Steuerstrategie unter Verwendung von verschiedenen, unabhängig voneinander ausgeführten Steuermodulen oder -blocken 19 ausführt, und führt diese aus. Die Steuermodule 19 können jeweils aus Elementen bestehen, die allgemein als Funktionsblöcke bezeichnet werden, wobei jeder Funktionsblock ein Teil oder eine Unterroutine einer Gesamtsteuerroutine ist und in Verbindung mit anderen Funktionsblöcken (über eine als Verbindung bezeichnete Kommunikation) zum Ausführen von Prozesssteuerschleifen in der Prozessanlage 10 in Betrieb ist.
  • Es ist wohlbekannt, dass Funktionsblöcke, die Objekte in einem objektorientierten Programmierprotokoll sein können, typischerweise eine Eingabefunktion, etwa solch eine mit einem Geber, einem Sensor oder einer anderen Prozessparameter-Messvorrichtung verknüpfte, eine Steuerfunktion, etwa solch eine mit einer Steuerroutine, die eine PID-, Fuzzy-Logic-Steuerung durchführt, verknüpfte, oder eine Ausgabefunktion, die den Betrieb der Vorrichtung, etwa eines Ventils, steuert, um eine physische Funktion in der Prozessanlage 10 auszuführen, ausführen. Es gibt natürlich hybride und anderen Arten von komplexen Funktionsblöcken wie Model-Predictive-Controller (MPCs), Optimierer usw. Das Feldbus-Protokoll und das OVATION™-Systemprotokoll verwenden zwar in einem objektorientierten Programmierprotokoll entwickelte und ausgeführte Steuermodule und Funktionsblöcke, aber die Steuermodule können mit einem beliebigen Steuerprogrammierschema wie sequentielle Funktionsblöcke, Kontaktplan usw. entwickelt werden und sind nicht auf die Entwicklung mit Funktionsblöcken oder einem beliebigen anderen bestimmten Programmverfahren oder Programmiersprache beschränkt.
  • Die Arbeitsplätze 14 können eine grafische Darstellung der Prozesssteuerroutinen 19 in den Steuergeräten 12 für einen Benutzer über einen Anzeigebildschirm zur Darstellung der Prozesssteuerelemente in den Prozesssteuerroutinen 19 und der Weise, wie diese Prozesssteuerelemente zum Bereitstellen der Steuerung der Prozessanlage 10 ausgebildet sind, bereitstellen. Im System von 1 kann eine Konfigurationsdatenbank 25 mit dem Ethernet-Bus 15 zum Speichern von den Steuergeräten 12 und Arbeitsplätzen 14 verwendeten Konfigurationsdaten verbunden sein, um als ein Datenhistoriker durch Sammeln und Speichern von in der Prozessanlage 10 erzeugten Daten zur späteren Verwendung zu dienen.
  • In der in 1 dargestellten Prozessanlage 10 ist das Steuergerät 12a kommunizierend über den Bus 18 mit drei Mengen von ähnlich konfigurierten Reaktoren (die replikate Ausrüstung in der Prozessanlage 10 sind), hier als Reaktor_01, Reaktor_02 und Reaktor_03 bezeichnet. Reaktor_01 umfasst einen Reaktorbehälter oder -tank 100, drei zum Steuern von Flüssigkeitseinlaufleitungen zum Zuführen von jeweils Säure, Alkali und Wasser zum Reaktorbehälter 100 verbundene Eingangsventilsysteme (die Prozesssteuerelemente als Ausrüstungsentitäten sind) 101, 102 und 103 und ein zum Steuern des Flüssigkeitsstroms aus dem Reaktorbehälter 100 heraus verbundenes Ausgangsventilsystem 104. Ein Sensor 105, der ein beliebiger Typ von Sensor sein kann, etwa ein Füllstandssensor, ein Temperatursensor, ein Drucksensor usw., ist im Reaktorbehälter 100 oder in dessen Nähe angeordnet. Ferner ist ein gemeinsames Verteilerventilsystem 110 an der Wasserleitung stromaufwärts von jedem der Reaktoren Reaktor_01, Reaktor_02 und Reaktor_03 zum Bereitstellen einer übergeordneten Steuerung zum Steuern des Stroms von Wasser zu jedem dieser Reaktoren angeschlossen.
  • Ebenso umfasst der Reaktor_02 einen Reaktorbehälter 200, drei Eingangsventilsysteme 201, 202 und 203, ein Ausgangsventilsystem 204 und einen Füllstandssensor 205, während der Reaktor_03 einen Reaktorbehälter 300, drei Eingangsventilventilsysteme 301, 302 und 303, ein Ausgangsventilsystem 304 und einen Füllstandssensor 305 umfasst. Im Beispiel von 1 können die Reaktoren Reaktor_01, Reaktor_02 und Reaktor_03 mit den Säure liefernden Eingangsventilsystemen 101, 201 und 301, den Alkali liefernden Eingangsventilsystemen 102, 202 und 302 und den in Verbindung mit der gemeinsamen Wasserverteilung 110 Wasser zum Reaktorbehälter 100 liefernden Eingangsventilsystemen 103, 203 und 303 Salz erzeugen. Die Ausgangsventilsysteme 104, 204 und 304 können zum Senden von Produkt aus einer nach rechts gerichteten Strömungsleitung in 1 und zum Abführen von Abfall oder anderem unerwünschtem Material aus einer nach unten gerichteten Strömungsleitung in 1 betrieben werden.
  • Das Steuergerät 12a ist kommunizierend mit den Ventilsystemen 101-104, 110, 201-204 und 301-304 und den Sensoren 105, 205 und 305 über den Bus 18 zum Steuern des Betriebs dieser Prozesssteuerelemente zum Ausführen von einem oder mehreren Operationen in Bezug auf die Reaktoreinheiten Reaktor_01, Reaktor_02 und Reaktor_03 gekoppelt. Solche Operationen, im Allgemeinen als Phasen bezeichnet, können beispielsweise das Befüllen der Reaktorbehälter 100, 200, 300, das Erwärmen des Materials in den Reaktorbehältern 100, 200, 300, das Entleeren der Reaktorbehälter 100, 200, 300, das Reinigen der Reaktorbehälter 100, 200, 300 usw. umfassen.
  • Die Ventile, Sensoren und anderen Prozesssteuerelemente wie in 1 dargestellt können eine beliebige Art oder einen beliebigen Typ von Prozesssteuerelementen aufweisen, beispielsweise Feldbus-Geräte, 4-20-mA-Standardgeräte, HART-Geräte usw., und können mit dem Steuergerät 12 mit einem beliebigen Kommunikationsprotokoll nach dem Stand der Technik oder gemäß Wunsch wie Feldbus-Protokoll, HART-Protokoll, 4-20-mA-Analogprotokoll usw. kommunizieren. Ferner können gemäß den hier beschriebenen Prinzipien weitere Arten von Geräten an die Steuergeräte 12 angeschlossen und von diesen gesteuert werden. Ebenso können andere Zahlen und Arten von Steuergeräten in der Anlage 10 zum Steuern anderer Geräte oder Bereiche in Verbindung mit der Prozessanlage 10 angeschlossen werden und der Betrieb solcher zusätzlicher Steuergeräte kann mit dem Betrieb des in 1 dargestellten Steuergeräts 12a auf eine beliebige erwünschte Weise koordiniert werden.
  • Allgemein kann die Prozessanlage 10 von 1 zum Ausführen von Batchprozessen verwendet werden, in denen beispielsweise einer der Arbeitsplätze 14 oder das Steuergerät 12a eine Batchausführungsroutine ausführt, die eine Steuerroutine auf übergeordnete Ebene ist, die den Betrieb von einer oder mehreren der Reaktoreinheiten (sowie von anderen Prozesssteuerelementen oder anderer Ausrüstung) befiehlt, um eine Reihe von verschiedenen Schritten (allgemein als Phasen bezeichnet) auszuführen, die zum Erzeugen eines Produkts, etwa eines bestimmten Typs von Salz, erforderlich sind. Zum Ausführen verschiedener Phasen verwendet die Batchausführungsroutine das, was allgemein als ein Rezept bezeichnet wird, das die auszuführenden Schritte, die Mengen und die Zeiten in Verbindung mit den Schritten und die Reihenfolge der Schritte spezifiziert. Schritte für ein Rezept können beispielsweise das Befüllen eines Reaktorbehälters mit den geeigneten Materialien oder Zutaten, das Mischen der Materialien im Reaktorbehälter, das Erwärmen der Materialien im Reaktorbehälter auf eine bestimmte Temperatur über eine bestimmte Zeitdauer, das Entleeren des Reaktorbehälters und anschließend das Reinigen des Reaktorbehälters zum Vorbereiten für den nächsten Batchdurchlauf. Jeder Schritte definiert eine Phase des Batchdurchlaufs und die Batchausführungsroutine im Steuergerät 12a kann einen unterschiedlichen Steueralgorithmus für jede dieser Phasen ausführen. Natürlich können die spezifischen Materialien, Mengen von Materialien, Erwärmungstemperaturen, Zeiten usw. für verschiedene Rezepte unterschiedlich sein und somit können sich diese Parameter von Batchdurchlauf zu Batchdurchlaufje nach herzustellenden oder hergestellten Produkt und verwendetem Rezept ändern. Einem Fachmann ist klar, dass zwar Steuerroutinen und -konfigurationen hier für Batchdurchläufe in den in 1 dargestellten Reaktoren beschrieben sind, aber Steuerroutinen zum Steuern anderer gewünschter Vorrichtungen zum Ausführen von beliebigen anderen gewünschten Batchprozessdurchläufen oder zum Ausführen von kontinuierlichen Prozessdurchläufen bei Wunsch verwendet werden können.
  • Es ist ebenfalls klar, dass die gleichen Phasen oder Schritte eines Batchprozesses an jeder der verschiedenen Reaktoreinheiten von 1 zum gleichen Zeitpunkt oder zu verschiedenen Zeitpunkten ausgeführt werden können. Ferner kann, da die Reaktoreinheiten von 1 allgemein die gleiche Zahl und Arten von Ausrüstung umfassen, die gleiche allgemeine Phasensteuerroutine für eine bestimmte Phase verwendet werden kann, um jede der verschiedenen Reaktoreinheiten zu steuern; diese allgemeine Phasensteuerroutine muss aber zum Steuern der verschiedenen Hardware, Ausrüstung oder anderweitig mit den verschiedenen Reaktoreinheiten verknüpften Prozesssteuerelementen geändert werden. Beispielsweise öffnet zum Ausführen einer Füllphase für Reaktor_01 (wobei die Reaktoreinheit befüllt wird) eine Füllsteuerroutine ein oder mehrere Ventile, mit den Eingangsventilsystemen 101, 102 und 103 verknüpfte Prozesssteuerelemente sind, für eine bestimmte Menge von Zeit, beispielsweise bis der Füllstandsmesser 105 ermittelt, dass der Behälter 100 voll ist. Diese gleiche Steuerroutine kann aber zum Ausführen einer Füllphase für Reaktor_02 verwendet werden, indem lediglich die Bezeichnung der Eingangsventil(e) zu denen mit den Ventilsystemen 201, 202 und 203 statt mit den Ventilsystemen 101, 102 und 103 geändert wird und die Bezeichnung des Füllstandsmessers zum Füllstandsmesser 205 statt dem Füllstandsmesser 105 geändert wird.
  • Um das Erstellen und Ändern einer Prozesskonfiguration einfacher und zeitsparender zu gestalten, umfasst ein Modulsteuerverfahren, das entwickelt wurde, eine an einem der Arbeitsplätze 14 von 1 gespeicherte Konfigurationsanwendung 50, die eine Menge von Modulklassenobjekten 52 (das heißt Modulklassen) zur Verwendung beim Konfigurieren der Prozesssteueranlage 10 umfasst. Ein Beispiel für dieses Verfahren ist im US-Patent Nr. 7,043,311 mit dem Titel „Module Class Objects in a Process Plant Configuration System“ beschrieben, dessen Offenbarung hierdurch ausdrücklich durch Verweis hier eingeschlossen ist. Insbesondere beschreibt das US-Patent Nr. 7,043,311 , dass die Modulklassenobjekte beim Konfigurieren einer Anlage mit zahlreichen Mengen von replikater Ausrüstung verwendet werden. Allgemein kann ein unterschiedliches Modulklassenobjekt 52 für jeden unterschiedlichen Typ von physischer Einheit oder Ausrüstung, der in der Prozessanlage 10 repliziert oder verwendet wird, für jeden Typ von Steueraktivität, der in der Prozessanlage 10 repliziert oder verwendet wird, für jeden unterschiedlichen Typ von Anzeigeanwendung, der in der Prozessanlage 10 repliziert oder verwendet wird, usw. erstellt werden. Nach dem Erstellen können die Modulklassenobjekte 52 zum Konfigurieren von Prozesssteuerelementen der Prozessanlage 10 verwendet werden, die Modulklassenobjekten entsprechen.
  • Die Modulklassenobjekte 52 (hier als Modulklassenobjekte oder Modulklassen bezeichnet), die im Wesentlichen allgemeine Versionen von Prozessentitäten sind und nicht mit einer bestimmten Prozessentität verbunden sind, können damit verknüpfte Objekte oder Instanzen 53, 54, 55 und 56 (hier als Modulobjekte, Modulblöcke oder Modulinstanzen bezeichnet) auf untergeordneter Ebene aufweisen. Jede Modulinstanz wird aus einer Modulklasse erstellt und basiert auf dieser und erbt die gleiche Struktur und die gleichen Merkmale wie die Modulklasse, aus der sie erstellt wurde. Jedes Modulobjekt kann mit einer bestimmten Entität in der Prozessanlage 10 verbunden sein. Somit kann eine einzelne Modulklasse 52 zum Darstellen eines bestimmten Typs von Reaktoreinheit erstellt werden (ungeachtet dessen, wie viele dieser Reaktoreinheit in der Anlage 10 vorhanden sind), während eine verschiedene Modulinstanz 53 für jede der verschiedenen Reaktoreinheiten dieses Typs, die tatsächlich in der Anlage 10 vorhanden sind, vorhanden sein kann oder erzeugt werden kann.
  • In bestehenden Ausführungen wie beispielsweise im US-Patent Nr. 7,043,311 beschrieben sind die von einer Modulklasse erstellten Modulobjekte mit der Modulklasse verknüpft und gehören zu dieser. Somit spiegeln sich Änderungen an der Modulklasse automatisch in jeder der mit dieser Modulklasse verknüpften Modulinstanzen wider oder werden zu dieser propagiert. Daher kann, wenn eine Zahl von Modulinstanzen von einer bestimmten Modulklasse erstellt wurden, mit jeder der mit verschiedenen Prozessentitäten verbundenen Modulinstanzen jede der verschiedenen Modulinstanzen einfach durch Ändern der entsprechenden Modulklasse und automatisches Propagieren der Änderungen bis zu den verknüpften Modulinstanzen hinunter geändert werden.
  • Im Wesentlichen stellt jede Modulklasse ein Konfigurationsbehälter umfassend eine allgemeine Definition einer Prozessentität in der Form aller verschiedenen Steuer- und/oder Anzeigeanwendungen oder -routinen dar, die auf diese von den Steuergeräten 12 zu verwendende Entität zum Steuern dieser Entität oder durch die Arbeitsplätze 14 zum Ausführen von Anzeigeaktivitäten in Bezug auf diese Entität anwendbar sind. Die Modulklasse kann eine Prozessentität beliebiger Art wie eine Einheit, ein Ausrüstungsteil, eine Steuerentität, eine Anzeigeanwendung usw. darstellen. Während der Konfiguration der Prozessanlage 10 kann die Modulklasse zum Erstellen von Konfigurationsinstanzen der Prozessentität für eine beliebige Zahl von verschiedenen Prozessentitäten, die der vom Modulklassenobjekt gelieferten Definition entsprechen, wobei jede Konfigurationsinstanz (das vom Modulklassenobjekt erstellte Modulobjekt) mit einer verschiedenen aktuellen Prozessentität verknüpft oder verbunden ist. Diese verschiedenen Modulinstanzen umfassen unter anderem Steuerroutinen und/oder mit bestimmten Prozessentitäten wie in der Prozessanlage 10 angeordnet verbundene Steuerroutinen und/oder Anzeigeroutinen, wobei diese Steuerroutinen in den Steuergeräten 12 von 1 heruntergeladen und verwendet werden können, um aktuelle Steueraktivitäten an den Prozessentitäten auszuführen, und wobei die Anzeigeroutinen auf Arbeitsplätze 14 heruntergeladen werden können, um aktuelle Anzeigeaktivitäten in Bezug auf die Entitäten während des Betriebs der Prozessanlage 10 auszuführen.
  • Wie hier beschrieben können verschiedene Typen von Modulklassenobjekten Prozessentitäten von verschiedenen Umfängen widerspiegeln und daher zum Betreiben an oder in Bezug zu Prozessentitäten von verschiedenem Umfang ausgebildete Steuer- und/oder Anzeigeroutinen umfassen. Je größer der Umfang der Prozessentität, etwa einer Einheit, ist, desto mehr Steuer- und/oder Anzeigeroutinen sind typischerweise mit der Modulklasse verknüpft und desto einfacher ist das Konfigurieren von Abschnitten der Anlage mit diesen Modulklassen. Je größer aber der Umfang der mit einer Modulklasse verknüpften Prozessentität ist, desto weniger wahrscheinlich ist es, dass der Prozess replikate Ausrüstung in diesem Umfang umfasst, und desto weniger wahrscheinlicher ist es somit, dass die Modulklasse in einem großen Umfang nützlich ist. Je kleiner hingegen der Umfang der mit einer Modulklasse verknüpften Prozessentität ist, desto wahrscheinlicher ist es, dass die Modulklasse an verschiedenen Orten der Anlage verwendet werden kann, und eine umso kleinere Menge der Konfiguration wird durchgeführt, wenn diese Modulklasse in einer bestimmten Instanz verwendet wird.
  • 2 zeigt eine Ausführungsform eines ersten Konfigurationsbildschirms, der zum Ändern einer ersten Version einer Modulklasse verwendet werden kann. Der Konfigurationsbildschirm kann Teil einer Konfigurationsanwendung sein, etwa eine an einem der Arbeitsplätze 14 von 1 ausgeführte Konfigurationsanwendung 50. Beispielsweise ist wie durch 2 dargestellt der Konfigurationsbildschirm 250 Teil einer Steuerstudio-Konfigurationsanwendung. Allgemeine Details der Steuerstudio-Konfigurationsanwendung sind im US-Patent Nr. 7,043,311 beschrieben.
  • Der Konfigurationsbildschirm 250 von 2 zeigt die Konfiguration einer bestimmten Feldgerät-Modulklasse, beispielsweise einer 2-Stellungsventil-Modulklasse 256 wie im 2-Stellungsventil-Fenster 252 dargestellt. Insbesondere zeigt der Konfigurationsbildschirm 250 eine grafische Darstellung der 2-Stellungsventil-Modulklasse 256. Die 2-Stellungs-Modulklasse 256 umfasst einen Steuerteil umfassend die DC1-Gerätesteuerung 258. Die DC1-Steuerung 258 kann Logik, Routinen oder Funktionen zum Steuern einer in der Prozessanlage 10 in Betrieb befindlichen physischen 2-Stellungsventil-Vorrichtung umfassen. Logik, Routinen oder Funktionen der 2-Stellungsventil-Modulklasse 256 kann in einer Reihe von verschiedenen Computersprachen wie beispielsweise C, C++, Java oder einer beliebigen anderen Computersprache zum Implementieren von Treibern, BIOS-Software oder anderer Software zum Steuern der mit der 2-Stellungsventil-Modelklasse 256 verknüpften 2-Stellungsventil-Vorrichtung implementiert sein. In einigen Ausführungsformen können Logik, Routinen oder Funktionen auf einer Vorrichtung zum Steuern des 2-Stellungsventils, etwa einem beliebigen der Steuergeräte 12 oder 12a von 1, ausgeführt werden.
  • Eine Modulklasse kann einen oder mehrere Ausgaben 260 aufweisen, wobei durch eine Instanz der Modulklasse berechnete oder in dieser gespeicherte Informationen von der Instanz zur Verwendung beim Konfigurieren oder anderweitigen Steuern der Prozessanlage 10 ermittelt und/oder ausgegeben werden können. In der Ausführungsform von 3 umfasst beispielsweise die DC1-Gerätesteuerung 258 der 2-Stellungsventil-Modulklasse 256 eine Ventilstellungsausgabe 262, die eine Ausgabenummer oder einen anderen Wert umfassen kann, der die aktuelle oder gewünschte Öffnen/Schließen-Stellung des Ventils im Betrieb angibt.
  • Informationen für die 2-Stellungsventil-hlodulklasse 256 werden im Steuerkonfigurationsfenster 254 angezeigt. Beispielsweise enthält das Steuerkonfigurationsfenster 254 Informationen für die 2-Stellungsventil-Modulklasse 256 umfassend Eingabefelder zum Definieren eines Titels, einer Beschreibung und eines Prozesstyps für die 2-Stellungsventil-Modulklasse 256. Der Titel der Klasse kann beispielsweise in einer vorhergehenden Konfigurationssitzung mit „2-Stellungsventil“ bezeichnet worden sein. Zusätzlich ermöglicht das Steuerkonfigurationsfenster 254 das Spezifizieren einer Ausführungslaufzeit, wobei bei der vorliegenden beispielhaften Ausführungsform Instanzen der 2-Stellungsventil-Modulklasse 256 zum Ausführen alle 2 Sekunden eingestellt sind.
  • Das Steuerkonfigurationsfenster 254 enthält ebenfalls Bibliotheksinformationen, die einen Übersichtsplan von 2-Stellungsventil-Modulinstanzen, dargestellt mit ihren jeweiligen Modulklassen, umfassen. Beispielsweise sind in der vorliegenden Ausführungsform 25 2-Stellungsventil-Modulinstanzen 256a mit der 2-Stellungsventil-Modelklasse 256 verknüpft und basieren auf dieser. Die 25 2-Stellungsventil-Modulinstanzen 256a sind im Computerspeicher ausgeführte Live-Instanzen, die von der entsprechenden 2-Stellungsventil-Modulklasse 256 instanziiert werden und somit auf dieser basieren. Der Übersichtsplan des Steuerkonfigurationsfensters 254 zeigt ebenfalls die 2-Stellungsventil-IL-Modulklasse 257, die eine abgeleitete Klasse der 2-Stellungsventil-Modulklasse 256 ist. Beispielsweise kann die 2-Stellungsventil-IL-Modulklasse 257 der abgeleiteten Klasse zusätzliche Eigenschaften oder Funktionen im Vergleich zu ihrer übergeordneten 2-Stellungsventil-Modulklasse 256 aufweisen. Wie in der vorliegenden Ausführungsform von 2 dargestellt sind 25 2-Stellungsventil-IL-Modulinstanzen 257a ebenfalls mit der abgeleiteten 2-Stellungsventil-IL-Modulklasse 257 verknüpft. Dementsprechend bildet das Konfigurationsfenster 254 die 2-Stellungsventil-Modulklasse 256 mit 25 Instanzen ab, die eine abgeleitete Klasse (das 2-Stellungsventil-IL) mit weiteren 25 Instanzen aufweist, wobei sich die 2-Stellungsventil-Modulklasse 256 und die 2-Stellungsventil-IL-Modulklasse 257 in der gleichen Familie befinden.
  • In der Ausführungsform von 2 umfasst jede der Modulklassen 256, 256a, 257 und 257a aktuell nur eine einzelne oder erste Version, obgleich zusätzliche weitere Versionen erzeugt werden können wie nachfolgend beschrieben.
  • 3 zeigt eine Ausführungsform des Konfigurationsbildschirms von 2 zum Darstellen einer zweiten neuen Version der 2-Stellungsventil-Modulklasse 256 von 2. Wie in verschiedenen Ausführungsformen hier offenbart können ein oder mehrere Prozessoren, wie die an einem der Arbeitsplätze 14 von 1 ausgeführte Konfigurationsanwendung 50, zum Erzeugen einer zweiten Version einer Modulklasse auf der Basis einer Änderung an einer ersten Version der Modulklasse ausgebildet sein. In der Ausführungsform von 3 wird eine zweite Version der 2-Stellungsventil-Modulklasse 256 von 2 auf der Basis einer Änderung an der ursprünglichen oder ersten Version der 2-Stellungsventil-Modulklasse 256 erzeugt. Beispielsweise umfasst das Steuerkonfigurationsfenster 254 eine zweite Version der 2-Stellungsventil-Modulklasse 256 von 2. Die zweite Version ist ebenfalls im Übersichtsplan enthalten und wird als neue 2-Stellungsventil-Modulklasse 356 dargestellt.
  • Die zweite Version der 2-Stellungsventil-Modulklasse 356 kann einem geänderten Prozesssteuerelement der Prozessanlage umfassend beispielsweise eine Hardwareänderung entsprechen, wobei ein Prozesssteuerelement durch ein anderes Prozesssteuerelement ersetzt wird. In einer Ausführungsform kann beispielsweise ein Ingenieur die Modulklasse der ersten Version (beispielsweise die 2-Stellungsventil-Modulklasse 256) mit einer neuen Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 356) aktualisieren, damit diese der geänderten Hardware entspricht. Der Ingenieur kann anschließend den Rollout der aktualisierten 2-Stellungsventil-Modulklasse 356 auf eine neue Hardware (beispielsweise ein Ventil) durchführen wie hier beschrieben, was ein Testen des neuen Ventils umfassen kann. Wenn der Ingenieur mit den Änderungen zufrieden ist, kann der Ingenieur angeben, dass die restlichen ähnlichen Ventile die 2-Stellungsventil-Modulklasse 356 der aktualisierten Modulklasse erhalten sollen.
  • In einigen Ausführungsformen kann die Änderung an der ersten Version der Modulklasse beispielsweise das Hinzufügen von einem oder mehreren Eingaben (beispielsweise Rückmeldungseingaben) zur ersten Version Modulklasse umfassen, wobei auf die eine oder mehreren Eingaben beispielsweise durch eine an einem der Arbeitsplätze 14 von 1 ausgeführte Konfigurationsanwendung 50 zugegriffen werden kann, um wenigstens teilweise ein Steuern des upgegradeten Prozesssteuerelements zu ermöglichen. Beispielsweise zeigt der Konfigurationsbildschirm 250 von 3 das Hinzufügen von zwei Eingaben zur 2-Stellungsventil-Modulklasse 256 zum Erzeugen der neuen 2-Stellungsventil-Modulklasse 356. Mit dem Konfigurationsbildschirm 250 können ein oder mehrere Eingaben 350 über das 2-Stellungsventil-Fenster 252 hinzugefügt werden. Insbesondere wird in der Ausführungsform von 3 die 2-Stellungsventil-Modulklasse 256 so geändert, dass eine Rückmeldeeingabe zur offenen Stellung 352 und eine Rückmeldeeingabe zur geschlossenen Stellung 354 zum Erzeugen der 2-Stellungsventil-Modulklasse 356 zugeführt wird.
  • In einigen Ausführungsformen kann ebenfalls die Logik oder Funktionalität der DC1-Gerätesteuerung 258 geändert werden, um Eingabewerte der neu hinzugefügten Rückmeldeeingabe zur offenen Stellung 352 und Rückmeldeeingabe zur geschlossenen Stellung 354 zu verwenden. Beispielsweise werden wenigstens in einer Ausführungsform die Rückmeldeeingabe zur offenen Stellung 352 und die Rückmeldeeingabe zur geschlossenen Stellung 354 der Logik oder den Funktionen der DC1-Gerätesteuerung 258 während des Betriebs eines eine Instanz auf der Basis der 2-Stellungsventil-Modulklasse 356 ausführenden 2-Stellungsventils zugeführt, wobei die Eingaben 352 und 354 zum Verfeinern oder Ausführen einer genaueren Steuerung des Ventilstellungs-Ausgabewert 262 verwendet werden, um den Betrieb der in der Prozessanlage 10 in Betrieb befindlichen physischen 2-Stellungsventil-Vorrichtung zu verbessern oder optimieren.
  • 4 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen von Prozesssteuerelementen zum Verknüpfen mit neuen Modulinstanzen der zweiten Version der 2-Stellungsventil-Modulklasse 356 von 3. In der Ausführungsform von 4 umfasst die Auswahl der Prozesssteuerelemente die ausgewählten Prozesssteuerelemente zum Enthalten in einer upgegradeten Prozesssteuerelement-Menge. Wie in 4 dargestellt können die ausgewählten Prozesselemente zum Enthalten in der upgegradeten Prozesssteuerelement-Menge über eine Grafikschnittstelle empfangen werden, wobei ein Bediener, etwa ein Ingenieur, auswählen kann, welche Prozesssteuerelemente in der upgegradeten Prozesssteuerelement-Menge zum Zwecke des Upgrades dieser Prozesssteuerelemente mit neuen Instanzen auf der Basis der 2-Stellungsventil-Modulklasse der zweiten Version 356 enthalten sein sollen.
  • Beispielsweise wird wie in 4 dargestellt dem Bediener ein Einstelldialogfeld für upgegradete Prozesssteuerelement-Mengen 402 zum Empfangen der Auswahlen zum Enthalten in der Prozesssteuerelement-Menge angezeigt. In der Ausführungsform von 4 sind die upzugradenden Prozesssteuerelemente in einer upgegradeten Prozesssteuerelement-Menge enthalten, die jedes mit einer neuen Modulinstanz der zweiten Version der Modulklasse zu verknüpfende Prozesssteuerelement definiert (beispielsweise 2-Stellungsventil-Modulklasse 356).
  • In einigen Ausführungsformen können die Auswahlen einen bestimmten Bereich der Prozessanlage 10 betreffen. Beispielsweise betrifft in 4 die Auswahl den „Rohstoffbereich“ der Prozessanlage 10. Der Bediener kann verschiedene aktuell im Rohstoffbereich ausgeführte 2-Stellungsventil-Instanzen auswählen, umfassend die in der Rohstoffeinheit 1 (beispielsweise den 2-Stellungsventil-Vorrichtungen mit den Bezeichnungen „XV-101“ und „XV-102“ entsprechende Modellinstanzen), in der Rohstoffeinheit 2 (beispielsweise den 2-Stellungsventil-Vorrichtungen mit den Bezeichnungen „XV-201“ und „XV-202“ entsprechende Modellinstanzen) und in der Rohstoffeinheit 3 (beispielsweise den 2-Stellungsventil-Vorrichtungen mit den Bezeichnungen „XV-301“ und „XV-302“ entsprechende Modellinstanzen) laufenden Instanzen. In der aktuellen Ausführungsform können die Bereiche Rohstoffeinheit 1, Rohstoffeinheit 2 und Rohstoffeinheit 3 verschiedene Unterbereiche oder logische Bereiche der Anlagen darstellen, so dass die Unterbereiche oder logischen Bereiche Rohstoffeinheit 1-3 eine Hierarchie in Bezug auf den größeren Rohstoffbereich bilden, wobei sich die Rohstoffeinheiten 1-3 im Rohstoffbereich befinden und sich die spezifischen Instanzen (beispielsweise den 2-Stellungsventilen XV-101, XV-102, XV-201 usw. entsprechend) in den Unterbereichen oder logischen Bereichen Rohstoffeinheit 1-3 befinden. Somit kann in einigen Ausführungsformen die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einem physischen Bereich der Prozessanlage verknüpften Prozesssteuerelementen umfassen.
  • In 4 sind alle mit jedem der Unterbereiche oder logischen Bereiche Rohstoffeinheit 1-3 verknüpften 2-Stellungsventil-Instanzen ausgewählt dargestellt und somit ist in der vorliegenden Ausführungsform jede der 2-Stellungsventil-Instanzen zum Verknüpfen mit neuen Modulinstanzen der 2-Stellungsventil-Modellklasse der zweiten Version 356 ausgewählt. Somit kann in einigen Ausführungsformen die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einer bestimmten Hierarchie der Prozessanlage verknüpften Prozesssteuerelementen umfassen.
  • In verschiedenen Ausführungsformen können die neuen Modulinstanzen der in der Prozesssteuerelement-Menge enthaltenen ausgewählten Prozesssteuerelemente instanziiert werden, wenn die Rollout-Anweisung ausgeführt wird. Die upgegradete Prozesssteuerelement-Menge kann beispielsweise eine Untermenge aller Prozesssteuerelemente der Prozessanlage sein, wobei einige, jedoch nicht alle, der Prozesssteuerelemente der Prozessanlage in der Prozesssteuerelement-Menge zur Änderung enthalten sind.
  • 5 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen von auf der Basis einer bestimmten abgeleiteten Klasse ausgewählten Prozesssteuerelementen. In der Ausführungsform von 5 sind die ausgewählten Prozesssteuerelemente mit neuen Instanzen auf der Basis der 2-Stellungsventil-Modulklasse der zweiten Version 356 zu verknüpfen. Wie für 5 dargestellt kann ein Bediener die 2-Stellungsventil-IL-Modulklasse 257 von einem Filterbildschirm 502 auswählen, die eine von der 2-Stellungsventil-Modulklasse 256 abgeleitete bestimmte abgeleitete Klasse ist. In einigen Ausführungsformen kann die Auswahl der Prozesssteuerelemente das Einschließen der Prozesssteuerelemente in einer Prozesssteuerelement-Menge bewirken wie für 4 beschrieben. In solch einer Ausführungsform würde die Prozesssteuerelement-Menge mit der entsprechenden abgeleiteten Modulklasse verknüpfte Prozesssteuerelemente umfassen, wobei eine Rollout-Anweisung ausgeführt werden würde, um diese Instanzen auf der Basis der 2-Stellungsventil-IL-Modulklasse 257, beispielsweise alle 25 Modulinstanzen 257a, zu aktualisieren.
  • 6 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen von neuen Modulinstanzen der 2-Stellungsventil-Modulklasse 356 im Rollout zu den Prozesssteuerelementen in der Prozessanlage 10. In der Ausführungsform von 6 erhalten die Prozesssteuerelemente, die über den Rollout aktualisiert werden, die neue Funktionalität umfassend von der 2-Stellungsventil-Modulklasse 356 erhaltene neue verbesserte oder optimierte Merkmale wie hier beschrieben. Somit kann nach dem Ausführen des Rollouts die 2-Stellungsventil-Modulklasse 356 mit einer oder mehreren an der 2-Stellungsventil-Modulklasse 356 instanziierten und basierten neuen Modulinstanzen verknüpft werden. Jede der neuen Modulinstanzen kann jeweils mit einem Prozesssteuerelement der Prozessanlage, etwa einem Feldgerät, oder einem Teil eines Feldgeräts, umfassend beispielsweise ein Ventil oder insbesondere in der vorliegenden Ausführungsform eine 2-Stellungsventil-Vorrichtung, verknüpft werden.
  • Die Vorteile der Verwendung der Rollout-Funktion wie hier beschrieben schließen ein, dass eine Änderung an einer Modulklasse, etwa der 2-Stellungsventil-Modulklasse 256, nicht automatisch auf die entsprechenden Instanzen propagiert wird. Stattdessen kann ein Steuerungsingenieur eine Modulklasse, etwa die 2-Stellungsventil-Modulklasse 256, zum Erzeugen einer neuen 2-Stellungsventil-Modulklasse 356 ändern. Wichtig ist, dass nur wenn eine Menge von Ventilen bereit für die Aktualisierung ist, wie beispielsweise vom Ingenieur oder von einem anderen Prozess, etwa einem automatisierten Prozess, spezifiziert ein Rollout ausgeführt werden kann, um diese zur Aktualisierung bezeichneten Ventile zu ändern. Dies ermöglicht ein Upgrade der Prozessanlage 10 in Phasen, was einen wirtschaftlicheren und weniger Ressourcen erfordernden Ansatz zum Konfigurieren, Verwalten und/oder Steuern des Betriebs der Prozessanlage 10 bereitstellen kann. Dies ermöglicht dem Ingenieur ebenfalls das wiederholte Testen der Modulklasse und betreffenden Instanzen, ohne dass zu befürchten ist, dass nicht bezeichnete Instanzen betroffen sind oder unabsichtlich aktualisiert werden.
  • Das Steuerkonfigurationsfenster 254 von 6 zeigt neue Modulinstanzen auf der Basis der neuen 2-Stellungsventil-Modulklasse 356, die als ein Ergebnis des Ausführens des Rollouts erzeugt wurden. Insbesondere weist die 2-Stellungsventil-Modulklasse 356 drei neue Modulinstanzen 356a auf der Basis der 2-Stellungsventil-Modulklasse 356 auf. Die drei neuen Modulinstanzen 356a können drei in der Prozessanlage in Betrieb befindlichen Geräteventilen entsprechen, welche die durch die neue 2-Stellungsventil-Modulklasse 356 definierte verbesserte Funktionalität erhalten. Zusätzlich ist ebenfalls eine abgeleitete Modulklasse (das heißt die 2-Stellungsventil-IL-Modulklasse 357) dargestellt, wobei die 2-Stellungsventil-IL-Modulklasse 357 eine von der 2-Stellungsventil-Modulklasse 356 abgeleitete Modulklasse ist, und die zusätzliche Funktionen oder Informationen zu den Ventilen umfassen kann, welche die Modulinstanzen, beispielsweise die 2 Modulinstanzen 357a, auf der Basis der 2-Stellungsventil-IL-Modulklasse 357 ausführen. Die zusätzlichen Funktionen oder Informationen können beispielsweise die Position des Ventils in der Prozessanlage, das Datum, an dem das Ventil in der Prozessanlage in Betrieb genommen wurde, oder andere Informationen oder Funktionen in Bezug auf das Ventil umfassen. Somit weist wie in der Ausführungsform von 6 dargestellt nach dem Ausführen des Rollouts die Prozessanlage wenigstens zwei Versionen von Modulklassen (beispielsweise die 2-Stellungsventil-Modulklasse 256 und die 2-Stellungsventil-Modulklasse 356) und entsprechende in der Prozessanlage 10 laufende Instanzen zum Zwecke der Konfiguration und Steuerung der Prozessanlage 10 wie hier beschrieben auf.
  • In verschiedenen Ausführungsformen kann ein Rollout von neuen Modulinstanzen, etwa der Modulinstanzen 356a und 357a, über eine von einem oder mehreren Prozessoren der Prozessanlage umfassend beispielsweise die auf einem oder mehreren Prozessoren von Arbeitsplätzen 14 von 1 ausgeführte Konfigurationsanwendung 50 ausgeführte Rollout-Anweisung ausgeführt werden. Die Rollout-Anweisung kann eine Routine zum Aktualisieren von einem oder mehreren Prozesssteuerelementen umfassen, wobei die upgegradeten Prozesssteuerelements jeweils mit einer neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse, etwa der 2-Stellungsventil-Modulklasse 356 oder der 2-Stellungsventil-IL-Modulklasse 357, verknüpft werden.
  • Die Rollout-Anweisung kann ebenfalls so ausgeführt werden, dass sie beispielsweise ein oder mehrere nicht upgegradete Prozesssteuerelemente ignoriert oder übergeht, wobei die nicht upgegradeten Prozesssteuerelements jeweils mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse, etwa der 2-Stellungsventil-Modulklasse 256 oder der 2-Stellungsventil-IL-Modulklasse 257, verknüpft bleiben.
  • In einer Ausführungsform kann ein Ingenieur die 2-Stellungsventil-Modulklasse 256 so ändern, dass sie die Aktualisierungen wie hier beschrieben für die 2-Stellungsventil-Modulklasse 356 umfasst, und anschließend die Aktualisierungen mit der Konfigurationsanwendung 50 speichern. Der Ingenieur kann anschließend das System anweisen, wie der Rollout der Aktualisierungen erfolgen soll. Beispielsweise kann die Rollout-Anweisung über eine selektive Upgrade-Routine ausgeführt werden, wobei die selektive Upgrade-Routine die upgegradeten Prozesssteuerelemente mit den neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse verknüpft. Die Routine kann vom Konfigurationsbildschirm 250, beispielsweise von der Rollout-Änderungsauswahl 600, ausgewählt werden, was die Konfigurationsanwendung 50 zum Ausführen der Rollout-Anweisung zum Aktualisieren der identifizierten upgegradeten Prozesssteuerelemente veranlasst.
  • In einigen Ausführungsformen kann die selektive Upgrade-Routine einfach zum Ignorieren oder Übergehen der nicht upgegradeten Prozesssteuerelemente ausgeführt werden, so dass die nicht upgegradeten Prozesssteuerelemente nicht mit einer zweiten neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse, etwa der 2-Stellungsventil-Modulklasse 356 oder der 2-Stellungsventil-IL-Modulklasse 357, verknüpft werden.
  • In einigen Ausführungsformen kann die Rollout-Anweisung sofort nach der Auswahl ausgeführt werden. In einigen Ausführungsformen kann die Rollout-Anweisung zu einem geplanten Zeitpunkt ausgeführt werden. Beispielsweise kann ein Ingenieur folgende Rollouts an einer Menge von Ventilen zu einem ersten Zeitpunkt und an anderen Untermengen von Ventilen zu anderen Zeitpunkten (beispielsweise durch opportunistische Rollouts von Modulklassenänderungen) planen. Andere Anwendungsfälle können das Planen von Rollouts als Rollouts in Phasen auf der Basis der Ausbildung und/oder Verfügbarkeit von Bedienern, etwa auf der Basis von Bedienerwechseln oder Arbeitsschichten, ausführen.
  • In einigen Ausführungsformen kann, sobald die Rollout-Anweisung ausgeführt wurde, jede der upgegradeten Prozesssteuerelemente und der nicht upgegradeten Prozesssteuerelemente auf die Steuergeräte 12 oder 12a heruntergeladen und zusammen zum Steuern wenigstens eines Teils der Prozessanlage verwendet werden. In solchen Ausführungsformen würde die Prozessanlage durch verschiedene Versionen, beispielsweise die erste Version und die zweite Version, der gleichen Modulklasse (beispielsweise die 2-Stellungsventil-Modulklasse 256 und die 2-Stellungsventil-Modulklasse 356), einschließlich zum gleichen Zeitpunkt, gesteuert werden.
  • In weiteren Ausführungsformen kann ein Modulkonfigurationseintrag zum Verfolgen beispielsweise der Modulinstanzen, etwa der Modulinstanzen 256a, 257a, 356a und/oder 357a, die momentan in der Prozessanlage laufen, über die Konfigurationsanwendung 50 ausgebildet sein. In einigen Ausführungsformen kann der Modulkonfigurationseintrag eine Version der Modulklasse für jede der Modulinstanzen angeben. Der Modulkonfigurationseintrag kann ebenfalls angeben, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist. Beispielsweise wird aus Systemsicht in einigen Ausführungsformen, wenn ein Ingenieur Aktualisierungen an einer Modulklasse speichert, der Rollout der aktualisierten Modulklasse zu einem manuellen Schritt statt einem automatischen Schritt. In solch einer Ausführungsform ist die Modulklasse für einen Rollout als in einer phasenweisen Rollout-Stufe befindlich gekennzeichnet und weist zwei Live-Versionen der gleichen Modulklasse auf, beispielsweise eine Version von Modulinstanzen auf der Basis der vorhergehenden 2-Stellungsventil-Modulklasse 256 und eine Version der Modulinstanzen auf der Basis der neuen 2-Stellungsventil-Modulklasse 356.
  • 7 zeigt eine Ausführungsform des Konfigurationsbildschirms von 3 zum Darstellen einer zusätzlichen Rollout-Anweisung, die eine Konfigurationsänderung auf eine neue Modulinstanz auf der Basis der zweiten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 256) und auf eine vorhergehende Modulinstanz auf der Basis der ersten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 356) anwendet. Beispielsweise kann die Ausführungsform von 7 zum Durchführen einer Schnelllösung über mehrere Versionen einer Modulklasse hinweg (beispielsweise über beide Versionen der 2-Stellungsventil-Modulklasse hinweg) verwendet werden, wobei jede Version der Modulklasse die die Schnelllösung ausführende Konfigurationsänderung erhält.
  • Insbesondere kann in verschiedenen Ausführungsformen eine zusätzliche Rollout-Anweisung von einem oder mehreren Prozessoren, etwa einem oder mehreren der Prozessoren der Arbeitsplätze 14 von 1, ausgeführt werden. Die zusätzliche Rollout-Anweisung kann eine Konfigurationsänderung auf jede der neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse (beispielsweise Modulinstanzen 356a und/oder 357a) und ebenfalls die vorhergehenden Modulinstanzen auf der Basis der ersten Version der Modulklasse (beispielsweise Modulinstanzen 256a und/oder 257a) anwenden. Die Konfigurationsänderung kann eine zusätzliche Änderung umfassen, die auf die zweite Version einer Modulklasse (beispielsweise die 2-Stellungsventil-Modulklasse 356) und die erste Version der Modulklasse (beispielsweise die 2-Stellungsventil-Modulklasse 256) angewendet wird, um beispielsweise einen Patch oder eine Schnelllösung auf die Modulklasse insgesamt anzuwenden. Beispielsweise kann in einer Ausführungsform die Lösung auf die laufenden Instanzen angewendet werden. In anderen Ausführungsformen können die Modulklassen aktualisiert und neue Instanzen instanziiert werden, die den Platz der bestehenden Modulinstanzen, beispielsweise der Modulinstanzen 356a und/oder 357a und/oder der Modulinstanzen 256a und/oder 257a einnehmen.
  • In der Ausführungsform von 7 umfasst die zusätzliche Änderung das Hinzufügen einer Berechnungsfunktion 700 zur zweiten Version einer Modulklasse (2-Stellungsventil-Modulklasse 356) und ersten Version der Modulklasse (2-Stellungsventil-Modulklasse 256) zum Verbessern der Modulklasse und ihrer entsprechenden Instanzen und somit Ventile über beide Versionen hinweg.
  • 8 zeigt eine Ausführungsform des Konfigurationsbildschirms von 7 zum Darstellen eines Rollout-Bestätigungsbildschirms 800 zum Ausführen der zusätzlichen Rollout-Anweisung. Beispielsweise kann der Rollout-Bestätigungsbildschirm 800 gestartet werden, nachdem ein Ingenieur die Rollout-Änderungsauswahl 600 wählt, wobei der Rollout-Bestätigungsbildschirm 800 überprüft, ob der Ingenieur einen Rollout der Schnelllösungsänderungen an den Modulinstanzen wie für 7 beschrieben durchführen will.
  • 9 zeigt eine Ausführungsform des Konfigurationsbildschirms zum Darstellen von mit einem bestimmten Typ von Prozesssteuerelement der Prozessanlage 10 verknüpften Modulinstanzen. In der Ausführungsform von 9 ist der bestimmte Typ von Prozesssteuerelement das Feldgerät XC-224, das ein Ventiltyp ist. 9 zeigt den Zustand eines phasenweisen Rollouts aus dem Blickwinkel des Geräts XC-224. Der phasenweise Rollout ist in der Anzeigeansicht für das Gerät XC-224 unten rechts und in der Fensterüberschrift 972 des Fensters für das Gerät XC-224 952 angezeigt.
  • Das Gerät XC-224 ist im Steuerkonfigurationsfenster 954 identifiziert. Das Gerät XC-224 ist ebenfalls hierarchisch im Steuerexplorerfenster 953 identifiziert. Insbesondere ordnet das Steuerexplorerfenster 953 verschiedene Prozesssteuerelemente, darunter das Gerät XC-224, in einer hierarchischen Weise entsprechend der physischen Anordnung oder dem physischen Bereich eines Prozesssteuerelements in der Prozessanlage an. Beispielsweise ist, wie vom Steuerexplorerfenster 953 dargestellt, das Gerät XC-224 am unteren Turm eines Rohstoff-Heizelements angeordnet, wobei das Rohstoff-Heizelement an einem Ort, in einem Bereich oder in einem logischen Bereich Rohstoffeinheit 1 angeordnet ist oder einen Teil von diesem bildet, und die Rohstoffeinheit 1 ist ferner ein Teil eines größeren Rohstoffbereichs an einem Standort namens Kronos in der Prozessanlage 10.
  • Das Konfigurationsfenster 954 zeigt Steuerinformationen und -optionen für das Gerät XC-224 an, unter anderem Optionen zum Ändern von Titel, Beschreibung, Prozesstyp, Steuergerätzuweisung und Betriebszeit des Geräts XC-224.
  • Das Konfigurationsfenster 954 zeigt ebenfalls die auf der Basis der entsprechenden XC-224-Modulklasse instanziierten Modulinstanzen an. In der Ausführungsform von 9 sind zwei Versionen der XC-224-Modulklasse vorhanden (Modulklassen 956 und 957), die den zwei Versionen der 2-Stellungsventil-Modulklasse (das heißt der 2-Stellungsventil-Modulklasse 256 und der 2-Stellungsventil-Modulklasse 356) wie hier beschrieben ähneln. Dementsprechend gilt die Offenbarung für die 2-Stellungsventil-Modulklasse ebenfalls für die XC-224-Modulklasse. Beispielsweise entspricht der Konfigurationsbildschirm 950 dem Konfigurationsbildschirm 250 wie hier beschrieben, wobei sich der Konfigurationsbildschirm 950 spezifisch auf die XC-224-Modulklasse bezieht. Als ein weiteres Beispiel, wie durch das Fenster für das Gerät XC-224 952 dargestellt, umfasst die XC-224-Modulklasse eine DC1-Gerätesteuerung 958, die der DC1-Gerätesteuerung 258 der 2-Stellungsventil-Modulklasse 256 und der 2-Stellungsventil-Modulklasse 356 wie hier beschrieben entspricht. Ferner umfasst die XC-224-Modulklasse eine Ventilstellungsausgabe 962, die der Ventilstellungsausgabe 262 der 2-Stellungsventil-Modulklasse 256 und der 2-Stellungsventil-Modulklasse 356 wie hier beschrieben entspricht. Ähnlich umfasst die XCC-224-Modulklasse eine Berechnungsfunktion 959 entsprechend der Berechnungsfunktion 700 für die 2-Stellungsventil-Modulklasse 356 wie hier beschrieben.
  • Die XC-224-Modulklasse 956 stellt eine frühere, erste Version der XC-224-Modulklasse dar. Die XC-224-Modulklasse 956 ist mit einer oder mehreren Modulinstanzen 956a entsprechend aktuell in der Prozessanlage laufenden XC-224-Geräten verknüpft. Ähnlich ist die XC-224-Modulklasse 957 eine geänderte, zweite Version der XC-224-Modulklasse. Die XC-224-Modulklasse 957 ist mit drei Modulinstanzen 957a verknüpft, die jeweils aktuell in der Prozessanlage 10 laufenden neu installierten XC-224-Geräten entsprechen können.
  • In einigen Ausführungsformen können die Konfigurationsanwendung 50 und/oder Steuergeräte 12 zum Verhindern eines zusätzlichen Aktualisierens einer Modulklasse, wenn der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist, ausgebildet sein. Beispielsweise kann der Konfigurationseintrag die durch die Fensterüberschrift 972 dargestellte Information umfassen, dass ein „Phasenweiser Rollout in Gang ist“ („Phased Rollout Is In Progress“), um anzuzeigen, dass ein Aktualisieren momentan nicht zulässig ist. In einigen Ausführungsformen kann die Option zum Verhindern des Aktualisierens einer Modulklasse eine wählbare Option sein wie beispielsweise in 9 dargestellt, wobei ein Ingenieur die wählbare Option 970 auswählen kann, um zu verhindern, dass Instanzen die Modulstruktur ändern. Dementsprechend kann die wählbare Option 970 zum Verhindern verwendet werden, dass Instanzen die Modulstruktur ändern, wenn sich eine Modulklasse inmitten eines phasenweisen Rollouts befindet, um den Zeitablauf von Änderungen an der Klasse zu steuern oder sie zu begrenzen.
  • 10 zeigt eine Ausführungsform eines Verfahrens 1000 für einen kontrollierten Rollout von Modulklassen zum Konfigurieren der Prozessanlage 10. Das Verfahren 1000 beginnt (1002) bei Block 1004, in dem ein oder mehrere Prozessoren (beispielsweise ein oder mehrere an einem oder mehreren der Arbeitsplätze 14 von 1 ausgeführte Prozessoren) eine zweite Version einer Modulklasse (beispielsweise die 2-Stellungsventil-Modulklasse 356) auf der Basis einer Änderung an einer ersten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 256) erzeugen. In einigen Ausführungsformen kann die Modulklasse eine abgeleitete Modulklasse wie hier beschrieben sein (beispielsweise 2-Stellungsventil-IL-Modulklasse 257 oder 2-Stellungsventil-IL-Modulklasse 357). Die Modulklasse kann mit einer oder mehreren Modulinstanzen verknüpft sein, wobei die Modulinstanzen jeweils mit einem Prozesssteuerelement der Prozessanlage, beispielsweise einem Feldgerät wie einem Ventil, verknüpft sein können wie hier beschrieben. Die zweite Version der Modulklasse kann einem geänderten Prozesssteuerelement der Prozessanlage umfassend beispielsweise eine Hardwareänderung entsprechen, wobei ein Prozesssteuerelement durch ein anderes Prozesssteuerelement ersetzt wird. In einigen Ausführungsformen kann die Änderung an der ersten Version der Modulklasse das Hinzufügen von einem oder mehreren Eingaben (beispielsweise Rückmeldungseingaben) zur Modulklasse umfassen, wobei auf die eine oder mehreren Eingaben zugegriffen werden kann, um wenigstens teilweise ein Steuern des upgegradeten Prozesssteuerelements zu ermöglichen.
  • Bei Block 1006 wird eine Rollout-Anweisung von einem oder mehreren Prozessoren zum Aktualisieren von einem oder mehreren upgegradeten Steuerelementen ausgeführt. Die Rollout-Anweisung bewirkt, dass jedes der upgegradeten Prozesssteuerelemente mit einer neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 356) verknüpft wird. Die Rollout-Anweisung kann ebenfalls zum Ignorieren, beispielsweise Übergehen, von einem oder mehreren nicht upgegradeten Prozesssteuerelements ausgeführt werden, wobei die nicht upgegradeten Prozesssteuerelemente jeweils mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 256) verknüpft bleiben.
  • In einigen Ausführungsformen kann die Rollout-Anweisung über eine selektive Upgrade-Routine ausgeführt werden, wobei die selektive Upgrade-Routine die upgegradeten Prozesssteuerelemente mit den neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse verknüpft. Die selektive Upgrade-Routine würde einfach zum Ignorieren oder Übergehen der nicht upgegradeten Prozesssteuerelemente ausgeführt werden, so dass die nicht upgegradeten Prozesssteuerelemente nicht mit einer zweiten neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft werden.
  • Wie hier beschrieben kann in einigen Ausführungsformen die Rollout-Anweisung sofort ausgeführt werden. In einigen Ausführungsformen kann die Rollout-Anweisung zu einem geplanten Zeitpunkt ausgeführt werden.
  • Bei Block 1008 kann, sobald die Rollout-Anweisung ausgeführt wurde, jedes der upgegradeten Prozesssteuerelemente und der nicht upgegradeten Prozesssteuerelemente zusammen zum Steuern wenigstens eines Teils der Prozessanlage 10 verwendet werden. In solchen Ausführungsformen würde die Prozessanlage 10 durch verschiedene Versionen, beispielsweise die erste Version und die zweite Version, der gleichen Modulklasse gesteuert werden.
  • Die modulbasierten Systeme und Verfahren können zum Verfolgen der einen oder mehreren Modulinstanzen über einen Modulkonfigurationseintrag ausgebildet sein. In einigen Ausführungsformen kann der Modulkonfigurationseintrag eine Version der Modulklasse für jede der einen oder mehreren Modulinstanzen angeben. Der Modulkonfigurationseintrag kann ebenfalls angeben, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist.
  • In einigen Ausführungsformen können die modulbasierten Systeme und Verfahren zum Verhindern eines zusätzlichen Aktualisierens der Modulklasse, wenn der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist, ausgebildet sein.
  • In weiteren Ausführungsformen können die upgegradeten Prozesssteuerelemente in einer upgegradeten Prozesssteuerelement-Menge enthalten sein, die jedes mit einer neuen Modulinstanz der zweiten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 356) zu verknüpfende Prozesssteuerelement definiert. Die upgegradete Prozesssteuerelement-Menge kann erzeugt werden, wenn die Rollout-Anweisung ausgeführt wird. In einigen Ausführungsformen kann die upgegradete Prozesssteuerelement-Menge eine Untermenge aller Prozesssteuerelemente der Prozessanlage sein.
  • Die Auswahl der Prozesssteuerelemente zur Aufnahme in der upgegradeten Prozesssteuerelement-Menge von den modulbasierten Systemen und Verfahren kann beispielsweise über eine Grafikschnittstelle empfangen werden, wobei ein Bediener auswählen kann, welche Prozesssteuerelemente in der upgegradeten Prozesssteuerelement-Menge enthalten sein sollen.
  • Beispielsweise kann in einigen Ausführungsformen die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einer bestimmten abgeleiteten Modulklasse verknüpften Prozesssteuerelementen umfassen. In anderen Ausführungsformen kann die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einer bestimmten Hierarchie der Prozessanlage verknüpften Prozesssteuerelementen umfassen. In weiteren Ausführungsformen kann die Auswahl der upgegradeten Prozesssteuerelement-Menge das Auswählen von mit einem physischen Bereich der Anlage verknüpften Prozesssteuerelementen umfassen.
  • In verschiedenen Ausführungsformen kann eine zusätzliche Rollout-Anweisung ausgeführt werden, die eine Konfigurationsänderung auf jede der neuen Modulinstanzen auf der Basis der zweiten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 356) und auf die vorhergehenden Modulinstanzen auf der Basis der ersten Version der Modulklasse (beispielsweise der 2-Stellungsventil-Modulklasse 256) anwendet. Die Konfigurationsänderung kann eine zusätzliche Änderung umfassen, die auf die zweite Version einer Modulklasse und die erste Version der Modulklasse angewendet wird. Beispielsweise kann in einer Ausführungsform die zusätzliche Änderung eine Berechnungsfunktion zur zweiten Version einer Modulklasse und ersten Version der Modulklasse hinzufügen, um die Modulklasse über beide Versionen hinweg zu verbessern.
  • ZUSÄTZLICHE ERWÄGUNGEN
  • Beim Implementieren kann die hier beschriebene Software in einem beliebigen computerlesbaren Speicher wie eine Magnetplatte, eine Laserdisc oder einem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors usw. gespeichert werden. Diese Software kann ebenfalls an einen Benutzer, eine Prozessanlage oder einen Bedienerarbeitsplatz mit einem beliebigen bekannten oder gewünschten Lieferverfahren umfassend beispielsweise auf einer computerlesbaren Disk oder einem anderen mobilen Computerspeichermechanismus oder über einen Kommunikationskanal wie einer Telefonleitung, dem Internet, dem World Wide Web, einem beliebigen anderen Local Area Network oder Wide Area Network usw. geliefert werden (wobei die Lieferung als identisch oder austauschbar zum Bereitstellen solch einer Software über ein mobiles Speichermedium zu betrachten ist). Ferner kann diese Software direkt ohne Modulation oder Verschlüsselung bereitgestellt werden oder kann mit einer geeigneten Modulationsträgerwelle und/oder einem Verschlüsselungsverfahren moduliert und/oder verschlüsselt werden, bevor sie über einen Kommunikationskanal übertragen wird.
  • Die vorliegende Erfindung wurde in Bezug auf spezifische Beispiele beschrieben, die rein illustrativ sein und die Erfindung nicht einschränken sollen; einem Fachmann ist jedoch klar, dass Änderungen, Ergänzungen oder Streichungen an den offenbarten Ausführungsformen vorgenommen werden können, ohne von Wesensart und Umfang der Erfindung abzuweichen.
  • Die Patentansprüche am Ende dieser Patentanmeldung sind nicht gemäß 35 U.S.C. § 112(f) auszulegen, es sei denn eine herkömmliche Mittel-plus-Funktion-Sprache wird ausdrücklich verwendet, etwa wenn ein Sprachgebrauch mit „Mittel zum“ oder „Schritt zum“ ausdrücklich in den Ansprüchen verwendet wird. Die hier beschriebenen Systeme und Verfahren dienen einer Verbesserung der Computerfunktionalität und verbessern die Funktionsweise von Computern nach dem Stand der Technik.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 7043311 [0006, 0007, 0041, 0043, 0046]

Claims (21)

  1. Zum Ausführen des kontrollierten Rollouts von Modulklassen zum Konfigurieren einer Prozessanlage ausgebildetes modulbasiertes System, wobei das modulbasierte System einen oder mehrere Prozessoren umfasst, wobei das modulbasierte System ausgebildet ist zum: Erzeugen einer zweiten Version einer Modulklasse auf der Basis einer Änderung einer ersten Version der Modulklasse, wobei die Modulklasse mit einer oder mehreren Modulinstanzen verknüpft ist, wobei jede Modulinstanz mit einem Prozesssteuerelement der Prozessanlage verknüpft ist; und Ausführen einer Rollout-Anweisung, wobei die Rollout-Anweisung ein upgegradetes Prozesssteuerelement aktualisiert, wobei das upgegradete Prozesssteuerelement mit einer Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft ist, und die Rollout-Anweisung ein nicht upgegradetes Prozesssteuerelement ignoriert, wobei das nicht upgegradete Prozesssteuerelement mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse verknüpft bleibt.
  2. Modulbasiertes System nach Anspruch 1, ferner ausgebildet zum Betreiben wenigstens eines Teils der Prozessanlage durch Verwenden des upgegradeten Prozesssteuerelements und des nicht upgegradeten Prozesssteuerelements; und/oder ferner ausgebildet zum Ausführen der Rollout-Anweisung mit einer selektiven Upgrade-Routine, wobei die selektive Upgrade-Routine das upgegradete Prozesssteuerelement mit der neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft, und wobei die selektive Upgrade-Routine das nicht upgegradete Prozesssteuerelement nicht mit einer zweiten neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft.
  3. Modulbasiertes System nach Anspruch 1 oder 2, ferner ausgebildet zum Verfolgen der einen oder mehreren Modulinstanzen über einen Modulkonfigurationseintrag, wobei die Modulkonfiguration eine Version der Modulklasse für jede der einen oder mehreren Modulinstanzen angibt, und der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist, insbesondere ferner ausgebildet zum Verhindern eines zusätzlichen Aktualisierens der Modulklasse, wenn der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist.
  4. Modulbasiertes System nach einem der Ansprüche 1 bis 3, wobei die Modulklasse eine abgeleitete Modulklasse ist; und/oder wobei die zweite Version der Modulklasse einem geänderten Prozesssteuerelement der Prozessanlage entspricht.
  5. Modulbasiertes System nach einem der Ansprüche 1 bis 4, wobei die Rollout-Anweisung sofort und/oder zu einem geplanten Zeitpunkt ausgeführt wird; und/oder wobei ein bestimmtes Prozesssteuerelement ein Feldgerät ist, insbesondere ein Ventil.
  6. Modulbasiertes System nach einem der Ansprüche 1 bis 5, wobei die Änderung der ersten Version der Modulklasse das Hinzufügen von einem oder mehreren Eingaben zur Modulklasse umfasst, und wobei das modulbasierte System ferner zum Zugreifen auf die einen oder mehreren Eingaben ausgebildet ist, um wenigstens teilweise ein Steuern des upgegradeten Prozesssteuerelements zu ermöglichen, insbesondere wobei die eine oder mehreren Eingaben zur Modulklasse eine oder mehrere Rückmeldungseingaben sind.
  7. Modulbasiertes System nach einem der Ansprüche 1 bis 6, wobei das upgegradete Prozesssteuerelement in einer upgegradeten Prozesssteuerelement-Menge enthalten ist, wobei die upgegradete Prozesssteuerelement-Menge jedes mit einer neuen Modulinstanz der zweiten Version der Modulklasse bei Ausführen der Rollout-Anweisung zu verknüpfende Prozesssteuerelement definiert, wobei die upgegradete Prozesssteuerelement-Menge eine Untermenge aller Prozesssteuerelemente der Prozessanlage umfasst.
  8. Modulbasiertes System nach einem der Ansprüche 1 bis 7, insbesondere Anspruch 7, ausgebildet zum Empfangen von einer oder mehreren Prozesssteuerelement-Auswahlen, wobei die Prozesssteuerelement-Auswahlen jedes Prozesssteuerelement zum Einschließen in der upgegradeten Prozesssteuerelement-Menge angeben, insbesondere wobei die eine oder mehreren Prozesssteuerelement-Auswahlen über eine Grafikschnittstelle empfangen werden.
  9. Modulbasiertes System nach einem der Ansprüche 1 bis 8, insbesondere Anspruch 7, wobei die upgegradete Prozesssteuerelement-Menge mit einer bestimmten abgeleiteten Modulklasse verknüpfte Prozesssteuerelemente und/oder mit einer bestimmten Hierarchie der Prozessanlage verknüpfte Prozesssteuerelemente und/oder mit einem physischen Bereich der Anlage verknüpfte Prozesssteuerelemente umfasst.
  10. Modulbasiertes System nach einem der Ansprüche 1 bis 9, ferner ausgebildet zum Ausführen einer zusätzlichen Rollout-Anweisung, wobei die zusätzliche Rollout-Anweisung eine Konfigurationsänderung an der neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse und der vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse anwendet, wobei die Konfigurationsänderung eine zusätzliche Änderung an der zweiten Version einer Modulklasse und der ersten Version der Modulklasse umfasst, insbesondere wobei die zusätzliche Änderung eine Berechnungsfunktion für die zweite Version einer Modulklasse und die erste Version der Modulklasse hinzufügt.
  11. Modulbasiertes Verfahren zum Ausführen eines kontrollierten Rollouts von Modulklassen zum Konfigurieren einer Prozessanlage unter Verwendung von einem oder mehreren Prozessoren, wobei das Verfahren umfasst: Erzeugen einer zweiten Version einer Modulklasse auf der Basis einer Änderung einer ersten Version der Modulklasse, wobei die Modulklasse mit einer oder mehreren Modulinstanzen verknüpft ist, wobei jede Modulinstanz mit einem Prozesssteuerelement der Prozessanlage verknüpft ist; und Ausführen einer Rollout-Anweisung, wobei die Rollout-Anweisung ein upgegradetes Prozesssteuerelement aktualisiert, wobei das upgegradete Prozesssteuerelement mit einer Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft ist, und die Rollout-Anweisung ein nicht upgegradetes Prozesssteuerelement ignoriert, wobei das nicht upgegradete Prozesssteuerelement mit einer vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse verknüpft bleibt.
  12. Modulbasiertes Verfahren nach Anspruch 11, ferner ausgebildet zum Betreiben wenigstens eines Teils der Prozessanlage durch Verwenden des upgegradeten Prozesssteuerelements und des nicht upgegradeten Prozesssteuerelements; und/oder ferner ausgebildet zum Ausführen der Rollout-Anweisung mit einer selektiven Upgrade-Routine, wobei die selektive Upgrade-Routine das upgegradete Prozesssteuerelement mit der neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft, und wobei die selektive Upgrade-Routine das nicht upgegradete Prozesssteuerelement nicht mit einer zweiten neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse verknüpft.
  13. Modulbasiertes Verfahren nach Anspruch 11 oder 12, ferner ausgebildet zum Verfolgen der einen oder mehreren Modulinstanzen über einen Modulkonfigurationseintrag, wobei die Modulkonfiguration eine Version der Modulklasse für jede der einen oder mehreren Modulinstanzen angibt, und der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist, insbesondere ferner ausgebildet zum Verhindern eines zusätzlichen Aktualisierens der Modulklasse, wenn der Modulkonfigurationseintrag angibt, dass die Modulklasse einen stufenweisen Rollout-Zustand aufweist.
  14. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 13, wobei die Modulklasse eine abgeleitete Modulklasse ist; und/oder wobei die zweite Version der Modulklasse einem geänderten Prozesssteuerelement der Prozessanlage entspricht.
  15. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 14, insbesondere Anspruch 11, wobei die Rollout-Anweisung sofort und/oder zu einem geplanten Zeitpunkt ausgeführt wird; und/oder wobei ein bestimmtes Prozesssteuerelement ein Feldgerät ist, insbesondere ein Ventil.
  16. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 15, insbesondere Anspruch 11, wobei die Änderung der ersten Version der Modulklasse das Hinzufügen von einem oder mehreren Eingaben zur Modulklasse umfasst, und wobei das modulbasierte System ferner zum Zugreifen auf die einen oder mehreren Eingaben ausgebildet ist, um wenigstens teilweise ein Steuern des upgegradeten Prozesssteuerelements zu ermöglichen, insbesondere wobei die eine oder mehreren Eingaben zur Modulklasse eine oder mehrere Rückmeldungseingaben sind.
  17. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 16, insbesondere Anspruch 11, wobei das upgegradete Prozesssteuerelement in einer upgegradeten Prozesssteuerelement-Menge enthalten ist, wobei die upgegradete Prozesssteuerelement-Menge jedes mit einer neuen Modulinstanz der zweiten Version der Modulklasse bei Ausführen der Rollout-Anweisung zu verknüpfende Prozesssteuerelement definiert, wobei die upgegradete Prozesssteuerelement-Menge eine Untermenge aller Prozesssteuerelemente der Prozessanlage umfasst.
  18. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 17, insbesondere Anspruch 17, ausgebildet zum Empfangen von einer oder mehreren Prozesssteuerelement-Auswahlen, wobei die Prozesssteuerelement-Auswahlen jedes Prozesssteuerelement zum Einschließen in der upgegradeten Prozesssteuerelement-Menge angeben, insbesondere wobei die eine oder mehreren Prozesssteuerelement-Auswahlen über eine Grafikschnittstelle empfangen werden.
  19. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 18, insbesondere Anspruch 17, wobei die upgegradete Prozesssteuerelement-Menge mit einer bestimmten abgeleiteten Modulklasse verknüpfte Prozesssteuerelemente und/oder mit einer bestimmten Hierarchie der Prozessanlage verknüpfte Prozesssteuerelemente und/oder mit einem physischen Bereich der Anlage verknüpfte Prozesssteuerelemente umfasst.
  20. Modulbasiertes Verfahren nach einem der Ansprüche 11 bis 19, insbesondere Anspruch 11, ferner ausgebildet zum Ausführen einer zusätzlichen Rollout-Anweisung, wobei die zusätzliche Rollout-Anweisung eine Konfigurationsänderung an der neuen Modulinstanz auf der Basis der zweiten Version der Modulklasse und der vorhergehenden Modulinstanz auf der Basis der ersten Version der Modulklasse anwendet, wobei die Konfigurationsänderung eine zusätzliche Änderung an der zweiten Version einer Modulklasse und der ersten Version der Modulklasse umfasst, insbesondere wobei die zusätzliche Änderung eine Berechnungsfunktion für die zweite Version einer Modulklasse und die erste Version der Modulklasse hinzufügt.
  21. Ein Computerlesbares Medium, Befehle speichernd, die, wenn von mindestens einem Prozessor ausgeführt, den mindestens einen Prozessor veranlassen, ein Verfahren nach einem der Ansprüche 11 bis 20 zu implementieren.
DE102018119321.1A 2017-08-08 2018-08-08 Kontrollierter Rollout von Modulklassen Pending DE102018119321A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/671,834 US10571901B2 (en) 2017-08-08 2017-08-08 Controlled roll-out of module classes
US15/671,834 2017-08-08

Publications (1)

Publication Number Publication Date
DE102018119321A1 true DE102018119321A1 (de) 2019-03-21

Family

ID=63518100

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018119321.1A Pending DE102018119321A1 (de) 2017-08-08 2018-08-08 Kontrollierter Rollout von Modulklassen

Country Status (5)

Country Link
US (1) US10571901B2 (de)
JP (2) JP2019032839A (de)
CN (1) CN109388112B (de)
DE (1) DE102018119321A1 (de)
GB (2) GB2604757B (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416210B2 (en) * 2019-06-07 2022-08-16 Sonos, Inc. Management of media devices having limited capabilities
US11314216B2 (en) * 2020-04-30 2022-04-26 Fisher-Rosemount Systems, Inc. Remote deployment and commissioning of workstations within a distributed control system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043311B2 (en) 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07306710A (ja) * 1994-05-11 1995-11-21 Toshiba Corp 監視制御装置及び監視制御システム
US6651108B2 (en) * 1995-08-14 2003-11-18 Next Software, Inc. Method and apparatus for generating object-oriented world wide web pages
DE19921845A1 (de) * 1999-05-11 2000-11-23 Bosch Gmbh Robert Diagnosetestvorrichtung für Kraftfahrzeuge mit programmierbaren Steuergeräten
US6871344B2 (en) * 2000-04-24 2005-03-22 Microsoft Corporation Configurations for binding software assemblies to application programs
JP2004186445A (ja) * 2002-12-03 2004-07-02 Omron Corp モデル化装置及びモデル解析方法並びにプロセス異常検出・分類システム及びプロセス異常検出・分類方法並びにモデル化システム及びモデル化方法並びに故障予知システム及びモデル化装置の更新方法
US7526347B2 (en) * 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
US7117052B2 (en) 2003-02-18 2006-10-03 Fisher-Rosemount Systems, Inc. Version control for objects in a process plant configuration system
US7809679B2 (en) * 2003-03-03 2010-10-05 Fisher-Rosemount Systems, Inc. Distributed data access methods and apparatus for process control systems
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US7269829B2 (en) 2004-07-30 2007-09-11 Signature Control Systems, Inc. Method and system for remote update of microprocessor code for irrigation controllers
US20070113051A1 (en) * 2005-10-17 2007-05-17 Honeywell International Inc. Apparatus and method for live loading of control applications in a process control environment
US8286154B2 (en) * 2006-03-22 2012-10-09 Honeywell International Inc. Apparatus and method for live loading of version upgrades in a process control environment
US7848829B2 (en) * 2006-09-29 2010-12-07 Fisher-Rosemount Systems, Inc. Methods and module class objects to configure absent equipment in process plants
CN100489778C (zh) * 2007-11-22 2009-05-20 上海交通大学 Java程序可动态更新化实现方法
US8898660B2 (en) * 2008-11-25 2014-11-25 Fisher-Rosemount Systems, Inc. Systems and methods to provide customized release notes during a software system upgrade of a process control system
GB2474545B (en) * 2009-09-24 2015-06-24 Fisher Rosemount Systems Inc Integrated unified threat management for a process control system
US9003387B2 (en) * 2009-09-25 2015-04-07 Fisher-Rosemount Systems, Inc. Automated deployment of computer-specific software updates
JP2011198236A (ja) * 2010-03-23 2011-10-06 Metawater Co Ltd プラント監視支援システム、及び同システムにおけるクラウドサービス提供装置、ならびにプログラム
JP5843595B2 (ja) * 2011-12-13 2016-01-13 キヤノン株式会社 生産装置
US9710250B2 (en) * 2013-03-15 2017-07-18 Microsoft Technology Licensing, Llc Mechanism for safe and reversible rolling upgrades

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043311B2 (en) 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system

Also Published As

Publication number Publication date
GB2565650A (en) 2019-02-20
CN109388112A (zh) 2019-02-26
GB201812513D0 (en) 2018-09-12
US10571901B2 (en) 2020-02-25
GB2604757B (en) 2023-02-15
GB2565650B (en) 2022-10-12
JP2023127592A (ja) 2023-09-13
GB202204644D0 (en) 2022-05-18
US20190049932A1 (en) 2019-02-14
CN109388112B (zh) 2024-02-13
JP2019032839A (ja) 2019-02-28
GB2604757A (en) 2022-09-14

Similar Documents

Publication Publication Date Title
DE112013004924T9 (de) Dynamisch wiederverwendbare Klassen
DE102015100024A1 (de) Wiederverwendbare Grafikelemente mit schnell bearbeitungsfähigen Merkmalen zur Verwendung in Benutzeranzeigen von Anlagenüberwachungssystemen
DE102018114592A1 (de) Synchronisation von konfigurationsänderungen in einer prozessanlage
DE102010038146A1 (de) Verfahren zum Auswählen von Formen in einer Grafikanzeige
EP3408714B1 (de) Modul für eine technische anlage und verfahren zur steuerung einer technischen anlage
DE112005001031B4 (de) Grafisches Bildschirmkonfigurationsgerüst für vereinheitlichte Prozesssteuerungssystemoberfläche
DE102011001460A1 (de) Verfahren und Gerät für eine datengesteuerte Schnittstelle basierend auf Relationen zwischen Prozesssteuerungsetiketten
DE102017117038A1 (de) Anlagenbausystem mit integrierter simulation und kontrollsystem-konfiguration
DE102007046642A1 (de) Verfahren und Modulklassenobjekte zur Konfiguration von fehlenden Einrichtungen in verfahrenstechnischen Anlagen
DE102007046962A1 (de) Aktualisierung und Einsatz dynamischer Prozesssimulation im laufenden Betrieb einer Prozessumgebung
DE102004038808A1 (de) Versionskontrolle für Objekte in einem Konfigurationssystem für Prozessanlagen
DE10102205A1 (de) Programmierwerkzeug zum Konfigurieren und Verwalten eines Prozeßsteuerungsnetzes einschließlich der Nutzung von räumlichen Informationen
DE102007040823A1 (de) Editier- und Berichts-Tool für Grafische Programmiersprachenobjekte
DE102015108243A1 (de) Verfahren und Vorrichtung zur Konfiguration von Prozesssteuerungssystemen basierend auf generischen Prozesssystembibliotheken
DE102018119391A1 (de) Abstimmung von Laufzeit- und -konfigurationsdiskrepanzen
DE102019123645A1 (de) Systeme und verfahren zum einbetten eines web-frames in prozessgrafik
DE102020126272A1 (de) Vorschaumodus für Konfigurationslogik
DE102018119321A1 (de) Kontrollierter Rollout von Modulklassen
DE102018114424A1 (de) Systeme und vorrichtungen für die weiterleitung von daten zum leiten chargenorientierter und kontinuierlicher prozesse an ortsferne geräte
EP1634130B1 (de) Vorrichtung und verfahren zur programmierung und/oder ausführung von programmen für industrielle automatisierungssysteme
DE102021111244A1 (de) Ferneinsatz und -inbetriebnahme von arbeitsstationen innerhalb eines verteilten steuersystems
DE102011079756A1 (de) Einrichtung zur Feldgeräteintegration, die angepasst wurde, um eine Internet-und/oder Intranetverbindung zu einem Datenbanksystem herzustellen
DE102021112553A1 (de) Systeme und verfahren zum implementieren von standardbetriebsverfahren in einer grafischen anzeigekonfiguration
DE102018124316A1 (de) Systeme und Verfahren zum Konfigurieren und Darstellen einer Anzeige-Navigationshierarchie in einer Prozessanlage
WO2003093911A1 (de) Automatisierungswerkzeug zur unterstützung einer planung und realisierung eines automatisierten technischen prozesses und korrespondierendes verfahren

Legal Events

Date Code Title Description
R083 Amendment of/additions to inventor(s)
R012 Request for examination validly filed