Archivi categoria: automazione

Open PLC – Lezione 3: Slave Arduino – configurare gli I/O

E’ possibile utilizzare una scheda Arduino come slave per espandere gli I/O di un dispositivo hardware su cui funziona OpenPLC. Questa operazione è particolarmente utile se state lavorando con OpenPLC in esecuzione su un computer Windows o Linux, in questo modo collegando una scheda Arduino potremo aggiungere un’interfaccia fisica di gestione degli I/O del nostro PLC.

La scheda Arduino può essere utilizzata solo come dispositivo slave, pertanto è essenziale impostare un host, ovvero avere un OpenPLC Runtime installato su un computer con sistema operativo Windows o Linux, così come visto nelle lezioni precedenti. Vedremo inoltre nella successiva lezione come installare OpenPLC su un computer Raspberry Pi e su un Raspberry Pi 400 ed utilizzare la GPIO come I/O del nostro PLC.

Effettuare l’upload del Firmware su Arduino

Selezionate la versione corretta del firmware (si tratta di uno sketch Arduino che deve essere eseguito) per la scheda che possedete, scompattate e caricatela sulla scheda Arduino:

Aggiungere lo slave ad OpenPLC

Installato il firmware sulla scheda e mantenendo la scheda connessa al computer con cavo USB, avviare il OpenPLC Runtime sul vostro computer, effettuate il login con le vostre credenziali. Accedere al menù “Slave Devices” e clic su “Add new device”:

Compilare tutti i campi, evitare caratteri accentati come ad esempio: ç, é, ó, ñ, selezionare la scheda Arduino utilizzata, la porta COM viene identificata automaticamente, in ogni caso se doveste avere dei problemi vi ricordo che la porta COM a cui è connessa la scheda può essere desunta dall’IDE di Arduino oppure verificando dal vostro sistema operativo, quali sono le periferiche connesse.

Avviate il PLC facendo clic su “Start PLC”. Se all’interno della dashboard di OpnePLC vengono visualizzati messaggi di timeout, non preoccupatevi è una situazione normale, tutte le schede Arduino hanno una funzione di ripristino automatico che riavvia la scheda ogni volta che viene effettuata una nuova connessione USB, quindi una volta che OpenPLC avvia una comunicazione, il primo tentativo di inviare un messaggio alla scheda fallisce perché la scheda Arduino si sta ancora avviando dopo un ripristino. Dopo pochi millisecondi la scheda è completamente operativa, dovreste vedete i LED Tx ed Rx lampeggiare, ciò identifica il funzionamento del sistema.

Mappa dei Pin

Nelle tabelle che seguono è indicata la mappatura dei pin per le schede Arduino Uno e Arduino Mega. La mappatura si riferisce all’ultima versione di OpenPLC, la v3.
Ricordate che, per quanto riguarda le schede Arduino, gli I/O hanno una numerazione che differisce da altri hardware.

Mappatura pin Arduino UNO

input digitali Arduino Pin OpenPLC I/O
2 %IX100.0
3 %IX100.1
4 %IX100.2
5 %IX100.3
6 %IX100.4
output digitali 7 %QX100.0
8 %QX100.1
12 %QX100.2
13 %QX100.3
input analogici A0 %IW100
A1 %IW101
A2 %IW102
A3 %IW103
A4 %IW104
A5 %IW105
output analogici 9 %QW100
10 %QW101
11 %QW102

Mappatura pin Arduino MEGA

input digitali Arduino Pin OpenPLC I/O
22 %IX100.0
24 %IX100.1
26 %IX100.2
28 %IX100.3
30 %IX100.4
32 %IX100.5
34 %IX100.6
36 %IX100.7
38 %IX101.0
40 %IX101.1
42 %IX101.2
44 %IX101.3
46 %IX101.4
48 %IX101.5
50 %IX101.6
52 %IX101.7
14 %IX102.0
15 %IX102.1
16 %IX102.2
17 %IX102.3
18 %IX102.4
19 %IX102.5
20 %IX102.6
21 %IX102.7
output digitali 23 %QX100.0
25 %QX100.1
27 %QX100.2
29 %QX100.3
31 %QX100.4
33 %QX100.5
35 %QX100.6
37 %QX100.7
39 %QX101.0
41 %QX101.1
43 %QX101.2
45 %QX101.3
47 %QX101.4
49 %QX101.5
51 %QX101.6
53 %QX101.7
input analogici A0 %IW100
A1 %IW101
A2 %IW102
A3 %IW103
A4 %IW104
A5 %IW105
A6 %IW106
A7 %IW107
A8 %IW109
A9 %IW109
A10 %IW110
A11 %IW111
A12 %IW112
A13 %IW113
A14 %IW114
A15 %IW115
output analogici 2 %QW100
3 %QW101
4 %QW102
5 %QW103
6 %QW104
7 %QW105
8 %QW106
9 %QW107
10 %QW108
11 %QW109
12 %QW110
13 %QW111

Buon Making (di automazione) a tutti 🙂

Open PLC – Lezione 2: installare il software su Linux

L’installazione di OpenPLC è possibile anche su sistemi operativi Linux, così come indicato nella sezione specifica del sito di riferimento l’operazione è estremamente rapida.

Il modo migliore per installare OpenPLC sul vostro computer Linux è utilizzando Git che su molte distribuzioni Linux risulta già installato, nel caso in cui non lo fosse, è possibile installarlo da terminale.

Se operate con un sistema Ubuntu aprite il pannello delle applicazioni e cercate Terminale:

Digitate sul terminale il comando che segue

sudo apt-get install git

Vi verrà richiesto di inserire la vostra password

Bisogna confermare l’installazione, S per continuare

A questo punto digitate a terminale i seguenti tre comandi

git clone https://github.com/thiagoralves/OpenPLC_v3.git
cd OpenPLC_v3
./install.sh linux

Il risultato dell’azione dei tre comandi sopra indicati è il seguente:

Il processo di installazione potrebbe richiedere parecchio tempo, su alcuni computer anche 1 ora, pazientate ed attendete che il processo giunga al termine. Alla fine dell’installazione il computer sarà riavviato.
Se il riavvio non viene eseguito automaticamente procedete voi manualmente a riavviare il computer. Le modalità per il riavvio sono diverse, da interfaccia grafica, oppure in maniera più semplice da terminale.

Il reboot da interfaccia grafica viene eseguito nel modo indicato di seguito:

Il reboot da terminale avviene digitando il seguente comando:

reboot

il riavvio immediato di un PC Linux può avvenire anche utilizzando il comando shutdown in una delle due modalità indicate di seguito:

shutdown -r now
shutdown -r +0

A questo punto l’avvio di OpenPLC segue le stesse modalità viste nella lezione 1, aprite un browser e digitate:

localhost:8080

Comparirà l’interfaccia di login:

La username di default è: openplc e la password di default è: openplc.

A questo punto seguite le medesime indicazioni di cambio password che trovate al fondo della Lezione 1.

Buon Making (di automazione) a tutti 🙂

Open PLC – Lezione 1: installare il software su Windows

Durante il percorso di automazione che seguono i miei studenti, vengono utilizzati diverse tipologie di PLC impiegati in campo industriale, però al fine di rendere lo studio più agevole, completo e accessibile dal punto di vista economico a tutti gli studenti, soprattutto in una fase iniziale di un percorso di studi, un’alternativa che considero molto interessante e che utilizzerò in questo anno scolastico per le classi terze è OpenPLC un prodotto Open Source gratuito che viene impiegato anche a livello industriale.

Un PLC generalmente ha costi elevati, quindi risulta un oggetto tecnologico non accessibile a tutti gli allievi e l’utilizzo avviene principalmente a scuola. Un PLC dal punto di vista dei costi, non è paragonabile ad una scheda Arduino, scheda che nella maggior parte dei casi viene acquistata ed usata dai tutti i miei studenti.

Ma se lo studente usasse un PLC software, OpenPLC, a cui connettere uno slave per disporre degli I/O fisici realizzato con una scheda Arduino il tutto diventerebbe didatticamente ed economicamente molto interessante per le famiglie. OpenPLC non richiede risorse di calcolo elevate pertanto è usabile su PC anche poco performanti.

L’IDE di programmazione e la modalità di realizzazione delle automazioni che possono essere realizzate con OpenPLC ha delle similitudini operative simili di TIA Portal della Siemens, quindi certamente ne facilita l’approccio di utilizzo quando verranno utilizzati PLC Siemens nei successivi anni scolastici.

Questa lezione, come le successive che seguiranno nei prossimi giorni sono di supporto per  le sperimentazioni dei miei studenti. Le lezioni sono tratte dal sito di riferimento di OpenPLC. Il mio ringraziamento va a Thiago Alves che ha sviluppato il progetto.

Nella prossime lezioni vedremo:

  • Installazione su PC Linux
  • Configurazione di un dispositivo slave (Arduino) per aggiungere I/O fisici
  • Realizzazione di un programma di esempio in LADDER
  • Esercizi aggiuntivi di esempio
  • … ed altro

In questa lezione vedremo come installare ed avviare il vostro PLC software, OpenPLC, su PC Windows e come superare alcuni problemi che potrebbero esserci in fase di installazione, non capita spesso, ma in questa guida trovate tutte le indicazioni per superare i problemi, nel caso non troviate soluzione leggendo i miei appunti vi rimando al forum sul sito di riferimento.

OpenPLC è costituito da tre componenti:

  • Runtime;
  • Editor;
  • HMI Builder e ScadaBR;

Il Runtime deve essere installato sul dispositivo fisico ed è responsabile dell’esecuzione del programma.
L’Editor è il software che funzionerà sul vostro computer (PC Windows, Linux, Raspberry Pi) e che servirà per scrivere il programma PLC.
HMI Builder e ScadaBR permettono di creare delle animazioni grafiche all’interno di una pagina web che rifletto lo stato del processo industriale e consentono di comunicare  con il Runtime attraverso una connessione Modbus/TCP.

Continua a leggere

L’alfabeto del PLC – PLC Siemens 1200 – Lezione 1

(ultima modifica: 06.04.2021)

Così come feci diversi anni fa con Arduino con l’Alfabeto di Arduino, voglio iniziare una nuova avventura con i PLC iniziando a condividere con voi i molti appunti che negli anni ho prodotto sull’uso dei del PLC, nello specifico PLC Siemens 1200 e Siemens LOGO8! Per entrambi ne mostrerò passo passo l’utilizzo allegandone esercizi e sperimentazioni. Come sicuramente saprete le dotazioni per un laboratorio di Automazione scolastico richiedono investimenti importanti, pertanto per far si che questi appunti siano fruibili da tutti tenderò a svolgere esercizi e spiegazioni che potranno essere svolti da chiunque senza avere grandi dotazioni tecnologiche e quindi mantenendo contenute le spese. Suggerirò kit specifici o elementi che potranno essere autocostruiti in qualsiasi laboratorio di meccanica ed elettronica dell’ITIS. Questi appunti subiranno sicuramente modifiche e correzioni che potranno essere svolte anche in fase successiva alla scrittura del documento, pertanto per rendere più evidente l’aggiornamento della lezione aggiungerò in testa al documento la data che mostra l’ultima modifica effettuata. Queste lezioni sono derivate dalle sperimentazioni mie e dei miei studenti, basandosi sulla vasta documentazione messa disposizione da Siemens, documentazione che è stata rivista e sintetizzata e resa compatibile con i percorsi didattici svolti negli istituti tecnici ad indirizzo elettronico e automazione che devono essere inseriti all’interno dei programmi di Sistemi e TPSEE. Troverete una vasta disponibilità di corsi e libri fatti molto bene, soprattutto i Webinar svolti da Siemens, molto spesso però sono corsi pensati per professionisti o insegnanti che io stesso ho seguito, sono svolti da professionisti del settore molto preparati in cui però molto spesso non viene tenuto in conto l’approccio didattico che bisogna avere con ragazzi delle scuole superiori, pertanto è indispensabile una rimodulazione dei contenuti per poi poterli presentare adeguatamente. Sicuramente se state iniziando questo percorso di studio, indispensabile partire dai numerosi Webinar di Siemens SCE Italia, da cui sicuramente potrete imparare moltissimo. Gli appunti che scriverò avranno la struttura di un manuale che potrete ovviamente migliorare, espandere e condividere. Se siete lettori di questo blog, avrete sicuramente notato che  preferisco il testo scritto al video, un po’ perché riesco ad essere più celere nella sistemazione degli appunti che realizzo per i miei studenti ed un po’ perché il testo scritto mi aiuta a pensare e migliorare l’azione didattica in presenza. Come sempre non posso assicurare una periodicità costante, perché in primis dovrò pensare alle lezioni a scuola e costruire slide ed esercizi per gli studenti, ma sicuramente produrrò lezioni più lunghe e strutturate che pubblicherò su queste pagine. Le lezioni possono essere seguite da chiunque, non saranno necessarie competenze elevate di informatica ed elettronica, dove necessario integrerò con semplici spiegazioni. Chiedendovi grande pazienza e comprensione per eventuali sviste e correzioni, vi auguro buona lettura 🙂

Cos’è un PLC e perché viene utilizzato
Cosa significa PLC?

PLC è la sigla di Programmable Logic Controller (controllore a logica programmabile). Questo termine descrive un dispositivo che comanda un processo (ad es. una macchina per la stampa di giornali, un impianto per il riempimento di sacchi di cemento, una pressa per pezzi stampati in plastica ecc… ).

Continua a leggere

Installare node.js e Node-RED su MacOSX

In questi giorni mi sto occupando di Node-RED per programmare il Siemens IOT 2040 che posseggo e su cui sto sviluppando una serie di automazioni, nel contempo ho installato Node-RED su MacOSX, Windows e Raspberry Pi in modo da predisporre delle brevi guide per i miei studenti. Condivido con voi questo tutorial passo passo per l’installazione su MacOSX, seguiranno tutorial di installazione per gli altri sistemi operativi.

Siti di riferimento per l’installazione:

Esistono diverse modalità di installazione quella seguita da me fa uso di NPM.

Per utilizzare Node-RED è indispensabile installare node.js, consiglio di utilizzare la versione LTS (long-term maintenance) di node.js. Collegatevi al sito https://nodejs.org/en/ e prelevate la versione LTS:

Se farete doppio click sul file .pkg vi comparirà il messaggio di sicurezza:

“Click + Control” sul file e selezionate Open:

Comparirà nuovamente la finestra di Alert precedente, ma questa volta sarà presente il pulsante Open su cui dovrete fare click:

Continua a leggere