Reservierte Schlüsselwörter in ST

Keine Schlüsselwörter für Bezeichner verwenden

Wenn Sie →Bezeichner im ST-Code, in der FBS-Logik oder im Kontaktplan vergeben (z.B. für Variablen-Namen), vergeben Sie dafür keines der →Schlüsselwörter, die laut →IEC-Norm reserviert sind. Falls Sie dies trotzdem tun, werden diese als Fehler gekennzeichnet.

Beachten Sie, dass einige der folgenden Schlüsselwörter für ST/FBS/KOP erlaubt sind. Dies ist möglich, da diese Schlüsselwörter für einen anderen Objekt-Typ reserviert sind (z.B. für ein SPS-Objekt). logi.cals empfiehlt Ihnen, solche Schlüsselwörter in ST/FBS/KOP trotzdem nur mit Bedacht zu verwenden.
Beispiel: Falls Sie ein solches Schlüsselwort (z.B. INTERVAL) als Bezeichner für ein →Programm oder für eine →externe Variable in ST/FBS/KOP verwenden, verursacht diese Verwendung im ST-/FBS/KOP-Objekt keinen Fehler. Falls Sie das Sprachelement dann aber im SPS-Objekt eintragen/verwenden (als Programmtyp für die Programm→instanz oder als →globale Variable), wird in Folge die Verwendung des Bezeichners im SPS-Objekt als fehlerhaft markiert. Siehe auch "Ein Bezeichner wird für ST/FBS akzeptiert, aber nicht im SPS-Objekt. Das Refactoring des Bezeichners funktioniert nicht wie erwartet".

Derzeit sind folgende Schlüsselwörter in logi.CAD 3 reserviert und können nicht für Bezeichner verwendet werden.
(Es handelt sich dabei um keine endgültige Liste. Sie wird in jenem Ausmaß erweitert, in dem eine neue Version entsprechende Neuigkeiten enthält.)

SchlüsselwortBedeutungReserviert für (1)

ABSTRACT

Teil einer →Methode oder eines →Funktionsbausteinsalle

ACTION

zusammen mit END_ACTION: Aktion in STalle
ANDOperatoralle
ANY und andere ANY_*→allgemeine Datentypenalle
ARRAYzusammen mit OF: Deklaration eines →ARRAY-Datentyps bzw. einer ARRAY-→Variablealle
ATphysikalische Adresse zuweisen (z.B. einer →globalen Variable)alle

BOOL

→Datentyp BOOLalle
BYTeil der FOR-Anweisung alle

BYTE

Datentyp BYTEalle
CASETeil der CASE-Anweisung alle

CHAR

Datentyp CHARalle

CLASS

reserviert für eine zukünftige Verwendungalle
CFG_VARCFG

zusammen mit END_CFG_VARCFG: Deklaration eines VAR_CONFIG-Abschnitts

SPS,
VarCfg
CONFIGURATIONzusammen mit END_CONFIGURATION: →Konfiguration laut IEC-NormSPS
CONSTANT→Konstante (Variable kann nicht geändert werden.)alle

CONTINUE

CONTINUE-Anweisungalle
DATEDatentyp DATEalle

DATE_AND_TIME

Langform für Datentyp DATE_AND_TIMEalle

DINT

Datentyp DINTalle
DOTeil der FOR-Anweisung oder der WHILE-Anweisung alle

DT

Kurzform für Datentyp DATE_AND_TIMEalle

DWORD

Datentyp DWORDalle
ELSETeil der IF-Anweisung oder der CASE-Anweisung alle
ELSIFTeil der IF-Anweisung alle
EN

Eingang EN zur Ausführungssteuerung

EN und ENO sind keine Schlüsselwörter laut IEC-Norm im eigentlichen Sinn, sondern Variablen, die in den →Funktionen und →Funktionsbausteinen bereits implizit deklariert sind.
Falls Sie daher EN und ENO als Bezeichner vergeben, werden diese als Fehler gekennzeichnet.

alle

END_ACTION

zusammen mit ACTION: Aktion in ST alle
END_CASETeil der CASE-Anweisung alle
END_CFG_VARCFG

zusammen mit CFG_VARCFG: Deklaration eines VAR_CONFIG-Abschnitts

SPS,
VarCfg
END_CLASSreserviert für eine zukünftige Verwendungalle
END_CONFIGURATIONzusammen mit CONFIGURATION: Konfiguration laut IEC-NormSPS
END_FORTeil der FOR-Anweisung alle
END_FUNCTIONzusammen mit FUNCTION: Deklaration einer Funktionalle
END_FUNCTION_BLOCKzusammen mit FUNCTION_BLOCK: Deklaration eines Funktionsbausteinalle
END_GLOBALSzusammen mit GLOBALS: Deklaration von globalen Variablen in einem Global-Objekt (siehe "Deklaration von globalen Variablen in Global-Objekt und deren Verwendung in ST")SPS
END_IFTeil der IF-Anweisung alle
END_INTERFACEzusammen mit INTERFACE: Deklaration einer →Interfacealle
END_METHODzusammen mit METHOD: Deklaration einer →Methode oder eines →Methoden-Prototypenalle

END_NAMESPACE

zusammen mit NAMESPACE: Deklaration eines →Namespacesalle
END_PROGRAMzusammen mit PROGRAM: Deklaration eines →Programmsalle
END_REPEATTeil der REPEAT-Anweisung alle
END_RES_VARCFG

zusammen mit RES_VARCFG: Deklaration eines VAR_CONFIG-Abschnitts

SPS,
VarCfg
END_RESOURCEzusammen mit RESOURCE und ON: →Ressource laut IEC-NormSPS

END_STEP

zusammen mit INITIAL_STEP oder STEP: Initial-Schritt in ST oder Schritt in STalle
END_STRUCTzusammen mit STRUCT: Deklaration eines →strukturierten Datentypsalle

END_TRANSITION

zusammen mit TRANSITION: Transition in STalle
END_TYPEzusammen mit TYPE: Deklaration eines →anwenderdefinierten Datentypsalle
END_VARzusammen mit VAR, VAR_CONFIGVAR_EXTERNAL, VAR_GLOBAL, VAR_INPUT, VAR_IN_OUT, VAR_OUTPUT oder VAR_TEMP: Deklaration einer bzw. mehrerer Variablen

alle

END_WHILETeil der WHILE-Anweisung  alle
ENO

Ausgang ENO zur Ausführungssteuerung

EN und ENO sind keine Schlüsselwörter laut IEC-Norm im eigentlichen Sinn, sondern Variablen, die in den Funktionen und Funktionsbausteinen bereits implizit deklariert sind.
Falls Sie daher EN und ENO als Bezeichner vergeben, werden diese als Fehler gekennzeichnet.

alle

EXIT

EXIT-Anweisungalle
EXTENDSleitet das Interface von anderen Interfaces ab bzw. den Funktionsbaustein von einem anderenalle
F_EDGEreserviert für eine zukünftige Verwendungalle
FALSEAngabe eines booleschen →Literalsalle
FORTeil der FOR-Anweisung alle
FINALTeil einer Methode oder eines Funktionsbausteinsalle

FROM

Teil einer Transition in ST alle
FUNCTIONzusammen mit END_FUNCTION: Deklaration einer Funktionalle
FUNCTION_BLOCKzusammen mit END_FUNCTION_BLOCK: Deklaration eines Funktionsbausteinalle
GLOBALSzusammen mit END_GLOBALS: Deklaration von globalen Variablen in einem Global-ObjektSPS
IFTeil der IF-Anweisung alle
IMPLEMENTSimplementiert ein oder mehrere Interfaces bei der Deklaration eines Funktionsbausteinalle

INITIAL_STEP

zusammen mit END_STEP: Initial-Schritt in STalle

INT

Datentyp INTalle
INTERFACEzusammen mit INTERFACE: Deklaration einer Interfacealle
INTERNALSichtbarkeit bei einer Methode oder bei internen Variablenalle

INTERVAL

Zykluszeit für den →TasksSPS
LDATEreserviert für eine zukünftige Verwendungalle
LDATE_AND_TIMEreserviert für eine zukünftige Verwendungalle
LINTDatentyp LINTalle

LREAL

Datentyp LREALalle
LTIMEreserviert für eine zukünftige Verwendungalle
LTIME_OF_DAYreserviert für eine zukünftige Verwendungalle
LWORDDatentyp LWORDalle
METHODzusammen mit END_METHOD: Deklaration einer Methode oder eines Methoden-Prototypenalle
MODOperator alle

NAMESPACE

zusammen mit END_NAMESPACE: Deklaration eines Namespacesalle
NON_RETAIN→nicht-gepufferte Variablealle
NOTOperator alle
NULLStandard-→Initialisierungswert für eine →Referenz-Variablealle
OFTeil der CASE-Anweisung oder zusammen mit ARRAY: Deklaration eines ARRAY-Datentyps bzw. einer ARRAY-Variable
alle
ONzusammen mit RESOURCE und END_RESOURCE: Ressource laut IEC-NormSPS
OROperator alle
OVERLAPreserviert für eine zukünftige Verwendungalle
OVERRIDETeil einer Methodealle
PRIORITYPriorität des Tasks (für SPS-Objekt) oder Priorität einer Transition (in ST)
alle
PRIVATESichtbarkeit bei einer Methode oder bei internen Variablenalle
PROGRAMzusammen mit END_PROGRAM: Deklaration eines Programms;
zusammen mit WITH: Zuordnung "Programm und Task" (für SPS-Objekt)
alle
PROTECTEDSichtbarkeit bei einer Methode oder bei internen Variablenalle
PUBLICSichtbarkeit bei einer Methode oder bei internen Variablenalle
R_EDGEreserviert für eine zukünftige Verwendungalle
READ_ONLYreserviert für eine zukünftige Verwendungalle
READ_WRITEreserviert für eine zukünftige Verwendungalle

REAL

Datentyp REALalle

REF

Operator für die Initialisierung einer Referenz-Variable oder eine Zuweisung daraufalle

REF_TO

Deklaration einer bzw. mehrerer Referenz-Variablenalle
REPEATTeil der REPEAT-Anweisung alle
RES_VARCFG

zusammen mit END_RES_VARCFG: Deklaration eines VAR_CONFIG-Abschnitts

SPS,
VarCfg
RESOURCEzusammen mit ON und END_RESOURCE: Ressource laut IEC-NormSPS
RETAIN→gepufferte Variablealle

RETURN

RETURN-Anweisung alle
SINGLEreserviert für eine zukünftige VerwendungSPS

SINT

Datentyp SINTalle

STEP

zusammen mit END_STEP: Schritt in ST alle

STRING

Datentyp STRINGalle
STRUCTzusammen mit END_STRUCT: Deklaration eines strukturierten Datentypsalle
SUPERTeil beim Aufruf einer Methode des Basis-Funktionsbausteins bzw. Aufruf des Basis-Funktionsbausteins selbstalle
TASKTask laut IEC-NormSPS
THENTeil der IF-Anweisung alle
THISTeil beim Aufruf einer Methode des gleichen Funktionsbausteinsalle
TIMEDatentyp TIMEalle

TIME_OF_DAY

Langform für Datentyp TIME_OF_DAYalle
TOTeil der FOR-Anweisung oder Teil der Transition in ST
alle

TOD

Kurzform für Datentyp TIME_OF_DAYalle

TRANSITION

zusammen mit END_TRANSITION: Transition in ST alle
TRUEAngabe eines booleschen Literalsalle
TYPEzusammen mit END_TYPE: Deklaration eines anwenderdefinierten Datentypsalle

UDINT

Datentyp UDINTalle

UINT

Datentyp UINTalle

ULINT

Datentyp ULINTalle
UNTILTeil der REPEAT-Anweisung alle

USING

USING-Namespace-Anweisung

alle

USINT

Datentyp USINTalle
VARzusammen mit END_VAR: Deklaration einer bzw. mehrerer interner Variablenalle
VAR_ACCESSreserviert für eine zukünftige Verwendungalle
VAR_CONFIG

zusammen mit END_VAR: Deklaration eines VAR_CONFIG-Abschnitts

SPS,
VarCfg
VAR_EXTERNALzusammen mit END_VAR: Deklaration einer bzw. mehrerer →externer Variablenalle
VAR_GLOBALzusammen mit END_VAR: Deklaration einer bzw. mehrerer globaler Variablenalle
VAR_IN_OUTzusammen mit END_VAR: Deklaration einer bzw. mehrerer →Ein-/Ausgangsvariablenalle
VAR_INPUTzusammen mit END_VAR: Deklaration einer bzw. mehrerer →Eingangsvariablenalle
VAR_OUTPUTzusammen mit END_VAR: Deklaration einer bzw. mehrerer →Ausgangsvariablenalle
VAR_TEMPzusammen mit END_VAR: Deklaration einer bzw. mehrerer →temporärer Variablenalle
WCHARreserviert für eine zukünftige Verwendungalle
WHILETeil der WHILE-Anweisung  alle
WITHzusammen mit PROGRAM: Zuordnung "Programm und Task"SPS

WORD

Datentyp WORDalle
WSTRINGreserviert für eine zukünftige Verwendungalle
XOROperatoralle

Legende:

(1) = Diese Spalte informiert Sie, für welchen Objekt-Typ das Schlüsselwort reserviert ist:

  • alle = Falls Sie das Schlüsselwort in einem ST-Objekt, FBS-Objekt, KOP-Objekt, Global-Objekt, SPS-Objekt oder VarCfg-Objekt verwenden, wird es dort als fehlerhaft markiert.
  • SPS = Falls Sie das Schlüsselwort in einem SPS-Objekt verwenden, wird es dort als fehlerhaft markiert. Bedeutung: Es ist möglich, das Schlüsselwort als Bezeichner in anderen Objekt-Typen (z.B. im ST-/FBS-Objekt) zu verwenden. Achten Sie jedoch auf mögliche Folgefehler bei einer anschließenden Verwendung des jeweiligen Sprachelements im SPS-Objekt.
  • VarCfg = Falls Sie das Schlüsselwort in einem VarCfg-Objekt verwenden (siehe "VAR_CONFIG-Abschnitt im VarCfg-Objekt deklarieren"), wird es dort als fehlerhaft markiert. Bedeutung: Es ist möglich, das Schlüsselwort als Bezeichner in anderen Objekt-Typen (z.B. im ST-/FBS-Objekt) zu verwenden. Achten Sie jedoch auf mögliche Folgefehler bei einer anschließenden Verwendung des jeweiligen Sprachelements in einem VarCfg-Objekt.