Module, Panels, Childpanels

Bisher wurden lediglich ein Prozessbild, ein Trendpanel sowie einige Bediendialoge erstellt. Die Betrachtung der Resultate in der Vorschau des grafischen Editors war somit noch übersichtlich und ausreichend.

Reale Anlagen bestehen jedoch aus mehreren Dutzend oder gar Hundert Prozessbildern, so dass eine geeignete Form der Navigation und Bildverwaltung bereitgestellt werden muss. Zusätzlich zu den, im Abschnitt Erstellen von Prozessbildern – der grafische Editor, vorgestellten Methoden zum Öffnen von Dialogen (Kindfenstern), soll im vorliegenden Kapitel näher auf das Themenfeld "Fenstertechnik" eingegangen werden.

In einem WinCC OA System können mehrere User Interfaces gleichzeitig an einem Server laufen. Dabei ist es für WinCC OA unerheblich, ob diese UI-Manager auf ein und demselben (z.B. dem Server) oder auf verschiedenen Rechnern laufen. Typischerweise wird je Rechnerein Laufzeit Userinterface konfiguriert sein.

Jeder User Interface Manager kann nun ein oder mehrere Visualisierungs-Module darstellen. Dabei stellt ein solches Modul immer ein eigenes Programm-Fenster bezüglich des Betriebssystems dar.

Abbildung 1. Darstellung von Prozesszuständen in mehreren Modulen jeUser Interface Manager

In jedem Modul wird immer ein so genanntes Rootpanel (Elternpanel, Elternfenster) geöffnet. Dieses kann entweder ein Prozessbild in der Art des bereits erstellen Panels process.pnl sein, oder aber eine Bedienoberfläche mit weiteren, in das Rootpanel eingebetteten Modulen, darstellen. In diesen Modulen werden dann wieder Panels (als Rootpanel) geöffnet.

Ebenso ist es möglich, aus einem Modul ein weiteres Modul als eigenständiges Fenster zu öffnen. Wird das aufrufende (ursprüngliche) Modul geschlossen oder das dort angezeigte Root-Panel gewechselt, bleibt das aufgerufene (neue) Modul davon unbetroffen.

Anmerkung:

Die Verwendung von mehreren Modulen ist immer dann wichtig, wenn bestimmte Bereiche der Visualisierung permanent und unabhängig vom Rest geöffnet bleiben sollen. So könnte beispielsweise auf einem Rechner mit zwei Monitoren am linken Schirm individuell eines der vielen Prozessbilder und am rechten Schirm immer der Alarmschirm geöffnet werden. Dennoch wird nur ein User Interface-Managerbenötigt.

Anmerkung:

Ohne zusätzliche Einstellungen besitzt das Fenster eines Moduls immer standardmäßig eine Symbolleiste und Menüs. Diese werden in den meisten Fällen ausgeblendet, da der Bediener ausschließlich über die, in den Panels bereitgestellten Elemente navigieren darf.

Abbildung 2. Aufbau / Fenstertechnik bei Verwendung der Panel-Topologie im aktuellen Beispiel

Von jedem Root-Panel können weitere Fenster in Form von Childpanels (Kindfenster) geöffnet werden. Ein wichtiges Merkmal von Childpanels ist, dass sie inhaltlich zu jenem Rootpanel (Elternfenster) gehören, aus dem sie geöffnet werden. Dies impliziert, dass bei Wechsel/Schließen des Rootpanels, alle zugehörigen Childpanels automatisch geschlossen werden. So macht die Anzeige des Bediendialogs von Ventil V3 unseres Beispiels nur dann Sinn, wenn auch das Prozessbild mit der Ventildarstellung V3 und dessen Umgebung sichtbar ist.

Kindfenster und Module können je nach Aufgabenstellung auf zahlreiche verschiedene Arten geöffnet werden.

Laufzeitverhalten / Positionierung Modul/Rootpanel Childpanel
Zentriert bezüglich Bildschirm X -
Zentriert bezüglich aufrufendem Panel - X
Beliebige x/y Position bezüglich Bildschirm X -
Beliebige x/y Position bezüglich aufrufendem Panel - X
Beliebige relative x/y Position bezüglich Aufrufpunkt im Panel (z.B. immer rechts über Gerätesymbol) - X
Immer im Vordergrund bezüglich allen Programmfenstern (stayOnTop()) X -
Im Vordergrund bezüglich Fenstern des eigenen Moduls, sperrend (modal) - X
Aufruf aus Rootpanel X X
Aufruf aus Childpanel X X
Direkte Rückgabewerte an aufrufendes Panel (Abfrage- und Entscheidungs-Dialoge) - X

Anmerkung:

Rein optisch sind Module mit Rootpanels nicht einfach von Kindfenstern unterscheidbar. Lediglich Ihr Verhalten zur Laufzeit unterscheidet sich grundlegend.

Anmerkung:

Für die meisten Anwendungsfälle reicht die Verwendung des Wizards zum Öffnen von Kindfenstern (Dialogen) oder Modulen mit Rootpanels. In Verbindung mit der Panel-Topologie kann dem Benutzer sehr einfach eine leistungsfähige Bedienoberfläche bereitgestellt werden. Darüber hinaus kann die Handhabung von Fenstern/Dialogen über die integrierte Scriptsprache CONTROL nahezu jede Bedienphilosophie abdecken - weitere Hinweise dazu finden sich im Abschnitt Handhabung von Modulen, Panels und Childpanels bzw. in der Online-Hilfe unter Funktionsarten > panel.ctl.