-
QUERVERWEIS AUF EINE VERWANDTE ANMELDUNG
-
Diese Anmeldung beansprucht die Vorteile der vorläufigen, am 29. September 2008 eingereichten US-Patentanmeldung Nr. 61/101,055, die den Titel „User Interface for Configuring a Process Control System” trägt und deren Offenbarung hiermit durch Querverweis ausdrücklich in die vorliegenden Ausführungen aufgenommen wird.
-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft allgemein Prozesssteuerungsnetzwerke und insbesondere eine Benutzerschnittstelle zur Auslegung verschiedener Komponenten und Dienste im Rahmen einer Prozesssteuerungsumgebung.
-
BESCHREIBUNG DES STANDS DER TECHNIK
-
Verteilte Prozesssteuerungssysteme, wie beispielsweise solche, die im Rahmen von chemischen, mineralöltechnischen und anderen Verfahren zum Einsatz kommen, umfassen in der Regel eine oder mehrere Prozesssteuereinheiten, die über analoge, digitale oder eine Kombination analoger/digitaler Busse auf kommunikativem Weg an eine oder mehrere Feldvorrichtungen gekoppelt sind. Die Feldvorrichtungen, bei denen es sich beispielsweise um Ventile, Ventilpositionierer, Schalter und Messwertgeber handeln kann (wie etwa Sensoren für Temperatur, Druck, Füllstand und Strömungsgeschwindigkeit), befinden sich innerhalb der Prozessumgebung und führen Prozessfunktionen aus, wie beispielsweise das Öffnen oder Schließen von Ventilen, das Messen von Prozessparametern usw. Intelligente Feldvorrichtungen, wie beispielsweise Feldvorrichtungen, die mit dem gut bekannten Fieldbus-Protokoll konform sind, können auch Steuerungsberechnungen, Warnungsfunktionen und andere Steuerungsfunktionen vornehmen, die üblicherweise innerhalb einer Steuereinheit implementiert werden. Die Prozesssteuereinheiten, die sich in der Regel auch innerhalb der Anlagenumgebung befinden, empfangen Signale, die von den Feldvorrichtungen aufgezeichnete Prozessmessungen und/oder andere auf die Feldvorrichtungen bezogene Informationen anzeigen, und führen eine Steuereinheitsanwendung aus, die beispielsweise verschiedene Steuermodule ablaufen lässt, die Prozesssteuerungsentscheidungen treffen, Steuersignale basierend auf empfangenen Informationen generieren und mit den Steuermodulen oder Blöcken koordinieren, die in den Feldvorrichtungen ausgeführt werden, wie beispielsweise HART- und Fieldbus-Feldvorrichtungen. Die Steuermodule in der Steuereinheit senden die Steuersignale über die Kommunikationsleitungen an die Feldvorrichtungen, um so den Betrieb des Prozesses zu steuern.
-
Informationen von den Feldvorrichtungen und der Steuereinheit werden üblicherweise über eine Datenvielfachleitung an eine oder mehrere Hardwarevorrichtungen bereitgestellt, wie von Bedienpersonal besetzte Arbeitsstationen, PCs, Datenverlaufsarchive, Reportgeneratoren, zentrale Datenbanken usw., die in der Regel in Steuerungsräumen oder an anderen von der raueren Anlagenumgebung entfernten Orten aufgestellt werden. Diese Hardwarevorrichtungen lassen Anwendungen ablaufen, die dem Bedienpersonal beispielsweise die Möglichkeit geben, Funktionen in Bezug auf den Prozess durchzuführen, wie etwa die Änderung von Einstellungen der Prozesssteuerungsroutine, Modifizierung des Betriebs der Steuermodule innerhalb der Steuereinheit oder innerhalb der Feldvorrichtungen, Anzeige des aktuellen Prozessstatus, Anzeige der von den Feldvorrichtungen und Steuereinheiten erzeugten Alarme, Simulierung des Prozessbetriebs zu Schulungszwecken des Personals oder zum Testen der Prozesssteuerungssoftware sowie Pflege und Aktualisierung einer Konfigurationsdatenbank usw.
-
Ein Beispiel ist das von Emerson Process Management verkaufte DeltaVTM-Steuerungssystem, welches mehrere Anwendungen umfasst, die innerhalb von verschiedenen Vorrichtungen, die sich an verschiedenen Orten innerhalb der Anlage befinden, gespeichert sind und von diesen ausgeführt werden. Eine Konfigurationsanwendung, die in einer oder in mehreren Arbeitsstationen des Bedienpersonals gespeichert ist, ermöglicht es Benutzern, Prozesssteuermodule zu erstellen oder zu ändern und diese Prozesssteuermodule über eine Datenvielfachleitung auf dedizierte verteilte Steuereinheiten herunterzuladen. In der Regel bestehen diese Steuermodule aus kommunizierend zusammengeschalteten Funktionsblöcken, die Objekte in einem objektorientierten Programmierprotokoll sind, die innerhalb des Steuerungsplans Funktionen auf der Grundlage von Eingaben durchführen und an andere Funktionsblöcke innerhalb des Steuerungsplanes Ausgänge bereitstellen. Die Konfigurationsanwendung kann es einem Konstrukteur zudem ermöglichen, Bedienschnittstellen zu erstellen oder Bedienschnittstellen, die von einer Anzeigeanwendung verwendet werden, zu ändern, so dass sie dem Bedienpersonal angezeigt werden und Einstellungen vom Bedienpersonal im Rahmen der Prozesssteuerungsroutine geändert werden können, so beispielsweise Sollwerte. Jede dedizierte Steuereinheit – und in manchen Fällen Feldvorrichtungen – speichert und führt eine Steuereinheitsanwendung aus, welche die Steuermodule, die ihr zugewiesen und darauf heruntergeladen sind, ablaufen lässt, um die tatsächliche Prozesssteuerungsfunktionalität zu implementieren. Die Anzeigeanwendungen, die in einer oder mehreren Arbeitsstationen des Bedienpersonals ablaufen können, empfangen Daten über die Datenvielfachleitung von der Steuereinheitsanwendung und zeigen diese Daten unter Verwendung der Benutzerschnittstellen für die Konstrukteure, Bediener oder Benutzer des Prozesssteuerungssystems an und können eine beliebige unter verschiedenen Ansichten der Prozesssteuerungsroutine oder des Moduls anzeigen, wie beispielsweise eine Ansicht des Betriebspersonals, eine Ansicht des Ingenieurs, eine Ansicht des Technikers usw. Eine Data-Historian-Anwendung wird in der Regel in einer Data-Historian-Vorrichtung, die manche oder alle über die Vielfachleitung bereitgestellten Daten erhebt und speichert, gespeichert und von dieser ausgeführt, während eine Konfigurationsdatenbankanwendung in einem weiteren an die Datenvielfachleitung angeschlossenen Computer ablaufen kann, um die aktuelle Routinekonfiguration der Prozesssteuerung und die hiermit assoziierten Daten zu speichern. Alternativ kann sich die Konfigurationsdatenbank auch in derselben Arbeitsstation befinden wie die Konfigurationsanwendung.
-
Im Zuge des Anstiegs von Anzahl und Art der im Rahmen einer Prozesssteuerung verwendeten Steuerungs- und Unterstützungsanwendungen sind verschiedene grafische Anzeigeanwendungen bereitgestellt worden, um es Benutzern zu ermöglichen, diese Anwendungen effektiv zu konfigurieren und zu verwenden. Beispielsweise sind grafische Anzeigeanwendungen eingesetzt worden, um Steuerungskonfigurationsanwendungen zu unterstützen, damit ein Konfigurationsingenieur die Möglichkeit hat, Steuerprogramme, die auf Steuervorrichtungen innerhalb einer Steueranlage herunterzuladen sind, grafisch zu erstellen. Weiter sind grafische Anzeigeanwendungen genutzt worden, um es dem steuernden Bedienpersonal zu ermöglichen, die aktuelle Funktionsweise der Prozessanlage oder Bereiche der Prozessanlage anzuzeigen, damit dem Wartungspersonal die Möglichkeit gegeben ist, den Status der Hardwarevorrichtungen innerhalb der Prozessanlage anzuzeigen, um eine Simulation der Prozessanlage usw. zu ermöglichen. Bislang wurden diese grafischen Anzeigeanwendungen jedoch separat als Teil von spezifischen Anwendungen, mit denen sie assoziiert sind, oder zur unabhängigen Unterstützung derselben erstellt, weshalb sie im Allgemeinen hinsichtlich ihrer Nutzbarkeit auf die spezifische Prozessfunktion, für die sie erstellt wurden, begrenzt sind. Beispielsweise ist es schwierig, wenn nicht gar unmöglich, ein Grafikprogramm, das zur Unterstützung des Bedienpersonals bei der Steuerung erstellt wurde, in einem Wartungskontext oder bei der Konfiguration oder im Zusammenhang mit Simulationsfunktionen zu verwenden.
-
Weiter erfordern die bestehenden Anwendungen in der Regel umfangreiches Anklicken von Auswahlelementen, um ein gewünschtes Menüelement zu erreichen. Insbesondere Bedien- oder Wartungspersonal, das daran interessiert ist, tiefer in das Modul vorzudringen, ist oft gezwungen, zahlreiche Menüs zu aktivieren, die Inhalte mehrerer Dialogkästen zu prüfen und darauf zu antworten. Oftmals sind die Steuerelemente zur Auslösung von Tasks nicht intuitiv angeordnet und daher in ihrer Durchführung mit bedeutendem Zeitaufwand verbunden.
-
In anderer Hinsicht gestaltet die immer weiter zunehmende Anzahl von Befehlsoptionen und Leistungsmerkmalen die Prozesssteuerungsauslegung, die Konfiguration und die Verwaltung kontinuierlich komplexer. Ein typischer Benutzer sieht häufig zahlreiche Steuerelemente und Menüelemente auf dem Bildschirm, von denen nur eine relativ kleine Untermenge von Steuerelementen oder Menüelementen im Rahmen der vom Benutzer durchgeführten Aufgabe anwendbar ist.
-
ZUSAMMENFASSUNG DER OFFENBARUNG
-
Ein Softwaresystem zur Konfigurierung, Überwachung oder Fehlersuche eines Prozesssteuerungssystems weist eine intuitive aufgabenbasierte Benutzerschnittstelle auf, die ein visuelles und textuelle Steuerelement für die verfügbare Funktionalität benutzerfreundlich organisiert. Die Benutzerschnittstelle reduziert die Anzahl der erforderlichen Mausklicks und anderer Befehlseingaben, um auf die gewünschte Funktionalität zuzugreifen, positioniert die Steuerelemente an intuitiven und bequem erreichbaren Stellen, verringert die Anzahl der Fenster, die zur Darstellung der gewünschten Informationen notwendig sind, zeigt die für einen besonderen Kontext relevanten Steuerelemente an, stellt dem Benutzer zur raschen Identifizierung einer gewünschten Option oder eines gewünschten Steuerelements visuelle Hinweise zur Verfügung, implementiert Techniken zur effektiven Visualisierung von Steuerungsstrategien und verbessert die Benutzerfreundlichkeit des Softwaresystems insgesamt. Das Softwaresystem kann beispielsweise die Funktionen der Konfigurierung des Prozesssteuerungssystems, des Anzeigens der Konfiguration des Prozesssteuerungssystems, des Herunterladens von Steuermodulen auf Steuereinheiten und physische Vorrichtungen, des Definieren von Steuerungslogik für eine kontinuierliche und Batch-Steuerung, des Erstellens und Bearbeiten von Produktrezepturen im Rahmen eines Prozesssteuerungssystems, des Steuerns der batchweisen Ausführung gemäß diesen Rezepturen, des Explorierens oder Anzeigens von Anlagegeräten oder eine beliebige Kombination derselben unterstützen. Bei einigen Ausführungsformen handelt es sich bei dem Softwaresystem um eine mehrere Anwendungen umfassende Anwendungssuite, wobei jede zur Unterstützung eines jeweiligen Satzes technischer Aktivitäten adaptiert ist. Beispielsweise enthält die Softwaresuite in einer Ausführungsform eine Explorer-Anwendung zur Konfigurierung einer Prozessanlage, zur Anzeige und Aktualisierung der Konfiguration der Prozessanlage, zum Herunterladen von Steuermodulen auf physikalische Einheiten usw.; eine Steuerungsstudioanwendung zur Konzipierung von im Rahmen der Prozessanlage zu verwendenden Steuerstrategien; und andere Anwendungen Jede der in der Softwaresuite enthaltenen Anwendungen weist eine entsprechende Benutzerschnittstelle auf.
-
Bei einer Ausführungsform unterstützt die Benutzerschnittstelle der Explorer-Anwendung einen Hauptinhaltsbereich, in dem die Explorer-Anwendung eine detaillierte Ansicht eines oder mehrerer ausgewählter Elemente bietet, wie beispielsweise innerhalb der Prozessanlage arbeitende physische Vorrichtungen, logische Strukturen wie etwa unter Zuhilfenahme von Fieldbus-Blöcken definierte Steuerungsstrategien, beispielsweise mit einer ausgewählten physischen oder logischen Einheit assoziierte Prozessparameter, auf Vorrichtungen und Steuerungsstrategien anwendbare und in der entsprechenden Datenbank abgespeicherte Konfigurationsparameter usw.
-
Die Benutzerschnittstelle unterstützt weiter mindestens einen Teil eines Navigationsbereichs zur Anzeige verschiedener Steuerelemente und Indikatoren, um es Benutzern zu ermöglichen, verschiedene physische und logische Einheiten innerhalb der Prozessanlage einfacher aufzufinden; eine Statusleiste zur Anzeige des Status eines Betriebs; eine Adressleiste zur Spezifizierung eines aktuellen Orts; einen Vorschaubereich zur Bereitstellung einer bzw. eines hinsichtlich Qualität und Umfang benutzerspezifisch reduzierten Grafik und/oder Textelements; einen Detailbereich zur Bereitstellung einer detaillierten Darstellung der physischen oder logischen Einheit; einen Schnellsuchbereich zur Unterstützung der Durchsuchung von einer oder mehreren Konfigurationsdatenbanken, Laufzeitdaten, Formulierungen und anderen Inhalten; und eine Befehlsleiste, in der die Explorer-Anwendung die Steuerelemente zur Durchführung technischer Aufgaben bereitstellt
-
Die Benutzerschnittstelle der Steuerungsstudioanwendung enthält auch einen Hauptinhalts-/-bearbeitungsbereich zur Anzeige, Erstellung und Bearbeitung von Inhalten. Beispielsweise kann ein Benutzer Verbindungen zwischen den Funktionsblöcken eines verteilten Steuerungssystems konzipieren und konfigurieren, eine Produktrezeptur definieren usw. Die Benutzerschnittstelle kann weiter die einen Teil oder alle der folgenden Bereiche enthalten: Einen Navigationshierarchiebereich, um die Beziehungen zwischen physischen und logischen Elementen des Prozesssteuerungssystems auf strukturierte und organisierte Weise abzubilden, einen Parameterbereich zur Bereitstellung von Informationen in Bezug auf eine oder mehrere der im Hauptbereich illustrierten Einheiten, einen Alarmbereich zur Anzeige aktueller Alarm- oder Ereignisdaten, einen Referenzbereich zur Anzeige logischer Verbindungen verschiedener Objekte mit physischen oder logischen Einheiten, einen Überwachungsbereich zur Abbildung von Trend- und/oder historischen Daten für einen ausgewählten Parameter, einen Schwenk- und Zoombereich und einen Palettenbereich zur Auflistung von Steuerelementen, die als Bausteine bei der Definition einer Steuerungslogik verwendet werden können.
-
Die Benutzerschnittstelle einiger Ausführungsformen des Softwaresystems unterstützt weiter einen Satz von Navigationsindikatoren, die die Historie der Auswahl eines spezifischen Menüelements oder Steuerelements reflektieren. Die Benutzerschnittstelle erhöht nach der Auswahl jedes Zwischenmenüs den Satz der Navigationsindikatoren automatisch, so dass der Benutzer den Pfad vom Hauptmenü zum ausgewählten Menüelement einfach rekonstruieren kann. Bei einer Ausführungsform ist jeder Navigationsindikator außerdem ein Steuerelement, das den Fokus auf die jeweilige Menüebene als Reaktion auf ein benutzerinitiiertes Ereignis wiederherstellt (beispielsweise Linksklick-Ereignis der Maus).
-
Bei einigen Ausführungsformen unterstützt die Benutzerschnittstelle von mindestens Anwendungen, die als Teil des Softwaresystems enthalten sind, außerdem ein Popup-Fenster, das über einem Eintrag im Hauptinhaltsbereich ”schwebt”, wenn der Benutzer den Mauszeiger beispielsweise über einem Element platziert. Das Popup-Fenster kann eine Untergruppe verfügbarer Eigenschaften, Parameter und Steuerelemente, die mit dem Gegenstand assoziiert sind, anzeigen. Bei einer Ausführungsform enthält ein Popup-Fenster, das für eine Grafik oder ein Symbol zur Abbildung einer Vorrichtung in der Prozessanlage angezeigt wird, eine Beschreibung der Vorrichtung, der Knotenzuweisung, der Scan-Geschwindigkeit der Vorrichtung (beispielsweise die Frequenz, bei der die Vorrichtung Messwerte erzeugt) und des letzten Änderungsdatums. Bei einer Ausführungsform wird diese Funktion selektiv vom Benutzer aktiviert, und die im Popup-Fenster angezeigten Elemente sind vom Benutzer konfigurierbar.
-
In einem Aspekt generiert die Benutzerschnittstelle infolge des Anklickens mit der rechten Maustaste oder einer anderen Auswahl im Hauptinhaltsbereich durch den Benutzer eine reduzierte Menüauswahl, und infolge des Anklickens mit der rechten Maustaste zusammen mit der Aktivierung eines anderen Steuerelements durch den Benutzer eine erweiterte Menüauswahl.
-
Bei einigen Ausführungsformen zeigt die Benutzerschnittstelle der Explorer-Anwendung, der Steuerungsstudioanwendung und anderer Anwendungen, die mit dem Softwaresystem in Zusammenhang stehen, verfügbare Steuerelemente und Optionen des Softwaresystems in einem Menübereich in der Art einer „Funktionsleiste” an. Das Menü kann mehrere Registerkarten aufweisen, wobei jede Registerkarte eine Gruppe von Steuerelementen oder Optionen, die sich auf einen bestimmten Funktionalitätsbereich beziehen, enthalten kann. Beispielsweise kann eine Registerkarte als „Home” gekennzeichnet sein und die Steuerungen in Bezug auf die Zwischenablagefunktionen, Verlaufsoptionen, Herunterladefunktionen, Algorithmus-Bearbeitungsoptionen usw. enthalten; eine weitere Registerkarte kann als „Anzeige” gekennzeichnet sein und die Palettenansichtsoptionen, Parameteransichtsoptionen, Fensteranordnungsoptionen usw. enthalten; und andere Registerkarten können als „Diagramm”, „Einstellungen” usw. gekennzeichnet sein. Zusätzliche Registerkarten können außerdem gemäß dem betriebsspezifischen Kontext oder als Reaktion auf eine Handlung des Bedienpersonals eingeblendet werden.
-
Bei mindestens einigen Ausführungsformen erscheint zu einer gegebenen Zeit nur eine Registerkarte scharf im Fokus, wobei die Funktionsleiste die mit den übrigen Registerkarten in Verbindung stehenden Funktionen versteckt. Um auf Funktionen zuzugreifen, die einer anderen Registerkarte zugewiesen sind, kann der Benutzer auf den visuellen Identifikator der Registerkarte klicken, beispielsweise, um die ausgewählte Registerkarte auf diese Weise in Fokus zu rücken. Außerdem können Steuerelemente und Optionen unter jeder Registerkarte weiter gruppiert sein, wobei jede Gruppe klar ausgewiesen ist, damit der Benutzer schnell die jeweils gewünschte Funktion unter der Registerkarte finden kann. Beispielsweise kann die Registerkarte „Start” eine Gruppierung „Zwischenablage” enthalten, eine Gruppierung „Modul”, eine Gruppierung „Einfügen” usw. Jede Gruppierung kann zusätzlich durch eine senkrechte Leiste oder eine andere Abgrenzung der Bereichsgrenze abgetrennt sein.
-
Bei einigen Ausführungsformen kann jedes Steuerelement sowohl einen textuellen als auch einen visuellen Indikator enthalten (beispielsweise ein Symbol, das klar auf die Funktion des entsprechenden Steuerelements hinweist). Zusätzlich können Funktionen, die aufgrund des Kontexts nicht zur Verfügung stehen, als „Phantom” oder auf anderweitig abgeblendete Weise angezeigt werden. Bei anderen Ausführungsformen kann die Schnittstelle Symbole und textuelle Beschreibungselemente von Funktionen dynamisch hinzufügen oder vollständig entfernen. Bei einigen solchen Ausführungsformen kann die Art der Darstellung nicht zur Verfügung stehender Funktionen vom Benutzer auswählbar sein.
-
Bei einer Ausführungsform kann die Benutzerschnittstelle das Layout der Steuerelemente automatisch je nach der Verwendung optimieren. Beispielsweise kann die Benutzerschnittstelle häufig verwendete Steuerelemente an hervorgehobeneren Stellen der jeweiligen Registerkarte anzeigen. Um dies zu erreichen, kann die Benutzerschnittstelle mit einem Softwaremodul zusammenarbeiten, das statistische Daten nach Maßgabe der verschiedenen durch das Softwaresystem unterstützten Funktionen erhebt. Weiter kann der Benutzer bei der Anmeldung beim Softwaresystem im Rahmen einer benutzerspezifizierten Ansicht wählen, welche Bereiche angezeigt werden sollen und in welchen Positionen sich diese Bereiche in Bezug auf andere Bereiche befinden. Weiter kann jede benutzerspezifizierte Ansicht eine Größe des oder der ausgewählten Bereiche, Präferenzen aufrufen (beispielsweise eine detaillierte oder listenweise Ansicht) und andere Optionen.
-
Bei einigen Ausführungsformen kann die Benutzerschnittstelle nur solche Funktionen auf den Registerkarten und der Funktionsleiste aufweisen, die im Rahmen einer gegebenen Konfiguration des Softwaresystems zur Verfügung stehen. Wenn der Benutzer beispielsweise eine Teillizenz für ein Softwaremodul erwirbt, kann es sein, dass die Benutzerschnittstelle die Optionen, für die keine Zahlung geleistet wurde, vollständig ausblendet, was mitunter einer vollumfänglichen Registerkarte entsprechen kann.
-
Bei einigen Ausführungsformen zeigt die Benutzerschnittstelle auch eine Schnellzugriffssymbolleiste an, die separat vom Funktionsleistenmenü ist, beispielsweise oberhalb des Funktionsleistenmenüs. Die Schnellzugriffssymbolleiste kann Textidentifizierelemente, Symbole oder beides für solche häufig verwendeten Funktionen wie beispielsweise „Speichern” enthalten. Die Steuerelemente, die über die Schnellzugriffssymbolleiste zur Verfügung gestellt werden, brauchen nicht zu einer gemeinsamen Gruppe zu gehören und müssen noch nicht einmal unter derselben Registerkarte gespeichert sein. Mindestens bei einigen Ausführungsformen ist es so, dass die Schnellzugriffssymbolleiste in Bezug auf einen Standardsatz von Steuerelementen benutzerspezifisch konfigurierbar sein kann.
-
Die Zoomfunktion des Schwenk- und Zoom-Bereichs kann den Inhalt des Hauptbereichs der Explorer-Anwendung, der Steuerungsstudioanwendung oder einer anderen mit dem Steuerungssystem assoziierten Anwendung teilweise oder ganz vergrößern. Bei einigen dieser Ausführungsformen kann es sich bei der Zoomfunktion um eine Bildlaufleiste handeln, so dass der Benutzer die gewünschte Größe der im Hauptbereich dargestellten Grafiken problemlos auswählen kann. Weiter kann die Benutzerschnittstelle, wenn der Benutzer die Zoomsteuerung verwendet, die im Hauptbereich angezeigten Grafiken in Echtzeit vergrößern oder verkleinern. Anders ausgedrückt bedeutet dies, dass der Benutzer keinen prozentualen Wert der Zielvergrößerung einzugeben braucht, wie dies bei den meisten Softwareanwendungen der Fall ist, um zu sehen, ob die ausgewählte Größe befriedigend ist.
-
Bei einigen Ausführungsformen enthält der Palettenbereich der Steuerungsstudioanwendung Symbole für die effiziente Auswahl und Platzierung innerhalb des Hauptbereichs, beispielsweise mittels Ziehen und Ablegen. Die Symbole können Steuerungsblöcken oder anderen Funktionselementen entsprechen. Die Benutzerschnittstelle kann die Symbole basierend auf der Funktion, die sie darstellen, oder nach Maßgabe eines anderen Prinzips jeweils in Kategorien gruppieren. Die Benutzerschnittstelle kann es dem Benutzer außerdem ermöglichen, eine personalisierte Kategorie für spezifische benutzerseitige Präferenzen zu definieren. Bei einigen Ausführungsformen kann die Benutzerschnittstelle die personalisierte Kategorie beispielsweisebasierend auf der beobachten Auslastung der Systemfunktionalität automatisch bestücken.
-
Die Benutzerschnittstelle kann zur Konfigurierung logischer Ausdrücke auch einen Ausdruckseditor enthalten. Als Reaktion auf den durch den Benutzer eingeleiteten Start eines Editors in der Steuerungsstudioanwendung, Explorer-Anwendung, einer Anwendung für das Anzeigen von Konfigurationen und Vermögenswerten auf Unternehmensebene, einer Anwendung zur Anzeige und Fehlersuche im Zusammenhang mit Anlagengeräten usw. kann die Benutzerschnittstelle denselben Ausdruckseditor aufrufen.
-
Der Ausdruckseditor ermöglicht es Benutzern, strukturierten Text (beispielsweise Funktionen, Konstanten, Operanden usw.) auf intuitive Weise einzufügen. Zur Vereinfachung des Konfigurierungsaufwands und zur Reduzierung der Fehlerwahrscheinlichkeit kann der Ausdruckseditor nicht zur Verfügung stehende Optionen und Steuerelemente der entsprechenden Symbolleiste, bei der es sich um ein Funktionsleistenmenü handeln kann, wie beispielsweise eine Registerkarte eines Funktionsleistenmenüs oder eine Gruppe von Funktionen auf einer der Registerkarte, automatisch entfernen. Es wird bevorzugt, dass die Funktionen des Ausdruckseditors auf einer einzelnen Registerkarte mit mehreren Gruppen angeordnet sind, beispielsweise „Operatoren”, „Funktionsbibliothek”, „Systemfunktionen”, „Bearbeitungsfunktionen”, „Zwischenablagefunktionen” usw. Bei einer Ausführungsform kann der Ausdruckseditor eine Schnellzugriffssymbolleiste mit mehreren Steuerelementen für solche allgemeinen Befehle wie Öffnen, Speichern, Rückgängigmachen usw. enthalten. Bevorzugt hat der Benutzer die Möglichkeit, die Schnellzugriffssymbolleiste zu bearbeiten, um beispielsweise Steuerelemente hinzuzufügen, zu entfernen oder umzupositionieren. Bei einigen Ausführungsformen kann der Ausdruckseditor es dem Benutzer ermöglichen, Codestücke einzufügen, so dass häufig verwendeter Code wiederverwendet werden kann. Weiter kann der Ausdruckseditor die korrekte Syntax für einen benutzerseitig in den Bearbeitungsbereich des Ausdruckseditors eingegebenen Befehl automatisch anzeigen.
-
Weiter kann das Softwaresystem jeweils basierend auf dem aktuellen Kontext eines oder mehrerer anderer Bereiche, die auf der Benutzerschnittstelle angezeigt werden, automatisches und manuelles Filtern der Menüelemente bieten. Beispielsweise können Elemente, die im Rahmen einer hierarchischen Baumstruktur im Navigationsbereich angezeigt werden, basierend auf einem Element im Hauptbereich, zu dem sich der Mauszeiger am nächsten befindet, oder basierend auf einer Aktion des Benutzers über die Befehlsleiste automatisch hinzugefügt, eliminiert, aufwärts oder abwärts bewegt oder anderweitig verändert werden. Bei einer anderen Ausführungsform (oder entsprechend einer anderen Konfigurationsoption) kann das Softwaresystem Elemente im Navigationsbereich gemäß der Arbeitsfunktion des Benutzers filtern. Das Softwaresystem kann Befehle in der Befehlsleiste auf ähnliche Weise filtern. Bei einigen Ausführungsformen werden die Filterelement als Teil einer benutzerspezifizierten Konfiguration gespeichert.
-
Die Benutzerschnittstelle der Explorer-Anwendung kann es Benutzern weiter ermöglichen, mindestens einige Aspekte der Platzierung, Größenfestlegung, des Filterns, Gruppieren und Stapelns von Spalten im Hauptinhaltsbereich zu personalisieren, um benutzerspezifisch festgelegte Spaltenlayouts zu definieren. Allgemein eliminiert das benutzerspezifische Spaltenlayout die Notwendigkeit einer jeweiligen Anpassung der Spalten, immer wenn eine gewünschte Textmenge auf dem Bildschirm unterzubringen ist Bei einer Ausführungsform speichert das Softwaresystem das erzeugte Layout automatisch, um es bei der nächsten Sitzung zu rekonstruieren (beispielsweise bei Erkennung des Berechtigungsnachweises des Benutzers zum Zeitpunkt der Anmeldung). Der Benutzer kann auch mehrere personalisierte Spaltenlayouts für verschiedene Aufgabentypen oder zur Erfüllung anderer technischer Bedürfnisse konfigurieren.
-
Bei manchen Ausführungsbeispielen können Bereiche ein- und ausgeschaltet, größenmäßig verändert, abgedockt und wieder angedockt sowie frei bewegt werden, um eine Personalisierung der Umgebung nach Maßgabe der Benutzerpräferenzen zu erleichtern. Diese und andere Benutzerpräferenzen können als Teil der Personalisierung des Layouts gespeichert werden.
-
Bei einigen Ausführungsformen der Steuerungsstudioanwendung unterstützt die Benutzerschnittstelle der Steuerungsstudioanwendung eine Vielzahl einzelner Bearbeitungsbereiche, die in einem gemeinsamen Bearbeitungsbereich der Benutzerschnittstelle vorgesehen sein können. Ein Benutzer kann einen oder mehrere logische Blöcke in jedem Bereich konfigurieren und anzeigen (beispielsweise Fieldbus-Funktionsblöcke). Zur Vereinfachung des Prozesses der Definition von Wechselbeziehungen zwischen den in verschiedenen Bereichen angezeigten logischen Blöcken ermöglicht die Benutzerschnittstelle es dem Benutzer, einen Ausgang eines logischen Blocks in einem ersten Bereich auszuwählen, ein Verbindungselement über die Bereichsgrenze des Bereiches hinaus zu einem Eingang eines in einem zweiten Bereich angezeigten logischen Blocks zu ziehen und die Verbindung fertigzustellen. Die Benutzerschnittstelle kann einen Verbindungsindikator (d. h. eine Linie) anzeigen, die sich über mehrere Bereiche innerhalb des Bearbeitungsbereichs der Benutzerschnittstelle erstreckt Bei einem anderen Ausführungsbeispiel kann die Benutzerschnittstelle Identifizierungs-Tags anzeigen (welche aus Klarheitsgründen beispielsweise farbkodiert sind), die an jedem Eingang oder Ausgang eines logischen Blocks, der an einen logischen Block in einem anderen Bereich gekoppelt ist, einen Bereich kennzeichnen, in dem die Verbindung hergestellt wurde. Auf diese Art kann der Benutzer schnell und effizient Verbindungen zwischen den logischen Blöcken definieren, ohne zu versuchen, alle Logischen Blöcke in einem einzelnen Bereich anzuordnen oder mehrere Dialogfenster zu starten. Gemäß einem anderen Aspekt kann der Benutzer problemlos alle Verbindungen in einem bestimmten Bereich identifizieren, die innerhalb des Bereichs nicht vollständig fertiggestellt sind. Diese Funktion kann die Inspektion und Fehlerbereinigung bei Steuerungsstrategien um Vieles vereinfachen, denn die Notwendigkeit der „Jagd” nach Endpunkten von Verbindungen über mehrere Ansichten hinweg wird eliminiert.
-
Nach einem weiteren Aspekt kann die Benutzerschnittstelle Bildschirme automatisch morphen, um künftige Aktionen, die der Benutzer möglicherweise unternehmen wird, besser vorherzusagen, und um das Layout gemäß einer bestimmten vom Benutzer verrichteten Aufgabe zu optimieren. Die Benutzerschnittstelle kann einem Benutzer zunächst einen Bildschirm präsentieren, der einen Befehlsbereich mit einem originalen Befehlssatz, einen Hauptinhalts-/Bearbeitungsbereich, einen Navigationsbereich und andere standardgemäße Bereiche umfasst. Jeder der angezeigten Bereiche kann eine standardgemäße Größe aufweisen und sich in einer standardgemäßen Position in Bezug auf jeden anderen Bereich befinden. Als Reaktion auf die benutzerseitige Aktivierung eines Steuerelements über den Befehlsbereich kann die Benutzerschnittstelle zusätzlich zur Weitergabe des Benutzerbefehls an die Ausführungsmaschine zur Ausführung mehrere Aktionen unternehmen. Bei einigen Ausführungsformen kann die Benutzerschnittstelle automatisch einen zusätzlichen oder mehrere zusätzliche Bereiche anzeigen, die zusätzlichen Bereiche basierend auf der in diesen zusätzlichen Bereichen anzuzeigenden Informationen größenmäßig verändern und die zuvor angezeigten Bereiche entsprechend anpassen, um die neuen Bereiche unterzubringen. Weiter kann die Benutzerschnittstelle die Steuerelemente im Befehlsbereich durch Ausblenden (beispielsweise Entfernen) von Steuerelementen, die mit dem vorangegangenen Benutzerbefehl nichts zu tun haben (oder bei einigen Ausführungsformen, deren Aufrufen im Anschluss an die vorangegangene benutzerseitige Auswahl statistisch unwahrscheinlich ist) automatisch anpassen, neue Steuerelemente, die angesichts der vorangegangenen Steuerelementeauswahl für den Benutzer relevant sein können, hinzufügen, die Positionierung und Größe der Steuerelemente anpassen (beispielsweise der Schaltflächen, Gruppen von Schaltflächen), die Schriftzeichengröße in manchen der Bereiche adaptieren usw. Daher braucht der Benutzer bei der Auswahl einer bestimmten Betriebsart Bereiche nicht von Hand zu abzudocken, zu aktivieren, zu verschieben oder in der Größe zu verändern.
-
Bei manchen Ausführungsbeispielen kann die Benutzerschnittstelle als Reaktion auf Auswahlen, die im Navigationsbereich vorgenommen wurden auf ähnliche Weise Bildschirme und insbesondere Bereiche morphen. Weiter kann die Benutzerschnittstelle es dem Benutzer ermöglichen, Präferenzen in Bezug auf die Positionierung von Bereichen, die Größe von Bereichen, hinsichtlich Text, Grafiken usw. zu speichern und Bildschirme sowohl gemäß Benutzerpräferenzen (beispielsweise Schriftgrößen von mindestens 10) als auch vordefinierten Prinzipien (der Anzeige eines unaufgelösten Referenzbereichs unter dem Hauptinhalts-/Bearbeitungsbereich als Reaktion auf eine benutzerseitig aktivierte Download-Option) zu morphen. Außerdem kann die Benutzerschnittstelle Bildschirme zum Zeitpunkt mehrerer Betriebsstadien morphen, um die vom Benutzer durchgeführte spezifische Aufgabe kontinuierlich anzupassen.
-
Ein weiterer Aspekt sieht vor, dass die Benutzerschnittstelle effiziente Techniken zur Assoziierung von Parametern bei der Rezepturkonfiguration für die Batch-Steuerung unterstützt. Die Steuerungsstudioanwendung kann eine interaktive Bildschirmauflistung der Bezeichnungen der verschiedenen Verfahren, Einheitsverfahren, Operationen und Phasenklassen einer Rezeptur anzeigen. Bei einer Ausführungsform werden die Verfahren, Einheitsverfahren, Operationen und Phasenklassen jeweils in Spalten angegeben, um eine interaktive Tabelle zu definieren. Zur Verzögerung der Phasenklassenparameter auf die Ebene einer Operation kann der Benutzer beispielsweise auf die Bezeichnung einer gewünschten Phasenklasse klicken oder ein anderes Steuerelement aktivieren, um die für die ausgewählte Phase definierten Parameter anzuzeigen, einen Parameter auswählen und den ausgewählten Parameter durch Ziehen und Ablegen an den Ort in der interaktiven Tabelle bewegen, der einer Zieloperation entspricht Die Benutzerschnittstelle kann dann unter Einsatz vordefinierter Namensgebungskonventionen (beispielsweise als Rollensatz in einer Datenbank gespeichert) automatisch eine Parameterbezeichnung erzeugen, den neu generierten Parameter in einem Abschnitt der interaktiven Tabelle, der der Operation entspricht, anzeigen, und den Parameter mit dem verzögerten Parameter assoziieren, d. h. eine Verknüpfung zwischen dem verzögerten Phasenklassenparameter und dem Parameter, auf den verzögert wird, erzeugen und speichern.
-
Bei mindestens einer Ausführungsform ermöglicht die Benutzerschnittstelle es dem Benutzer außerdem, Parameter durch Ziehen und Ablegen über mehrere Ebenen einer Hierarchie zu bewegen, beispielsweise von der Ebene einer Phasenklasse zur Ebene eines Einheitsverfahrens, und erzeugt auf jeder Zwischenebene automatisch Parameter zusammen mit dem assoziierten Textbeschreibungselement. Weiter kann die Benutzerschnittstelle über denselben oder einen ähnlichen Zieh- und Ablagevorgang das Zuweisen von Parametern zu vorbestehenden Parametern unterstützen. Auf diese Art braucht der Benutzer nicht eine Vielzahl von Dialogen zu durchlaufen oder Befehle zur Verzögerung oder Zuweisung von Parametern auszuwählen oder zu aktivieren (oder zu tippen).
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockdiagramm eines verteilten Prozesssteuerungsnetzwerks, das sich in einer Bearbeitungsanlage befindet und eine Arbeitsstation für das Bedienpersonal enthält, über die einige oder alle der Erzeugungstechniken der Benutzerschnittstelle der vorliegenden Offenbarung implementiert werden.
-
2 ist ein logisches Blockdiagramm eines Satzes von Anwendungen und anderer Einheiten, einschließlich intelligenter Prozessobjekte und Prozessmodule, die in der Arbeitsstation des Bedienpersonals aus 1 gespeichert sind und verwendet werden können, um eine verbesserte Funktionalität in einer Prozessanlage zu implementieren.
-
3 ist ein Beispiel eines Hauptbenutzerschnittstellenfensters eines Softwaremoduls zur Konzipierung und Simulierung einer Steuerungslogik für den Einsatz in der Prozesssteuerungsumgebung aus 1 dargestellt.
-
4 zeigt ein bekanntes aus zwei Bereichen bestehendes Layout einer Baumstruktur von Phasenklassen- oder Rezepturelementen.
-
5 zeigt ein Beispiel eines Baumstrukturlayouts für die Elemente aus 4, das von der in 1 illustrierten Benutzerschnittstelle erzeugt wurde.
-
6 und 7 zeigen mehrere Beispiels einer Konfigurationsregisterkarte, die von der Benutzerschnittstelle des in 1 illustrierten Systems generiert wurde.
-
8 zeigt ein beispielhaftes Parameterfenster, das von der Benutzerschnittstelle des in 1 dargestellten Systems erzeugt werden kann.
-
9 zeigt einen beispielhaften Status des Parameterfensters in 8, in dem der Benutzer einen zu bearbeitenden Parameter auswählt.
-
10 ist ein weiterer Status des Parameterfensters in 8.
-
11 zeigt eine beispielhafte Palette zur Verwendung bei der Konfigurierung einer Prozesssteuerungslogik mit der Benutzerschnittstelle des in 1 gezeigten Systems.
-
12 zeigt ein Ausführungsbeispiel der Zoomfunktion der Benutzerschnittstelle des in 1 gezeigten Systems.
-
13, 14 und 15 zeigen mehrere beispielhafte Bildschirme eines Ausdruckseditors, der in der Benutzerschnittstelle des in 1 gezeigten Systems enthalten sein kann.
-
16 bis 24 zeigen mehrere beispielhafte Betriebszustände eines Funktionsleistenmenüs, die von der Benutzerschnittstelle des in 1 gezeigten Systems erzeugt wurden.
-
25 und 26 zeigen zusätzliche Bildschirme für die Benutzerschnittstelle des in 1 gezeigten Systems.
-
27 ist ein beispielhafter Bildschirm zur Definition von Ebenen in dem Prozesssteuerungssystem aus 1.
-
28 ist ein Blockdiagramm eines beispielhaften Benutzerschnittstellengenerators, der in dem in 1 gezeigten System betrieben werden kann.
-
29 ist ein Blockdiagramm eines beispielhaften Verbindungs- und Parametererzeugungsmoduls, das zusammen mit der Benutzerschnittstelle einer Steuerungslogik-Auslegungsanwendung, die in dem System aus 1 verwendet wird, betriebsfähig ist.
-
30A bis C stellen beispielhafte Bildschirme dar, die von dem in 28 gezeigten Modul erzeugt werden, wenn der Benutzer eine Verbindung zwischen logischen Modulen definiert, die in separaten, unabhängig voneinander aktivierten und gesteuerten Bereichen in einem gemeinsamen Bearbeitungsbereich abgebildet sind.
-
31A bis C zeigen mehrere beispielhafte Bildschirme, die das Modul, das in 28 gezeigt ist, als Teil der Parameterverzögerung bei der Rezepturkonfiguration erzeugen kann.
-
31D zeigt einen beispielhaften Bildschirm, den das Modul, das in 28 gezeigt ist, während der Zuweisung eines Parameters zu einem vorbestehenden Parameter auf einer anderen Ebene der Rezepturhierarchie bei der Rezepturkonfiguration generieren kann.
-
32A bis C sind Blockdiagramme, die beispielhaftes Bildschirmmorphen, das von der Benutzerschnittstelle des in 1 gezeigten Systems bereitgestellt wird, schematisch darstellen.
-
33 ist ein weiteres Beispiel eines Hauptbenutzerschnittstellenfensters eines Softwaremoduls, das in der in 1 dargestellten Umgebung arbeitet.
-
DETAILLIERTE BESCHREIBUNG
-
Ein softwaregestütztes Prozesssteuerungssystem zur Definition, Bearbeitung und Fehlerbehebung im Zusammenhang mit Steuerungsstrategien, der Überwachung vom Betrieb einer Prozessanlage, in der die Steuerungsstrategien implementiert werden, der Verwaltung von Geräten und der Durchführung anderer Aktivitäten kann eine interaktive Benutzerschnittstelle zur Verwendung durch Ingenieure sowie menschliches Bedien- und Wartungspersonal enthalten. Durch die Bereitstellung kontextspezifischer dynamischer Menüs, intuitiver Steuerungselemente, eines konfigurierbaren Layouts der Bereiche usw. verringert die Benutzerschnittstelle die Zeit, die erforderlich ist, um eine gewünschte Aufgabe in der Prozesssteuerungsumgebung abzuarbeiten. Weiter vereinfacht die Benutzerschnittstelle durch die Unterstützung der Bearbeitung in multiplen Bereichen und der Implementierung von Techniken zur Erzeugung sichtbarer Verbindungselemente, die mehrere Bereiche übergreifen, oder der Verzögerung oder Verknüpfung von Parametern während der Konfiguration von Formulierungen, um nur zwei Beispiele zu berücksichtigen, verschiedene technische Aufgaben und er verbessert das Benutzererlebnis insgesamt. Ein beispielhaftes Prozesssteuerungssystem, bei dem die Benutzerschnittstelle implementiert werden kann, soll zunächst unter Bezugnahme auf 1 und 2 erläutert werden. Verschiedene Techniken, die im Rahmen von Anwendungen relevant sind, die die Benutzerschnittstelle insgesamt oder teilweise unterstützen, werden unter Bezugnahme auf 3 bis 31C besprochen. Wie nachstehend in weiteren Einzelheiten dargestellt wird, können diese Anwendungen eine Anwendung für das Design von Steuerungsstrategien enthalten (vorliegend auch als Steuerungsstudioanwendung bezeichnet) und eine Anwendung zur Lokalisierung, Anzeige, Konfigurierung und dem Herunterladen von Daten mit Bezug auf verschiedene physische und logische Einheiten wie beispielsweise Controller, physische Geräte, Steuerungsstrategien usw. (vorliegend auch als Explorer-Anwendung bezeichnet).
-
I. Bedienungsbezogene Schnittstellenanwendungen in einer Prozesssteuerungsanlage
-
Bezug nehmend auf 1 zeigt diese detailliert eine beispielhafte Prozessanlage 10, in der intelligente und/oder nicht intelligente Prozessobjekte verwendet werden, um prozesstechnische Grafikanzeigen und Prozessmodule zu bilden, wobei beide mit Steuermodulen integrierbar sind, um eine bessere Steuerung und Simulation innerhalb der Anlagenumgebung bereitzustellen. insbesondere verwendet die Prozessanlage 10 ein verteiltes Prozesssteuerungssystem, das eine oder mehrere Steuereinheiten 12 enthält, die über Eingangs-/Ausgangs(I/O)-Vorrichtungen oder Karten 18 jeweils mit einem oder mehreren Feldgeräten 14 und 16 verbunden sind und bei denen es sich beispielsweise um Fieldbus-, Profibus- oder HART-Schnittstellen bzw. standardgemäße 4–20 ma Schnittstellen usw. handeln kann. Die Steuereinheiten 12 sind auch über eine Datenvielfachleitung 24, bei der es sich beispielsweise um eine Ethernetverknüpfung handeln kann, mit einer oder mehreren Host- oder Arbeitsstationen des Bedienpersonals 20 und 22 verbunden. Eine Datenbank 28 kann an die Datenvielfachleitung 24 angeschlossen sein und fungiert als Data Historian, der Parameter, Statusinformationen und andere Daten erhebt und speichert, die mit den Steuereinheiten und Feldvorrichtungen innerhalb von Anlage 10 in Verbindung stehen und/oder als Konfigurationsdatenbank, in der die aktuelle Konfiguration des Prozesssteuerungssystems innerhalb der Anlage 10 gespeichert wird, so wie sie in die Steuereinheiten 12 und Feldvorrichtungen 14 und 16 heruntergeladen und gespeichert wurde. Während sich die Steuereinheiten 12, I/O-Karten 18 und Feldvorrichtungen 14 und 16 in der Regel innerhalb und verteilt in einer mitunter rauen Anlagenumgebung befinden, sind die Arbeitsstationen des Bedienpersonals 20 und 22 sowie die Datenbank 28 üblicherweise in Steuerungsräumen oder weniger rauen Umgebungen angeordnet, die problemlos von Steuereinheit oder Wartungspersonal beurteilt werden können.
-
Die einzelnen Steuereinheiten 12, bei denen es sich beispielhaft um die Steuereinheit DeltaVTM, vertrieben von Emerson Process Management, handeln kann, speichern und führen, wie allgemein bekannt, eine Steuereinheitsanwendung aus, die unter Verwendung einer Anzahl verschiedener, unabhängig ausgeführter Steuermodule oder Blöcke 29 eine Steuerungsstrategie implementiert. Die einzelnen Steuermodule 29 können aus Funktionsblöcken, wie sie allgemein bezeichnet werden, bestehen, wobei jeder Funktionsblock einen Teil oder eine Subroutine einer Gesamtsteuerroutine ist und (über Kommunikationsverbindungen, die als Verknüpfungen bezeichnet werden) mit anderen Funktionsblöcken zusammenarbeitet, um Prozesssteuerungsschleifen innerhalb der Prozessanlage 10 zu implementieren. Wie allgemein bekannt ist, üben Funktionsblöcke, die Objekte innerhalb eines objektorientierten Programmierungsprotokolls sein können, in der Regel eine der folgenden Funktionen aus: Eine Eingangsfunktion, wie sie beispielsweise mit einem Messwertgeber, Sensor oder anderen Prozessparametermessgerät assoziiert ist, eine Steuerungsfunktion, wie sie beispielsweise mit einer Steuerroutine, die PID-Steuerung, Fuzzy-Logik-Steuerung usw. durchführt, assoziiert ist, oder eine Ausgangsfunktion, die den Betrieb eines Gerätes steuert, beispielsweise eines Ventils, um eine physische Funktion innerhalb von Anlage 10 auszuüben. Natürlich existieren auch Hybridtypen und andere Arten komplexer Funktionsblöcke, wie beispielsweise modellprädiktive Steuereinheiten (model predictive controllers, MPCs), Optimierer usw. Während das Fieldbus-Protokoll und das DeltaV-Systemprotokoll Steuermodule und Funktionsblöcke nutzen, die dazu konzipiert sind, im Rahmen eines objektorientierten Programmierungsprotokolls implementiert zu werden, könnten die Steuermodule unter Verwendung jedes gewünschten Programmierungsplans, einschließlich beispielsweise eines sequenziellen Funktionsblocks, Leiterlogik usw. konzipiert werden, und sind nicht darauf begrenzt, unter Verwendung des Funktionsblocks oder einer anderen bestimmten Programmiertechnik konzipiert und implementiert zu werden.
-
In der in 1 dargestellten Anlage 10 kann es sich bei den Feldgeräten 14 und 16, die an die Steuereinheiten 12 angeschlossen sind, um standardgemäße 4–20-ma-Vorrichtungen handeln oder um intelligente Feldvorrichtungen wie beispielsweise HART-, Profibus- oder FOUNDATIONTM-Fieldbus-Feldvorrichtungen, die einen Prozessor und einen Speicher enthalten, oder um jede andere gewünschte Art von Vorrichtung. Manche dieser Vorrichtungen, wie beispielsweise Fieldbus-Feldvorrichtungen (in 1 mit Bezugszahl 16 gekennzeichnet), können Module oder Submodule, wie beispielsweise Funktionsblöcke, die mit der von den Steuereinheiten 12 implementierten Steuerungsstrategie assoziiert sind, speichern und ausführen. Funktionsblöcke 30, die in 1 als in zwei verschiedenen der Fieldbus-Feldvorrichtungen 16 vorgesehen dargestellt sind, können zusammen mit der Ausführung der Steuermodule 29 innerhalb der Steuereinheiten 12 ausgeführt werden, um die Prozesssteuerung zu implementieren, wie an sich bekannt. Natürlich können die Feldvorrichtungen 14 und 16 Vorrichtungen jeder Art sein, beispielsweise Sensoren, Ventile, Messwertgeber, Positionierer usw. Die I/O-Vorrichtungen 18 können I/O-Vorrichtungen jeder Art sein, die mit einem beliebigen Kommunikations- oder Steuereinheitsprotokoll, wie beispielsweise HART, Fieldbus, Profibus usw, konform sind.
-
In der Prozessanlage 10 aus 1 enthält die Arbeitsstation 20 eine Suite von Schnittstellenanwendungen für das Bedienpersonal 32 und Datenstrukturen, auf die jeder zugriffsberechtigte Benutzer zugreifen kann (beispielsweise Konfigurationsingenieure, Bedienpersonal, Wartungstechniker, Schichtleiter und andere Arten von Benutzern), um Vorrichtungen, Einheiten usw., die innerhalb der Prozessanlage 10 verbunden sind, anzuzeigen und mit Funktionalität zu versehen. Die Suite der Schnittstellenanwendungen für das Bedienpersonal 32 wird in einem Speicher 34 der Arbeitsstation 20 gespeichert, wobei jede der Anwendungen oder Einheiten innerhalb der Anwendungssuite 32 entsprechend adaptiert ist, um von einem Prozessor 36, der mit der Arbeitsstation 20 assoziiert ist, ausgeführt zu werden. Während die gesamte Anwendungssuite 32 darstellungsgemäß in der Arbeitsstation 20 gespeichert ist, könnten einige dieser Anwendungen oder Einheiten auch in anderen Arbeitsstationen oder Rechnern innerhalb von oder assoziiert mit der Anlage 10 gespeichert und ausgeführt werden. Weiter kann die Anwendungssuite Anzeigeausgänge an einen Anzeigebildschirm 37 liefern, der mit der Arbeitsstation 20 oder einem anderen gewünschten Bildschirm oder einer anderen gewünschten Anzeigevorrichtung assoziiert ist, einschließlich von Hand gehaltener Vorrichtungen, Laptop-Computer, anderer Arbeitsstationen, Drucker usw. In ähnlicher Weise können die Anwendungen innerhalb der Anwendungssuite 32 aufgeteilt und mittels zwei oder mehreren Computern oder Maschinen ausgeführt werden und können für einen gemeinsamen Betrieb konfiguriert sein.
-
Allgemein ausgedrückt bietet oder ermöglicht die Anwendungssuite 32 die Erstellung und Verwendung drei verschiedener Arten von Einheiten, deren Betrieb miteinander integriert sein kann, um eine bessere Steuerung, Simulation und bessere Anzeigefunktionen innerhalb der Prozessanlage 10 bereitzustellen. Insbesondere kann die Anwendungssuite 32 zur Erstellung und Implementierung von Prozessgrafikanzeigen 35 (die im Allgemeinen eine Bedienungsanzeige bereitstellen, die sich auf einen Teil der Prozessanlage bezieht), von Prozessmodulen 39 (die in der Regel eine Simulation eines Teils der Prozessanlage bereitstellen) und von Prozesssteuermodulen wie beispielsweise den Steuermodulen 29 verwendet werden, die im Allgemeinen eine Online-Steuerung des Prozesses bereitstellen oder durchführen. Die Prozesssteuermodule 29 sind im Allgemeinen an sich gut bekannt und können jede Art von Steuermodul, wie beispielsweise Funktionsblocksteuermodule usw., umfassen. Bei den Prozessgrafik-Anzeigeelementen 35, die nachstehend in weiteren Einzelheiten erläutert werden, handelt es sich im Allgemeinen um Elemente, die vom Bedienpersonal, Ingenieur oder anderen Anzeigen verwendet werden, um einen Benutzer wie beispielsweise das Bedienpersonal mit Informationen, im Hinblick auf den Betrieb, die Konfiguration oder Einrichtung der Prozessanlage und die darin angeordneten Elemente zu versorgen. Die Prozessmodule 39 sind im Allgemeinen eng mit den Prozessgrafik-Displayelementen 35 gekoppelt und können verwendet werden, um Betriebssimulationen der Prozessanlage oder einiger der unterschiedlichen Elemente in der Anlage durchzuführen, die in der durch die Prozessgrafik-Anzeige 35 dargestellten Art verbunden sind. Die Prozessgrafik-Anzeigen 35 und Prozessmodule 39 sind darstellungsgemäß in den Arbeitsstationen 20 und 22 gespeichert und werden von diesen ausgeführt, obwohl die Prozessgrafik-Anzeigen 35 und die Prozessmodule 39 auch auf einen beliebigen anderen mit der Prozesssteuerungsanlage 10 assoziierten Rechner heruntergeladen und von diesem ausgeführt werden können, einschließlich einem Laptop-Computer, von Hand gehaltenen Vorrichtungen usw.
-
2 illustriert einige der Anwendungen und Datenstrukturen oder anderen Einheiten innerhalb der Anwendungssuite 32 der Arbeitsstation 20. Insbesondere umfasst die Anwendungssuite 32 die Steuermodul-, Prozessmodul- und Grafikanzeige-Konfigurationsanwendungen 38, die von einem Konfigurationsingenieur verwendet werden, um Steuermodule, Prozessmodule (auch als Prozessablaufmodule bezeichnet) und die damit assoziierten grafischen Anzeigen zu erstellen. Bei einigen Ausführungsformen enthalten die Konfigurationsanwendungen 38 eine Steuerlogikauslegung und eine Konfigurationsanwendung, die vorliegend als eine Steuerungsstudioanwendung 38A bezeichnet wird, sowie eine Anwendung zum Auffinden und Konfigurieren verschiedener Einheiten innerhalb einer Prozessanlage zum Herunterladen von Steuermodulen auf physische Einheiten usw., die vorliegend als Explorer-Anwendung 38B bezeichnet wird. Während es sich bei der Steuerungsstudioanwendung 38A um eine beliebige standardgemäße oder an sich bekannte Konfigurationsanwendung des Steuermoduls handeln kann, kann (können) die Konfigurationsanwendung(en) der Prozessmodul- und Grafikanzeigen unter Verwendung eines oder mehrerer intelligenter Prozessobjekte, deren Wesen nachstehend im Einzelnen noch erläutert wird, Prozessmodule und Grafikanzeigen erstellen. Obwohl die Konfigurationsanwendungen des Prozessmoduls und der Prozessgrafik 38 separat gezeigt werden, könnte zudem auch eine einzelne Konfigurationsanwendung beide dieser Arten von Elementen erstellen.
-
Eine Bibliothek 40 intelligenter Prozessobjekte 42 enthält Beispiele oder Vorlagen intelligenter Prozessobjekte 42, auf die die Konfigurationsanwendung 38 zugreifen und die sie kopieren und dazu verwenden kann, die Prozessmodule 39 und Grafikanzeigen 35 zu erstellen. Es liegt auf der Hand, dass die Konfigurationsanwendung 38 verwendet werden kann, um ein oder mehrere Prozessmodule 39 zu erstellen, wobei jedes aus einem oder mehreren intelligenten Prozessobjekten 42 besteht oder aus diesen erstellt wurde und einen oder mehrere Prozessabläufe oder Simulationsalgorithmen 45, die in einem Prozessmodulspeicher 46 gespeichert sind, enthalten kann. Weiter kann die Konfigurationsanwendung 38 dazu verwendet werden, eine oder mehrere Grafikanzeigen 35 zu erstellen, wobei jede aus einem oder mehreren intelligenten Prozessobjekten 42 besteht oder aus diesen erstellt wurde und eine beliebige Anzahl miteinander verbundener Anzeigeelemente enthalten kann. Eine der Grafikanzeigen 35b ist in erweiterter Form in 2 veranschaulicht und enthält eine Darstellung eines Prozesselementsatzes, wie beispielsweise Ventile, Tanks, Sensoren und Strömungsmesswertgeber, die durch Verbindungselemente, bei denen es sich um Rohrleitungen, Rohre, Stromkabel, Förderanlagen usw. handeln kann, miteinander verbunden sind.
-
Eine Ausführungsmaschine 48 betreibt oder implementiert die einzelnen Grafikanzeigen 35 und Prozessmodule 39 während der Laufzeit, um eine oder mehrere Prozessanzeigen für das Bedienpersonal zu erstellen und die Simulationsfunktionalität zu implementieren, die mit den Prozessmodulen 39 assoziiert ist. Die Ausführungsmaschine 48 kann eine Regeldatenbank 50 verwenden, die die Logik definiert, die insgesamt auf den Prozessmodulen 39 und insbesondere auf den intelligenten Prozessobjekten innerhalb dieser Module zu implementieren ist. Die Ausführungsmaschine 48 kann auch eine Verbindungsmatrix 52 verwenden, die die Verbindungen zwischen den Prozesselementen innerhalb der Anlage 10 und innerhalb der Prozessmodule 39 festlegt, um die Funktionalität für die Prozessmodule 39 zu implementieren.
-
2 illustriert eines der intelligenten Prozessobjekte 42e in weiteren Einzelheiten. Während das intelligente Prozessobjekt 42e als eines der intelligenten Objekte der Vorlage abgebildet ist, liegt es auf der Hand, dass andere intelligente Prozessobjekte im Allgemeinen dieselben oder ähnliche Elemente, Funktionen, Parameter usw. enthalten, wie sie in Bezug auf das intelligente Prozessobjekt 42e beschrieben werden, und dass die spezifischen Details oder Werte dieser Elemente, Funktionen und Parameter geändert oder von einem intelligenten Prozessobjekt zum anderen variiert werden können, jeweils abhängig von dem Wesen und der Verwendung jenes intelligenten Prozessobjekts. Weiter trifft zu, dass, obwohl das intelligente Prozessobjekt 42e ein Objekt innerhalb einer objektorientierten Programmierumgebung sein kann und damit Datenspeicher, Eingänge und Ausgänge sowie damit in Verbindung stehende Verfahren aufweist, dieses intelligente Prozessobjekt von jedem beliebigen anderen gewünschten Programmierparadigma oder -protokoll erstellt und innerhalb dessen implementiert werden kann.
-
Es liegt auf der Hand, dass das intelligente Prozessobjekt 42e vor seiner Instantiierung ein Objekt ist, das mit einer bestimmten Art von Einheit innerhalb der Prozessanlage 10 aus 1 assoziiert ist, wie beispielsweise einer physischen oder logischen Einheit. Jedoch kann das intelligente Prozessobjekt 42e nach seiner Kopierung und Instantiierung mit einer bestimmten Einheit innerhalb der Prozessanlage gekoppelt werden. In jedem Fall umfasst das intelligente Prozessobjekt 42e einen Datenspeicher 53, der zur Speicherung von Daten verwendet wird, die von der logischen Einheit, mit der das intelligente Prozessobjekt 42e assoziiert ist, empfangen wurden oder mit dieser in Zusammenhang stehen. Der Datenspeicher 53 besteht im Allgemeinen aus einem Datenspeicher 53a, in dem allgemeine oder permanente Informationen zu der Einheit, auf die sich das intelligente Prozessobjekt 42e bezieht, gespeichert werden, wie beispielsweise Hersteller, Überarbeitung, Name, Typ usw. Ein Datenspeicher 53b kann variable oder sich ändernde Daten speichern, wie beispielsweise Parameter-, Status-, Eingangs- und Ausgangsdaten, Kostendaten oder andere Daten über die Einheit, auf die sich das intelligente Prozessobjekt 42e bezieht, einschließlich Daten im Zusammenhang mit der Einheit dazu, wie die Einheit in der Vergangenheit innerhalb der Prozessanlage 10 existierte oder aktuell existiert. Natürlich kann das intelligente Prozessobjekt 42e dazu konfiguriert oder programmiert werden, diese Daten (beispielsweise Kostendaten) in periodischen oder nicht periodischen Abständen zu empfangen, und zwar jeweils über eine beliebige gewünschte Kommunikationsverknüpfung von der Einheit selbst, über den Ethernetbus 24 von dem Historian 28 oder auf jede andere gewünschte Art. Ein Datenspeicher 53c kann eine grafische Darstellung der Einheit speichern, auf die sich das intelligente Prozessobjekt 42e bezieht und welche für die tatsächliche Anzeige an das Bedienpersonal mittels einer Bedienschnittstelle verwendet wird, wie beispielsweise der Bildschirm 37, der mit der Arbeitsstation 20 in 1 assoziiert ist. Natürlich kann die grafische Darstellung Platzhalter für Informationen über die Einheit enthalten (jeweils durch Unterstreichen innerhalb der Datenbank 53c markiert), beispielsweise Informationen, die durch die Parameter oder andere variable Daten über die Einheit definiert sind, wie sie im Datenspeicher 53b gespeichert sind. Diese Parameterdaten können in den grafischen Platzhaltern angezeigt werden, wenn die grafische Darstellung dem Bedienpersonal auf der Anzeigevorrichtung 37 als Teil einer der Grafikanzeigen 35 angezeigt wird. Die grafische Darstellung (und das intelligente Prozessobjekt 42e) können auch vordefinierte Verbindungspunkte enthalten (jeweils durch ein „X” in der Datenbank 53c markiert), mit deren Hilfe das Bedienpersonal oder der Konfigurationsingenieur dem Prozesselement Komponenten, wie in der grafischen Abbildung dargestellt, vor- oder nachschalten kann. Natürlich ermöglichen diese Verbindungspunkte es dem intelligenten Prozessobjekt 42e auch, sich der Elemente, die mit dem intelligenten Objekt, so wie es innerhalb des Prozessmoduls konfiguriert ist, verbunden sind, bewusst zu sein, und können eine Art von Verbindungselement spezifizieren, das zu verwenden ist, wie beispielsweise eine Rohrleitung, ein Rohr usw., eine Strömung, die mit dem Element assoziiert ist usw.
-
Das intelligente Prozessobjekt 42e kann auch einen oder mehrere Eingänge 54 und Ausgänge 56 aufweisen, um die Kommunikation mit anderen intelligenten Prozessobjekten innerhalb oder außerhalb eines Prozessmoduls, in dem das intelligente Prozessobjekt 42 verwendet wird, zu ermöglichen. Die Verbindung der Eingänge 54 und Ausgänge 56 mit anderen intelligenten Prozessobjekten kann von einem Konfigurationsingenieur im Verlauf der Konfiguration eines Prozessmoduls konfiguriert werden, indem einfach andere intelligente Prozessobjekte mit diesen Eingängen und Ausgängen verbunden werden oder indem bestimmte Kommunikationsvorgänge, die zwischen diesen intelligenten Prozessobjekten stattfinden sollen, spezifiziert werden. Manche dieser Eingänge und Ausgänge können als mit denjenigen intelligenten Prozessobjekte verbunden definiert werden, die mit den vordefinierten Verbindungspunkten für die intelligenten Prozessobjekte, wie weiter oben besprochen, verbunden sind. Diese Eingänge 54 und Ausgänge 56 können auch mittels eines Regelsatzes innerhalb der Regeldatenbank 50 und der Verbindungsmatrix 52, wo die Verbindungen zwischen Vorrichtungen oder Einheiten innerhalb des Prozesses 10 bestimmt oder definiert werden, bestimmt oder definiert werden. Die Eingänge 54 und die Ausgänge 56, die mit ihnen assoziierte Datenspeicher oder Puffer aufweisen, werden allgemein ausgedrückt dazu verwendet, um eine Datenübermittlung von anderen intelligenten Prozessobjekten an das intelligente Prozessobjekt 42e bereitzustellen oder um eine Übermittlung Daten, die innerhalb oder von dem intelligenten Prozessobjekt 42e oder anderen intelligenten Prozessobjekten gespeichert oder erzeugt werden, an andere intelligente Prozessobjekte bereitzustellen. Diese Eingänge und Ausgänge können auch verwendet werden, um Übermittlungen zwischen dem intelligenten Prozessobjekt 42e und anderen Objekten innerhalb des Prozesssteuerungssystems bereitzustellen, wie beispielsweise Steuermodule innerhalb der Steuereinheit 12, Feldvorrichtungen 14, 16 usw.
-
Wie in 2 veranschaulicht, weist das intelligente Prozessobjekt 42e auch einen Verfahrensspeicher 58 auf, der verwendet wird, um null, ein oder mehr Verfahren 60 (in 2 gezeigt als Verfahren 60a, 60b und 60c) zu speichern, bei denen es sich um Algorithmen handeln kann, die vom intelligenten Prozessobjekt 42e bei der Ausführung eines Prozessmoduls, in dem das intelligente Prozessobjekt 42 verwendet wird, zu implementieren sind. Im Allgemeinen gilt, dass die Verfahren 60, die in dem Verfahrensspeicher 58 gespeichert sind, die innerhalb der Datenspeicheranteile 53a und 53b gespeicherten Daten verwenden, sowie Daten, die von anderen intelligenten Prozessobjekten erhalten werden oder sogar Daten, die über die Eingänge 54 und Ausgänge 56 von anderen Quellen stammen, wie beispielsweise von der Konfigurationsdatenbank oder dem Historian 28, um Informationen über die Prozessanlage 10 oder eine Einheit innerhalb dieser Anlage 10 zu bestimmen. Beispielsweise können die Verfahren 60 schlechte oder minderwertige Betriebsbedingungen im Zusammenhang mit der durch das intelligente Prozessobjekt 42e definierten Einheit bestimmen, Fehler im Zusammenhang mit dieser oder anderen Einheiten innerhalb der Prozessanlage 10 usw. Die Verfahren 60 können vorkonfiguriert oder aufgrund der Art oder Klasse des intelligenten Prozessobjekts bereitgestellt werden und werden im Allgemeinen jedes Mal ausgeführt, wenn das intelligente Prozessobjekt 42e während der Laufzeit innerhalb der Ausführungsmaschine ausgeführt wird. Zu den beispielhaften Verfahren 60, die im Rahmen eines intelligenten Prozessobjekts wie z. B. des intelligenten Prozessobjekts 42e bereitgestellt werden können, gehören der Nachweis von Lecks, Totzonen, Totzeit, Bewegung, Variabilität, die Bedingungsüberwachung, die Berechnung von Kosten oder andere Bedingungen im Zusammenhang mit der Einheit.
-
Die Verfahren 60 können auch dazu vorgesehen sein, die Simulierung des Betriebs der Prozesseinheit, die mit dem intelligenten Prozessobjekt assoziiert ist, in Bezug auf das Material zu unterstützen, das durch die Prozesseinheit fließt. Damit können die Verfahren 60 dazu vorgesehen sein, den Masse- und Energieausgleich, Strömungen, Temperaturen, Zusammensetzungen, Dampfzustände und andere Parameter auf Systemebene oder Flussebene zu berechnen, die mit dem Material in der Anlage 10 assoziiert sind, um den Betrieb des Elements zu simulieren, indem die erwarteten Ausgänge auf Grundlage der bereitgestellten Eingänge usw. berechnet werden. Natürlich sind dies nur einige der Verfahren, die in einem intelligenten Prozessobjekt 42e gespeichert werden und ablaufen können; es gibt viele weitere Verfahren, die einsetzbar sind, wobei solche Verfahren im Allgemeinen auf der Grundlage des Typs der abgebildeten Einheit, der Art, wie jene Einheit verbunden ist und in der Prozessanlage zum Einsatz kommt, sowie auf Grundlage anderer Faktoren bestimmt werden. Es ist wichtig festzuhalten, dass, obwohl das intelligente Prozessobjekt 42e Verfahren zum Nachweis der Bedingungen auf Systemebene, von Fehlern usw. speichern und ausführen kann, diese Verfahren auch verwendet werden können, um andere Informationen über Vorrichtungen, logische Elemente, wie beispielsweise Prozesssteuermodule und -schleifen sowie andere Einheiten, die nicht auf der Systemebene sind, zu bestimmen. Sofern dies gewünscht ist, können die Verfahren 60 in einer beliebigen Programmiersprache, wie beispielsweise C, C++, C# usw. bereitgestellt oder programmiert werden; oder es kann auf sie verwiesen werden oder sie können anwendbare Regeln innerhalb der Regeldatenbank 50 definieren, die während der Ausführung für das intelligente Prozessobjekt 42e ablaufen sollen.
-
Sofern dies gewünscht wird, kann jedes intelligente Prozessobjekt eine Bibliothek der anwendbaren Algorithmen ober Verfahren enthalten, die verwendet werden können, um bei hergestellter Verbindung innerhalb eines Prozessmoduls das Simulationsverhalten des intelligenten Prozessobjekts zu definieren. Eine Bibliothek dieser Art ist in einem Pull-Down-Menü 61 für das intelligente Prozessobjekt 42e in 2 abgebildet; ein ähnliches Menü kann mit jedem anderen intelligenten Prozessobjekt assoziiert werden. Der Konfigurationsingenieur kann das Simulationsverhalten des intelligenten Prozessobjekts definieren, wenn dieses intelligente Prozessobjekt im Prozessmodul 39 platziert wird, indem beispielsweise über das Pull-Down-Menü 61 eine der Bibliotheken der Simulationsalgorithmen ausgewählt wird (genannt Verfahren 1, Verfahren 2 usw.). In dieser Art kann der Konfigurationsingenieur verschiedene Simulationsverhalten für ein intelligentes Prozessobjekt nach Maßgabe der Art oder des Wesen des Prozesses, für den das intelligente Prozessobjekt zur Modellierung verwendet wird, definieren.
-
Stattdessen kann der Konfigurationsingenieur, sofern dies gewünscht ist, auch einen gesetzlich geschützten oder anderen vom Benutzer bereitgestellten Algorithmus verwenden, um das Simulationsverhalten des Prozesselements, das durch den intelligenten Prozessblock definiert ist, festzulegen. Ein solcher benutzerdefinierter Algorithmus (gezeigt als „benutzerdefinierte” Eingabe im Pull-Down-Menü 61) kann bereitgestellt werden und in einem intelligenten Prozessobjekt gespeichert werden, wenn jenes intelligente Prozessobjekt innerhalb eines Prozessmoduls 39 platziert oder verwendet wird. Diese Funktionsweise ermöglicht es dem Benutzer, das Simulationsverhalten benutzerspezifisch anzupassen, um damit eine bessere oder genauere Simulation bereitzustellen. Sofern dies gewünscht ist, können, wie nachstehend in weiteren Einzelheiten ausgeführt, die intelligenten Prozessobjekte 42 oder die einzelnen Prozessmodule 39 einen benutzerseitig betätigbaren Schalter aufweisen (wie beispielsweise einen elektronischen Schalter oder einen Bitschalter), mit Hilfe dessen die Verwendung von Simulationsalgorithmen innerhalb der intelligenten Prozessobjekte deaktiviert wird und der stattdessen veranlasst, dass das Verhalten des Prozessmoduls von einem High-Fidelity-Simulationspaket oder -Programm, wie beispielsweise von HYSYS bereitgestellt, bestimmt wird In diesem Fall erhält das intelligente Prozessobjekt oder das Prozessmodul simulierte Parameterdaten von der High-Fidelity-Simulation, im Gegensatz zur Verwendung der Simulationsalgorithmen innerhalb der intelligenten Prozessobjekte an sich.
-
Bei der Ausführung einer Grafikanzeige 35 oder eines Prozessmoduls 39 durch die Ausführungsmaschine 48 implementiert die Maschine 48 die von den Eingängen 54 und Ausgängen 56 definierten Übermittlungen an die einzelnen intelligenten Prozessobjekte in der Grafikanzeige 35 oder im Prozessmodul 39 und kann die Verfahren 60 für jedes dieser Objekte implementieren, um die Funktionalität auszuführen, die von den Verfahren 60 bereitgestellt wird. Wie weiter oben angemerkt, kann sich die Funktionalität der Verfahren 60 in der Programmierung innerhalb des intelligenten Prozessobjekts befinden oder durch einen Regelsatz innerhalb der Regeldatenbank 50, die von der Maschine 48 ausgeführt wird, definiert sein, jeweils basierend auf der Art, Klasse, Identifikation, Name der Tag-Identifizierung usw. eines intelligenten Prozessobjekts, um die Funktionalität, die durch diese Regeln definiert ist, zu implementieren.
-
Man wird erkennen, dass eine Instanz eines intelligenten Prozessobjekts 42e eine Tag-Identifizierung oder einen einmaligen Namen innerhalb des Kontexts des Prozessmoduls, mit dem das intelligente Prozessobjekt 42e assoziiert ist, aufweist; dieses Identifizierungs-Tag oder dieser einmalige Name kann verwendet werden, um Übermittlungen an das und von dem intelligenten Prozessobjekt 42e bereitzustellen und kann während der Laufzeit von der Ausführungsmaschine 48 referenziert werden. Prozessmodul-Tags sollten innerhalb der Steuerungssystemkonfiguration einzigartig sein. Diese Tagging-Konvention erlaubt es Elementen innerhalb der Prozessmodule 39, von Elementen innerhalb anderer Einheiten der Prozessgrafikanzeigen 35, der Prozessmodule 39 und sogar der Steuermodule 29 referenziert zu werden. Weiter können die Parameter des intelligenten Prozessobjekts 42e einfache Parameter, wie beispielsweise einfache Werte, strukturierte Parameter oder intelligente Parameter sein, die die erwarteten Einheiten und Attribute, die damit assoziiert sind, kennen. Intelligente Parameter können von der Prozessregelmaschine oder Ausführungsmaschine 48 interpretiert und verwendet werden, um sicherzustellen, dass alle Signale in derselben Einheit gesendet oder ordnungsgemäß konvertiert werden. Intelligente Regeln können auch dazu verwendet werden, Gruppen von Alarmen für die intelligenten Prozessobjekte (oder Prozessmodule) ein- und auszuschalten, um eine intelligente Alarmstrategie und/oder Schnittstelle für das Bedienpersonal zu erstellen. Weiter können intelligente Prozessobjektklassen mit Geräten und Modulklassen innerhalb der Prozesssteuerungsstrategie der Anlage 10 assoziiert sein, um eine bekannte Verknüpfung zwischen einem intelligenten Prozessobjekt und den Prozessvariablen, die es interpretierten oder auf die es zugreifen muss, bereitzustellen.
-
Intelligente Prozessobjekte können bei Verwendung im Rahmen von Prozessgrafikanzeigen oder Prozessmodulen auch Betriebsart, Status und Alarmverhalten enthalten, so dass diese intelligenten Objekte während der Laufzeit in unterschiedliche Modi gebracht werden können, wie beispielsweise die Modi Aus, Start und Normal, können einen Status bereitstellen, der mit dem Objekt jeweils basierend auf dessen aktuellem Betriebsstatus assoziiert ist, und Alarme bereitstellen, die auf den erfassten Bedingungen basieren, beispielsweise einem Parameters außerhalb des Geltungsbereichs, mit Begrenzung, hoher Variabilität usw. Intelligente Prozessobjekte können auch eine Klassen-/Unterklassenhierarchie aufweisen, die es ihnen ermöglicht, in Klassenbibliotheken kategorisiert zu werden, gemeinsam in einer Kombinationsstruktur gesammelt zu werden usw. Weiter können intelligente Prozessobjekte Informationen von anderen Elementen verwenden, wie beispielsweise Steuermodulen und anderen Objekten, um es dem intelligenten Prozessobjekt zu ermöglichen, zu erkennen, wenn die mit ihm assoziierte Einheit belegt ist oder beispielsweise von einem Chargensteuerungsprozess innerhalb der Anlage 10 übernommen wurde.
-
Intelligente Prozessobjekte können mit jeder gewünschten Prozesseinheit assoziiert sein, beispielsweise mit physischen Vorrichtungen wie Pumpen, Tanks, Ventilen usw., oder logischen Einheiten, wie beispielsweise Prozessbereichen, Messungen oder Betätigungselementen, Steuerungsstrategien usw. In manchen Fällen können intelligente Prozessobjekte mit Verbindungsteilen, wie beispielsweise Rohrleitungen, Rohren, Förderanlagen oder einer beliebigen anderen Vorrichtung oder Einheit, die Material, Strom, Gas usw. von einem Punkt zu einem anderen Punkt innerhalb des Prozesses befördert, assoziiert sein. Intelligente Prozessobjekte, die mit Verbindungsteilen assoziiert sind, und die vorliegend mitunter als intelligente Verknüpfungen oder Verbindungselemente bezeichnet werden, werden auch per Tag identifiziert (obwohl die tatsächliche Vorrichtung oder das Verbindungselement selbst möglicherweise nicht per Tag identifiziert oder in der Lage ist, innerhalb der Prozessanlage 10 zu kommunizieren) und werden im Allgemeinen dazu verwendet, den Materialfluss zwischen anderen Elementen im Prozess abzubilden.
-
Zu den intelligenten Verknüpfungen gehören in der Regel Eigenschaften oder Parameter, die definieren, wie unterschiedliche Materialien oder Phänomene (wie beispielsweise Elektrizität) durch die Verbindung fließen (beispielsweise Dampf Elektrizität, Wasser, Abwässer usw.). Diese Parameter können die Art und das Wesen des Strömung (wie beispielsweise die allgemeine Geschwindigkeit, Reibungskoeffizienten, Art der Strömung, turbulent oder nicht turbulent, elektromagnetisch usw.) durch das Verbindungselement und die mögliche Strömungsrichtung durch das Verbindungselement anzeigen. Intelligente Verknüpfungen können Programmierungen oder Verfahren beinhalten, die sicherstellen, dass die Einheiten des Quell- und Zielobjekts, mit dem die intelligente Verknüpfung verbunden ist, zueinander passen und, sofern sie nicht aufeinander abgestimmt sind, eine Konversion durchführen können. Die Verfahren der intelligenten Verknüpfung können auch die Strömung durch das Verbindungselement modellieren, indem sie ein Modell oder einen Algorithmus verwenden, um die Geschwindigkeit oder das Wesen der Strömung durch die tatsächlichen Verbindungselemente, Länge und Größe der physischen Verbindungen, Transportverzögerung usw. abzuschätzen. Die gespeicherten Parameter für das intelligente Prozessobjekt (wie beispielsweise Reibungsparameter) können bei diesen Verfahren eingesetzt werden. Im Wesentlichen ermöglichen die intelligenten Verknüpfungen oder Verbindungselemente daher, dass die intelligenten Prozessobjekte sich anderer vor- und nachgeschalteter Objekte oder Einheiten bewusst sind. Natürlich können intelligente Verknüpfungen auf eine beliebige gewünschte oder benutzerfreundliche Art beispielsweise die Verbindungen zwischen Objekten, die Art des Fluids, beispielsweise eine Flüssigkeit, ein Gas, Elektrizität usw., innerhalb des Systems, die vor- und nachgeschaltete Seite von Einheiten, welche anderen Einheiten der Einheit dieses intelligenten Prozessobjekts vor- und nachgeschaltet sind, die Richtung des Material-, Fluid-, elektrischen Flusses usw. definieren. Bei einer Ausführungsform kann die Matrix 52 vor der Ausführung der Prozessstrommodule erstellt werden und kann für die intelligenten Verknüpfungen die Zwischenverbindungen zwischen den verschiedenen Vorrichtungen innerhalb der Anlage definieren und damit die Zwischenverbindungen zwischen den unterschiedlichen intelligenten Prozessobjekten. In der Tat kann die Ausführungsmaschine 48 die Matrix 52 verwenden, um vor- und nachgeschaltete Einheiten aufzufinden und damit die Übermittlungen zwischen den intelligenten Prozessobjekten und den Verfahren, die mit den intelligenten Prozessobjekten assoziiert sind, zu definieren. Weiter können ein oder mehrere Regelsätze bereitgestellt werden und von den intelligenten Prozessobjekten dazu verwendet werden, um miteinander in eine Wechselbeziehung zu treten und Daten voneinander zu erhalten, wie sie für die Verfahren innerhalb der intelligenten Prozessobjekte benötigt werden, und die Auswirkungen der intelligenten Objekte, die mit den Ausgangsverbindungen assoziiert sind, zu ermitteln.
-
Sofern dies gewünscht wird, kann das intelligente Prozessobjekt 42e auch Hot-Links, wie beispielsweise URLs, für entscheidende Dokumentation umfassen, die für die Art des Objekts anwendbar oder für die Instanz der Vorrichtung spezifisch sein kann (je nach der kritischen Relevanz und Anwendung), auf die sich das intelligente Prozessobjekt 42e bezieht. Die Dokumentation kann sowohl vom Hersteller bereitgestellt werden als auch benutzerspezifisch sein. Zu einigen Beispielen für Dokumentation gehören Konfiguration, Herauf- und Herunterfahrverfahren, Betrieb und Wartung. Sofern dies gewünscht ist, kann das Bedienpersonal auf ein Objekt klicken, so wie es in einer Bedienanzeige angezeigt ist, um die spezifische Instanz (sofern existent) und generische Dokumentation für das Objekt oder assoziierte Vorrichtung aufzurufen. Weiter kann das Bedienpersonal in der Lage sein, Dokumentation unabhängig von der Systemsoftware hinzuzufügen/zu löschen/zu ändern, wie beispielsweise Wartungsanfragen, Datensätze betrieblicher Probleme usw. Weiter können diese Hot-Links benutzerseitig konfigurier- oder veränderbar sein, um die Möglichkeit zu bieten, den Objekten innerhalb der Bedienschnittstelle Informationsverknüpfungen hinzuzufügen, um eine schnelle Navigation zu den entsprechenden Informationen bereitzustellen, die mit dem Objekt assoziiert sind, und die Fähigkeit bereitzustellen, Arbeitsanleitungen, die spezifisch für den Kunden, den spezifischen Objekttyp oder gar die spezifische Instanz des Objekts sind, hinzuzufügen.
-
Während die Prozessmodule und Prozessgrafiken vorstehend als durch die Querverbindung verschiedener intelligenter Prozessobjekte erstellt beschrieben wurden, ist es auch möglich, sie separat zu erstellen. Beispielsweise kann eine Prozessgrafik unter Verwendung intelligenter Prozessobjekte erstellt werden, und nach ihrer Fertigstellung kann ein Prozessmodul für jene Grafik basierend auf den grafischen Elementen und deren Querverbindungen in der Grafikanzeige erzeugt werden. Als Alternative kann das Prozessmodul unter Verwendung von intelligenten Prozessobjekten zuerst erstellt werden, und nach seiner Erstellung kann eine Grafikanzeige für jenes Prozessmodul automatisch durch die Konfigurationsanwendung 38 unter Verwendung der grafischen Anzeigeelemente in den intelligenten Prozessobjekten erzeugt werden, welche verwendet werden, um das Prozessmodul zu erstellen. Weiter können ein Prozessmodul und eine Grafik separat erstellt werden, und die individuellen Elemente innerhalb dieser beiden Einheiten können manuell durch Referenzen aufeinander miteinander verbunden werden (beispielsweise durch Verwendung der Tag-Eigenschaften der Elemente innerhalb der Grafikanzeige und des Prozessmoduls). Durch diesen Mechanismus kann von mehreren Anzeigen auf ein intelligentes Prozessobjekt querverwiesen werden. In jedem Fall können eine Prozessgrafikanzeige, wenn sie erst einmal erstellt ist, und ein assoziiertes Prozessmodul unabhängig oder separat ablaufen, obwohl sie in der Regel Parameter und Informationen hin und her übermitteln, je nachdem, was gewünscht oder benötigt wird.
-
Allgemein ausgedrückt kann ein Satz vordefinierter Grafikelemente in der Konfigurationsanwendung bereitgestellt werden, um es dem Benutzer zu ermöglichen, Prozessgrafikanzeigen zu konstruieren, die die Prozessanlage reflektieren. Diese Anzeigen enthalten grafische Anzeigeelemente, die dazu konzipiert sind, Online-Messungen und Betätigungselemente, die Schnittstellen mit dem Steuerungssystem bilden, dynamisch abzubilden, und die infolgedessen Informationen darstellen können, die in der Regel vom Bedienpersonal oder anderem Personal, das mit dem Online-Betrieb zu tun hat, überwacht und genutzt werden. Zusätzlich können ungemessene Parameter, die den Prozessbetrieb reflektieren, unter Verwendung einer Online-Prozesssimulation, die in den Prozessmodulen bereitgestellt wird und als integrierter Teil der assoziierten Grafikanzeigen angezeigt werden kann, berechnet werden. Auf diesem und anderen Wegen können die Prozessgrafikanzeigen Informationen bereitstellen, die in der Regel von Anlagenpersonal, das nicht Bedienpersonal ist, überwacht und genutzt werden, wie beispielsweise Ingenieursabteilungen oder der Geschäftsführung.
-
Zusätzlich können die Prozesssimulationswerte, die von den Prozessmodulen bereitgestellt werden, in einer Offline-Umgebung, die zu technischen Zwecken oder zur Schulungssimulation eingesetzt werden kann, verwendet und/oder anstelle der tatsächlichen Prozessmesswerte angezeigt werden, die andernfalls von den Grafikelementen und damit assoziierten Steuermodulen bereitgestellt werden. Diese Simulationswerte, die von den assoziierten Prozessmodulen oder einer drittseitigen Simulationsanwendung berechnet werden können (beispielsweise HYSYS), können auf tatsächlichen Anlageneinstellungen (beispielsweise Position oder Zustand eines Betätigungselements) sowie benutzerspezifizierten Störungseinstellungen oder -werten basieren, die über Prozessgrafikanzeigen und deren jeweilige Grafikanzeigeelemente festgestellt und abgebildet werden können. Zu diesem Zweck kann eine Inhaltsebene des Prozessgrafikanzeigen benutzerspezifisch für eine Offline-Anzeige der Prozessgrafikanzeigen konfiguriert werden und beispielsweise im Rahmen von Schulungsmaßnahmen erzeugt und bereitgestellt werden. Weitere Einzelheiten zu dieser Inhaltsebene der Prozessgrafikanzeige werden nachstehend erläutert
-
Allgemeiner ausgedrückt können die Prozessgrafikanzeigen im Rahmen verschiedener Kontexte im Zusammenhang mit Online- oder Steuerungssituationen sowie Offline- oder Simulationssituationen von einer Anzahl verschiedener Personaltypen verwendet werden. Zu diesem Zweck kann jede Prozessgrafikanzeige eine Mehrzahl von Inhaltsebenen aufweisen, welche den verschiedenen Kontexten, Situationen und Personaltypen gewidmet sind. Anders als Systeme der Vergangenheit, die separate, unabhängige Anzeigen aufwiesen, sind diese dedizierten Inhaltsebenen integrierte Anteile der Objekte, die zu ihrer Definition verwendet werden, insbesondere in dem Sinne, dass dasselbe Objekt oder dieselben Objekte mit den notwendigen Informationen assoziiert sind, um all die verschiedenen Inhaltsebenen zu erzeugen. Infolgedessen bieten die Inhaltsebenen einer einzigen Prozessgrafikanzeige benutzerspezifische Anzeigen, ohne dass es notwendig wäre, dass ein Konfigurationsingenieur oder anderes Konstruktionspersonal eine separate Anzeige für die einzelnen Ansichten erstellt
-
Die Breite an Informationen, die erforderlich sind, um personalisierte Benutzerschnittstellenanzeigen für die unterschiedlichen Funktionen zu erzeugen (Betrieb, Technik, Wartung, Management usw.), wird durch einen flexiblen und erweiterbaren Satz von Grafikanzeigeelementen und die damit assoziierten Simulationsalgorithmen bereitgestellt und unterstützt. Diese Grafikanzeigeelemente, die einer Reihe verschiedener Arten von Prozessanlagenelementen entsprechen können, einschließlich Strömungselementen, Prozessverbindungselementen, Betätigungselementen, Verarbeitungselementen, Messelementen und geschätzten Eigenschaftselementen, können vordefiniert oder anderweitig zur Verwendung verfügbar gemacht werden, wenn die Prozessgrafikanzeige und ihre breite Funktionalität erstellt werden. Zudem können personalisierte Elemente von einem Konfigurationsingenieur erstellt oder erzeugt werden, um spezifische Typen der vorstehenden Prozessanlagenelemente, Zusammensetzungen solcher Elemente und vollständig neue Elemente abzudecken, die aus den grafischen Grundformen zusammengestellt werden (beispielsweise Linien, Kreise usw.).
-
Strömungselemente definieren im Allgemeinen einen Materialstrom in der Prozessanlage und können in der Grafikanzeige dargelegt werden, um Zusammensetzung, Dichte, Strömung, Temperatur, Druck, Gewicht und/oder beliebige andere Parameter anzuzeigen, die die Strömung des Materials definieren. Strömungselemente können am Eingang des Prozessmoduls definiert werden und an Elemente innerhalb des Prozessmoduls bereitgestellt werden, um damit den Materialfluss durch das Prozessmodul, der modelliert und auf der Grafikanzeige abgebildet werden soll, zu ermöglichen. Ähnlich können Strömungselemente am Ausgang oder Ende des Prozessmoduls veranschaulicht werden, um in der Grafikanzeige den Materialausgang des Anteils der Prozessanlage zu illustrieren, der von der Grafikanzeige abgebildet wird. Strömungselemente können auch verwendet werden, um zu definieren, wie verschiedene Grafikanzeigen (und die damit assoziierten Prozessmodule) miteinander verbunden sind. Beispielsweise kann der Ausgangsstrom in einem Prozessmodul der Eingangsstrom in einem anderen Prozessmodul sein und kann die Werte, die beim Eingangsstrom des anderen Prozessmoduls verwendet werden, liefern. Ströme können die folgenden vier Teile enthalten: Bezeichnung (beispielsweise pH-Strom), Richtung (beispielsweise Strömungseingang), Messung (beispielsweise Strömung, Druck, Temperatur) und Zusammensetzung (beispielsweise Stickstoff, Ammoniak usw.). Jedoch kann ein Strom auch andere Teile oder Parameter aufweisen, wenn dies gewünscht ist.
-
Prozessverbindungselemente definieren die Art, in der Materialien, wie beispielsweise Feststoffe, Flüssigkeiten, Dämpfe und Gase, innerhalb einer Anlage geliefert oder von einer Vorrichtung zur anderen transportiert werden. Um den Materialfluss durch den Prozess zu veranschaulichen, können drei verschiedene Art von Prozessverbindungen verwendet werden, einschließlich Rohrleitungen, Rohren und Förderanlagen. Natürlich können auch andere Verbindungselemente verwendet werden, wie beispielsweise elektrische Kabel für den Umgang mit dem Stromfluss bei elektrochemischen Prozessen usw. Rohrleitungen werden im Allgemeinen verwendet, um das Strömen von Flüssigkeit oder Hochdruckdampf oder Gas innerhalb einer Anlage zu illustrieren (und zu simulieren). Rohre werden im Allgemeinen verwendet, um das Strömen von Niedrigdruckgas innerhalb einer Anlage zu illustrieren (und zu simulieren). Förderanlagen werden im Allgemeinen verwendet, um die Bewegung von Festmaterialien zwischen Verarbeitungseinheiten zu illustrieren (und zu simulieren). Im Ergebnis definiert jedes Prozessverbindungselement die Art der Verbindung, beispielsweise als eine Rohrleitungsverbindung, Rohrverbindung oder Förderanlagenverbindung, die verwendet wird, um Material am Eingang oder Ausgang der Vorrichtung bereitzustellen.
-
Sofern dies gewünscht ist, werden die Eigenschaften des von einer Verbindung zu transferierenden Materials von dem vorgeschalteten Eingang bestimmt. Diese Informationen sowie eine Verbindungsstatusvariable, die definiert, ob die Verbindung vollständig ist, können als Eigenschaften des Verbindungselements auf der Grafikanzeige bereitgestellt werden. Ein Verbindungselement kann an einem Verarbeitungs-, Betätigungs- oder Strömungselementausgang beginnen. Auf ähnliche Art kann ein Verbindungselement an einem Verarbeitungs-, Betätigungs- oder Strömungseingang enden.
-
Die Eigenschaften eines Verbindungselements können automatisch angezeigt werden, wenn der Mauszeiger über dem Verbindungselement auf der Grafikanzeige platziert wird. Weiter können die Eigenschaften, die mit einem Verbindungselement assoziiert sind, zur permanenten Anzeige dargelegt werden, indem eine Messung oder ein geschätztes Eigenschaftselement (nachstehend definiert) auf dem Verbindungselement platziert wird. Wenn dies gewünscht ist, kann ein Verbindungselement durch Gedrückthalten der linken Maustaste über einem Elementausgang (wie beispielsweise einem Strömungsausgang, einem Verarbeitungselementausgang oder einem Betätigungselementausgang) sowie Positionierung des Mauszeigers durch Gedrückthalten über einem Elementeingang erstellt werden Damit die Verbindung erfolgreich hergestellt wird, müssen die Eingangs- und Ausgangstypen (Rohrleitung, Rohr oder Förderanlage) der vor- und nachgeschalteten Elemente zueinander passen. Die Verbindung nimmt automatisch den Typ des vorgeschalteten Elements an.
-
Sofern dies gewünscht ist, können Rohrleitungselemente in der Grafikanzeige als eine Rohrleitung gezeigt oder abgebildet werden, Rohrelemente (beispielsweise Luft oder Gas) können als Rohr gezeigt werden und Förderanlagenelemente können als Förderbänder gezeigt werden. Rohrleitungs-, Rohr- und Förderelementverbindungen können automatisch zwischen Verarbeitungselementen weitergeleitet werden, und Pfeile können außerhalb der Abbildung dieser Elemente angezeigt werden, um auf die Richtung der Strömung hinzuweisen. Wenn ein vorgeschalteter Ausgang von zwei Verbindungen gemeinsam verwendet wird, kann ein „T”-Element in die Rohrleitung, das Rohr oder die Förderanlage eingefügt werden. Ähnlich können „T”-Elemente verwendet werden, um mehrere Ausginge zusammenzufassen. Die Farbe oder andere grafische Eigenschaften des Förderelementes können sich ändern, um den jeweiligen Status, beispielsweise laufend/gestoppt, strömend/nicht strömend, verstopft usw. anzuzeigen. Allgemein ausgedrückt wird der Materialfluss entlang einer Förderanlage von dem Motorantrieb, der an die Förderanlage angeschlossen ist, bestimmt. Daher kann ein Betätigungselement für den motorischen Antrieb (wobei es sich um ein nachstehend im Einzelnen beschriebenes Betätigungselement handelt) an die Förderanlage angeschlossen werden. Zusätzlich können Messelemente (nachstehend beschrieben) mit der Rohrleitung, dem Rohr und den Förderelementen verbunden werden, um Messungen, die mit der Rohrleitung, dem Rohr oder Förderelementen assoziiert sind, darlegen zu können, wie beispielsweise die Geschwindigkeit der Förderanlage oder der Materialfluss in der Rohrleitung oder dem Rohr, die Materialeigenschaften auf oder in der Förderanlage, Rohrleitung oder dem Rohr wie z. B. Feuchtigkeit oder Gewicht Zudem kann ein dargelegtes Eigenschaftselement hinzugefügt werden, um Eigenschaften des Materials auf oder in der Rohrleitung, dem Rohr oder der Förderanlage anzuzeigen, die nicht gemessen werden, wie beispielsweise die Materialzusammensetzung.
-
Wenn dies gewünscht ist, kann jedes der Verbindungselemente Rohrleitung, Rohs und Förderanlage grafisch und dynamisch eine verlorene Verbindung reflektieren (beispielsweise durch einen Farbwechsel), sowie die Tatsache, dass sich eine ausgewählte Eigenschaft (Druck, Temperatur, Länge usw.) außerhalb der konfigurierten Grenzen befindet (beispielsweise angezeigt durch einen Farbwechsel). Weiter können von dem assoziierten Prozessmodul berechnete Parameter in der Grafik dargelegt werden. Beispielsweise können Eigenschaften, die von der vorgeschalteten Verbindung bereitgestellt werden, die Qualität des Verbindungsstatus, Grenzen hinsichtlich einem oder mehreren der ausgewählten Parameter des Verbindungselements usw. in der Grafikanzeige dargelegt werden, um dem Bedienpersonal Informationen über das vorgeschaltete Verbindungselement oder die Strömung, die über das Verbindungselement transferiert wird, zu geben.
-
Allgemein ausgedrückt handelt es sich bei Betätigungselementen um Elemente, die irgendeine Auslösefunktion im Hinblick auf die Strömung durchführen und jeweils zwischen verschiedenen Verbindungselementen oder zwischen einem Verarbeitungselement und einem Verbindungselement platziert werden können. Zu Beispielen für Betätigungselemente gehören ein Regulierventil (mit Betätigungselement), ein Ein-Aus-Ventil (mit Betätigungselement), eine Pumpe (mit Motor), ein Luftgebläse (mit Motor), ein induziertes Luftgebläse (mit Motor), eine Saugstrahlpumpe (mit Ein-Aus-Ventil), ein Dämpfer (mit Antrieb), eine Zufuhrvorrichtung (mit Motor mit veränderlicher Drehzahl), ein Motorantrieb für eine Förderanlage (der an eines der Förderelemente angeschlossen werden kann) usw.
-
Die grafische Darstellung der Ventilelemente kann auf dynamische Weise die implizierte Ventilposition wiedergeben (beispielsweise durch Animation), Ventilversagen (beispielsweise durch einen Farbwechsel), die Position Ventil vollständig geöffnet/geschlossen (beispielsweise durch einen Farbwechsel), AO, DO, DC, Sollwert, PV, OUT, Modus usw. (beispielsweise mittels einer numerischen Zeichenfolge oder einer anderen Anzeige) des assoziierten Steuerungsblocks, der jenes Ventil steuert. Das Simulationselement, das mit den Ventilelementen assoziiert ist (im Prozessmodul verwendet wird), kann Simulationsalgorithmen aufweisen, die die Parameter, die mit dem Ventilbetätigungselement assoziiert sind, berechnet, wie beispielsweise der Austrittsdruck, Massefluss, Flüssigkeitstemperatur, Flüssigkeitszusammensetzung, Eingangs- und Ausgangsdruck. Die simulierten oder berechneten Parameter können in der Prozessgrafik dargelegt werden, falls dies gewünscht wird. Jedoch muss der Benutzer oder Konfigurationsingenieur üblicherweise den Bezugswert zu einem AO-, DO- oder DC-Block in einem Steuerungsmodul, das mit dem Ventil und dem Ventiltyp assoziiert ist (beispielsweise linear, schnell öffnend, gleiche Prozentzahl, Ventilgröße usw.) und die Taktzeit von geöffnet bis geschlossen konfigurieren. Natürlich können die Simulationsalgorithmen, die für den Simulationsbetrieb des Ventils hinsichtlich des Materials, das durch das Ventil fließt, zur Verfügung stehen, von dem Ventiltyp und den Größenbemessungsinformationen abhängig sein.
-
Die grafische Darstellung von Pumpenelementen kann den Motorstatus (beispielsweise durch einen Farbwechsel), den Modus und den Sollwert des assoziierten DO- oder DC-Funktionsblocks (beispielsweise unter Verwendung von Zeichenfolgen), die Motordrehzahl (wenn ein Antrieb mit veränderlicher Drehzahl verwendet wird), den AO-Sollwert, PV, OUT-Modus (wenn ein Antrieb mit veränderlicher Drehzahl verwendet wird) und andere gewünschte Parameter dynamisch reflektieren. Ähnlich kann die Prozesssimulation (die im Prozessmodul verwendet wird) für dieses Element Parameter wie beispielsweise den Austrittsdruck, die Flüssigkeitszusammensetzung und den Massefluss bestimmen oder berechnen, welche Parameter auf der Grafikanzeige dargelegt werden. Es kann notwendig sein, dass der Benutzer eine Pumpenkrümmung basierend auf dem Pumpentyp definiert. Jedoch kann der Benutzer die Referenz zum DO- oder DC-Block, jeweils mit Start/Stopp des Motors assoziiert, die Referenz zum assoziierten AO-Funktionsblock für den veränderlichen Drehzahlantrieb (sofern verwendet) und die Pumpenkrümmung (beispielsweise Druck vs. Strömung) zur Definition des Pumpenbetriebs konfigurieren.
-
Die grafische Darstellung eines Luftgebläses oder induzierten Ventilatorbetätigungselements kann eine Abbildung aufweisen, die den Motorstatus, DO- oder DC-Funktionsblockmodus und Sollwert, Motordrehzahl (sofern ein Antrieb mit veränderlicher Drehzahl verwendet wird), den AO-Sollwert, PV, OUT, DO- oder DC-Funktionsblockmodus (sofern ein Antrieb mit veränderlicher Drehzahl verwendet wird) und andere gewünschte Parameter dynamisch reflektieren, wobei jeder beliebige auf der Grafikanzeige dargelegt werden kann. Das (in einem Prozessmodul verwendete) Prozesssimulationselement für dieses Element kann Parameter bestimmen oder berechnen, wie beispielsweise den Austrittsdruck, die Gaszusammensetzung, Gastemperatur und Gasmasseströmung, wobei diese Parameter auf der Grafikanzeige dargelegt werden können. Der Benutzer kann die Referenz auf den assoziierten DC-Block für Start/Stopp des Motors, die Referenz auf einen AO-Block für einen Antrieb mit veränderlicher Drehzahl (sofern verwendet) und die Ventilatorkrümmung (Druck vs. Strömung) konfigurieren, um den simulierten Betrieb Ventilators zu definieren.
-
Zu den Verarbeitungselementen gehören die Anlagengeräte, die die Materialien oder Ströme auf irgendeine Art und Weise innerhalb der Anlage verarbeiten. Allgemein ausgedrückt werden alle Eingänge und Ausgänge zu und von den Verarbeitungselementen mittels der Verbindungselemente hergestellt. Zu den standardgemäßen Verarbeitungselementen gehören Tanks (vertikal und horizontal), Heizelemente, statische Rührwerke, Reaktoren, Mixer, Luftheizelemente und andere Elemente, die irgendeine Art einer einfachen oder standardgemäßen Verarbeitungsaktivität durchführen. Bei standardgemäßen Verarbeitungselementen kann der Benutzer die Anzahl der Eingänge und Ausgänge zum Element zusammen mit den physischen Geräteeigenschaften spezifizieren, wie beispielsweise Größe, Volumen usw. Der Simulationsalgorithmus und die statische Abbildung dieser standardgemäßen Verarbeitungselemente können derart eingestellt werden, dass sie nicht vom Benutzer modifiziert werden können, aber, wie vorstehend beschrieben, zum Zeitpunkt der Konfiguration auswählbar sind. Natürlich können, sofern dies gewünscht ist, andere und in der Regel komplexere Anlagengeräte (wie beispielsweise Destilliersäulen, Verdichter, Abscheider, Kocher usw.) als benutzerspezifisch festgelegte Verarbeitungselemente implementiert werden. Die statische Abbildung, Anzahl der Eingänge und Ausgänge und die Simulationsalgorithmen solcher benutzerspezifischen Verarbeitungselemente können modifiziert werden, um die Schnittstellenerfordernisse des Benutzers zu erfüllen. Wenn das benutzerspezifische Verarbeitungselement erst einmal definiert ist, kann es als eine Kombination oder eine Vorlage abgespeichert und wiederverwendet werden oder als Anfangspunkt bei der Erstellung anderer Verarbeitungselemente eingesetzt werden.
-
Das standardgemäße Verarbeitungselement für einen Tank (sei es vertikal oder horizontal) kann basierend auf den Rohrverbindungen zum Tank konfiguriert werden, wobei das Tankelement auf dynamische Weise den Füllstand des Tanks (beispielsweise unter Verwendung einer dynamischen Animation) reflektieren kann, ebenso wie den Stand bei 100% oder leer (beispielsweise unter Verwendung eines Farbwechsels). Die Prozessmodulsimulation für den Tank kann über die Grafikanzeige Parameter wie die Ausgangstemperatur, Ausgangszusammensetzung, Flüssigkeitstemperatur und den simulierten Füllstand des Tanks berechnen und darlegen. Um den Tank jedoch in das System einzubinden, kann es notwendig sein, dass der Benutzer oder Konfigurationsingenieur eine Anzahl von Eingangs- und Ausgangsverbindungen, die vollständigen Verbindungen zum Tank, die Tankeigenschaften (wie beispielsweise Größe, Durchmesser, Höhe usw.) konfiguriert.
-
Das Heizungsverarbeitungselement kann über die Grafikanzeige dynamisch den Wärmetransferkoeffizienten (beispielsweise durch einen Farbwechsel), die Ausgangsprodukttemperatur, die Eingangsprodukttemperatur, den Ausgangsdruck (unter Annahme eines festen Druckabfalls) usw. berechnen und reflektieren. Ein Benutzer oder Konfigurationsingenieur muss möglicherweise die vollständigen Verbindungen zur Heizung, dem Oberflächenbereich der Heizung und den Wärmetransferkoeffizienten wenn sauber konfigurieren.
-
Natürlich können andere Verarbeitungselemente, wie beispielsweise ein statisches Rührwerk, ein Reaktor, ein Mixer, eine Luftheizung, ein Wärmetauscher usw., Anzeige- und Simulationskapazitäten aufweisen, die speziell auf diese Arten von Vorrichtungen zugeschnitten sind. Nicht standardgemäße Verarbeitungselemente, wie beispielsweise Destilliersäulen, Verdichter, Abscheider, Kocher usw., können unter Verwendung eines benutzerspezifischen Verarbeitungselements, wobei die Simulation mit dem Gefäß assoziiert ist, abgebildet und vom Benutzer definiert werden, wenn sie nicht Teil der standardgemäßen Auswahl sind. Die Verarbeitung dieser Elemente kann als ein Sprungantwortmodell beschrieben oder definiert werden, wobei die einzelnen Eingänge mit den einzelnen Ausgängen des Gefäßes in Bezug gestellt werden. Der Benutzer kann wahlweise die Gleichungen definieren, die die Beziehungen zwischen den Eingängen und Ausgängen der Verarbeitungselemente beschreiben, wobei diese Gleichungen in dem Prozessmodul, das jenes Element zur Durchführung der Simulation verwendet, gespeichert werden können. Sofern dies gewünscht ist, können einige einfache statische Grafikabbildungen bereitgestellt werden, um dem Benutzer dabei zu helfen, die statischen Grafiken, die mit einem benutzerspezifischen Verarbeitungselement assoziiert sind, rasch zu erstellen. Wenn diese einfachen Grafiken verwendet werden, braucht der Benutzer möglicherweise nichts weiter zu tun, als die gewünschte Anzahl der Eingangs- und Ausgangsverbindungen und den Typ der jeweils durch das benutzerspezifische Verarbeitungselement unterstützten Verbindung zu spezifizieren (beispielsweise eine Rohrleitung, ein Rohr oder eine Förderanlage). Als Reaktion wird das grafische Element angezeigt und kann sofort bei der Erstellung der Bedienungsgrafik verwendet werden. Sofern dies gewünscht ist, können die Gewinne und alle Dynamiken, die mit den einzelnen Eingängen und Ausgängen des Prozesselements assoziiert sind, spezifiziert werden, wenn der Benutzer sich entscheidet, den Simulationsalgorithmus als Sprungantwort zu spezifizieren. Wenn der Benutzer einen benutzerspezifischen Algorithmus wählt, kann ein Ausdruckseditor für den Benutzer bereitgestellt werden, um den Simulationsalgorithmus zu definieren. Basierend auf dem ausgewählten Verfahren können die benutzerspezifischen Verarbeitungselementausgänge unterschiedlich berechnet werden. Weiter kann der Benutzer einen oder mehrere Algorithmen referenzieren, die im Rahmen eines separaten Softwareaufbaus definiert wurden.
-
Zusätzlich können mehrere vordefinierte Kombinationselemente oder Vorlagen zur Erstellung der benutzerdefinierten Verarbeitungselemente bereitgestellt werden. Zu diesen Vorlagen gehören beispielsweise eine Kochervorlage, die einen benutzerspezifischen Algorithmus enthält, der das Abgas O2, das Abgas CO, den erzeugten Dampf, den Füllstand der Kochertrommel und den Zug des Kochen berechnet. Solch eine Vorlage kann auf einem einzelnen Brennstoffeingang basieren. Jedoch ist es durch Modifizierung der Vorlage möglich, Kocher mit mehreren Brennstoffeingängen zu simulieren. Andere vordefinierte Vorlagen können eine spezialisierte Gefäß-Zyklonabscheidervorlage enthalten, die zusammen mit einem benutzerdefinierten Sprühtrockner-Verarbeitungselement verwendet werden kann, und die ein Sprungantwortmodell enthält, um den Betrieb des Abscheiders zu modellieren. Ähnlich können eine Säulenvorlage, ein Sprühtrockner und ein Verdichterkörper ein Sprungantwortmodell verwenden, um die erwartete Prozessantwort zu definieren. Bei einem Verdichter können basierend auf der Energiezufuhr und der Konzentration der Eingangsströmung die Konzentration der Ausgangsströmung und die Dampfabgabe berechnet werden. Mehrere Verdichterelemente können zusammen mit einem Wärmetauscher und Saugstrahlelementen miteinander verbunden werden, um einen Verdichter mit mehreren Wirkungsweisen zu erstellen. Ähnlich kann eine spezialisierte benutzerspezifische Gefäßstapel-Vorlage zusammen mit dem Kocherverarbeitungselement verwendet werden. In diesem Fall können die Eigenschaften des Eingangs ohne Modifikationen durch das Paket geführt werden, wenn dies gewünscht wird, oder die im Paket durchgeführten Emissionsverringerungen reflektieren.
-
Andere Arten von Elementen, die verwendet werden können, um Prozessgrafikanzeigen und Prozessmodule zu erstellen, sind Mess- und Eigenschaftselemente. Zu Messelementen gehören Messwertgeberelemente, die in der Grafikanzeige verwendet werden können, um auf Messwerte, die mit einem physischen Messwertgeber assoziiert sind, zuzugreifen, sowie auf Schaltelemente. Im Allgemeinen kann das Messwertgeberelement einen schlechten oder ungewissen Status, die Betriebsart des assoziierten AI-Funktionsblocks im Steuermodul, den Messwert und die Messeinheiten usw., die mit einem tatsächlichen Messwertgeber (Sensor) assoziiert sind, oder andere Daten, die mit dem tatsächlichen Messwertgeber assoziiert sind, dynamisch reflektieren. In einem Offline-Modus (oder Simulationsmodus) kann das Messwertgeberelement verwendet werden, um auf den Simulationswert, der von dem Prozessmodul bereitgestellt wird, zuzugreifen und diesen anstelle des Werts, der mit dem AI- oder PCI-Block assoziiert ist, oder es kann verwendet werden, um einen Messwert an den assoziierten AI-Block in dem Steuermodul bereitzustellen, der im Rahmen der simulierten Steuerungsroutine zu verwenden ist. Das Messwertgeberelement kann einem Verbindungselement oder einem Verarbeitungselement hinzugefügt werden, wobei der Benutzer, wenn ein solches Messwertgeberelement zur Anzeige hinzugefügt ist, im Allgemeinen den assoziierten AI-, PCI- oder DI-Block im Steuerungsplan, der den Messwert zur Verfügung stellt, identifizieren muss. Im Online-Modus kann der Wert der Messung neben dem Messelement angezeigt werden. Im Offline-Modus (oder Simulationsmodus) kann der simulierte Wert der Messung (wie im entsprechenden Prozessmodul entwickelt) automatisch angezeigt werden. Bei einem Online-Betrieb kann der Benutzer sich entscheiden, das Steuerelement zu wechseln und den Simulationswert im Fall eines Messausfalls anzeigen.
-
Ein Schaltelement kann auf dynamische Weise einen schlechten oder ungewissen Status, den Modus des assoziierten DI (beispielsweise manuell oder OS) und den diskreten Wert eines Schalters (ein, aus usw.) reflektieren. Im Offline-Simulationsmodus kann der Benutzer das Schalteranzeigeelement verwenden, um auf die Schalterparameter in der Grafikanzeige und im Steuermodul zuzugreifen und diese zu ändern, indem ein Simulationswert oder ein manueller Wert und Status ausgewählt und der Wert und Status des Schalters manuell eingegeben werden. Der Benutzer kann jedoch das Schalterelement allgemein konfigurieren, indem eine Referenz auf einen assoziierten DI-Block im Steuerungsplan, eine Referenz auf die Elementeigenschaft, die den Schalter auslöst, sowie die Grenze und Totzone, die mit einem Änderungsstatus des Schalters assoziiert sind, bereitgestellt werden.
-
Ein geschätztes Eigenschaftselement legt im Allgemeinen eine geschätzte Eigenschaft des Systems dar, so wie sie vom Prozessmodul bestimmt wurde, und kann einer Verbindung oder einem Verarbeitungselement hinzugefügt werden, um eine beliebige Eigenschaft jenes Elements anzuzeigen. Wenn dieses Element auf einem Verbindungselement oder auf einem Geräteteil platziert wird, kann der Benutzer die jeweils angezeigten Eigenschaften durchsuchen und entsprechend auswählen. Damit können simulierte Eigenschaften, die nicht durch eine physische Messung zur Verfügung stehen, durch die Verwendung des geschätzten Eigenschaftselements dargelegt werden. Ein solches geschätztes Eigenschaftselement kann eine gute/schlechte Verbindung, den (die) geschätzten Eigenschaftswert(e) und eine Eigenschaft, die außerhalb einer assoziierten Grenze oder Änderung liegt, dynamisch reflektieren. Ein Benutzer muss im Allgemeinen die Referenz auf die Eigenschaft(en) konfigurieren, die angezeigt werden soll(en), sowie Grenzen und Farbwechsel für das Element, wenn die Eigenschaft außerhalb der Grenzen liegt.
-
Es liegt auf der Hand, dass durch den Anschluss von Messwertgeberelementen und geschätzten Eigenschaftselementen an Verarbeitungselemente. Betätigungselemente und Verbindungselemente die Eigenschaften, die mit den Eingängen und Ausgängen dieser Prozessanlagenelemente assoziiert sind, beim Online-Betrieb oder bei der Offline-Simulation referenziert werden können. Die Eigenschaften können auch auf der Prozessgrafikanzeige sichtbar gemacht werden.
-
II. Effiziente Präsentation von Funktionen und Modulen in Anwendungen
-
Bezugnehmend auf 3 kann die Benutzerschnittstelle der Grafikanzeigen-Konfigurationsanwendungen 38 (z. B. Steuerungsstudioanwendung 38A, Explorer-Anwendung 38B) ein Hauptfenster 200 mit mehreren Bereichen umfassen, in denen die Funktionalitäten in Bezug auf Prozessgestaltung, Rezepturentwicklung usw., geordnet sind. Insbesondere kann das Hauptfenster 200 einen Hauptinhalts- oder Bearbeitungsbereich 210, einen Navigations- oder Modulexplorer-Bereich 212, einen Parameter-Bereich 214, einen Paletten-Bereich 216, einen Schwenk- und Zoom-Bereich 218, einen Alarm-Bereich 220, einen Aktionsbereich 222, einen Referenz-Bereich 224, einen Überwachungsbereich, einen Formel-Bereich, einen Multimodus-Auswahlbereich usw. umfassen. Ferner können einige oder alle Erstellungen des Fensters 200 einen Befehlsbereich, wie das Funktionsleisten-ähnliche Menü 300, das in einer detaillierteren, nachstehenden Beschreibung auch als „Funktionsleiste 300” bezeichnet wird, beinhalten.
-
Wenigstens in einigen der Ausführungsformen können die unterstützten Fensterbereiche an- und ausgeschaltet, abgekoppelt, in der Größe verändert und überall auf dem Desktop bewegt oder verschoben werden, um es dem Benutzer zu ermöglichen, die technische Umgebung anzupassen und die Effizienz zu erhöhen. Insbesondere die Möglichkeit, Bereiche außerhalb des Hauptanwendungsrahmens schweben lassen zu können, stellt den Benutzern mehr Platz für den Hauptinhalt- oder Bearbeitungsbereich 210 zur Verfügung, wenn sie größere Module ansehen oder modifizieren.
-
Das Referenz-Bereich 224 kann alle Referenzen (z. B. Lese-, Schreibvorgänge) für das aktuelle Modul oder die aktuelle Rezeptur in der Konfigurationsanwendung anzeigen. Im Allgemeinen führt der Referenz-Bereich 223 Kontrollreferenzen und globale Variablen auf logische, benutzerfreundliche Art und Weise innerhalb einer Anzeige auf und unterstützt Filter- und Sortierungsoptionen, um das Benutzererlebnis zu verbessern. Referenzen können zum Beispiel nach Modulbezeichnung, Einheit, Prozesszelle, Bereich usw. gefiltert und sortiert werden. Als Reaktion auf einen Benutzerbefehl oder gemäß einer vorgespeicherten Einstellung kann die Referenzliste zusammengefasst werden, so dass sie entweder nur die Modulbezeichnung oder den vollständigen Modulpfad anzeigt. Die Steuerungsreferenzliste kann zudem ungültige Referenzen (z. B. Referenzen, die in der Datenbank nicht existieren) identifizieren. Der Referenz-Bereich 224 kann außerdem genutzt werden, um globale Variablen aufzulisten, die im Hauptinhaltsbereich 210 oder einer anderen Anzeige, die aktuell bearbeitet wird, enthalten sind.
-
Im Betrieb öffnet der Benutzer den Referenz-Bereich 224, um die Referenzen, die mit einem Objekt verbunden sind, anzusehen. In einer Ausführungsform beinhaltet der Referenz-Bereich 224 eine interaktive Tabelle, in der in einer linken Spalte ein Modul oder ein Grafikobjekt, das analysiert oder bearbeitet wird, angezeigt wird und in einer rechten Spalte Referenzen aufgeführt sind, die sich außerhalb des Moduls oder der Grafik (z. B. einem Datenlink), die bearbeitet wird, befinden. Ferner können in einer Spalte „Referenzbedingungen” Referenzbedingungen aufgeführt sein, wie zum Beispiel „ungültig”, wenn die Referenz nicht existiert oder aus anderen Gründen nicht verfügbar ist. In einer weiteren Spalte können zudem Bemerkungen oder Vorschläge hinsichtlich möglicher Ursachen, warum die Referenz „ungültig” ist, aufgeführt sein, zum Beispiel weil eine Datenbank nicht verfügbar ist.
-
Zusätzlich oder alternativ hierzu kann der Referenz-Bereich 224 zudem eine Spalte „Referenzstatus” umfassen, in der zum Beispiel der Fehlerstatus von Eingang/Ausgang eine Vorrichtung oder ein Alarmstatus der Referenz in Laufzeit angezeigt wird. In wenigstens einigen Ausführungsformen werden die Spalten „Referenzbedingungen” und „Referenzstatus” nur dann im Referenz-Bereich 224 angezeigt, wenn eine Laufzeit-Datenbank verfügbar ist, die als Vergleich dienen kann. Auf diese Weise wird die Systemleistung durch die Erstellung des Referenz-Bereichs 224 nicht beeinträchtigt.
-
Falls gewünscht, kann der Referenz-Bereich 224 außerdem für die Vorschau von Animationen genutzt werden. So kann zum Beispiel ein Referenzobjekt im Referenz-Bereich 224 ausgewählt werden und es können „simulierte” Werte eingegeben werden, um die konfigurierte Animation zu testen, ohne eine Datenbank zu verwenden. Auf diese Weise muss der Benutzer nicht eine gesonderte Anwendung starten oder einen Bereich öffnen, um die Animation von Objekten zu testen.
-
Zudem kann die Sortierung von Einträgen im Referenz-Bereich 224 über die Pfeiltasten „aufwärts” und „abwärts” gesteuert werden, mit denen die Spalten sortiert werden können. Wenn ein Benutzer einen Ausdruck im Referenz-Bereich 224 auswählt, hebt die Benutzerschnittstelle außerdem vorzugsweise das zugehörige Objekt innerhalb des Navigationsbereichs 212 hervor. In einer Ausführungsform können Referenzen, die im Referenz-Bereich 224 aufgeführt sind, in eine andere Anwendung, wie zum Beispiel Excel, exportiert werden.
-
Allgemein können die Steuerungsstudioanwendung 38A und/oder die Explorer-Anwendung 38B in Bezug auf Referenzen Referenzlisten unterstützen, damit Vorrichtungssignal-(I/O)-Tags Listen der „Lese- und Schreibvorgänge” von Funktionsblöcken und Ausdrücken anzeigen können; Anlagenbereiche, Prozesszellen, Einheitsmodule in Bezug auf Knotenzuweisung in Chargenproduktionsmodulen und älteren Modulen; und alle Vorrichtungen und Vorrichtungsvorlagen in einer bestimmten Bibliothek Ferner kann ein Steuermodul, das von einem Alias referenziert wird, das Alias als Referenz enthalten, so dass ein Benutzer das Alias durch Rechtsklick auf das Modul im Hauptinhaltsbereich 210, durch Positionieren des Mauszeigers über dem Steuermodul oder auf eine andere, gewünschte Weise identifizieren kann.
-
Weiterhin mit Bezugnahme auf 3 kann der Parameter-Bereich 214 Edit-in-Place-Funktionen unterstützen, so dass der Benutzer nicht einen anderen Dialog starten oder auf einen anderen Menüpunkt zugreifen muss, um Parameter modifizieren zu können. Ferner kann der Parameter-Bereich 214 das Bearbeiten von Grafikobjekt-Parametern unterstützen und Zugriff auf Objektanimationen bieten. Des Weiteren kann der Parameter-Bereich 214 es dem Benutzer ermöglichen, sowohl statische als auch dynamische (Animations-)Eigenschaften eines ausgewählten Objekts zu modifizieren.
-
Wie nachstehend detaillierter beschrieben wird, kann ein Benutzer ein oder mehrere Layout-Vorlagen speichern. Jedes Layout kann zum Beispiel eine Reihe von Bereichen, die Größe jedes in der Reihe enthaltenen Bereichs, Filtereinstellungen und die Position jedes Bereichs umfassen. Ferner kann der Benutzer durch Betätigen einer entsprechenden Steuerungseinheit (z. B. einer Schaltfläche, eines Dialogfensters usw.) eine benutzerdefinierte Bezeichnung zuweisen.
-
In einem weiteren Aspekt kann die Benutzerschnittstelle 38 eine Schnellzugriffsleiste 240 unterstützen, mit der ein Benutzer seine Umgebung durch die Erstellung von leicht erreichbaren Verknüpfungen für häufig durchgeführte Aktionen benutzerdefiniert anpassen kann. In einer Ausführungsform kann die Schnellzugriffsleiste 240 eine Standard-Auswahl von häufig verwendeten Befehlen, wie Speichern, Rückgängigmachen, Wiederholen usw. beinhalten, die der Benutzer nach Belieben erweitern oder verkleinern kann. In manchen Ausführungsformen umfasst die Benutzerschnittstelle 38 eine Auswahlmöglichkeit, mit der die Schnellzugriffsleiste 240 entweder oberhalb oder unterhalb der Funktionsleiste 300 angezeigt werden kann.
-
Ferner kann die Benutzerschnittstelle 38 alle visuellen Indikatoren bezüglich nicht lizenzierter oder nicht bezahlter Funktionen entfernen. Wenn zum Beispiel das Softwaremodul keine Lizenz für die Konfiguration und Ausführung von Prozesschargen in der Suite von Bedienerschnittstellenanwendungen 32 finden oder authentifizieren kann, ist die Benutzerschnittstelle 38 in der Lage, alle Chargenfunktionen und -optionen vor dem Benutzer zu verbergen, um Verwirrung aufgrund von irrelevanten Auswahlmöglichkeiten und einem überladenen Bildschirm 200 zu vermeiden.
-
Die Benutzerschnittstelle 38 kann außerdem eine „Ansicht”-Option bieten, über die festgelegt werden kann, ob die Fenster des Hauptinhaltsbereichs 200 als Kachel/Fenster, Registerkarte oder in einer anderen Ansicht angezeigt werden sollen. Die Benutzerschnittstelle 38 kann die Anzahl an Fenstern oder Bereichen, die in dieser Ansicht angezeigt werden, begrenzen, zum Beispiel auf vier. Benutzer können ferner die Möglichkeit haben, in jedes dieser Fenster zusätzliche Objekte einzufügen.
-
In einer Ausführungsform kann der Navigationsbereich 212 der Steuerungsstudioanwendung 38A und der Explorer-Anwendung 38B ein ähnliches Modulexplorer-Fenster anzeigen. 4 zeigt zwei Beispiele 310 und 312 eines „klassischen” hierarchisch angeordneten Navigationsbereichs, der zwei Fenster für die vertikale und horizontale Navigation verwendet, und 5 zeigt die Phasenlogikmodul- und Rezeptur-Bereiche 320 bzw. 322, die jeweils den Lehren der vorliegenden Offenbarung entsprechen. Im Beispiel von 5 werden zur Navigation und zur Erweiterung der Auswahl Pfeile verwendet. Durch Klicken auf Elemente wird der Fokus auf Objekte, die bereits im Hauptinhaltsbereich 210 enthalten sind, gelegt, oder es wird auf ein Kombinations- oder Konfigurationsobjekt zugegriffen, das tiefer unten in der Hierarchie steht. Diese Funktion erhöht die Benutzungsgeschwindigkeit, indem sie das Navigieren durch das Modul, das Einstellen des gewünschten Fokus und den Zugriff auf Objekte zwecks Konfigurationsänderungen für Konfigurationstechniker erheblich erleichtert. Diese Funktion erleichtert zudem die wichtige Verbesserung, mit der es möglich ist, von einer Rezepturebene aus nach unten auf die Phasen zuzugreifen.
-
Wie in 5 dargestellt, kann der Navigationsbereich 212 mehrere Registerkarten zur Trennung von physischen und logischen Einheiten, die in der hierarchischen Struktur (z. B. einem Baum) angezeigt werden, gemäß der Relevanz dieser physischen und logischen Einheiten für die Informationen, die im Hauptinhalts-/Bearbeitungsbereich 210 oder einem anderen Bereich angezeigt werden, aufweisen. Der Navigationsbereich 212 in 5 weist zum Beispiel eine Registerkarte „offene Module” (links dargestellt) auf, in der Objekte aufgeführt werden, die im Hauptinhaltsbereich 210 bearbeitet werden. Wie nachstehend noch genauer beschrieben ist, kann die Benutzerschnittstelle der Anwendungen 38A und 38B außerdem mehrere Bereiche des gleichen Typs unterstützen, wie zum Beispiel Bearbeitungsbereiche 210. In diesen Ausführungsformen kann die Registerkarte „offene Module” alle Objekte auflisten, die in jedem Bearbeitungsbereich bearbeitet werden.
-
Im Gegensatz dazu kann die Registerkarte „alle Module” des Navigationsbereichs 212 (rechts dargestellt) alle bestehenden, konfigurierten Elemente, die im aktuellen Modul oder der aktuellen Rezeptur verwendet werden können, anzeigen. Demnach dient die Registerkarte „offene Module” faktisch als Filter für die Auswahl einer Untermenge von verfügbaren Elementen. Da die Anzahl von Elementen in einem typischen Prozesssteuerungssystem sehr groß sein kann, erlaubt der Ansatz mit zwei Registerkarten es dem Benutzer zum Beispiel, effizient relevante Elemente im Navigationsbereich 212 zu identifizieren, um die Beziehung zwischen diesen Elementen und dem Rest der Struktur anzusehen.
-
Ferner kann der Navigationsbereich 212 andere Filterungsarten, wie inhaltsbasiertes Filtern, bieten. Wenn zum Beispiel ein Konfigurationstechniker eine Rezeptur entwickelt, kann der Navigationsbereich 212 in einer gesonderten Registerkarte Objekte auflisten, die für diese spezielle Rezeptur relevant sind. Als konkreteres Beispiel kann, wenn der Konfigurationstechniker ein Verfahren für eine Rezeptur definiert, die Liste der Elemente in einer der Registerkarten zum Beispiel auf jene Phasenklassen beschränkt sein, die als Schritte zur Rezeptur hinzugefügt werden können, wohingegen Phasen, die nicht zur Rezeptur hinzugefügt werden können, nicht aufgelistet werden. Währenddessen kann die Registerkarte „alle Module” alle Phasenklassen auflisten, die in der jeweiligen Datenbank verfügbar sind.
-
Ein Vorteil dieser Darstellung des Navigationsbereichs 212 in Form von zwei oder mehr Registerkarten für den Benutzer ist, dass die Anzahl an Klicks oder anderen Aktionen, die der Benutzer durchführen muss, reduziert wird. Mit anderen Worten, der Benutzer kann den Drag-and-Drop-Schritt überspringen, das bestehende Konfigurationselement zuweisen/suchen usw. 6 zeigt eine Konfigurationsregisterkarte 330 in einem Modulexplorer-Fenster 332 im Rahmen eines Rezepturprozesses. Mithilfe der Konfigurationsregisterkarte 330 ist der Benutzer in der Lage, bestehende Einheitsprozesse zum entsprechenden Diagramm hinzuzufügen.
-
Der bestehende Konfigurationsabschnitt kann Kombinationen und Module enthalten, mit denen die Anzahl der Klicks, die erforderlich ist, um einen Kombinationsblock oder einen Modulblock zum offenen Modul hinzuzufügen, verringert wird. Statt durch die „klassische” Option zum Einfügen von benutzerdefinierten Blöcken navigieren zu müssen, kann der Benutzer das Element direkt in das Modul ziehen und es dort ablegen. 7 zeigt ein Beispiel der Konfigurationsregisterkarte 330 in einem anderen Modulexplorer-Fenster 334, wenn ein Modul in einer allgemeinen Steuerungsanwendung geöffnet ist, die sich beispielsweise als ein Steuerungsstudio bezeichnen lässt.
-
8 und 9 zeigen eine mögliche Ausführungsform des Parameter-Bereichs 350 in Übereinstimmung mit der vorliegenden Offenbarung. Um die Anzahl von Auswahlvorgängen, Klicks und zugehörigen Dialogen für Parameter, deren Verknüpfung mit Werten durch direktes Eintippen von der Benutzerschnittstelle 38 verhindert wird, zu verringern, kann das Fenster 350 erweitert werden, damit die Konfigurationsveränderungen im selben Fenster ausgeführt werden können, statt zum Beispiel einen gesonderten Dialog starten zu müssen. Der Benutzer kann demnach im Bearbeitungsmodus auf die Steuerungsoptionsreihe 352 für einen PID-Block klicken. Während ein übliches bekanntes System in dieser oder einer ähnlichen Situation ein gesondertes Dialogfenster öffnen würde, kann ein Abschnitt 356 des Parameter-Bereichs 350 der vorliegenden Offenbarung als Reaktion auf den Klick oder eine andere Handlung, die die Auswahl des Benutzers anzeigt, erweitert werden. Folglich kann der Benutzer, wie in 9 dargestellt, mithilfe des erweiterten Abschnitts 356 eine oder mehrere Optionen auswählen.
-
Zudem kann die Benutzerschnittstelle 38 anstelle von Kontrollkästchen, die von einigen bekannten Anwendungen verwendet werden, Parameterfilterfunktionen in die Funktionsleiste 300 integrieren.
-
10 zeigt die Edit-in-Place-Funktion des Parameter-Bereichs 350, der in 8 und 9 dargestellt ist. In diesem Beispiel kann der Bereich 350 das Ziehen und Ablegen (Drag-and-Drop-Funktion) von Parametern unterstützen, um die Verschiebung von Parametern zu erleichtern. 10 zeigt eine mögliche Ausführungsform des Parameter-Bereichs 350 mit Rezepturparametern.
-
III. Bewegen und Anpassen von Bereichen
-
In manchen Ausführungsformen sind die Bereiche anfangs in einer Standartposition auf dem Desktop verankert. Der Benutzer kann auf die Titelleiste eines gewünschten Bereichs klicken, um ein Menü zu öffnen, das, neben anderen Funktionen, eine Schwebesteuerung umfasst, mit welcher der Bereich an eine neue Position bewegt werden („schweben”) kann. Die Titelleiste jedes verankerten Bereichs kann eine Bezeichnung des Bereichs, ein Steuerungselement zur Aktivierung der automatischen Ausblend-Funktion und ein Steuerungselement zum Schließen des Bereichs beinhalten. Sobald ein Bereich durch die Schwebesteuerung in einen schwebenden Bereich umgewandelt wurde, kann er automatisch an die Kanten anderer Bereiche „angedockt” werden, aus dem Bearbeitungsbereich herausgezogen werden usw. In wenigstens einer der Ausführungsformen kann die Größe von sowohl angedockten als auch von schwebenden Bereichen geändert werden. Wenn die Größe eines angedockten Bereichs geändert wird, kann die Benutzerschnittstelle der Studioanwendung 38A oder der Explorer-Anwendung 38B automatisch die Größe von ein oder mehreren angrenzenden, gedockten Bereichen anpassen, so dass der Inhalt jedes Bereichs sichtbar bleibt. Falls nötig, kann die Benutzerschnittstelle außerdem die im Bereich verwendete Schriftgröße anpassen (z. B. die Größe von neun auf acht reduzieren).
-
In einer Ausführungsform kann die Benutzerschnittstelle der Konfigurationsanwendungen 38 es zudem ermöglichen, dass Bereiche außerhalb des Hauptanwendungsfensters positioniert werden. Durch diese Funktion wird der Arbeitsplatz nicht überladen, und es bleibt mehr Platz für das Entwerfen von Steuerungsstrategien oder Grafiken oder für die Durchführung anderer technischer Aufgaben. Ferner kann die Benutzerschnittstelle der Konfigurationsanwendungen 38 eine automatische Ausblendfunktion unterstützen, mit der angedockte Bereiche ausgeblendet werden, so dass lediglich der Name der Titelleiste des Bereichs angezeigt wird. Ein Benutzer kann diese Funktion aktivieren, indem er zum Beispiel auf eine bestimmte, auf der Titelleiste eines angedockten Bereichs befindliche Schaltfläche klickt. Wenn ein ausgeblendeter Bereich reaktiviert wird, kann die Titelleiste erneut eine horizontale Ausrichtung annehmen. Falls gewünscht, können ausgeblendete Bereiche ähnlich wie andere, gedockte Bereiche positioniert werden.
-
IV. Anpassen und Speichern von Layouts
-
Benutzer können einige der hierin beschriebenen Funktionen aktivieren, um Filter auszuwählen oder zu definieren, die auf den Navigationsbereich 212 angewendet werden, Steuerungen auszuwählen, die im Befehlsbereich 300 angezeigt werden, Bereiche je nach Wunsch zu positionieren, die Größe anzupassen, sie zu stapeln, zu gruppieren und anderweitig anzupassen, Schriftarten, Farben, den Hintergrund und andere Text- oder Grafikattribute auszuwählen und weitere Anpassungen durchzuführen, um die Arbeitsumgebung für den jeweiligen Benutzer praktisch und intuitiv zu definieren. Die Benutzerschnittstelle kann es Benutzern ferner ermöglichen, wenigstens einige der Optionen Positionierung, Größe, Filter, Gruppierung und Stapelung von Spalten im Hauptinhaltsbereich benutzerdefiniert anzupassen, um benutzerdefinierte Spaltenlayouts zu definieren. Wie vorstehend beschrieben, können Benutzer außerdem die Schnellzugriffsleiste 240 anpassen. Der Benutzer kann dann die definierten Konfigurationen speichern und die gespeicherte Konfiguration je nach Wunsch wiederherstellen. In manchen Ausführungsformen kann die Benutzerschnittstelle die Konfiguration beim Abmelden oder einem anderen Ereignis automatisch speichern, damit der Benutzer das bevorzugte Layout später wiederherstellen kann.
-
Ein spezifischer Benutzer, der primär im Bereich „A” einer Prozessanlage arbeitet, will zum Beispiel seinen Arbeitsbereich vermutlich nicht mit Daten überladen wollen, die sich auf die Bereiche „B” und „C” beziehen. Der Benutzer kann dementsprechend das Layout, Filter und andere Präferenzen speichern, die speziell auf die Arbeit mit Bereich „A” zugeschnitten sind. Als ein weiteres Beispiel könnte ein Benutzer zum Beispiel primär an Steuerungsstrategien und nicht an individuellen, physischen Vorrichtungen interessiert sein und könnte dementsprechend einen Filter und ein Layout speichern, die speziell auf das Anzeigen und Bearbeiten von logischen Einheiten, wie Funktionsblockdiagrammen, Kontaktplänen usw., angepasst sind. Überdies können einige Benutzer verschiedene Rollen bekleiden und dementsprechend verschiedene benutzerdefinierte Layouts für unterschiedliche Betriebsarten definieren.
-
V. Paletten-Bereich in einer Konfigurationsanwendung
-
11 zeigt eine mögliche Ausführungsform eines Paletten-Bereichs 400. In diesem Beispiel beinhaltet der Paletten-Bereich 400 Icons 402 für verschiedene Elemente, die bei der Entwicklung von Funktionsplänen und Prozessen eingesetzt werden. Jedes Icon 402 kann einen optischen Hinweis auf die entsprechende Funktion (z. B. ein gängiges Steuerungssymbol für ein Boolesches „oder”) und in manchen Ausführungsformen eine Textkennung umfassen. Der Benutzer kann gewünschte Icons 402 mit einem Zeigegerät (z. B. einer Maus) auswählen und das ausgewählte Element auf den Bearbeitungsabschnitt des Inhalts- oder Bearbeitungsbereichs 210 ziehen. Standardmäßig kann die Benutzerschnittstelle 38 eine benutzerdefinierte oder benutzerspezifische Kategorie in der Palette 400 erstellen, um Konfigurationstechnikern die Funktion anzuzeigen. Auf diese Weise müssen Konfigurationstechniker die Funktion nicht über ein oder mehrere Menüs aufrufen. Außerdem kann ein Benutzer zusätzliche Elemente zu der benutzerdefinierten Palette hinzufügen (z. B. durch Ziehen und Ablegen), um seine eigene Sammlung von häufig verwendeten Konfigurationsobjekten aufzubauen. Der Benutzer kann zudem, falls gewünscht, die Kategorie umbenennen.
-
VI. Zoom-Funktion in der Konfigurationsanwendung
-
Mit erneuter Bezugnahme auf 3 verbessert das Schwenk- und Zoom-Fenster 218 die allgemeine Benutzerfreundlichkeit der Benutzerschnittstelle 38, indem es Benutzern erlaubt, entsprechende Diagramme besser zu navigieren, wenn sie mit großen und/oder komplexen Modulen und Rezepturen arbeiten. Wie in 12 gezeigt, kann der Bereich 410 ein Objekt oder eine Ansammlung von Objekten 412 umfassen, die vergrößert oder verkleinert werden können. Die Objekte 412 können zum Beispiel miteinander verbundene Feldvorrichtungen in einer Prozessanlage, Funktionsblöcke in einem Steuerungsplan unter Verwendung eines Fieldbus-Protokolls, Phasen eines Rezepturprozesses oder einer Handlung usw. darstellen. In manchen dieser Ausführungsformen kann die Zoom-Funktion ein Schieber sein, so dass der Benutzer ganz einfach die gewünschte Größe von Grafiken, die im Hauptbereich angezeigt werden, auswählen kann. Ferner kann die Benutzerschnittstelle 38 die Grafiken, die im Hauptbereich 210 angezeigt werden, in Echtzeit vergrößern oder verkleinern, während der Benutzer die Zoom-Steuerung betätigt. Folglich muss der Benutzer keine Vergrößerungsprozentzahl eingeben, um zu sehen, ob die ausgewählte Größe zufriedenstellend ist, wie es in den meisten Software-Anwendungen üblicherweise der Fall ist.
-
VII. Ausdruckseditor
-
13–15 zeigen einen Ausdruckseditor 500, der über ein Ausdruckseditorfenster 502 verfügt, welches für die Interaktion zwischen Benutzern und der Steuerungsstudioanwendung 38B optimiert ist, obwohl auch andere Anwendungen des Ausdruckseditors 500 möglich sind. Der Ausdruckseditor 500 kann verschiedene Betriebsmodi, wie Bearbeiten, Fehlersuche usw. unterstützen, und das Ausdruckseditorfenster 502 ist in der Lage, eine Ausdruckseditor-Funktionsleiste 510 an den aktuell ausgewählten Modus anzupassen. In einer Ausführungsform handelt es sich bei dem Ausdruckseditorfenster 502 um ein einzelnes Anwendungsfenster, das von der Basisanwendung gestartet wird, welche eine Unternehmensansichtsanwendung und eine Explorer-Anwendung unterstützt, um einige Beispiele zu nennen. Das Aussehen und das Verhalten des strukturierten Texteditors sind vorzugsweise für alle Standorte, in denen Ausdrücke modifiziert werden können, gleich. Das Fenster 502 in 13 zeigt ein mögliches allgemeines Layout für den Ausdruckseditor 500 im Bearbeitungsmodus.
-
Die Funktionsleiste 510 des Ausdruckseditors kann es einem Benutzer ermöglichen, intuitiv einen beliebigen zutreffenden, strukturierten Text (z. B. Funktionen, Konstanten, Operanden usw.) einzufügen. Die Funktionen und Operanden können dabei mathematische Operanden. Boolesche Ausdrücke und andere Gebilde umfassen. In einer Ausführungsform verhindert die Funktionsleiste 510 Auswahlen, die in einem gegebenen Kontext unmöglich oder nicht verfügbar ist. Demzufolge zeigt die Ausdruckseditor-Funktionsleiste 510 in 13 zum Beispiel nur jene Optionen und Steuerungselemente an, die der Benutzer im jeweiligen Modus und in der aktuellen Betriebsphase legitim aufrufen kann.
-
Wie oben beschrieben können Funktionen und Befehle logisch gruppiert werden. Die in 13–15 gezeigten Beispiele zeigen eine Auswahl möglicher Anordnungen der Funktionsleiste 510. Ferner kann eine Schnellzugriffsleiste 520 stets Verknüpfungen zu den folgenden allgemeinen Befehlen bieten: Öffnen, Speichern, Rückgängigmachen, Wiederholen, Drucken, Schriftart, Kommentar usw. Der Benutzer sollte vorzugsweise jeden beliebigen Befehl, der im Ausdruckseditor 500 verfügbar ist, zur Schnellzugriffsleiste 520 hinzufügen können, um die Effizienz und Benutzerfreundlichkeit zu verbessern.
-
Zudem kann der Ausdruckseditor 500 intelligente Eingabeerkennung (z. B. IntelliSense) unterstützen. Wenn zum Beispiel ein Parametername von einem Punkt gefolgt wird, kann der Ausdruckseditor 500 eine Drop-Down-Box mit verschiedenen Auswahlmöglichkeiten zur Verbesserung der Kodierungseffizienz anzeigen. Des Weiteren unterstützt der Ausdruckseditor 500 vorzugsweise die Funktionen Finden und Suchen/Ersetzen.
-
In einer Ausführungsform unterstützt der Ausdruckseditor 500 Code-Ausschnitte, um das einfache Einfügen und die Wiederverwertung von allgemeinem Code zu ermöglichen. Mit dieser Funktion kann der Benutzer einen Code-Abschnitt im Bearbeitungsfenster 524 auswählen und die Auswahl unter einem benutzerdefinierten Namen als Ausschnitt speichern. Die Funktionsleiste 510 kann einen Befehl für den Befehl „Ausschnitt einfügen” beinbalten, um es Benutzern zu ermöglichen, aus den gespeicherten Ausschnitten auszuwählen. In manchen Ausführungsformen kann die Sammlung von Ausschnitten in einem dynamischen Teil der Funktionsleiste 510 zur schnellen, visuellen Auswahl als „Galerie” angezeigt werden.
-
In manchen Ausführungsformen erscheint, wenn der Benutzer eine Funktion eintippt oder sie aus der Funktionsleiste 510 auswählt, im Bearbeitungsfenster 524 automatisch die korrekte Syntax inklusive Platzhaltern und konfigurierbaren Elementen. Die Option Syntax „automatisch einfügen” kann eine vom Benutzer auswählbare Option sein, die vorzugsweise standardmäßig aktiviert sein sollte. Zusätzlich kann der Ausdruckseditor 500 eine kontextsensitive Hilfe für alle Befehle und Funktionen anbieten.
-
Wenn sich der Ausdruckseditor 500 im Fehlersuchmodus befindet, kann ein Ausdrucksbestätigungsfenster zu einem Überwachungsfenster werden. Standardmäßig können alle Werte von Funktionsblock-Eingaben, Ausgaben, referenzierten Parametern und lokalen Variablen im Überwachungsfenster aktuelle Werte erfassen, vorzugsweise mit der Option, einen oder mehrere ausgewählte Werte entfernen zu können.
-
Wenn sich der Ausdruckseditor 500 im Fehlersuchmodus befindet, kann die Funktionsleiste 510 sich ferner automatisch verändern, um Fehlersuchvorgänge zu unterstützen. So können zum Beispiel Steuerungselemente für die folgenden Fehlersuch-Befehle/Operationen auf der Funktionsleiste 510 erscheinen: Einzelschritt, Toggle-Unterbrechungspunkt (mit Unterstützung für mehrere Unterbrechungspunkte), zum Unterbrechungspunkt durchführen, einmal durchführen, vom Anfang an durchführen, zurücksetzen/beenden, Pause usw.
-
Wenn ein Benutzer die Maus über einen Parameter bewegt, kann der aktuelle Wert in Schwebefunktion über dem Parameter angezeigt werden. Sobald ein Schwebe-Popup-Fenster vorliegt, kann der Benutzer den Wert, falls gewünscht, erzwingen. Das Aussehen des Schwebefensters kann außerdem einen visuellen Hinweis darauf geben, dass der Wert erzwungen ist. Ferner kann das Schwebe-Popup eine Untermenge der verfügbaren Eigenschaften, Parameter oder Steuerungselemente anzeigen. Die Untermenge kann entsprechend der Wahrscheinlichkeit ausgewählt werden, dass ein Benutzer eine bestimmte Eigenschaft, einen Parameter oder ein Steuerungselement auswählen wird.
-
Zudem kann der Ausdruckseditor 500 den aktuellen Programmort und Ausführungspfad im Code anzeigen, indem ausgeführte Zeilen hervorgehoben werden. Diese Funktion ist vor allem für Ausdrücke von Vorteil, die komplexe, konditionale Logik beinhalten. Außerdem sollte das Umstellen vom Online-Modus zum Bearbeitungsmodus eine Option bieten, um Unterbrechungspunkte zu entfernen oder beizubehalten.
-
VIII. Beispiele für kontextspezifische Befehlspräsentation im Befehlsbereich
-
16–24 zeigen zusätzliche Beispiele des Befehlsbereichs, der hier als Funktionsleiste 300 implementiert wurde, in verschiedenen Betriebszuständen. Insbesondere der in 16 gezeigte Betriebszustand 602 entspricht einer Auswahl der Registerkarte „Start” in einem Kontext, in dem keine Zwischenablagefunktionen verfügbar sind, um ein Beispiel zu nennen. Zwischenzeitlich könnte die Benutzerschnittstelle 38 bestimmt haben, dass der Kontext zahlreiche Operationen in Zusammenhang mit dem Diagrammmodus erfordert.
-
Ferner zeigt 17 einen Betriebszustand 602, der einer Auswahl der Registerkarte „Diagramm” entspricht, 18 zeigt einen Betriebszustand 604, der einer Auswahl der Registerkarte „Ansicht” entspricht, und 19 zeigt einen Betriebszustand 606, der einer Auswahl der Registerkarte „Einstellungen” entspricht. 20–24 zeigen beispielhafte Betriebszustände 608–616, in denen die Benutzerschnittstelle 38 zusätzliche, kontextspezifische Registerkarten bietet, wie zum Beispiel eine Registerkarte „Elemente”, „Online für SFC” usw.
-
25 und 26 zeigen Ansichten 700 und 704 gemäß der Auswahl von zusätzlichen Benutzeroptionen. Insbesondere zeigt 25 ein Menü mit zusätzlichen Optionen zur Modulvorbereitung. Die Optionen 702 sind zum Beispiel eventuell auf Grund des mangelnden Platzangebots oder der relativen Verwendungsfrequenz nicht in der Funktionsleiste 300 oder der Schnellzugriffsleiste 240 enthalten. Mit Bezugnahme auf 26 entspricht Ansicht 704 einer Situation, in der ein Benutzer die benutzerdefinierbaren Optionen der Schnellzugriffsleiste 240 auswählt. Wenigstens in den Ansichten 700 und 704 kann die Benutzerschnittstelle 38 zum Beispiel sowohl auf kontextspezifischen als auch auf visuellen Auswahlmöglichkeiten der Funktionsleiste und „traditionellen” Optionsmenüs in der Form von Optionslisten aufbauen.
-
Im Allgemeinen kann ein Befehlsbereich wie die Funktionsleiste 300 eine beliebige Anzahl von auswählbaren Steuerungselementen beinhalten, die, wie oben beschrieben, logisch nach allgemeinen Anwendungsbereichen oder anderen Regeln gruppiert sein können. Der Navigationsbereich 212 kann eine große Anzahl von physischen Objekten, wie Steuereinheiten, Eingabe-/Ausgabe-Karten, intelligenten Vorrichtungen, älteren Vorrichtungen sowie logische Objekte, wie Steuerungsstrategien, Bereiche, Rezepturen usw. anzeigen. Während des Betriebs passt die Benutzerschnittstelle der Steuerungsstudioanwendung 38A oder der Explorer-Anwendung 38B dynamisch die im Navigationsbereich 212 angezeigten Auswahlen basierend auf der Auswahl der Steuerungselemente in der Funktionsleiste 300 und/oder die in der Funktionsleiste 300 angezeigten Steuerungselemente basierend auf der Auswahl im Navigationsbereich 212 an. Demzufolge entfernt die Benutzerschnittstelle automatisch nicht zutreffende Steuerungselemente und/oder fügt neu zutreffende Steuerungselemente hinzu, wenn ein Benutzer im Navigationsbereich 212 eine bestimmte Vorrichtung (z. B. ein Ventil) auswählt. Der Benutzer kann auf ähnliche Weise über die Funktionsleiste 300 einen bestimmten Betriebsmodus (z. B. eine Trend-Analyse) aktivieren, der auf manche physische oder logische Objekte nicht angewendet werden kann, und der Navigationsbereich 212 kann den Satz von Objekten, die in einer oder mehreren Registerkarten aufgelistet sind, entsprechend verkürzen. Die Funktionsleiste 300 kann selbstverständlich basierend auf einer Auswahl in der Funktionsleiste 300 automatisch angepasst werden. In manchen Ausführungsformen kann die Benutzerschnittstelle angesichts bestimmter Ereignisse die Funktionsleiste 300 oder den Navigationsbereich 212 anpassen (z. B. bei Entdecken einer Auswahl in einem bestimmten Bereich, gefolgt von der Auswahl einer Rezeptur über den Navigationsbereich 212, bevor festgelegt wurde, wie die Funktionsleiste 300 angepasst werden sollte).
-
IX. Schichten
-
In einem anderen Aspekt kann die Benutzeroberfläche verschiedene Schichten als eine Art erweiterter Funktionalität unterstützen, mit denen Techniker verschiedene Aspekte der Systemkonfiguration bildlich darstellen können. Schichten können zum Beispiel genutzt werden, um zwischen einer Modulklassenstruktur und Eingriffen bei Vorkommnissen zu unterscheiden. In manchen Ausführungsformen werden alle Objekte standardmäßig zur ersten Schicht einer Anzeige hinzugefügt. Mit anderen Worten, jedes Anzeigegerät oder Objekt innerhalb des Anzeigegeräts kann mit einer Standardschicht definiert werden. Wenn die Standardschicht nicht innerhalb der Anzeige existiert, kann die Schicht automatisch erstellt und in der Anzeige sichtbar gemacht werden. Wenigstens in der Steuerungsstudioanwendung 38B können Schichten benutzerdefiniert sein. In einer Ausführungsform können Schichten über die Registerkarte „Ansicht” in der Funktionsleiste 300 ausgewählt werden. Wenn alle Schichten sichtbar sind, kann die Anzeige wie eine einzige Schicht aussehen und funktionieren.
-
In einer Ausführungsform unterstützt die Benutzerschnittstelle der Steuerungsstudioanwendung 38B eine Gerätekennzeichnungsschicht, mit der Gerätekennzeichnungen zusätzlich zum physischen Eingabe-/Ausgabe-Pfad angezeigt werden können; eine Klassenschicht, mit der Variantenobjekte auf „transparente” Art innerhalb des Hauptinhaltsbereichs 210 angezeigt werden können; eine Variantenschicht, mit der Klassenobjekte auf „transparente” Art innerhalb des Hauptinhaltsbereichs 210 angezeigt werden können; eine Informationsschicht, in der Informationen wie Hyperlinks, die mit dem ausgewählten Steuerungsmodul oder der Rezeptur in Verbindung stehen, angezeigt werden können; eine Dokumentationsschicht, mit der eingebettete Dokumente oder Kommentarfelder, die in Verbindung mit der Rezeptur stehen, angezeigt werden können, und eine Grafikschicht, mit der alle Grafiken, die zum Steuermodul oder der Rezeptur gehören, im Hauptinhaltsbereich 210 angezeigt werden können. 27 zeigt einen beispielhaften Dialog 750 für die Anpassung einer Schicht, der durch Klicken auf ein Icon 752 in einem Schichtansichtsbereich 754 aktiviert wird.
-
X. Beispielhafte Architektur
-
28 zeigt ein Beispiel einer Benutzerschnittstellensteuerung 800, die in der Steuerungsstudioanwendung 38A und/oder der Explorer-Anwendung 38B verwendet werden kann. Die Benutzerschnittstellensteuerung 800 kann eine Navigationsbereichsteuerung 802, eine Befehlsbereichssteuerung 804 und eine Haupt-/Inhaltsbearbeitungsbereichssteuerung 806 beinhalten, mit denen der Navigationsbereich 212, der Befehlsbereich 300 und der Hauptinhaltsbereich 210 jeweils dynamisch angepasst werden können. Ferner sind eine Suchbereichssteuerung 808, eine Vorschaubereichssteuerung 810, eine Parameter-Bereichssteuerung 812, eine Schritt-/Aktionsbereichssteuerung 814, eine Paletten-Bereichssteuerung 816 und eine Farbbereichssteuerung 818 jeweils so konfiguriert, dass sie sowohl in der Steuerungsstudioanwendung 38A als auch in der Explorer-Anwendung 38B ein entsprechendes Fenster anzeigen.
-
Während des Betriebs interagieren wenigstens die Steuerungseinheiten 802–806 mit einer Kontextsteuerung 830, welche die Anzahl von Operationen bestimmt, die auf ein bestimmtes Modul zutreffen, eine Reihe von Einheiten festlegt, die auf eine bestimmte Operation zutreffen und andere Einschränkungen definiert, welche die Anzahl der Steuerungselemente oder Einheiten, die auf dem Bildschirm angezeigt werden, verringern könnten. Mit anderen Worten, die Kontextsteuerung 830 stellt fest, welche Aufgabe der Benutzer aktuell durchführt und worauf diese Aufgabe vermutlich begrenzt ist. Die Kontextsteuerung 830 kann außerdem mit einer statistischen Datenbank 832 interagieren, um zu bestimmen, welche Operationen üblicherweise in einer einzelnen Sitzung durchgeführt werden, welche Elemente Benutzer statistisch gesehen als zusammenhängend betrachten usw. In manchen Ausführungsformen unterstützt die Kontextsteuerung 830 zudem nachstehend ausführlicher beschriebene Morphing-Techniken, um basierend auf dem sich entfaltenden Kontext der Benutzertätigkeit die Positionierung und Größe des Bildschirms anzupassen und selektiv Bildschirme in Laufzeit zu aktivieren oder zu deaktivieren.
-
Ferner kann die Kontextsteuerung 830 mit einem Filtermodul 834 und einer benutzerdefinierten Layout-Steuerung 836 interagieren, um Filter und benutzerangepasste Einstellungen für das Organisieren und die Größenanpassung von Fenstern usw., anzuwenden. Wie in 28 gezeigt, kann das Filtermodul 834 sowohl die vordefinierte Filterdatenbank 840 als auch eine benutzerdefinierte Filterdatenbank 842 konsultieren.
-
Zudem kann die Benutzerschnittstellensteuerung 800 eine In-Place-Edit-Steuerung 844 beinhalten, mit der das oben beschriebene In-Place-Editing ermöglicht wird. Ferner kann eine Operation-/Elementassoziierungsdatenbank 846 Informationen bezüglich der Operationen und Elemente, auf denen diese Operation durchgeführt werden kann, an die Kontextsteuerung 830 bereitstellen. Die Operation-/Elementassoziierungsdatenbank 846 kann zum Beispiel eine Liste von Operationen, die an einer Rezeptur durchgeführt werden können, einschließlich Ansehen von Parametern, Weiterleitung von Parametern und Zuweisung von Parametern usw. spezifizieren. Ferner kann die Operation-/Elementassoziierungsdatenbank 846 oder die statistische Datenbank 832 die relative Wahrscheinlichkeit, dass eine bestimmte Funktion aufgerufen wird, berechnen. Allgemein kann eine oder können beide dieser Datenbanken die Benutzerschnittstellensteuerung 800 dabei unterstützen, zu bestimmten, wie wahrscheinlich es ist, dass ein Benutzer eine bestimmte Funktion aufruft, so dass „beliebtere” Optionen im Befehlsbereich 300 angezeigt werden und weniger beliebte Optionen in versteckte Menüs oder in Menüs, die schwerer zu erreichen sind, verschoben werden können.
-
29 zeigt eine Steuerungseinheit 900, die zusätzlich in der Steuerungsstudioanwendung 38A enthalten sein kann, um einige für das Entwickeln von und die Fehlersuche in Steuerungslogik spezifische Funktionalitäten zu unterstützen. Insbesondere kann die Steuerungseinheit 900 einen Ausdruckseditor 902 zur Implementierung der vorstehend beschriebenen Ausdruckbearbeitung, eine Logikblock-Multibereichsverbindung 904 zur Implementierung von nachstehend beschriebenen Verbindungstechniken, einen Elementreferenzgenerator 906 zur Unterstützung von hierin beschriebenen Abtragetechniken und einen Generator für Parameterweiterleitungswerte zur Implementierung von Weiterleitungs- und Zuweisungstechniken in der nachstehend beschriebenen Rezeptursteuerung beinhalten. Die Logikblock-Multibereichsverbindung 904 kann mit einer Multi-Ansichtsmodus-Steuerung 910 interagieren, um eine parallele Nutzung in verschiedenen Bearbeitungsbereichen zu ermöglichen.
-
XI. Verknüpfung zwischen Logikblöcken in einer Multi-Modus-Ansicht
-
Mit Bezugnahme auf 30A kann eine Bearbeitungsfläche 950 Bearbeitungsbereiche 952 und 954 beinhalten, die nebeneinander angeordnet sind, damit sie gleichzeitig von einem Bediener genutzt werden können. Beide Bearbeitungsbereiche 952 und 954 verfügen über Funktionsfähigkeiten, die denen des vorstehend beschriebenen Hauptbearbeitungsfensters 210 ähneln. Ein Benutzer kann sich zum Beispiel dafür entscheiden, mit mehreren Bearbeitungsbereichen, wie den Bereichen 952 und 954, zu arbeiten, um eine Überladung in nur einem Bearbeitungsbereich zu vermeiden. Beide Bearbeitungsbereiche 952 und 954 können separat angedockt, bewegt und in der Größe verändert werden. Im Beispiel in 30A–C zeigen die Bearbeitungsbereiche 952 und 954 jeweils eine Grafik 956 (ein Ventil) beziehungsweise eine Grafik 958 (eine Pumpe) an.
-
Um die Grafik 956 mit der Grafik 958 zu verbinden, kann der Benutzer ein geeignetes Verbindungssteuerungselement (hier nicht gezeigt) aktivieren, einen Endpunkt in einem der Bereiche 952 oder 954 auswählen und die Verbindung außerhalb der Umrandungen des Bereichs zur Zielgrafik im anderen Bereich 952 oder 954 ziehen (siehe 30B). Der Benutzer kann zum Beispiel eine Eingabe der Ventil-Grafik 956 auswählen und die Verbindung zur Ausgabe der Pumpen-Grafik 958 ziehen. Ein Vorteil ist, dass die Benutzerschnittstelle es dem Benutzer erlaubt, Grafiken, die in unterschiedlichen Bearbeitungsbereichen angezeigt werden, zu verbinden. Um die neue Verbindung deutlich anzuzeigen, kann die Benutzerschnittstelle zudem eine Verbindung 960 zwischen den Grafiken 956 und 958 zeichnen. Dabei befindet sich ein Teil der Verbindung 960 in Bereich 952, ein anderer Teil in Bereich 954 und ein weiterer Teil im gemeinsamen Abschnitt 950. In manchen Ausführungsformen kann die Verbindung 960 in einer anderen Farbe, einem anderen Stil (z. B. gebrochene Linie), einer anderen Dicke usw. angezeigt werden. Der Benutzer kann anschließend zwischen den Bereichen 952 und 954 hin und her schalten, und die Benutzerschnittstelle aktualisiert automatisch die Verbindung 960, um die Darstellung der Verbindung aufrechtzuerhalten.
-
Ferner kann die Benutzerschnittstelle automatisch Datenstrukturen erzeugen, welche die Verbindung zwischen der Ventil-Grafik 956 und der Pumpen-Grafik 958 beschreiben. Zudem oder alternativ hierzu kann die Benutzerschnittstelle Kennzeichnungen 962 und 964 erzeugen, die in 30C gezeigt werden. Jede der Kennzeichnungen 962 und 964 kann einen Bereich identifizieren, mit dem die Verbindung verknüpft ist. Die Benutzerschnittstelle kann selbstverständlich in ähnlicher Weise Verbindungen zwischen Logikblöcken, wie zum Beispiel Fieldbus-Funktionsblöcken, herstellen. Des Weiteren kann die Anzahl der Bearbeitungsbereiche im gemeinschaftlichen Abschnitt 950 drei, vier oder jede beliebige Anzahl betragen.
-
XII. Weiterleitung und Zuweisung von Parametern in der Rezepturkonfiguration
-
31A–D zeigen die Weiterleitung und Zuweisung von Parametern, die von einer oder beiden der Anwendungen 38A und 38B unterstützt werden kann, um die Konfiguration von in der Chargensteuerung verwendeten Rezepturen zu vereinfachen. Wie bereits bekannt, ist eine in einer Chargenproduktionsumgebung verwendete Rezeptur üblicherweise in Routinen auf vier Ebenen unterteilt: der Prozessebene, der Einheitsprozessebene, der Operationsebene und der Phasen-(oder Phasenklassen-)ebene. Dementsprechend kann ein Bearbeitungsbereich wie der Hauptinhaltsbereich 210 Prozesse, Einheitsprozesse, Operationen und Phasenklassen einer bestimmten Rezeptur im Tabellenformat anzeigen. In dem Beispielszenario, das in 31A–C gezeigt wird, kann der Benutzer eine Phasenklasse PC1 auswählen und auf die Klasse PC1 klicken, um eine Anzeige einer Parameterauswahl zu erhalten (31A). Danach kann der Benutzer den Parameter PARAM1 auswählen, den Parameter mithilfe einer Maus oder einer Tastatur zur Operation OP1 ziehen und den Parameter „in” der Operation OP1 ablegen. Als Reaktion darauf erstellt die Benutzerschnittstelle automatisch einen Parameter OP_PARAM1 (30B). Genauer gesagt wendet die Benutzerschnittstelle eine vordefinierte, auf der Parameterbezeichnung PARAM1 basierende Benennungsregel an, um die Bezeichnung OP_PARAM1 zu erzeugen, im Anschluss erzeugt sie automatisch einen Link zwischen dem Prozess PC und der Operation OP1, d. h., sie zeigt an, dass eine Charge, welche die Rezeptur ausführt, die Lösung des Parameters PARAM1 an die Operationsebene weiterleiten muss (mit anderen Worten, der Parameter PARAM1 wird anhand des Parameters OP_PARAM1 bestückt). Die Benutzerschnittstelle aktualisiert zudem den Bildschirm, um den automatisch erzeugten Parameter anzuzeigen.
-
Wie in 31C gezeigt, kann der Benutzer zudem einen Parameter über mehrere Ebenen der Rezeptur-Hierarchie hinweg weiterleiten. Folglich kann ein Benutzer den Parameter PARAM1 auswählen und den Parameter in den Prozess ablegen. Dabei ist festzustellen, dass die Benutzerschnittstelle in diesem Fall auf der Zielebene und jeder Zwischenebene mehrere Parameter mitsamt den zugehörigen Strukturen erstellt. Dementsprechend erzeugt die Benutzerschnittstelle die Parameter PRC_PARAM1, UP_PARAM1 und OP_PARAM1.
-
Mit Bezugnahme auf 31D kann ein Benutzer zudem einen Parameter in einen bestehenden Parameter ziehen und darin ablegen, um die Parameter gleichzusetzen. In diesem Beispiel spezifiziert der Benutzer, dass PARAM1 gleich dem Wert des Operationsebenen-Parameters OP_EXISTING_PAR ist. In manchen Ausführungsformen kann die Benutzerschnittstelle automatisch den Bildschirm aktualisieren, um die Verbindung zwischen den neu verknüpften Parametern anzuzeigen. So kann die Benutzerschnittstelle zum Beispiel einen grafischen Indikator zeichnen, wobei eine derartige Linie die Quell- und die Zielparameter miteinander verbindet (d. h. PARAM1 und OP_EXISTING_PAR). Aus dem Vorstehenden wird deutlich, dass der Benutzer folglich Rezepturparameter verändern kann, ohne mühsame Dialoge aufrufen, Menüoptionen durchsuchen und Parameterbezeichnungen eingeben zu müssen.
-
XIII. Morphing von Benutzeroberflächen
-
Ferner kann die Benutzerschnittstelle der Steuerungsstudioanwendung 38A und der Explorer-Anwendung 38B automatisches Morphing von Bildschirmen unterstützen, um zukünftige Benutzerhandlungen besser antizipieren zu können und sich fortlaufend mit Bezug auf vorherige Handlungen an den Benutzer anzupassen. Ein Beispiel dieses Morphings wird in 32A–C gezeigt.
-
Die Benutzerschnittstelle kann dem Benutzer anfangs einen Bildschirm anzeigen, der ein Befehlsbereich mit einem Originalsatz von Befehlen, einen Hauptinhalts-Bearbeitungsbereich und einen Navigationsbereich beinhaltet (32A). Jeder der dargestellten Bereiche kann eine standardmäßig festgelegte Größe und Position im Verhältnis zu den anderen Fenstern haben. Der Benutzer Kann dann das Steuerungselement „Ansicht” im Befehlsbereich aktivieren, um zum Beispiel ein bestimmtes, im Navigationsbereich ausgewähltes Element ansehen zu können. Zusätzlich zum Anzeigen der vom Benutzer gewünschten Ansicht kann die Benutzerschnittstelle automatisch weitere Schritte einleiten, um den Bildschirm zu verändern oder anzupassen und so den erwarteten, zukünftigen Benutzerhandlungen zu entsprechen. Wie in 32B gezeigt, kann die Benutzerschnittstelle automatisch ein Integritätsverlaufsfenster oder einen entsprechenden Bereich erstellen, die Größe des Hauptinhaltsbereichs anpassen, um Platz für ein neues Update zu schaffen, die im Befehlsbereich angezeigten Steuerungselemente aktualisieren usw. Als Reaktion auf den nächsten Benutzerbefehl kann die Benutzerschnittstelle den Bildschirm weiter verändern (32C).
-
Folglich kann die Benutzerschnittstelle automatisch die Steuerungselemente, die Größe der Bereiche, die Schriftart und andere Merkmale angleichen, um sich an den Kontext der aktuellen Benutzeroperationen anzupassen. Je nach Belieben kann die Benutzerschnittstelle hierbei mehr als nur die letzte vom Benutzer durchgeführte Aktion in Betracht ziehen und den Bildschirm basierend auf einer bestimmten Anzahl von vorhergegangenen Benutzerbefehlen (oder Auswahlen im Navigationsbereich) verändern.
-
XIV. Andere Beispiele und Anwendungen
-
33 stellt ein weiteres beispielhaftes Bereichs-Layout der Steuerungsstudioanwendung 38B dar. Dieses Layout kann zum Beispiel einer anderen Benutzerpräferenz (verglichen mit dem Layout von 3) oder einer anderen Benutzerrolle entsprechen. Im Allgemeinen können Benutzer jedes gewünschte Layout und jede beliebige Filtereinstellung definieren und speichern.
-
Ferner wird festgehalten, dass die vorstehend beschriebenen Verfahren auch in anderen Softwaresystemen oder Modulen in Zusammenhang mit Prozesssteuerungsnetzwerken verwendet werden können. Während die oben beschriebenen Zeichnungen eine bestimmte Art von Softwareanwendung darstellen, können die darin veranschaulichten Grundsätze in ähnlicher Weise für Anwendungen zur Prüfung von Anlagengeräten, der Überwachung von Steuervariablen (z. B. Sensormessungen) usw. angewendet werden.
-
Während diese Erfindung mit Bezugnahme auf spezifische Beispiele beschrieben wurde, die ausschließlich als veranschaulichende Beispiele gedacht sind und nicht als Einschränkungen der Erfindung gelten, kann ein Fachmann leicht erkennen, dass an den offenbarten Ausführungsformen Veränderungen, Zusätze oder Löschungen vorgenommen werden können, ohne dabei vom Geist und Umfang dieser Erfindung abzuweichen.