Richtlinien und Kompatibilität
Bei der Entwicklung der Plastic Base Application wird grundsätzlich auf Rückwärtskompatibilität geachtet. Dafür werden Änderungen, die das Entfallen von alten Elementen bedeuten, nur hinzufügend gehandhabt. Das bedeutet, dass Elemente die umbenannt, verändert oder neu entworfen werden immer zusätzlich dem Projekt hinzugefügt werden und die alte Variante mit Kennzeichnung „Obsolete“ weiter im Projekt besteht. Allerdings können Updates, mit neuen Features und Elementen, in Konflikt mit der existierenden Endanwendung geraten. Hierfür empfiehlt es sich, den folgenden Richtlinien zur Gewährleistung der Kompatibilität folgen:
Präfixe
In der Plastic Base Application werden interne Variablen einer Klasse mit einem datentypabhängigen Präfix versehen. Dadurch kann zwischen Variablen und Eigenschaften unterschieden werden. Eine Auflistung der üblichen Präfixe findet sich in der TE1000 XAE PLC Dokumentation. Die folgenden Präfixe werden abweichend zu dieser Definition eingesetzt:
Typ | Präfix | Anstatt | Beschreibung | Declaration example(s) |
---|---|---|---|---|
|
|
| Instanz einer sicher zugewiesenen Schnittstelle. |
|
|
|
| Instanz einer optional zugewiesenen Schnittstelle. |
|
|
|
| Instanz eines bitweise codierten Integers |
|
|
|
| Globale Variablenliste als Deklarationsraum für globale Instanzen (z.B.:) |
|
Verwendung einer Eigenschaft
Die Eigenschaften in einer objektorientierten PLC-Programmierung setzen sich aus einer Get
- und einer Set
-Methode zusammen. Prinzipiell bedeutet dies, dass jede Eigenschaft auch durch zwei Methoden programmiert werden könnte. Aus diesem Grund legt die Plastic Base Application ein paar Szenarien für die Auswahl des zu verwendenden Aktions-Objektes fest:
Szenario | Beispiel | Anmerkung |
---|---|---|
Zugriff auf einen Istzustand |
| Istwerte können nur gelesen werden |
Zugriff auf einen Einstellwert |
| Parameter können gelesen und (ggf. bedingt) geschrieben werden |
Zugang zu einem Unterobjekt |
| Unterobjekte werden über ein |
Schnittstelle zum HMI |
| Eigenschaften bieten die Möglichkeit, Werte für die HMI bedarfsorientiert zu berechnen. Das vermeidet Werte-Kopiervorgänge speziell für die Verwendung im HMI. |
Szenarien übergreifend sollten folgende Richtlinien berücksichtigt werden:
- Grundlegend gilt für Eigenschaften der Plastic Base Application, dass diese einen passiven Zugriff auf ein Objekt darstellen. Das heißt, dass ein
Set
oderGet
keine unmittelbare Aktion zur Folge haben sollte. - Soll durch eine Eigenschaft auf ein strukturiertes Unterobjekt zugegriffen werden, muss durch die Eigenschaft ein Referenzzugriff ermöglicht werden. Dabei muss gewährleistet sein, dass bei diesem Referenzzugriff immer eine gültige Instanz zurückgegeben wird.
- Da bei der Benennung einer Eigenschaft auf einen Präfix verzichtet wird, kann durch eine gezielt eingesetzte Namensgebung der Datentyp der Eigenschaft angedeutet werden. Beispiele:
- Has, Is oder Enable weist auf eine boolsche Eigenschaft hin.
- Number, Idx, ID weist auf eine ganzzahlige Eigenschaft hin.
- Value weist auf eine gleitkomma Eigenschaft hin.
- Name weist auf eine string Eigenschaft hin.
- _Property weist auf eine für interne Zwecke reservierte Eigenschaft hin.
- Das Hinzufügen des Attributes
{attribute „monitoring“ := „call“}
in die Deklaration einer Eigenschaft ermöglicht es, den aktuellen Wert der Eigenschaft live in der PLC-Online-Ansicht einzusehen. Außerdem ist dieses Attribut Voraussetzung für einen Zugriff auf eine Eigenschaft aus dem HMI. - Da veraltete Variablen zu Eigenschaften konvertiert werden, sollten Adresszugriffe auf die Variablen einer Klasse vermieden werden. Ein Adresszugriff würde in diesem Fall zu einem Kompilierungsfehler und einer notwendigen Änderung führen.
![]() | Abweichungen von den Richtlinien möglich Aus Praktikabilität und/oder historischen Aspekten können abweichende Verwendungsszenarien in der Plastic Base Application auftreten. Folgende Fälle wurden beispielsweise zur Vereinfachung (Praktikabilität) gewählt:
|
Verwendung einer Methode
Im Gegensatz zu den Eigenschaften der Plastic Base Application werden Methoden grundlegend für das Auslösen aktiver Funktionen verwendet. Entsprechend kann auch für Methoden eine Liste an Szenarien zusammengestellt werden:
Szenario | Beispiel | Anmerkung |
---|---|---|
Ausführen eines Kommandos |
| Durch das Übergeben eines |
Aufruf einer einmaligen Aktion |
| Diese Art von Methode ist für einen ereignisbasierten (einmaligen) Aufruf ausgelegt. |
Index-basierter Zugang zu einem Unterobjekt |
| Unterobjekte werden über ein |
Zyklische Abarbeitung |
| Zyklischer Programm-Code, dessen zyklischer Aufruf auch über ein |
Zyklische Teilroutinen |
| Aufteilung des zyklischen Programmcodes auf einzelne Routinen. Diese Methoden sind durch den Zugriffsmodifizierer |
Hilfsfunktionen |
| Klasseninterne Hilfsfunktionen vermeiden vielfaches Vorkommen von identischem Code. Hierzu dient eine mit dem Zugriffsmodifizierer |
Initialisieren einer Referenz |
| Ermöglicht die Überprüfung einer erfolgreichen Referenz-Initialisierung. |