Display mit Page Flow Diagram programmieren

1 Einführung

zum Seitenanfang

Mit dem Page Flow Diagram (PFD) werden in test.con Softwarelösungen programmiert. Diese enthalten Bedien- und Anzeigeelemente, welche auf vielen unterschiedlichen Seiten und Masken verteilt sind.

Im Grunde ist das Page Flow Diagram ein Programmablaufplan (PAP) für den Aufruf/Sichtbarschaltung von HMI-Masken. Der wesentliche Unterschied besteht darin, dass Grundelemente des PAP, wie z.B. die IF-Anweisung nicht auf der obersten Ebenen zu sehen sind, sondern in Makros gekapselt werden.

Das dargestellte Template finden Sie, indem Sie ein neues Projekt mit der Standardanwendung (HMI DPA) öffnen.

2 Eigenschaften einer einfachen Seite

zum Seitenanfang

Die folgende Beschreibung bezieht sich auf die Umsetzung für die HMI-Projekt-Vorlage Standardanwendung (HMI DPA), kann aber einfach auf andere Anwendungsfälle übertragen werden.

Eine einfache Page hat im Standard-PFD einen Eintrittspunkt und zwei Austrittspunkte (Page-Makro). Über das PFD wird nicht die gesamte Display-Seite sichtbar geschaltet, sondern nur der Bereich B. Zur kompletten Display-Seite gehören die Maske A "Navigation", Maske B "Page" und Maske C "Status". A und C existieren im Projekt nur einmal und sind immer sichtbar. Diese Bereiche sind also nicht Teil der eigentlichen Page. Die Buttons Return und Next auf der Maske A "Navigation" werden von der Page selbst ausgewertet und führen zum Verlassen der Seite über die entsprechenden Ausgänge.

Grundregel 1: Jede Page prüft selbst die Bedingungen zum Verlassen. Es gibt also keinen zentralen Mechanismus der das Verlassen der Page steuert.

Grundregel 2: Jede Page hat beim Eintritt dafür zu sorgen, dass alle Bedingungen geschaffen werden, um korrekt zu arbeiten.

Der Inhalt der Headline wird ebenfalls vom Page-Makro beschrieben. Das zentrale Page-Makro kann im Page Flow Diagram (PFD) an jeder beliebigen Stelle eingebunden werden.

3 Page Control Diagram

zum Seitenanfang

Unterhalb des zentralen Page-Makros befindet sich das Page-Control-Diagram (PCD). Das PCD ist für jede Page grundsätzlich gleich aufgebaut und besteht aus den Makros

  • INIT
  • RUN
  • DEINIT
  • DISTRIBUTOR (DISTR)

4 Namenskonventionen für die Makros

zum Seitenanfang

Makros müssen eindeutige Namen haben. Um die Namen innerhalb des PFD und des PCD einfach zu halten, sollte vor allen Makronamen einer Page ein 3 Zeichen-Präfix gesetzt werden. In der Praxis hat es sich bewährt, Pages zu nummerieren. Aus diesem Grund wird in den Vorlagen auch eine 3 stellige Nummer für den Seiten-Präfix verwendet.

<xxx>.Pagename:

  • <xxx>_INIT
  • <xxx>_RUN
  • <xxx>_DEINIT
  • <xxx>_DISTR

INIT

  • Hauptseite der Page sichtbar schalten
  • Headline überschreiben
  • Status der LED für die Seitenanzeige in der Status-Maske schalten
  • Alle weiteren Funktionen, die beim Eintritt in die Page ausgeführt werden müssen
    • z.B. Konfiguration aus einer INI-Datei lesen

RUN

  • Return und Next-Buttons der Navigation prüfen und Bedingung zum Verlassen der Seite setzen.
  • Alle weiteren Funktionen, die während der Sichtbarkeit der Page zyklisch ausgeführt werden sollen.
    • Prozesswerte auslesen und anzeigen, die nur bei Sichtbarkeit der Page gelesen werden müssen.
    • Grafische Objekte zur Parametereingabe aufrufen.

DEINIT

  • Hauptseite der Page unsichtbar schalten
  • Status der LED für die Seitenanzeige in der Status-Maske ausschalten
  • Alle weiteren Funktionen, die beim Verlassen der Page ausgeführt werden müssen
    • z.B. Neue Konfiguration in eine INI-Datei schreiben

DISTRIBUTOR

  • Schaltbedingungen, die zum Verlassen der Seite geführt haben, prüfen und den Flow-Chart-Pfad setzen (IF-Anweisungen ausführen).

5 Anwendung des PFD in einer konkreten Applikation

zum Seitenanfang

In der konkreten Applikation wird nicht die gesamte Seite einer HMI über das PFD gesteuert, sondern nur die rechte Bildschirm-Seite. Weiterhin ist in dem Beispiel auch die Verwendung von Sub Page Flow Diagrams (SPFD) zu sehen.

6 Kachel-Design-Konventionen

zum Seitenanfang

Viele HMI-Applikationen werden im sogenannten Kachel-Design entwickelt. Für die Anwendung dieser Design-Vorlage empfehlen wir die Einhaltung einiger Konventionen.

Die Anwendung der Konventionen soll hier an einem konkreten Applikationsbeispiel dargestellt werden.

  • Einzelne Komponenten/Systemeigenschaften werden auf der Hauptseite als Kachel dargestellt
  • Die Anzeige des Hauptstatus einer Komponente erfolgt als vollflächige Verfärbung der gesamten Kachel
  • In die Kachel werden wichtige Sub-Status-Informationen und Bedienelemente als Subkachel eingebunden.
  • Der zentrale Konfigurationsdialog für eine Komponente wird über den Klick auf die Hauptkachelfläche aufgerufen. (Sofern sich in diesem Bereich keine Subkachel mit Bedienfunktionalität befindet)