Simulare un progetto per il PLC su TIA Portal

Una volta compilato il progetto e controllato la correttezza formale, bisogna controllare che anche la logica è corretta.

Proviamo a simulare un progetto. Ad esempio quello realizzato nell’articolo Hello World: Accendere una lampada con un PLC

Avviare la simulazione

Per avviare la simulazione, dalla vista progetto, si deve selezionare il PLC dalla ramificazione e poi, in alto l’icona a forma di monitor:

Questa operazione avvierà il simulatore (PLCSIM) installato nel PC. Il simulatore infatti è un programma a parte che si collega con il TIA Portal.

Il TIA Portal si collegherà con il simulatore e trasferirà il programma, proprio come accade con un PLC vero.

Per questo motivo, appena avviato il simulatore, potrebbe comparire un messaggio di alert come il seguente, che chiede conferma sull’affidabilità della connessione.

Cliccare su OK nella finestra “Enable Simulation Support”

E confermare anche il messaggio che l’apertura del simulatore disabilita ogni altra interfaccia online collegata al TIA Portal:

Infine cliccare su “consider as trasted and…” per confermare l’affidabilità del collegamento con il simulatore:

Durante il caricamento del programma, il TIA Portal chiede conferma che si voglia caricare tutto oppure solo una parte di programma:

Infine, l’ultima schermata, chiede cosa deve fare il simulatore dopo aver terminato il caricamento. In questo caso selezionare “Start module” e cliccare sul tasto “Finish”. Questo imposterà il simulatore in stato di RUN:

Il quadratino in corrispondenza della voce RUN/STOP del simulatore si colorerà di verde:

Per controllare il flusso del programma in tempo reale, è necessario posizionarsi sulla pagina del programma (Main) e cliccare in alto l’icona della freccia con gli occhiali:

ANche in questo caso è richiesta la conferma della comunicazione, quindi, nel messaggio successivo, si clicchi su “consider as trusted and m…” per accettare di nuovo la comunicazione

Il ladder si colora di verde ad indicare il “flusso” del programma (un po’ come se fosse il flusso di corrente). Come è possibile vedere il flusso si interrompe in corrispondenza del contatto aperto START.

E’ necessario trovare il modo per commutare i contatti, ovvero indicare, per ogni contatto che il bit corrispondente vale 1 o 0.

Per farlo  è necessario cliccare sull’icona a forma di quadratino bianco in alto a destra del PLCSIM. Appena cliccato, il simulatore cambia forma e si apre a tutto schermo: sarà il nostro ambiente per modificare i valori del simulatore

DI seguito la schermata ingrandita del simulatore. Per tornare alla forma iniziale del PLCSIM si può cliccare di nuovo sull’icona a forma di quadratino bianco in alto al centro della schermata del simulatore:

Se invece si vuole provare a modificare i valori dei contatti del progetto che si vuole simulare si clicchi sull’icona in alto a sinistra “New Project”. Si apre una schermata in cui è possibile dare il nome al progetto di simulazione. Spesso non è necessario salvare il progetto di simulazione quindi possiamo lasciare il nome proposto e cliccare su “create”:

Successivamente si espande il pannello di sinistra (Project tree) e si clicca sulla voce SIM Tables e poi SIM tables_1

Qui possiamo inserire le nostre variabili di progetto ovvero i contatti relativi agli ingressi e alle uscite.

Per importare le variabili dal progetto del TIA portal, si deve cliccare sull’icona a forma di etichetta viola presente nella barra in alto

In questo modo tutte le variabili sono state importate. Cliccando sulle singole variabili, in basso comparirà un pulsante con il nome della variabile stessa.

Prima di simulare il comportamento dei pulsanti, però, è necessario impostare il bit dell’ingresso dello STOP a 1, in quanto lo STOP è collegato con un contatto Normalmente Chiuso, quindi all’ingresso arriva la corrente quando il pulsante è a riposo.

Per settare il bit ad uno si clicca sulla checkbox della colonna Bits in corrispondenza dell’ingresso STOP in modo da inserire la spunta blu

Se torniamo sul TIA Portal e osserviamo i network, vedremo che il contatto NA dello STOP si è colorato di verde e quindi farebbe passare un ipotetico flussso:

Tornando sul progetto di simulazione e selezionando la voce START e cliccando in basso nel pulsante, si potrà osservare che nel programma il flusso passa attraverso il contatto dello START, poi in quello dello STOP e attiva di conseguenza il merker K1

il merker K1 attivato, a sua volta attiva nel network 2 l’uscita della lampadina HL_1, come è possibile vedere nel TIA Portal (linee tutte verdi)

spostandoci, nel simulatore, sulla linea dello stop e cliccando sul pulsante in basso, possiamo controllare che la l’uscita della lampadina si disattiva:

La simulazione è terminata con esito positivo.

Non è necessario salvare il progetto di simulazione, quindi si può chiudere il PLCSIM (o rimpicciolirlo) senza salvare il progetto

Se si è chiuso il simulatore, il TIA Portal potrebbe segnalare la mancanza di collegamento. In questo caso si clicca sull’icona Go offline (in alto nella barra degli strumenti) per scollegare il programma con il simulatore (oramai chiuso):

La simulazione ha avuto esito positivo. A questo punto è possibile trasferire il programma sul PLC vero.




Hello World: Accendere una lampada con un PLC

Realizziamo un primo programma con il PLC: accendere e spegnere una lampada tramite due pulsanti, uno che accende e l’altra che la spegne.

In questo articolo realizziamo il programma tramite l’ambiente di sviluppo Siemens TIA Portal V17, collegato con un PLC S7-1200 1215C AC/DC/Rly con la versione del firmware 4.4.

Prerequisito di questo articolo è Prima configurazione del Siemens TIA Portal: Creare un progetto con un PLC

 

Chiamiamo il nostro programma “hello world”

Per prima cosa bisogna identificare gli ingressi e le uscite del PLC

Gli ingressi e le uscite vengono identificati tramite “indirizzamento”, indicando con la lettera I gli ingressi e con la lettera Q le uscite. 

L’indirizzo degli ingressi segue la logica dei byte e dei bit: I0.0 identifica il primo ingresso a sinistra; I0.1 il secondo e così via, fino all’ottavo ingresso (I0.7). L’ingresso successivo avrà indirizzo I1.0 e poi I1.1 e così via.

Per prima cosa vanno identificati gli ingressi e le uscite. Immaginiamo di avere un collegamento fisico al PLC come quello della figura seguente:

Il pulsante Normalmente Aperto (NA) dello START è collegato nell’ingresso I0.5 mentre il pulsante Normalmente Chiuso (NC) dello STOP nell’ingresso I0.6.

L’uscita Q0.6 è collegata alla lampada HL_1.

Gli ingressi e le uscite vengono scritte nella tabella delle etichette (“Tags”). Per aprire la tabella (o le tabelle, quando il programma è particolarmente complesso), si deve selezionare la voce “PLC Tags” e poi “Default tag table” (che è la tabella di default del programma). Si apre la schermata come quella seguente:

Inseriamo i vari ingressi e le varie uscite indicando il nome (a scelta) e il suo indirizzo. Ad esempio al pulsante START viene associato l’ingresso I0.0 come da figura seguente:

La stessa cosa si fa con le uscite. In questo caso l’unica uscita è l’HL_1 che ha indirizzo Q0.6:

E’ possibile anche aggiungere dei commenti che aiutano a capire come organizzare il programma:

Il programma

Per realizzare il programma si deve andare nella sezione “Program blocks” e si seleziona Main (doppio click)

Per realizzare il programma, partiamo dallo schema elettrico.

Non sarà sempre necessario usare lo schema elettrico per realizzare il Ladder, ma per cominciare, il passaggio dallo schema elettrico è un ottimo sistema per capire il funzionamento del Ladder.

Lo schema è semplice: il pulsante START eccita un RELE’ K1 che viene mantenuto attivo dal suo contatto in modalità di autoritenuta.

Un altro contatto del relè K1 sarà dedicato all’accensione della lampada HL_1.

Ma tra gli ingressi e le uscite non abbiamo contemplato il relè.

Il programma Ladder prevede un altro oggetto che permette la sostituzione fisica del relè: il MERKER.

Un Merker (M) è una variabile di memoria utilizzata per immagazzinare dati temporanei e condivisi tra diverse parti del programma.

Va dichiarata nella tabella delle Tags e il suo indirizzamento segue le stesse logiche viste in precedenza per gli ingressi e le uscite. Quello che cambia è la lettera con cui sono identificati, che, nel caso dei merker è la M.

Il merker che utilizzeremo per il nostro programma lo chiamiamo K1 e gli diamo indirizzo (virtuale) M0.0:

Un buon approccio per cominciare a scrivere il programma Ladder è quello di partire dal circuito elettrico, ruotarlo di 90 gradi e poi specchiarlo.

I contatti del Ladder sono di due tipi:

-| |- Contatto Normalemente Aperto;

-|/|- Contatto Normalmente Chiuso;

Sostituendo i contatti con i quelli del circuito elettrico lo schema risultante del primo ramo del circuito è il seguente:

Al posto dei punti interrogativi vanno messi i contatti, così come sono stati definiti nella tabella delle Tags:

Cliccando sui punti di domanda, è possibile scegliere ingressi, uscite e merker. Scrivendo direttamente nel campo, il valore viene ricercato in maniera da agevolare la selezione:

Il programma ladder del primo “network” (ovvero del primo ramo del circuito) assumerà la seguente forma:

E completando anche il secondo network si ha il programma completo:

Attenzione però. C’è un errore!

Riguarda il contatto dello STOP. Nel ladder è stato inserito come contatto NC (–|/|–). Nel PLC il contatto dello STOP è stato collegato con un pulsante NC. Significa che nell’ingresso I0.6, su cui è collegato lo STOP, arriva un segnale elettrico.

Questo significa che il contatto I0.6 viene subito commutato nel ladder e da CHIUSO passa subito ad APERTO, non permettendo il passaggio del segnale, che, nel ladder, viene percorso da sinistra verso destra, dove sono presenti le uscite.

Correggiamo l’errore portando (nel ladder) il contatto dello stop a NA (–| |–). Basta cliccare sull’icona del contatto e scegliere quella giusta:

Il programma corretto diventa il seguente:

Il programma è completato.

Per controllare la correttezza è necessario compilarlo e, per controllarne anche la logica, è necessario procedere sia con la simulazione che con il trasferimento ad un PLC vero.

Per compilare, cliccare con il tasto destro sul PLC nella diramazione del progetto e selezionare la voce “Compile” e poi “Hardware (rebuild all) 

 

Il TIA Portal, nella finestra in basso, evidenza gli errori o gli alert.

In questo caso, ad esempio, viene segnalato che manca la protezione del PLC. Il PLC scelto, infatti, si può proteggere con la password per aumetare il livello di sicurezza. Il TIA Portal segnala che la password non è stata impostata:

Successivamente si passa alla compilazione del software. Per farla, analogamente a come fatta per l’hardware, si clicca con il tasto destro sulla ramificazione del plc e si seleziona la voce “compile” e poi “Software (rebuild all)”

Nella finestra in basso vengono indicati eventuali errori e le frecce aiutano all’identificazione dell’errore:

La compilazione è andata a buon fine. Significa che il programma è formalmente corretto.

Ora, per controllare la logica, è necessario simularlo.

E’ possibile vedere come farlo nell’articolo Simulare un progetto per il PLC su TIA Portal