Rileva le dichiarazioni AT sugli indirizzi diretti
Giustificazione: L'uso di indirizzi diretti nel codice è problematico perché l'indirizzo compare in più punti: prima nella configurazione del controllore, dove viene definita l'assegnazione di un oggetto fisico a un indirizzo, e poi nel programma, dove le variabili vengono assegnate a questi indirizzi. Se gli indirizzi vengono spostati perché la configurazione è stata modificata, è necessario riassegnare le variabili agli indirizzi in una posizione completamente diversa del programma. Ciò è causa di errori e comporta una minore leggibilità e manutenibilità del codice. Pertanto, è meglio eseguire tutte le assegnazioni nella mappatura I/O dell'editor del dispositivo.
Importanza: Alto
Regola PLCopen: N1 / CP1
Nota: Si consiglia di utilizzare gli indirizzi diretti SOLO nella scheda «I/O Mapping» dell'editor del dispositivo.
Esempio
PROGRAM PLC_PRG VAR xVar1 AT %IX0.0 : BOOL; byVar1 AT %IB1 : BYTE; xVar2 AT %QX0.0 : BOOL; END_VAR --> SA0048: Declaration uses direct address '%IX0.0' --> SA0048: Declaration uses direct address '%IB1 --> SA0048: Declaration uses direct address '%QX0.0'