Skip to main content

Configurazione ed esecuzione dell'analisi statica

Utilizzando un progetto di esempio di base riportato di seguito, troverai i passaggi e le opzioni più importanti per la configurazione e l'esecuzione di un'analisi statica.

Requisiti: CODESYS Static Analysis è installato.

Progetto di esempio

Se si desidera riprodurre il progetto di esempio, creare un progetto standard e inserire le POU sotto l'applicazione nell'albero dei dispositivi. Configura quindi le impostazioni di comunicazione per la connessione al tuo locale CODESYS Control Win.

FUNCTION_BLOCK fb1
VAR_INPUT
    iVar_fb1in1 : INT;
    ivar_fb1in2 : INT;
    rVar_fb1in3 : REAL;
END_VAR
VAR_OUTPUT
       iVar_fb1out:INT;
END_VAR
VAR
    P_fSampleProperty : INT;
    rVar : REAL;
    PRO : BOOL;
END_VAR
iVar_fb1out:=iVar_fb1in1 + 1;
FUNCTION_BLOCK fb2
VAR_INPUT
    iVar_fb2in:INT;
END_VAR
VAR_OUTPUT
    iVar_fb2out:INT;
END_VAR
VAR
END_VAR
iVar_fb2out:=iVar_fb2in - 1;
PROGRAM PLC_PRG
VAR
    fb1_inst: fb1;
    fb2_inst: fb2;
END_VAR
fb1_inst(iVar_fb1in1 := 99);
fb2_inst(iVar_fb2in := 22);
fb2_inst(iVar_fb2in := 1);

Verifica del rispetto delle regole

  1. Scegli il comando Costruisci → Analisi statica → Impostazioni. Passa a scheda regole.

    Viene visualizzato un elenco contenente tutti i possibili controlli delle regole. Sono organizzati in una struttura ad albero per categorie tematiche. Il "numero della regola" viene aggiunto tra parentesi (esempio: Variabili non utilizzate (33) nella categoria Oggetti inutilizzati).

  2. Fare clic più volte sulla casella di controllo della prima riga (Regole nodo).

    Facendo clic si alterna lo stato di attivazione. Le caselle di controllo nell'intero albero hanno un segno di spunta rosso o arancione o nessun segno di spunta.

  3. In questo modo attivi tutte le voci con il segno di spunta rosso. Ciò significa che CODESYS Static Analysis dovrebbe segnalare qualsiasi violazione delle regole rilevata come errori.

  4. Clic Costruisci → Analisi statica → Esegui analisi statica.

    Gli errori vengono segnalati nella visualizzazione dei messaggi. I testi dei messaggi sono contrassegnati con a sa_icon_message.png e iniziare con il numero di errore "SA<numero regola>".

  5. Fare doppio clic sul messaggio SA0033: Variabili non utilizzate 'iVar_fb2out'.

    L'attenzione si sposta sulla parte di dichiarazione del blocco funzione fb2 e viene selezionata la variabile pertinente. La variabile viene dichiarata, ma non utilizzata. Ciò è verificato nella regola 33 (Variabili inutilizzate). Nel codice le sedi rilevanti sono sottolineate con una linea ondulata.

  6. Per testare l'esecuzione automatica dell'analisi, fare clic su Costruisci → Analisi statica → Impostazioni. Sul Impostazioni scheda, selezionare il Eseguire automaticamente l'analisi statica dopo la compilazione opzione. Clic OK per uscire dalla finestra di dialogo.

  7. Clic In linea → Accedi.

    Una finestra di dialogo indica la presenza di errori di compilazione. Gli errori segnalati dall'analisi del codice vengono nuovamente visualizzati nella visualizzazione dei messaggi.

  8. Clic Compila → Analisi statica → Impostazioni. Passa a Regole scheda. Ora cancella tutte le regole nella finestra di dialogo. Nel Oggetti inutilizzati categoria, attivare esplicitamente la Regola SA0035 (Variabili di input non utilizzate (35)) con un segno di spunta di colore arancione per segnalare un "avviso". Vedi la descrizione comando per il testo della regola: Questa regola corrisponde alle seguenti regole PLCopen: CP24). Clic OK per uscire dalla finestra di dialogo.

  9. Clic Costruisci → Genera codice.

    L'analisi viene eseguita automaticamente. Nella visualizzazione dei messaggi vengono segnalati due errori Messaggi di analisi statica categoria:

    § SA0035: Ingresso non utilizzato 'iVar_fb1in2'

    § SA0035: Ingresso non utilizzato 'iVar_fb1in3'

  10. Fare doppio clic sul messaggio e commentare o rimuovere la dichiarazione. Eseguire nuovamente l'analisi del codice.

    Non viene visualizzato alcun messaggio di errore.

Verifica della conformità alle convenzioni di denominazione definite

  1. Clic Compila → Analisi statica → Impostazioni. Passa a Convenzioni di denominazione scheda.

    Viene visualizzata una tabella in una struttura ad albero divisa in categorie espandibili di variabili e blocchi di programma.

  2. Espandi il Prefissi per variabiliPrefissi per i tipi categoria e nella Prefisso colonna, specificare I per INTERNO (14).

    Espandi il Prefissi per POUPrefissi per il tipo POU categoria. Nel Prefissocolonna, specificare il prog per PROGRAMMA (122) E fb per BLOCCO FUNZIONE (103).

  3. Seleziona il Il primo carattere dopo il prefisso deve essere una lettera maiuscola opzione. Cancella tutte le altre opzioni.

  4. Clic Costruisci → Analisi statica → Esegui analisi statica.

    Messaggio di errore:

    • NC0102: Nome non valido 'PLC_PRG': Previsto prefisso 'prog' perché PLC_PRG non ha il prefisso richiesto

    • Il primo carattere dopo il prefisso deve essere maiuscolo: 'ivar_fb1in2' Perché ivar_fb1in2 : INT; è dentro fb1.

    • NC0014: nome variabile non valido P_fSampleProperty: previsto prefisso 'i' perché questa variabile intera non ha il prefisso richiesto.

Controllo dei simboli proibiti

  1. Scegli il comando Costruisci → Analisi statica → Impostazioni. Passa a scheda Simboli proibiti.

    Un editor di riga consente di specificare stringhe che non devono essere utilizzate nel codice.

  2. Ad esempio, fare doppio clic sulla riga vuota e digitare la stringa non valida PRO direttamente. Fare doppio clic sulla riga vuota successiva e fare clic su _cds_icon_three_dots.png per aprire l'Assistente di input. Da Tipi standard, Selezionare VERO. Clic OK per uscire dalla finestra di dialogo.

  3. Clic Costruisci → Analisi statica → Esegui analisi statica.

    I messaggi di errore Forbidden symbol 'REAL' E Forbidden symbol 'PRO' vengono visualizzati nella visualizzazione dei messaggi. Fare doppio clic sul testo del messaggio per passare alla riga di codice pertinente.

Visualizzazione delle metriche

CODESYS Static Analysis esegue i test selezionati sul codice ed è possibile visualizzare i risultati in una vista.

  1. Scegli il comando Costruisci → Analisi statica → Impostazioni. Passa a scheda metrica.

    Le metriche che CODESYS Static Analysis applicabili al codice sono elencati in una tabella.

  2. Per questo esempio, attiva il Numero di variabili di input metrica e specificare l'intervallo di valori consentito: limite inferiore 1 e limite superiore 2.

    Attiva alcune altre metriche, ad esempio Dimensione del codice E Numero di chiamate.

  3. Clic Costruisci → Analisi statica → Visualizza metriche standard.

    La vista include una tabella con una riga per ciascuna Unità di programma del programma di esempio. Per ogni metrica attivata, è presente una colonna che mostra i valori misurati. I valori che non rientrano nell'intervallo di valori definito nelle impostazioni sono evidenziati in rosso. Nel caso di questo esempio specifico, questo è almeno il PLC_PRG/Ingressi campo perché il numero di variabili di ingresso in questa POU è maggiore del limite superiore definito di 2.