Le attività che gli studenti mi propongono sono tantissime e sovente capita che alcune proposte, oltre ad essere spendibili da un punto di vista pratico, mi aiutino ad impostare una futura didattica fatta di oggetti che in altro modo verrebbero dismessi o gettati in un angolo a prender polvere.
E’ questo il caso di un vecchio panello di pneumatico che qualche anno fa veniva utilizzato collegato a dei vecchi PLC, negli anni si sono perse diverse componenti e per l’italico disinteresse è stato riposto in un angolo del laboratorio.
Fortunatamente la volontà caparbia e positiva di due mie allievi di 5′, Michael e Vlad, con l’aiuto dell’amico collega Piergiuseppe, ha rimesso in attività il dispositivo. L’idea, nata dal suggerimento dei ragazzi è quella di mostrare come poter pilotare una serie di pistoni usando relè pneumatici e finecorsa, con controllo fatto sia con PLC che con Arduino, ciò mi permetterà, come loro stessi mi hanno chiesto di fare 🙂 di mostrare come è possibile governare oggetti “industriali” (i pistoni) programmando in LADDER con i PLC oppure in C con Arduino. Perchè non raccogliere questa splendida idea e farne una cosa utile?
Mentre l’attenzione dei ragazzi in questo momento è concentrata sulla sistemazione del pannello, io ho cercato una soluzione a bassissimo costo e di immediato utilizzo per interfacciare velocemente Arduino ad una serie di relè che mi potesse governare l’attivazione di una serie di contatti.
L’idea iniziale prevedeva la realizzazione di una scheda con una serie di relè e componentistica accessoria di cui dovevo realizzare un semplice PCB, ma una rapida ricerca mi ha permesso di trovare una soluzione migliore, sia dal punto di vista economico che dal punto di vista di praticità in classe, ho optato per l’acquisto della scheda: 8 Channel 5V Relay Module For Arduino UNO 1280 2560 ARM PIC acquisto fatto su Bangood.
La scheda è composta da ben 8 relè costituiti ciascuno un contatto normalmente aperto ed uno normalmente chiuso, il cui circuito di comando è a 5V e quindi direttamente pilotabile dalle uscite di Arduino, sul circuito di potenza potete collegare dispositivi funzionanti ad una tensione massima di 250VCA 10A oppure 30VCC 10A. Ho effettuato una semplice prova pilotando una striscia led alimentata a 12VCC.
La scheda è dotata di 12 pin:
- da IN1 a IN8 abbiamo i comandi dei singoli relè, questi ingressi saranno collegati alle uscite digitali di Arduino
- Vcc collegato a 5Vcc di Arduino
- GND collegato al GND di Arduino
- COM e GND ponticellati tra loro
La scheda dispone, per ciascuno dei relè, di un led che ne mostra l’attivazione.
Nell’esempio riportato di seguito i collegamenti tra scheda Arduino e scheda relè sono:
Arduino -> Scheda relè Pin3 -> IN1 Pin4 -> IN2 Pin5 -> IN3 Pin6 -> IN4 Pin7 -> IN5 Pin8 -> IN6 Pin9 -> IN7 Pin10 -> IN8 5Vcc -> VCC GND -> GND
Sketch di esempio:
// Prof. Michele Maffucci // 06.02.15 // Esempio di attivazione sequenziale di 8 relè // inizializzazione delle 8 uscite digitali dalla 2 alla 9 void setup() { for (int i=2; i<10; i++) { pinMode(i, OUTPUT); } } void loop() { for (int r=2; r<10; r++) { // sequenza di attivazione e disattivazione dei contatti degli 8 relè digitalWrite(r, HIGH); delay(250); digitalWrite(r, LOW); delay(250); } }
Controllo accensione di una striscia led a 12Vcc