Quante volte rimanendo in fila alla cassa del supermercato ci siamo chiesti come funziona il nastro trasportatore su cui poggiamo la nostra spesa? Come fa questo a muoversi e fermarsi esattamente quando gli articoli arrivano a portata di mano della cassiera?
Oggi le casse del supermercato si sono evolute, e se prima i cassieri dovevano scrivere i codici dei prodotti o per lo meno selezionarli su una tastiera, oggi ci sono i lettori di codice a barre che leggono la merce che gli passiamo sopra, rendendo il lavoro degli addetti molto più veloce e agevole.
Sarà anche per questo che a volte quando facciamo la spesa da soli e dobbiamo insacchettare le cose ci viene un po’ d’agitazione? Certo, la cassiera va veloce come un fulmine e ci “lancia” la merce e noi siamo sempre in ritardo nell’insacchettarla.
Descrizione del processo da automatizzare.
Torniamo al nostro programma PLC: sappiamo che abbiamo un motore che gira in un senso solo per far muovere il tappeto in direzione della cassa. Poi abbiamo una fotocellula posta in prossimità del terminale che rileva quando la merce arriva a portata di mano della cassiera, e un lettore di codice a barre che legge l’articolo e aggiunge al totale il prezzo dello stesso.
Il nostro compito è far gestire tutto questo dal plc, assumendo che il lettore di codice a barre invii al plc già direttamente il prezzo da aggiungere al totale.
Prevediamo per quest’applicazione un selettore di abilitazione. Una volta abilitata la funzione se la fotocellula non rileva niente il motore muove il nastro finché qualcosa arriva davanti alla fotocellula stessa. A quel punto la merce viene fatta leggere dal lettore di codici a barre e il prezzo viene addizionato al totale scontrino.
Se l’addetto alla cassa invia il comando 1 da tastiera l’ultimo articolo viene “stornato” dal totale, il comando 2 invece termina lo scontrino e il sistema diventa pronto a una nuova totalizzazione.
Per questa applicazione che nasce a scopo didattico assumiamo quanto appena detto, nella realtà sappiamo che invece il codice a barre permette di risalire a molte informazioni e gestirle, alcune delle quali poi vengono anche stampate sugli scontrini, prima tra tutte la descrizione del prodotto.
Definizione ingressi e uscite del plc.
Per funzionare questo sistema richiede un ingresso digitale per la fotocellula che rileva la merce, un’uscita digitale per il comando del motore, una scheda di comunicazione per interfacciare il plc con il lettore di codice a barre, la tastiera e il monitor.
Per quanto riguarda il lettore codice a barre abbiamo detto che questo ci manda direttamente il prezzo in una variabile, e un ingresso digitale che ci dice quando un nuovo articolo viene letto; questo bit va a zero e poi a uno ogni volta.
Dalla tastiera invece riceviamo in una variabile il valore 1 come comando di “cancellazione articolo”, e 2 come “fine merce” per totalizzare lo scontrino.
Quando il comando è 1 il sistema sottrae l’ultimo importo rilevato dal lettore dal totale scontrino.
Questa variabile di comando dal bus è scrivibile nei due sensi, per cui ogni volta che rileviamo un comando, dopo averlo elaborato mettiamo zero nella stessa.
Definizione delle variabili nel plc.
Per costruire il programma definiamo le seguenti variabili che saranno collegate a ingressi e uscite fisici, nonché a dati provenienti dal bus ove sono collegate tastiera, lettore di codici a barre e monitor:
in_abilita_cassa : BOOL;
in_fotocellula : BOOL;
out_motore : BOOL;
in_bus_nuovo_articolo : BOOL;
in_bus_prezzo : REAL;
in_out_bus_comando : INT;
Ci sono poi nel programma altre variabili interne che permettono alla logica di funzionare, ecco nella prossima immagine la prima parte del software ladder.
Quando arriva un nuovo articolo si aggiunge il suo prezzo al totale, invece nella terza riga si storna l’ultimo articolo rilevato dalla fotocellula, naturalmente azzeriamo anche il valore di comando “stornare”, ponendo la variabile del bus a zero.
Nel ramo quattro memorizziamo il comando di chiudere scontrino, mentre le ultime due righe lo ho inserite per simulare i comandi dal bus per mezzo dei pulsanti che ho aggiunto sul sinottico di supervisione HMI; eccolo nella prossima immagine.
La pagina dell’interfaccia di visualizzazione è stata catturata mentre il nastro avanza. L’ultimo articolo aggiunto allo scontrino valeva 4.3 euro e il totale dello scontrino è di 22.49 euro; lo scontrino è stato appena chiuso.
Ok, siamo giunti così al termine di questa lezione pratica di programmazione plc. Come sempre, sottolineo che questi programmi hanno lo scopo di avvicinarci all’utilizzo di questi controllori senza scendere troppo nei dettagli, mentre nella realtà delle cose le logiche d’automazione sono solitamente più complesse.
Rimane comunque il fatto che questo tipo di esercizio è ottimo per fare pratica con la logica ladder e le sue istruzioni. Io ti do appuntamento alla prossima e ti auguro buono studio; ci vediamo!