Skip to main content

Finestra di dialogo: Impostazioni dell'analisi statica: Convenzioni di denominazione

funzione: Nel dialogo definire i prefissi per i tipi di dati e gli ambiti delle variabili, nonché i prefissi per le POU e i tipi di dati definiti dall'utente (DUT). il osservanza delle convenzioni di denominazione è verificata dall'analisi del codice statico. Per l'analisi del codice statico, se una convenzione viene violata, nella vista viene visualizzato un messaggio di errore messaggi visualizzato. Maggiori informazioni su questo: Configurazione ed esecuzione dell'analisi statica

chiamata:

  • pulsante Apri la finestra di configurazione nel menu Progetto → Impostazioni progetto , categoria Analisi del codice statico

  • menù Costruisci → Analisi statica → Impostazioni

Requisiti:

  • Il pacchetto CODESYS Static Analysis È installato

  • Un progetto è aperto

I messaggi di errore sono nel modulo sa_icon_message.png NC <Präfix-Konventionsnummer> : <Meldungstext> visualizzato. NC sta per Convenzione di denominazione. Ad esempio, il messaggio di errore significa sa_icon_message.pngNC0102: Nome non valido... una violazione della convenzione di denominazione 102 per le POU di tipo PROGRAM.

Suggerimento

Puoi per single identificatore le convenzioni di denominazione con il pragma 'naming' disattivare. Gli identificatori possono quindi iniziare a piacimento e non necessariamente con il prefisso.

filtro

Campo di immissione per la stringa di caratteri da cercare

Tabella delle convenzioni di denominazione

nomi

Nodi ed elementi per i quali è possibile definire un prefisso

Il numero tra parentesi dopo ogni elemento, ad esempio PROGRAMMA (102), è il numero di convenzione del prefisso che viene restituito quando viene violata la convenzione di denominazione.

prefisso

Campo di immissione per il prefisso

  • È possibile inserire più prefissi, separati da virgole.

    Esempio:

    Prefisso per POU, PROGRAM (102): prog, PRG_

    Prefisso per POU, FUNCTION (103): fun, FUN_

  • Le espressioni regolari (RegEx) sono possibili anche per i prefissi. Per questo è necessario un @ essere preceduto.

    Esempio:

    Il nome deve accompagnarlo x iniziare e quindi aggiungere un altro personaggio all'area a-dA-D contenere: @x[a-dA-D]

  • Per le variabili del tipo di dati Alias e per i building block (POU) del tipo di dati Proprietà il prefisso con il segnaposto {datatype} Da definire

Prefissi per variabili

Hub organizzativo per tutte le variabili che possono essere definite con un prefisso dipendente dal tipo di dati o dall'ambito

Prefissi per POU

Nodo organizzativo per tutti i tipi di POU e gli ambiti del metodo per i quali è possibile definire un prefisso

Prefissi per DUT

Nodo organizzativo per la struttura dei tipi di dati DUT, l'enumerazione, l'alias o l'unione per cui è possibile definire un prefisso

Prefissi di tipo personalizzati

Hub organizzativo per tipi speciali definiti dall'utente, in particolare quelli delle librerie

Puoi espandere l'elenco delle convenzioni: clicca sulla riga vuota sottostante. Quindi inserisci un nome di tipo personalizzato o seleziona un tipo personalizzato nella finestra di dialogo aiuto di input fuori.

È possibile eliminare una convenzione selezionandola e premendo il pulsante distanza Selezionare.

Nota Queste convenzioni hanno la precedenza sui prefissi associati all'attributo {attribute 'nameprefix' := '<prefix>'} Sono definiti.

opzioni

Il primo carattere dopo il prefisso deve essere maiuscolo

standard icon: L'analisi del codice statico segnala un errore per una variabile se il primo carattere del nome della variabile dopo il prefisso definito non è maiuscolo.

Combina il prefisso dello spazio dei nomi con il prefisso del tipo di dati

standard icon: una variabile deve avere il prefisso definito per il proprio spazio dei nomi, seguito dal prefisso definito per il tipo di dati.

Esempio: sono definiti i seguenti prefissi: For VAR_GLOBALE g_, per tipo di dati VERO r.

L'analisi del codice riporta gli errori per le variabili REAL globali che non hanno il prefisso g_r.

_cds_icon_option_deactivated.png: se sono state specificate convenzioni per lo spazio dei nomi per una variabile, queste convenzioni vengono prese in considerazione. Eventuali convenzioni sui tipi di dati vengono quindi ignorate.

Esempio: sono definiti i seguenti prefissi: For VAR_GLOBALE g_, per tipo di dati VERO r.

L'analisi del codice riporta esclusivamente errori per global REAL variabili che non hanno il prefisso g_.

Prefissi ricorsivi per tipi di dati combinabili

standard icon: le variabili di tipi di dati combinati devono avere prefissi composti conformi alle convenzioni di denominazione definite.

Esempio:

ppiVariable : POINTER TO POINTER TO INT;

Per le variabili del tipo di dati POINTER TO divenne il prefisso p definito per il tipo di dati INT il prefisso i.

L'analisi statica riporta gli errori per tutte le variabili di tipo POINTER TO POINTER TO INT che non hanno il prefisso ppi.

refaiVar : REFERENCE TO ARRAY[1..3] OF INT;

Per il tipo di dati REFERENCE TO divenne il prefisso ref definisce, per un array, il prefisso a e per il tipo di dati INT il prefisso i.

L'analisi statica riporta gli errori per tutte le variabili di tipo REFERENCE TO ARRAY[1..3] OF INT che non hanno il prefisso refai.

esempio

La seguente convenzione di denominazione segue da vicino le raccomandazioni fatte per gli "identificatori" in CODESYS sono descritti.

_san_prefixes_for_variables_types.png
_san_prefixes_for_variables_scopes.png
_san_prefixes_for_pous_and_duts.png

esempio

La convenzione di denominazione (1) si riferisce al blocco standard TON. Di conseguenza, le dichiarazioni del blocco di costruzione speciale della libreria vengono verificate per il prefisso "ton_". È possibile aggiungere ulteriori convenzioni di denominazione facendo clic nella riga vuota (2).

_san_img_prefixes_for_user_defined_types.png