Quali sono le istruzioni più importanti per programmare un plc? Esistono degli elementi del programma che sono più utilizzati e dei quali non se ne può fare a meno?
In questa lezione ti faccio conoscere cinque tra le istruzioni più importanti per creare le logiche di funzionamento dei controllori logici programmabili, indipendentemente dal linguaggio di programmazione adottato.
Se qualcuno dovesse chiedermi quali sono le istruzioni che ho utilizzato maggiormente nelle logiche plc che ho creato nel corso di molti anni di lavoro, non avrei dubbi e risponderei che sono le istruzioni più elementari e le operazioni logiche.
Vediamo insieme di cosa si tratta, e per aiutarci facciamo un passo indietro a quando nella storia si è cominciato a utilizzare i PLC nell’automazione dei compiti.
Il PLC è nato per sostituire i relé ed evitare di dover modificare fisicamente le connessioni tra di essi quando le esigenze di processo cambiavano. In effetti la definizione stessa di controllore logico programmabile descrive perfettamente la funzione di queste unità logiche.
Va da sé che se parliamo di relé, comprendiamo subito quale istruzione risieda al primo posto nella classifica delle funzioni più utilizzate e utili inseribili in un software plc: il contatto, questo elemento che ci permette di valutare lo stato zero o uno di una variabile booleana (discreta), che potrà rappresentare un ingresso fisico del plc, un’uscita di questo, ma anche una variabile interna, così come un valore proveniente dalla rete.
Insomma, il contatto lo troviamo ovunque e in linguaggio ladder viene rappresentato come nella figura sotto, dove lo vediamo sia impiegato come normalmente aperto (NO), che normalmente chiuso (NC).
Il contatto aperto dell’uscita in parallelo (OR) agli altri due tiene l’uscita alta una volta che è stata attivata.
La terza istruzione più importante nella programmazione dei plc è probabilmente il temporizzatore (o timer). Di queste istruzioni ce ne sono di vario tipo, ritardati alla partenza, ritardati alla disattivazione, ritardati sia all’attivazione che alla disattivazione.
I timer svolgono un ruolo davvero importante per costruire le logiche di funzionamento dei processi, essi infatti ci permettono di eseguire qualcosa “dopo un certo tempo”, “per un certo tempo”.
Il tipo di timer più basilare è il TON, ovvero timer on delay, che attiva la sua uscita dopo che ha contato il tempo previsto nel suo preset. Questo timer inizia a contare e continua a contare finché il suo ramo d’attivazione ha valore UNO; se questo cade mentre il timer sta contando il conteggio si azzera.
Ecco il timer nella prossima immagine.
Come vediamo nella figura, valutando con un contatto aperto lo stato dell’uscita Q1, se questa è attiva abilitiamo il conteggio nel timer chiamato TIMER1. Questo ha un preset di 5 secondi, e conterà finché Q1 rimane attiva.
Una volta che il conteggio è finito, nella prima linea il contatto chiuso che valuta l’uscita del timer (conteggio eseguito) apre il ramo e fa cadere l’uscita stessa.
Abbiamo appena costruito un programmino che attiva un’uscita per mezzo di un ingresso e la disattiva dopo qualche secondo; il tutto con semplici istruzioni!
La “P” aggiunta nel primo contatto in alto indica di valutare solamente il fronte di salita (non ne parliamo in questa sede), e cerchiamo invece ora di capire cosa rappresentano i contatti messi in serie e in parallelo: gli AND e gli OR.
Nella costruzione dei programmi per plc, le istruzioni AND e OR sono, insieme al NOT (negazione) le operazioni logiche più importanti.
Nella prima riga del nostro programma ladder abbiamo: se c’è l’ingresso I1 e il merker M1 non è attivo, oppure se è attiva l’uscita Q1, allora attiva l’uscita Q1. Se dovessimo tradurre queste istruzioni in linguaggio di testo strutturato otterremmo:
IF (I1 AND NOT M1) OR Q1 THEN
Q1:=1;
ELSE:
Q1:=0;
END_IF;
Come detto in precedenza per ora non consideriamo la “P” nel primo contatto.
Ricapitolando, abbiamo il contatto, la bobina e il timer, e poi le istruzioni AND e OR. Consideriamo le bobine come parte del relé e quindi associate ai contatti, dobbiamo ancora scoprire altre due istruzioni!
Quale potrebbe essere la quarta istruzione più importante utilizzabile per programmare il plc? A mio parere l’istruzione MOVE, una funzione che ci permette di impostare un valore in qualsiasi variabile nel programma, soprattutto quelle di tipo numerico. Eccola nella prossima immagine.
Ormai si dovrebbe facilmente intuire cosa succede quando il timer finisce di contare: oltre a resettare l’uscita Q1, si imposta il valore 55 nella variabile chiamata VARIABILE1, che sarà di tipo numerico.
L’ultima istruzione di cui parliamo oggi e che fa parte del set di funzioni fondamentali per la programmazione dei PLC è il contatore, eccolo nella prossima immagine.
Che cosa esegue il contatore chiamato CONTATORE1? è facile, ogni volta che il timer finisce di contare incrementa il suo conteggio di uno, inoltre quando il conteggio arriva al valore PV (10) l’uscita Q del contatore stesso si alza.
Bene, le istruzioni che abbiamo visto in questa lezione sono probabilmente i pilastri su cui ogni programma plc si fonda, se comincerete una carriera come programmatori, vedrete che il tempo avvallerà questa mia affermazione.
Io vi invito a studiare ed esercitarvi, e vi do appuntamento alla prossima qui sul mio sito internet, e sul mio canale YouTube.
Buon lavoro!