SCUOLA DI PROGRAMMAZIONE PLC
IL TEMPO DI SCANSIONE

Il tempo di scansione nei PLC

Una delle caratteristiche dei plc soprattutto che riguarda l’esecuzione dei programmi è una variabile che si chiama tempo di scansione. In questa lezione parleremo di questa variabile e impareremo a valutarla nel contesto del processo che il plc deve controllare.

Scopriremo come calcolare il tempo massimo di scansione accettabile a seconda delle esigenze del campo e quale soluzione adottare nel caso di processi con caratteristiche particolari di velocità.

Novità automazione e plc

Ecco gli argomenti della lezione:

Cosa significa tempo di scansione.

Come conoscere i tempi di scansione del plc.

Come considerare il tempo di scansione in base al processo automatizzato.

Valutazione del tempo di scansione in base al processo.

Ingressi veloci e contatori veloci nei plc.

Qualsiasi programmatore di plc prima o poi si trova a dover confrontarsi con il tempo di scansione (o tempo di esecuzione) dell’apparecchio. Che cosa significa “tempo di scansione”? Per meglio comprendere questa definizione guardiamo la prossima immagine.

Funzionamento del PLC
Cosa significa tempo di scansione.
Come vediamo nella figura sopra, sostanzialmente a ogni scansione il plc esegue quattro macro funzioni: l’acquisizione degli ingressi, l’esecuzione delle istruzioni del programma, l’esecuzione di routine di diagnostica e comunicazione, e la scrittura delle uscite verso il campo.
Ognuna di queste macro operazioni richiede un tempo e la somma di questi tempi determina il tempo di scansione nel plc.

Quando la scrittura delle uscite è terminata il plc ricomincia la scansione partendo dall’acquisizione degli ingressi; tutto il processo si ripete molte volte in un secondo.

Questo modo di rappresentare il funzionamento dei controllori logici programmabili è semplificativo poiché nei moderni sistemi possiamo avere hardware complesso con processori dedicati per esempio alla comunicazione; in questo caso le performance dei plc in termini di velocità sono migliorate poiché non è un solo processore che deve eseguire tutte le funzioni atte a garantire l’ottimale funzionamento del sistema, ma un insieme di chip che lavorano in sinergia.

Come conoscere il tempo di scansione del plc.
I costruttori di plc solitamente dichiarano le velocità di esecuzione delle istruzioni nei vari linguaggi, così come quelle di acquisizione ingressi e scrittura uscite verso il campo; in quest’ottica si potrebbe calcolare il tempo totale di scansione sommando i tempi di ogni istruzione nel programma a tutto il resto, operazione alquanto complicata.

Fortunatamente i plc ci permettono di conoscere il tempo di scansione si attraverso un’apposita schermata nel software quando ci colleghiamo a essi oppure all’interno di una variabile di sistema; volendo possiamo anche scrivere alcune istruzioni nel programma per calcolarci da soli il reale tempo di esecuzione.

Come considerare il tempo di scansione in base al processo automatizzato.
Il tempo di scansione è indicativamente oggi un valore che determiniamo in millisecondi, a prima vista questo sembrerebbe un tempo molto basso; tuttavia dobbiamo considerare sempre l’ambito in cui il plc sta operando, vediamo cosa significa.

Supponiamo di avere un tempo di scansione di 50ms (cinquanta millisecondi). Avere un tempo di ciclo di questo tipo significa avere un tempo massimo di reazione del sistema plc di circa 100ms, ovvero il doppio; perché? Semplice, perché per come funziona il plc, potrebbe essere che acquisire la variazione di un ingresso e scrivere un’uscita in base a questo ingresso possa richiedere due scansioni.
Nella prossima immagine troviamo un disegno che ci renderà la cosa più chiara.
Scansione nel PLC e valutazione stati ingressi

Come vediamo nella figura appena sopra, supponiamo che nel nostro software venga valutato un ingresso (linea di istruzione gialla) e poi in base a questo attivata o meno un’uscita. Ecco cosa può accadere:

Prima scansione: il test risulta negativo e il programma passa all’istruzione successiva.

A questo punto l’ingresso testato varia ma ormai non viene visto e l’uscita non viene attivata.

Seconda scansione: il sistema acquisisce gli ingressi e finalmente alla linea di programma con il test l’ingresso interessato viene visto; l’uscita sarà attivata e scritta alla fine della scansione.

Il risultato di questo caso limite è che il tempo di reazione del sistema plc è di quasi il doppio del tempo di scansione.

Valutazione del tempo di scansione in base al processo.

Alla luce di quanto sopra, la domanda che il programmatore deve porsi per valutare il tempo di scansione del plc è :”qual è l’attività nel mio processo che richiede il tempo di risposta più veloce?”

Facciamo un esempio, se dobbiamo attivare una pompa e questa viene accesa 50 millisecondi in ritardo, questo può causare inconvenienti al nostro processo? Se la risposta è no allora non ci sono problemi.

Chiaramente parliamo di un avviamento in un sistema dove la pompa magari rimarrà accesa per dei minuti o per almeno qualche secondo, in quel caso probabilmente i tempi del nostro sistema sono abbastanza dilatati per doversi preoccupare del tempo di scansione del plc.

Facciamo ora però un altro esempio, e supponiamo di dover leggere degli impulsi forniti da un misuratore di portata che impieghiamo per dosare un liquido. Sappiamo che la portata del liquido data dalla pompa che lo muove è di circa 10 mila l/h, e vogliamo una precisione di almeno un etto (assumiamo peso specifico del liquido 1), quindi 10 impulsi litro.

Ogni quanto avremo un impulso a quella portata? Vediamo i calcoli di questo processo nella prossima immagine.


Calcolo tempi di scansione

Dividendo la portata oraria per 3600 otteniamo la portata in litri al secondo che è 2,78. A questo punto visto che vogliamo dieci impulsi per ogni litro per avere la precisione di un etto gli impulsi al secondo saranno 2,78 moltiplicato 10, quindi 27,78.

Dividendo 1000ms per 27,78 otteniamo che ogni 36 millisecondi il sistema ci darà un impulso, a questo punto il nostro tempo di scansione massimo dovrebbe essere di 18 millisecondi per garantirci di non perdere nemmeno un impulso. Con questo tipo di processo un’occhiata al tempo di scansione del nostro plc, soprattutto se egli sta comunicando con diversi sistemi scada o altre cpu, sarebbe meglio darla!

Ingressi veloci e contatori veloci nei plc.

Dall’esempio che abbiamo appena elaborato si evince che per alcune operazioni nei processi potrebbe essere necessario avere la possibilità di acquisire ingressi velocemente ed elaborarli altrettanto in fretta per esempio quando li si conta.

Applicazioni veloci sono quelle che impiegano rilevatori di prossimità, rilevatori laser ed encoders. I plc a tal proposito solitamente ci mettono a disposizione, oltre che i normali ingressi e contatori, un piccolo numero di ingressi veloci e contatori veloci (HSC) che ci permettono di operare proprio in questi frangenti.

Utilizzando questi speciali ingressi e queste istruzioni non dobbiamo preoccuparci del tempo di scansione che invece andrà a influenzare tutto il resto dove non è necessaria una reazione del sistema così veloce.

Nella prossima immagine vediamo un micro di prossimità che deve leggere la rotazione veloce di un albero, il sistema utilizza un HSC (high speed counter) nel plc per ricevere tutti gli impulsi.

Utilizzo degli ingressi veloci dei PLC

Copyright(C) automazione-plc.it
P. IVA: 11676200964
Sito di informazione e didattica sull'automazione industriale, il mondo dei PLC e dei sistemi di supervisione.
Programmazione PLC.
Programmazione SCADA e HMI.
Apparecchiature e hardware industriale.
Strumentazione da campo.
Policy sulla Privacy e utilizzo dei Cookies