Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

de:public:applications:programmiertechnik:page_flow_diagram [2015/01/30 15:39]
mertens
de:public:applications:programmiertechnik:page_flow_diagram [2015/02/11 17:43] (aktuell)
mertens [Anwendung der PFD in einer konkreten Applikation]
Zeile 1: Zeile 1:
 ====== Page Flow Diagram (PFD) ====== ====== Page Flow Diagram (PFD) ======
-Mit dem Page Flow Diagram werden in iCon-L Softwarelösungen programmiert die Bedien- und Anzeigeelemte ​enthalten, welche auf vielen unterschiedlichen Seiten und Masken verteilt sind.+{{:​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p1.jpg?​400 |}} 
 +Mit dem Page Flow Diagram werden in iCon-L Softwarelösungen programmiert die Bedien- und Anzeigeelemente ​enthalten, 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 wesentlichen 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. Im Grunde ist das Page Flow Diagram ein Programmablaufplan (PAP) für den Aufruf/​Sichtbarschaltung von HMI-Masken. Der wesentlichen 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.
  
  
- 
-{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p1.jpg?​300|}} 
  
 ===== Eigenschaften einer einfachen Seite ===== ===== Eigenschaften einer einfachen Seite =====
 +{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p2.jpg?​400|}}
 +
 Die folgende Beschreibung bezieht sich auf die Umsetzung für eine spezielle HMI-Projekt Vorlage, kann aber einfach auf andere Anwendungsfälle übertragen werden. Die folgende Beschreibung bezieht sich auf die Umsetzung für eine spezielle HMI-Projekt Vorlage, kann aber einfach auf andere Anwendungsfälle übertragen werden.
  
-{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p2.jpg?​300|}} +Eine einfache ​Page hat im Standard-PFD einen Eintrittspunkt und zwei Austrittspunkte ​ (Page-Makro). 
-Eine einfache ​Seite hat im Standard-PFD einen Eintrittspunkt und zwei Austrittspunkte ​ (Page-Makro). +Über das PFD wird nicht die gesamte ​Display-Seite sichbar geschaltet, sondern nur der Bereich //B//. 
-Über das PFD wird nicht die gesamte Seite sichbar geschaltet, sondern nur der Bereich //B//. +Zur kompletten ​Display-Seite gehört noch die Maske A-Navigation und die Maske C-Status. A und C exsitieren im Projekt nur einmal und sind immer sichtbar. Diese Bereiche sind also nicht Teil der eigentlichen Page. 
-Zur kompletten Seite gehört noch die Maske A-Navigation und die Maske C-Status. A und C exsitieren im Projekt nur einmal und sind immer sichtbar. Diese Bereiche sind also nicht Teil der eigentlichen Page-Maske ​+Die Button ​//Return// und //Next// auf der Maske C-Navigation werden von der Page selbst ​ausgewertet und führen zum Verlassen der Seite über die entsprechenden Ausgänge
-Die Button Return und Next auf der Maske C-Navigation werden von der Page 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. 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. Das zentrale Page-Makro kann im Page-Flow-Diagram (PFD) an jeder beliebigen Stelle eingebunden werden.
-**Grundregel:​** Jede Page ist für sich alleine verantwortlich alle Bedingungen zu schaffen, um korrekt zu arbeiten. 
  
 ===== Page Control Diagram ===== ===== Page Control Diagram =====
 +
 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 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  ​    * INIT  ​
Zeile 29: Zeile 33:
  
 ==== Namenskonventionn für die Makros ==== ==== Namenskonventionn für die Makros ====
-{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p3.jpg?​600|}} +In iCon-L müssen Makros eindeutlige Namen haben. Um nun 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.
-In iCon-L müssen Makros eindeutlige Namen haben. Um nun 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, ​Seite zu Nummerieren. Aus diesem Grund wird in den Vorlagen auch eine 3 stellige Nummer für den Seiten-Präfix verwendet.+
  
   * <​xxx>​.Pagename   * <​xxx>​.Pagename
Zeile 39: Zeile 42:
  
 ==== INIT ==== ==== INIT ====
-  ​* Hauptseite der Page sichbar ​geschaltet+{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p3.jpg?​600|}} 
 + 
 +  ​* Hauptseite der Page sichbar ​schalten
   * Headline überschreiben   * Headline überschreiben
-  * Status der LED für die Seitenanzeige in der Status-maske schalten +  * Status der LED für die Seitenanzeige in der Status-Maske schalten 
-  * Alle weiteren Funktionen, die beim Eintritt in die Page ausgeführt werden ​solle +  * Alle weiteren Funktionen, die beim Eintritt in die Page ausgeführt werden ​müssen 
-    * z.B. Konfiguration aus einer INI-datei lesen +    * z.B. Konfiguration aus einer INI-Datei lesen 
-    * :::+    * ...
  
 ==== RUN ==== ==== RUN ====
-  * Button ​der Navigation prüfen+  * Return und Next-Buttons ​der Navigation prüfen ​und Bedingung zum Verlassen der Seite setzen.
   * Alle weiteren Funktionen, die während der Sichbarkeit der Page zyklisch ausgeführt werden sollen.   * Alle weiteren Funktionen, die während der Sichbarkeit 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 unsichbar 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).
  
 +===== Anwendung des PFD in einer konkreten Applikation =====
 +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. ​
  
 +{{ :​de:​public:​applications:​programmiertechnik:​page-flow_diagram_p4.jpg?​1000 |}}

Navigation