SA0048: AT-Deklarationen auf direkte AdressenPermanentlink

Ermittelt ‎AT‎-Deklarationen auf direkte Adressen.

Begründung: Die Verwendung von direkten Adressen im Code ist deswegen problematisch, weil die Adresse dann an mehreren Stellen auftaucht: Erstens in der Steuerungskonfiguration, in der die Zuordnung eines physikalischen Objekts zu einer Adresse festgelegt wird, zweitens im Programm, in dem Variablen auf diese Adressen gelegt werden. Kommt es zu einer Verschiebung der Adressen, weil die Konfiguration geändert wird, dann müssen Sie an ganz anderer Stelle im Programm eine neue Zuordnung von Variable zu Adresse durchführen. Das ist eine Fehlerquelle und führt zu schlechterer Lesbarkeit und Wartbarkeit des Codes. Nehmen Sie daher am Besten alle Zuordnungen im E/A-Abbild des Geräteeditors vor.

Wichtigkeit: Hoch

PLCopen-Regel: N1 / CP1

Hinweis: Es wird empfohlen, Zuweisungen auf direkte Adressen nur in der Registerkarte „E/A-Abbild“ des Geräteeditors vorzunehmen.

Beispiel

PROGRAM PLC_PRG
VAR
	xVar1	AT	%IX0.0	: BOOL;
	byVar1	AT	%IB1	: BYTE;
	xVar2	AT	%QX0.0	: BOOL;
END_VAR

--> SA0048: Deklaration verwendet direkte Adresse '%IX0.0'
--> SA0048: Deklaration verwendet direkte Adresse '%IB1
--> SA0048: Deklaration verwendet direkte Adresse '%QX0.0'