Skip to main content

Variablen

Dieses Kapitel beinhaltet:

  • Schlüsselwörter der Variablendeklaration für Basic Level

  • Schlüsselwörter der Variablendeklarationen für Extended Level

  • Datentypen Basic Level

  • Datentypen Extended Level

Die zur Auswahl stehenden Schlüsselwörter und Datentypen hängen vom Programmierlevel der POU ab.

Im FUP-Programmcode, der im Safety FUP-Editor erstellt wird, erscheinen Variablen ausschließlich in Form von Namen (symbolische Variablen). Man kann einen einfachen Namen, einen Bezeichner (identifier) im Sinne der IEC verwenden. Ein Bezeichner, mit dem eine Variable im Implementierungsteil referenziert wird, muss im Deklarationsteil (siehe Variablendeklarationseditor) der POU deklariert sein.

Kategorien für Variablen in der Eingabehilfe

In der Eingabehilfe werden für Variablen folgende Kategorien angezeigt:

  • PROGRAM POU: Lokale Variablen und Globale Variablen

  • FUNCTION_BLOCK POU: Lokale Variablen

Zur Kategorie Lokale Variablen gehören alle Variablen des lokalen Deklarationsteils, auch VAR_EXTERNAL.

Zur Kategorie Globale Variablen gehören alle Variablen der GVLs der Applikation, alle gemappten E/As und alle impliziten Instanzen der logischen E/As (siehe I/O Abbild)

Schlüsselwörter der Variablendeklaration für Basic Level

. Variablen für Programm-POU Basic Level
  • VAR

  • VAR CONSTANT

  • VAR_EXTERNAL für Kanalvariablen und Stack-Instanzen

  • VAR_EXTERNAL CONSTANT nur erlaubt von VAR_GLOBAL CONSTANT

. Variablen für Funktionsbaustein-POU Basic Level
  • VAR

  • VAR CONSTANT

  • VAR_INPUT

  • VAR_OUTPUT

. Bedeutung der Schlüsselwörter
  • VAR: Deklaration normaler interner Variablen, POU-weite Variable

  • VAR_INPUT: Deklaration von Input-Variablen

  • VAR_OUTPUT: Deklaration von Output-Variablen

  • der Modifizierer CONSTANT dient zur Deklaration von symbolischen Konstanten

Schlüsselwörter der Variablendeklarationen für Extended Level

. Variablen für Programm-POU Extended Level
  • VAR

  • VAR CONSTANT

  • VAR_EXTERNAL

  • VAR_EXTERNAL CONSTANT

. Variablen für Funktionsbaustein-POU Extended Level
  • VAR

  • VAR CONSTANT

  • VAR_INPUT

  • VAR_OUTPUT

. Bedeutung der Schlüsselwörter:
  • VAR: Deklaration normaler interner Variablen, POU-weite Variable

  • VAR_INPUT: Deklaration von Eingangsvariablen

  • VAR_OUTPUT: Deklaration von Ausgangsvariablen

  • VAR_EXTERNAL: Deklaration von mit VAR_GLOBAL in der Applikation bereits deklarierter globaler Variablen, um sie in der POU benutzbar zu machen.

    Globale Variablen, die den Modifizierer CONSTANT haben, müssen als VAR_EXTERNAL CONSTANT deklariert werden.

  • der Modifizierer CONSTANT dient zur Deklaration von symbolischen Konstanten

. Für die Deklaration als VAR_EXTERNAL und VAR_EXTERNAL CONSTANT stehen bereits existierende Variablen der Kategorie „Globale Variablen“ zur Verfügung:
  • Globale Variablen des GVL-Objekts der Sicherheitsapplikation.

    Wird eine Variable des GVL-Objekts der Sicherheitsapplikation im Implementierungsteil verwendet, so wird sie automatisch im Deklarationsteil als externe Variable deklariert.

    Nach IEC ist es explizit verboten, in einer POU globale Variablen zu verwenden, ohne sie als „External“ zu deklarieren.

  • Mapping-Variablen der logischen E/As (Logische Austauschgeräte und sichere Feldgeräte)

Datentypen Basic Level

. Datentypen Basic Level
  • BOOL

  • INT: nur als konstanter Eingangsparameter für einen Funktionsbaustein-Aufruf

  • DINT: nur als konstanter Eingangsparameter für einen Funktionsbaustein-Aufruf

  • WORD: nur als Ausgang für Diagnosezwecke

  • TIME: nur als konstanter Eingangsparameter in Funktionsbaustein-Aufruf

  • SAFEBOOL

  • SAFEINT nur als konstanter Funktionsbaustein-Eingang in Aufruf

  • SAFEDINT: nur als konstanter Eingangsparameter in Funktionsbaustein-Aufruf

  • SAFEWORD: nur als konstanter Eingangsparameter in Funktionsbaustein-Aufruf

  • SAFETIME: nur als konstanter Eingangsparameter in Funktionsbaustein-Aufruf

Der Datentyp REAL steht nicht zur Verfügung.

Datentypen Extended Level

Für die Implementierung einer POU im Programmierlevel Extended stehen dem Entwickler folgende Datentypen zur Verfügung:

. Sicherheits-Standardtypen:
  • BOOL

  • BYTE: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • DINT

  • DWORD: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • INT

  • TIME: erlaubt als konstanter Eingangsparameter und für lokale Variablen.

    Nicht zulässig sind External-Deklarationen globaler Variablen vom Typ SAFETIME

  • WORD: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • Kein Datentyp REAL

  • SAFEBOOL

  • SAFEBYTE: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • SAFEDINT

  • SAFEDWORD: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • SAFEWORD: für den Austausch kodierter Informationen (Statuscode, Diagnosecode, Steuercode) zwischen vordefinierten Funktionsbausteinen und mit der Umgebung

  • SAFEINT

  • SAFETIME, erlaubt als konstanter Eingangsparameter und für lokale Variablen.

    Nicht zulässig sind External-Deklarationen globaler Variablen vom Typ SAFETIME, wenn sie weder symbolische Konstanten noch importierte logische E/As sind.

Der Datentyp REAL steht nicht zur Verfügung