Web server a 4 relè

0

Di Giuseppe La Rosa

Realizziamo un economico Web Server basato su ARDUINO UNO con Data-Rate fino 10Mbps per applicazioni domotiche. In figura 1 è visibile il prototipo della scheda di comando su rete LAN o Internet completamente basata su ARDUINO UNO con la possibilità attraverso un PC o Tablet di interagire su apparati elettrici, mediante quattro relè da 6 Ampere 250 Volt con contatto normalmente aperto. Le applicazioni sono molteplici e varie: spegnimento/accensione di caldaie oppure luci e fari interni ed esterni, ancora apertura di cancelli automatici ad esempio da computer remoto (segreteria o portineria).

 


Figura 1: Foto del progetto finito.

Abbinato ad una bobina di sgancio è possibile togliere la corrente da qualsiasi elemento elettrico, utilizzando un RESTART ripristina la corrente. Abbinato ad un videoregistratore Web Server è possibile verificare in Real-Time l’esecuzione dei comandi da remoto. Stando comodamente seduti al PC, la scheda consente inoltre, di interagire sul qualsiasi dispositivo evitando di spostarsi per attivare e disattivare un apparecchio elettrico.

Schema elettrico

Partiamo con l’analisi dello schema elettrico visibile in figura 2. Il cuore principale del Web Server e il microcontrollore IC2 (ATMEGA328P) che dirige tutte le funzioni operative, come la comunicazione su Bus SPI (piedini 4, 16, 17,18 e 19) e il controllo dei Relè (K1, K2, K3, e K4) tramite i Transistor in configurazione di interruttore elettronico Q1, Q2, Q3 e Q4 rispettivamente connesse ai piedini 11, 12, 13, e 14. Il connettore J1 consente la programmazione ICSP del microcontrollore IC2, mentre J3 implementa un’interfaccia seriale UART per la programmazione del microcontrollore previo caricamento del Bootloader. Il quarzo Y1 fornisce la frequenza di Clock da 16 MHz necessaria al funzionamento IC2. Il microcontrollore IC4 della Microchip svolge le funzioni di interfacciamento con IC2 e di conversione dei dati secondo il protocollo Ethernet; il microcontrollore è l’ENC28J60 e contiene una completa interfaccia Ethernet di tipo 10 BaseT, conforme allo standard IEEE 802.3 ed è interfacciata tramite Bus SPI (Pin di IC4 4, 6, 7, 8 e 9) configurata per un Clock massimo di 20 MHz. IC5A e IC5B, servono ad adattare i livelli logici con cui lavora IC4 (che sono 0 e 3,3 Volt) a quelli di IC2 (0 e 5 Volt). Notate che le altre linee di IC4 interfacciate con IC2 (piedini 7, 8, 9 e 10) non richiedono il Buffer IC5, perché sono speciali Pin di Input dell’ENC28J60 compatibile con logica a 5 Volt; in pratica possono accettare segnali 0 e 5 Volt anche se IC4 è alimentato a 3,3 Volt.


Figura 2: Schema elettrico della scheda Web Server.

Il pulsante di RESET S1 collegato in entrambi microcontrollori IC2 e IC4 permette di resettare l’interfaccia Ethernet IC4 e il microcontrollore IC2, all’occorrenza in modo manuale. La presa RJ45 J2 ha due coppie di linee per la trasmissione (TPOUT+ e TPOUT-) e ricezione (TPIN+ e TPIN-) dei dati di IC4 ed altre due linee riservate al controllo dei LED di stato (LEDA e LEDB) integrati in essa, che servono ad indicare la presenza del Link Ethernet e l’altro il trasferimento dei dati. All’interno della presa J2 la coppia di linee per la trasmissione (TPOUT+ e TPOUT-) termina sul primario di un trasformatore d’accoppiamento a presa centrale polarizzata da 3,3 Volt mediante la resistenza R8, che termina sul piedino 3 di J2, comune dei primari. In parallelo ad ogni sezione del primario si trovano una resistenza R6 e R7. Le linee d’ingresso (TPIN+ e TPIN-) sono connesse, invece, al secondario di un trasformatore a secondario semplice ed entrambe sono filtrate verso massa dalle resistenze R9 ed R10 e dal condensatore C15. Il condensatore C13 connesso al piedino 1 di IC4 filtra la tensione d’uscita a 2,5 Volt del regolatore integrato all’interno. La resistenza R5 serve per la polarizzazione del Transceiver LAN che fa capo alle linee di recezione e di trasmissione dati. L’ENC28J60 IC4 funziona con Clock di 25 MHz che è quello consigliato per garantire la connettività a 10 Mbps, definito dal quarzo Y2 collegato fra i piedini 23 e 24. In conclusione dell’analisi dello schema elettrico della scheda passiamo l’alimentazione, essa giunge dal connettore J4 e tramite il diodo di protezione D4 va ad alimentare i relè K1 a K4 inseguito viene stabilizzata a 5 Volt tramite il regolatore IC1 esso fornisce 5 volt stabilizzati al microcontrollore IC2 e al Buffer IC5, essa è resa disponibile anche sui connettori J1 e J3. Lo stabilizzatore IC3 fornisce 3,3 Volt stabilizzati all’interfaccia di rete IC4.

Realizzazione pratica

Passiamo adesso alla costruzione della scheda che si presenta abbastanza semplice, la basetta è del tipo a doppia faccia con fori metallizzati e si prepara a partire dalle due tracie di figura 4 e figura 5, rispettivamente lato saldature e lato componenti.

Figura 3: Piano di montaggio.

Ottenuto il circuito stampato montate i componenti richiesti dalla lista componenti, partendo dalle resistenze dai diodi e gli zoccoli per gli integrati, quindi proseguendo con i condensatori prima i non polarizzati e poi gli elettrolitici; poi è la volta dei quarzi Y1 e Y2 che devono essere saldati a 2 mm dalla piastra per evitare cortocircuiti.Continuate con il montaggio dei transistor Q1 a Q4 e dei diodi LED.

Figura 4: Circuito stampato in scala 1:1 (lato saldature).

Montate i due regolatori IC1 e IC3 che vanno saldati sdraiati e isolati tramite mica per TO220 e avvitati al circuito stampato tramite viti 3 mm più dadi.

Figura 5: Circuito stampato in scala 1:1 (lato componenti).

Completate il montaggio inserendo e saldato il pulsante miniatura per il RESET S1, la presa RJ45 J2 quindi i due strip maschi J1 e J3, i morsetti X1 e il connettore di alimentazione J4. A questo punto non vi resta che inserire gli integrati, orientarli come mostrato nel piano di montaggio di figura 3.

Elenco componenti
Sigla Valore
R1 10 KΩ 1/4 W
R2 330 Ω 1/4 W
R3÷R4 10 KΩ 1/4 W
R5 2,7 KΩ 1/4 W
R6÷R7 47 Ω 1/4 W
R8 18 Ω 1/4 W
R9÷R10 47 Ω 1/4 W
R11 270 Ω 1/4 W
R12÷R13 270 Ω 1/4 W
R14 1,2 KΩ 1/4 W
R15 470 Ω 1/4 W
R16 1,2 KΩ 1/4 W
R17 470 Ω 1/4 W
R18 1,2 KΩ 1/4 W
R19 470 Ω 1/4 W
R20 1,2 KΩ 1/4 W
C1÷C4 100 nF poliestere
C5 100 µF 25 V elettrolitico
C6 22 pF ceramico
C7÷C8 100 nF poliestere
C9 22 pF ceramico
C10 100 nF poliestere
C11÷C12 15 pF ceramico
C13 10 µF  25 V elettrolitico
C14÷C15 100 nF poliestere
C16 100 µF 25 V elettrolitico
D1÷D5 1N4007 diodo
LED1 Led 5 mm rosso
LED2 Led 5 mm verde
LED3÷LED5 Led 5 mm rosso
Q1÷Q4 BC547B
IC1 L7805CV
IC2 ATMEGA328P
IC3 LD1117T3.3
IC4 ENC28J60-I/SP
IC5 74HC125N
J1 Strip doppio M.6 poli
J2 Connettore RJ45 RJ45EM
J3 Strip M. 5 poli
J4 Presa DC 5,5X2,1 mm
K1÷K4 Relè 12 V-6 A
S1 Pulsante
X1 Morseti a 8 poli
Y1 16 MHz quarzo
Y2 25 MHz quarzo
N.2 Zoccolo 14+14 pin
N.1 Zoccolo 7+7 pin
N.2 Mica per TO220
N.2 Viti 3×16 mm
N.2 Dadi 3 mm

Terminato e verificato il montaggio, per passare alla fase successive bisogna caricare Bootloader con apposito programmatore che va collegato al connettore J1. Se si dispone di un ATMEGA328P già con Bootloader caricato si può passare al caricamento del Firmware, operazione descritta nel prossimo paragrafo.Programmazione della scheda Per modificare tutti i parametri della scheda come: IP; MAC; PORTA TCP; DDNS; NOME; PASSWORD. Scaricate il Sorgente e la Libreria per ARDUINO UNO ai Link fine articolo. Installate la Libreria nell’ambiente IDE ARDUINO UNO. Nel sorgente (vedi Listato 1) al punto 1 va inserito un indirizzo MAC che può essere preso da una vecchia scheda di rete non usata, é anche possibile lasciare quello già presente nel Sorgente. Nel punto 2 va inserito l’IP che intendete usare separato da virgole. Al punto 3 va inserita la porta pubblica è consigliato lasciarla invariata (valore 80). Nel punto 4 va inserito Host Name di un massimo di 29 caratteri se si utilizza un servizio di DDNS altrimenti se si impiega in una rete locale inserire l’IP che avete assegnato in precedenza.

Listato 1: Parte del Sorgente da modificare.

La Password e il Nome prima devono essere codificate in Base 64, quindi scegliere un Nome di 5 caratteri e una Password di 6 caratteri. Sempre a fine articolo è possibile scaricate il software per la conversione in Base 64 in formato di pagina Web (vedi figura 6).

 

 

Figura 6: Pagina Web per la codifica della Password e Nome in Base 64.

Inserire nella casella il Nome scelto e nell’altra casella la Password che volete adoperare, cliccate su codifica e sulla casella sottostante verrà visualizzata una sequenza di caratteri che corrispondono alla vostra Password e Nome codificate in Base 64.

 

 

Figura 7: Collegamento tra ARDUINO UNO e il Web Server per la programmazione.

Copiate la sequenza di caratteri ed incollatela nel sorgente al punto 5 tra virgolette. Attuate le modifiche descritte in precedenza potete salvare e caricare il Firmware sulla scheda. Servendovi della scheda ARDUINO UNO togliendo il microcontrollore, ed operando il collegamento di figura 7 potete scaricare il Firmware al Web Server.

Collegamento della scheda

Per utilizzare il Web Server (vedi figura 8) occorre alimentare la scheda con un alimentatore da 9 Volt con corrente di 1 Ampere provvisto di uno spinotto delle dimensioni di 5,5×2,1 mm con il positivo centrale e negativo esterno. Con un cavo di rete dritto bisogna connettere la scheda allo Switch o Modem Router. I carichi vanno collegati alla morsettiera X1 con cavi adeguati all’assorbimento dei carichi, la massima corrente applicabile per singolo morsetto è di 6 Ampere.

 

Figura 8: Schema di collegamento.

Collegamento alla rete LAN

La scheda programmata con Firmware scaricato dal sito (sorgente non modificato) già dispone di un IP statico impostato (192.168.1.200) (vedi figura 9) basta collegarla alla rete per effettuare un test, aprire il vostro Browser digitare l’indirizzo IP (192.168.1.200) e vi verrà chiesto Nome (admin) e Password (123456) di seguito avrete accesso alla pagina Web del Web Server. Questa scheda può essere connessa (figura 10) alla vostra rete anche tramite un Wi-Fi Bridge in modo da collegarla wireless senza posa di cavi di rete. Fin qui abbiamo visto l’accesso da remoto tramite rete locale. Se volessimo accedere al Web Server da Internet cioè al di fuori dalla nostra abitazione, dovremmo impostare il Modem Router accedendo alla voce Virtual Server in cui va inserito l’IP della scheda, il valore della Porta Pubblica e il protocollo TCP.

 

 

 

Figura 9: Schema di collegamento alla rete LAN ed a Internet.

Se il vostro IP pubblico è statico per accedere nel Web Server basta digitarlo nel Browser, mentre se è dinamico occorre utilizzare un servizio DDNS in cui registrare un Host Name ad esempio “esempioprov.homepc.it”, un sito consigliato per la registrazione di un DDNS è http://dyndns.it/. Per eseguire l’aggiornamento del vostro IP dinamico ogni volta che cambia necessita di impostare dall’apposito menù del vostro Modem Router l’aggiornamento automatico al servizio DDNS così da aggiornare l’IP salvato nell’account del servizio.

 

 

 

Figura 10: Schema di collegamento tramite Wi-Fi Bridge

Applicazioni della scheda

Lo schema di figura 11 consente di comandare a distanza tramite Internet il Reset, l’accensione e lo spegnimento di un PC collegato alla rete LAN.

 

 

 

Figura 11: Accensione da remoto di un PC.

Il collegamento al computer avviene tramite i canali CH1 e CH2 rispettivamente collegati ai terminali POWER SW e RESET SW della motherboard. Questa realizzazione permette di accendere il PC a distanza e tramite appositi software prelevare file salvati nel computer. Connettendo la scheda ad un impianto di illuminazione con relè passo passo, come mostra la figura 12, possiamo accendere e spegnere luci da remoto e tramite i pulsanti da locale.

 

 

 

Figura 12: Accensione di una lampada da remoto e da locale.

Questa applicazione non richiede molte modifiche, ma solo l’aggiunta di due cavi e della scheda all’impianto già esistente. La figura 13 mostra la connessione ad un cancello automatico già esistente.

 

 

Figura 13: Schema apertura di un cancello automatico.

Basta connettere due cavi al selettore a chiave (contatti Apre/Chiude) e alla scheda per conseguire l’apertura del cancello tramite Smart Phone, questo permette di eliminare il radiocomando e di poter aggiungere utenti in caso di cancelli aziendali o condominiali, senza sborsare denari per il radiocomando, fornendo solo Nome e Password. La schematizzazione di figura 14 permette di accendere in modo bistabile due fari che possono essere installati in giardino, inoltre questa configurazione può essere usata come simulazione presenza in casa.

 

 

Figura 14: Simulazione presenza tramite accensione di fari.

Accendendo e spegnendo i fari a distanza in diversi orari si possono distogliere i ladri al procedere in un eventuale svaligiamento della casa. Oltre alle applicazioni descritte in precedenza si possono realizzare svariate applicazioni in ambito domestico e industriale ad esempio attivare una pompa fino al riempimento di una cisterna, lasciamo all’utilizzatore la personalizzazione della scheda e l’utilizzo.

Browser PC e Tablet

Nelle figure 15 e 16 possiamo vedere come viene visualizzata la pagina dai Browser dei PC e dai Tablet e Smart Phone

 

 

 

Figura 15: Pagina Web del Web Server visualizzata tramite Tablet.

Prima di accedere alla pagina Web vengono chiesti Nome e Password basta inserirli correttamente per accedere alla pagina, cliccando sui primi due Canali i carichi vengono accesi in maniera monostabile mentre sui Canali 3 e 4 i carichi vengono accesi in maniera bistabile (ma questa configurazione può essere modificata da Sorgente).

 

 

 

 

Figura 16: Pagina Web del Web Server visualizzata tramite PC.

Per l’utilizzo di questo Web Server consigliamo di usare per i PC il Browser Google Chrome, mentre per Tablet e Smart Phone il Browser Opera Mobile.

Conclusione

Tutti i file per la realizzazione come già è stato detto sono disponibili a fine articolo. Come avete letto in precedenza le applicazioni non si limitano solo a quelle descritte, ma sono presso che infinite. Il sorgete è scritto in linguaggio C per ARDUINO UNO è facilmente modificabile e adattabile alle proprie necessità.

Per scaricare il Firmware clicca qui.

Per vedere  il Web Server in funzione clicca qui.

 

 

 

 

 

 

 

 

 

 

 

Informazioni sull'autore

Sono Giuseppe La Rosa. Appassionato di “elettricità”sin da giovane, ho terminato gli studi in Elettronica e Telecomunicazioni durante l'anno 2002 presso I.T.I.S. "G. Ferraris" di Acireale. In seguito ho cominciato lo studio per passione e da autodidatta di sistemi a Microcontrollori; in particolare i microcontrollori PIC prodotti da Microchip e poi la piattaforma Open Source Arduino UNO. Nel corso degli anni ho maturato varie esperienze che mi permettono di realizzare diversi prototipi, di cui molti progetti sono stati pubblicati in varie riviste del settore: tra cui: Fare Elettronica, CQ Elettronica e ultimamente nel blog di EMC Elettronica per cui ho collaborato per la realizzazione di vari progetti. Attualmente mi occupo di sistemi di sicurezza (videosorveglianza e anti intrusione) e software per la gestione dei punti vendita. Spero che i miei articoli possano essere di aiuto per le vostre realizzazioni personali.

Nessun commento su "Web server a 4 relè"

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.