Visualizzazione post con etichetta relay. Mostra tutti i post
Visualizzazione post con etichetta relay. Mostra tutti i post

giovedì 16 novembre 2017

Remote Control a 2 Channel Relay board with RemoteXY











A recurring question on some Arduino and ESP groups on Facebook goes like: "how to remotely control a relay?"

In this post I show a simple and quick way to remotely control a 2 Relay module through a mobile app using the RemoteXY service.

Pre-requisite to this post is a previous I have written : "Remote Control NodeMCU with RemoteXY" in which I introduce the development of mobile apps to control nodeMCU projects.


The Circuit





As shown in the above figure, the 2 Channel Relay module has 4 pins:

  • GND
  • IN1
  • IN2
  • Vcc

Those pins need to be wired in the following way:

  • Module: GND --> nodeMCU:GND
  • Module: IN1 --> nodeMCU:D4
  • Module: IN2 --> nodeMCU:D5
  • Module: Vcc --> nodeMCU:Vin

Note:

Those wire connections assume that the nodeMCU is powered with 5V.
In such situation on the module Vin pin there will be 5V which is the right voltage to provide to the Relay module.

If you power you nodeMCU with a different voltage, please make sure you adapt the voltage available on Vin to be exactly 5V.



Graphic Interface






Build this simple graphic interface by using 3 labels and 2 switch in the RemoteXY editor.

The switch si should be named:
  • switch_1
  • switch_2

Now in the configuration panel, bottom right, let's configure each switch in a way that they connect to pin D4 and D5 on the nodeMCU














Configuration 

Let's configure RemoteXy in this way





Don't forget to specify your WiFi name and password






Source Code


Here the link  of the shared RemoteXY project. Once on RemoteXY you can download the source code to upload on your nodeMCU


Testing


Below a short video showing the behavior of the application











Controllo Remoto di un modulo Relay a 2 canali con RemoteXY











Una domanda ricorrente sui gruppi Arduino e ESP di Facebook e': "come controllo un rele' da remoto?"

In questo post faccio vedere un modo semplice e veloce per controllare un modulo a 2 Rele' tramite un applicazione mobile sfruttando un servizio chiamato RemoteXY.

Questo post si basa sui concetti descritti in un mio post precedente: "Controllo Remoto di NodeMCU con RemoteXY - Accensione Led" in cui ho introdotto lo sviluppo di una semplice app per controllo remoto di un nodeMCU.


Circuito Elettrico





Come si vede in figura il modulo Relay a 2 canali espone 4 pin


  • GND
  • IN1
  • IN2
  • Vcc

Questi pin vanno collegati nel seguente modo:

  • Modulo: GND --> nodeMCU:GND
  • Modulo: IN1 --> nodeMCU:D4
  • Modulo: IN2 --> nodeMCU:D5
  • Modulo: Vcc --> nodeMCU:Vin

Nota:

Questi collegamenti assumono che il nodeMCU sia alimentato a 5 V.
Cio' significa che sul pin Vin ci saranno 5V adatti ad alimentare il modulo Releay.

Se alimentate il vostro nodeMCU con una tensione differente assicuratevi di adattare la tensione in modo che sul pin Vcc del modulo Releay ci siano 5 V








Interfaccia Grafica





Realizzate questa semplice interfaccia grafica dall'editor di RemoteXY usando 3 label e 2 switch.

Gli switch si devono chiamare:
  • switch_1
  • switch_2

Ora nel pannello di configurazione in basso a destra, configurate ognuno degli switch in modo da collegarli ai pin D4 e D5 di nodeMCU














Configurazione

Configurate RemoteXY in questo modo




Non dimenticatevi di impostare il nome della vostra rete WiFi e la password di accesso.





Codice


Qui il link del progetto condiviso su RemoteXY da cui potete scaricare il codice da caricare sul vostro nodeMCU


Funzionamento


Qui un video che dimostra il funzionamento dell'applicazione










lunedì 2 ottobre 2017

Internet Relay Board c v3.1




Questo post e' il terzo di una serie di post che ho pubblicato nel passato






La scheda IRB (Internet Relay Board) nasce dall'esigenza di sostituire un raspberry pi nel mio progetto Controllo Remoto per Caldaia - HW in modo da ottimizzare l'utilizzo di componenti andando a sostituire un raspberry pi con una scheda progettata e realizzata appositamente

Caratteristiche dello IRB c v.3.1





La scheda IRB c v3.x ha le seguenti caratteristiche
  • dimensioni: 82mm x 35 mm
  • alimentazione a 5V DC (tramite caricatore cellulare o simile)
  • uscita a singolo rele' (NO/NC)  fino a 10A 220V - consigliata limitazione a  6-8A 220V
  • uso di ESP8266-01 con software Walvola SW o qualsiasi altro SW sia necessario
  • controllo scheda da Internet via applicazione web mobile per iOS e Android
  • led per stato della scheda
  • led per stato del rele' (NC/NO)

Kit

Il kit da assemblare con tutti i componenti ed il PCB e' disponibile a Euro 22,80 incluse spese di spedizione.

Chi fosse interessato mi puo' contattare sotto nei commenti o su facebook


Progetto Scheda

Il progetto Kicad della scheda e' disponibile sul mio github [qui] 



Schema Elettrico






Da notare che i collegamenti rappresentati nello schema elettrico possono apparire a prima vista non corretti. Cio' e' dovuto al fatto che il componente rele' di Kicad che ho utilizzato non e' implementato correttamente e i pin non sono mappati correttamente sul footprint del componente.

Quindi lo schema e' fatto in modo da avere un mapping corretto nella sezione PCB


PCB


Il PCB e' un singola faccia e non presenta particolari criticita' nella sua realizzazione e assemblaggio






Qui alcuni passi della realizzazione della scheda


















BoM

Questa e' la lista dei componenti per realizzare la scheda







Configurazione Walvola SW


Come menzionato prima, la scheda funziona con il mio software Walvola (disponibile qui)

E' necessario configurare il SW in modalita' IRB agendo sui seguenti include nel file Walvola.h

//#define WALVOLA_DEEP_SLEEP_MODE&

#define WALVOLA_MODEM_SLEEP_MODE

//#define WALVOLA_ROLE 

#define IRB_ROLE

//#define OTA_MODE




Utilizzo altro SW

Chiaramente e' possibile caricare sul EPS8266 qualsiasi altro software si voglia, tipo blink o un software realizzato dall'utilizzatore


Assemblaggio







Test della Scheda








domenica 22 novembre 2015

Internet Relay Board v2

Questo post e' la continuazione del mio precedente post intitolato  Internet Relay Board v1

In questo post realizzo esattamente la Internet Relay Board ma su PCB anziche' su basetta millefori.




BoM

I componenti usati sono:

  • 1x modulo ESP8266 (nel mio caso ESP8266-01)
  • 1x modulo relay a 3V (SRD-03VDC-SL-C)
  • 4x resistenze da 1K ohm
  • 2x led
  • 1x diodo 1N4007
  • 1x transistor BC547 (NPN)
  • 1x 5V To 3.3V DC-DC Step-Down Power Supply Buck Module AMS1117 800MA
  • 2x morsetti screw-terminal
  • 1x switch a due posizioni
  • 1x pin header maschio (3 pin)
  • 4x file metallici per ponticelli
  • 1x basetta ramata
  • 1x flacone di acido muriatico
  • 1x flacone di acqua ossigenata 36 volumi
  • 1x paglietta per pentole
  • acetone per unghie

Per alimentare la board uso un caricatore riciclato 5V output 1A. 


Schema PCB


Come negli altri post ho utilizzato Fritzing per disegnare lo schematico del PCB
Ho inizialmente utilizzato il routing delle piste automatico e man mano che aggiungevo componenti e piste ho utilizzato il routing manuale per ridurre il numero di ponticelli



Come si vede dalla fiura ho anche aggiunto 4 punti di allineamneto che mi saranno utili nei passaggi successivi

Una volta terminato lo schema del PCB con Fritzing l'ho esportato in PDF e poi stampato con una stampante laser su un foglio di carta fotografica.

NOTA:
Per il procedimento che ho usato io per trasferire il PCB su piastrina ramata e' fondamentale stampare lo schema PCB tramite una stampante laser (NO ink jet) e su un supporto cartaceo poco assorbente (carta fotografica)

NOTA2: 
Ho provato la prima stampa su un foglio di carta trasparente oleata ma ha assorbito troppo il toner e ne ha impedito il corretto trasferimento su piastrina ramata

Qui sotto il circuito esportato da Fritzing 


NOTA:
Quando si esporta il PCB Fritzing genera molti file differenti.
Io ho usitlizzato (quello qui in figura) il file con nome XXXX-etch_copper_bottom.pdf


e qui il circuito stampato su carta fotografica tramite stampante laser




Preparazione PCB


Ci sono molti modi di realizzare un PCB. Ognuno puo' scegliere il metodo piu' adatto alle sue esigenze.
Qui descrivo brevemente il metodo che o usato io con successo.


Pulizia piastrina

Siccome la piastrina ramata si ossida facilmente ne ho pulito la superfice con una paglietta/spugnetta per la pulizia delle pentole




non abbiate paura se il rame si graffia un pochino, cio' sara utile dopo nel processo di corrosione.

Trasferimento stampa PCB


Una volta pulita la piastrina ho ritagliato il la stampa del circuito PCB seguendo il borod nero piu' esterno.

Successivamente ho capovolto la stampa e l'ho applicata sopra la piastrina ramata.

Ho applicato un paio di striscioline di scotch per tenere ferma la stampa sulla piastrina

A questo punto ho fatto riscaldare molto bene un comune ferro da stiro, impostandolo in modo che non generi vapore.

Una volta che il ferro ha raggiunto la massima temperatura ho applicato un panno sopra la stampa/basetta (un comune fazzoletto di cotone va benissimo).

A questo punto ho appoggiato il ferro caldo sopra il panno ed ho esercitato una moderata pressione per 3-4 minuti.

In questo modo il calore del ferro da stiro fa staccare il toner dalla carta fotografica e lo fa depositare sulla piastrina ramata.

A questo punto dopo aver rimosso il ferro da stiro, ho lentamente ed accuratamente rimosso lo scotch e la carta fotografica.

E' importante fare attenzione a non tirar via anche le piste di toner.

Si puo' anche fare questa operazione sotto l'acqua del rubinetto in modo che la carta si stacchi piu' facilmente

NOTA: La piastrina si scalda moltissimo, state attenti a non bruciarvi. Se preferite attendete qualche minuto in modo da farla raffreddare un po'.

Ci sono molti tutorial su Internet. Un esempio e' questo https://www.youtube.com/watch?v=yb7NOmOaXhg

Questo e' il risultato che ho ottenuto io




Come potete vedere alcune tracce non sono perfettamente stampate.

Nesusna paura: con l'ausilio di un pennarello indelebile (quello che si usava per scrivere su CD per chi si ricorda :) ) correggiamo le tracce incomplete in modo da avere un tratto il piu' continuo e coprente possibile




Chiaramente il risultato e' molto migliorabile, ma comunque per un semplice procedimento casalingo senza l'uso di particolari strumenti ritengo che sia piu' che buono. :)




Taglio basetta


In funzione delle dimensioni della basetta ramata utilizzata puo' essere necessaria ritagliarla o rifilarla.

Io ho utilizzato un traforo per legno. Un paio di seghetti si sono spezzati ma comunque sono riuscito a completare il taglio




PS: per essere onesti con queste parte prettamente meccaniche sono un po' scarso, quindi mi sono fatto aiutare da un maestro del traforo :) :)


Erosione PCB


A questo punto, se tutto e' andato bene, abbiamo una basetta delle dimensioni volute con su stampato le tracce del circuito

Adesso e' ora di erodere il rame in eccesso.

Per far cio' ho usato una semplicissima soluzione di acido muriatico ed acqua ossigenata (36 o piu' volumi)



Come notate questo metodo impiega strumenti ed elementi di facilissima reperibilita' e poco costosi.

Ho miscelato i sue liquidi al 50%. Meta' acido muriatico e meta acqua ossigenata

NOTA:  vi consiglio di utilizzare un paio di guanti in plastica per preparare e maneggiare questa soluzione. E' ALTAMENTE corrosiva


A questo punto ho messo la miscela in una vaschetta di plastica ed vi ho immerso la piastrina legata con un filo di ferro.



Il filo di ferro non e' obbligatorio. Io l'ho usato per recuperare la piastrina senza doverla toccare

Lasciate la piastrina nella soluzione per 2-3 minuti o comunque il tempo necessario per erodere tutto il rame non coperto dal toner nero. Se vuoi ogni tanto muovi la piastrina.

Una volta erosa completamente, estraete la piastrina e lavatela bene sotto un flusso d'acqua fredda e corrente

Se tutto ha funzionato bene avete adesso ottenuto il PCB correttamente eroso.



COme vedete tutto il rame e' stato rimosso (si vede il giallo del supporto di plastica) tranne sotto le piste  ricoperte di toner nero.

Come ultimo passo rimuovete il toner con un batuffolo di cotone imbevuto nell'aceto per unghie.
Il toner viene via facilmente e senza nessuno sforzo.

Rilavate nuovamente la piastrina sotto acqua corrente.

Foratura piastrina


A questo punto per completare la preparazione del circuito PCB e' necessario effettuare i fori con una punta da 1 mm di diametro.

Io ho utilizzato un trapano a colonna ma non e' strettamente necessario.
Si ottiene anche una buona foratura con un mini trapano da hobbista.







Montaggio componenti


A questo punto nonci resta che iniziare a montare i componenti sul PCB e ad effettuare le saldature a stagno.






Questo e' il risultato finale che ho ottenuto io





Sostituzione controllo remoto caldaia


A questo punto ho rrealizzato una basetta custom che mi permette di rimpiazzare completamente tutti i componenti usati per il mio  controllo remoto caldaia con raspberry pi come descritto nel post specifico.






In questa versione di controllo remoto con raspberry ho utilizzato una serie di componenti e in figura si vede lo spazio occupato nella scatola nel vano caldaia

Rimpiazzando il rasperry con il modulo ESP8266 ho implementato la stessa funzione ma in uno spazio nettamente inferiore, con un costo inferiore e con un consumo energetico inferiore





Conclusioni


Con questo post concludo il mio ciclo di post sulla realizzazione del controllo caldaia da remoto.

Ho raggiunto il mio obiettivo di poter controllare (ON/OFF) la mia caldaia da riscaldamento tramite il mio smart-phone o via web.

Ovviamente l'Internet Relay Board qui descritta puo' essere utilizzata in una serie variegata di situazione. In sostanza si puo' utilizzare in tutte le situazione in cui c'e'' un carico da controllare (ON/OFF).

Esempio: luci/lampadari di casa, motori elettrici, sistemi di riscaldamento o raffreddamento, etc

Come sempre ogni commento e miglioramento e' ben accetot.

Fatemi sapere se trovate utile queso post e se posso ulteriormente migliorarlo



domenica 20 settembre 2015

Internet Relay Board v1

In questo post descrivo come ho realizzato la mia Internet Relay Board version 1.
Questa e' una piccola board pilotabile via Internet che semplicemente mi permette di controllare l'accensione di un carico da remoto utile per il mio progettino di Caldaia Remota

Quest post e' la continuazione di due post precedenti:

- Test del modulo Wifi ESP8266
- 5V Relay controllato via Internet a basso costo

Rispetto agli articoli precedenti ho apportato delle piccole migliorie al circuito. In particolare questa volta alimento la scheda con un classico alimentatore stile smartphone.
Inoltre il relay e' a 3V e non piu' a 5V come negli articoli precedenti. In questo modo il circuito risulta piu' semplice e facile da realizzare.

Per questa prima versione della IRB ho utilizzato una basetta mille fori (perfboard)



BoM

I componenti usati sono:

  • 1x modulo ESP8266 (nel mio caso ESP8266-01)
  • 1x modulo relay a 3V (SRD-03VDC-SL-C)
  • 4x resistenze da 1K ohm
  • 2x led
  • 1x diodo 1N4007
  • 1x transistor BC547 (NPN)
  • 1x 5V To 3.3V DC-DC Step-Down Power Supply Buck Module AMS1117 800MA
  • 2x morsetti screw-terminal
  • 1x switch a due posizioni
  • 1x pin header maschio (3 pin)
  • 8x file metallici per ponticelli
  • 1x basetta mille fori (70x90 mm)
Per alimentare la board uso un caricatore riciclato 5V output 1A. 

Inoltre ho usato per la preparazione della basetta mille fori:
  • 1 righello
  • 2 pennarelli indelebili (rosso e nero)



Schema Elettrico




Come si vede lo schema e' piuttosto semplice. Ho rappresentato il modulo DC-DC step-down con tre piedini siccome questo componente non esiste in fritzing e non ne ho trovato uno su google.

Ho anche aggiunto tre piedini per poter programmare lo ESP8266 tramiter PC (USB-TTL)

Lo switch S1 e' stato introdotto per rendere la scheda programmabile quando e' installata.
In altre parole una volta che la scheda e' installata nella sua destinazione finale, se vogliamo aggiornare il codice che gira sullo ESP8266 non dobbiamo rimuoverla, ma basta riprogrammarla collegando il PC.
Quindi quando lo switch S1 collega il pin GPIO0 verso massa la scheda e' in modalita' programmazione. 
Al contrario quando collego il GIPO0 verso il led la scheda e' in modalita normale.


Breadboard


Prima di passare alla realizzazione finale su mille fori ho provato il tutto su breadboard











Mille Fori

Per realizzare le tracce del circuito ho usato sempre il software Fritzing con risultati decenti.



Alcuni componenti non sono presenti o anche nel caso in cui siano presenti non sono accurati nelle dimensioni quindi li ho sostituiti con delle semplice piazzole sul lato traccia.

Qui le tracce finali lato bottom e bottom-mirror. Quest'ultimo viene usato dopo per la realizzazione delle tracce sulla basetta mille fori





I piu' espeti potranno facilmente notare che il routing non e' ottimale e sicuramente il circuito puo' essere piu' compatto in termini di spazio.
In questo caso ho fatto il routing manuale siccome ho avcuto alcuni problemi con fritzing. 
Ho cercato di rendere il circuito compatto, ma non troppo altrimenti la realizzazione manuale delle tracce risulta troppo difficoltosa (almeno per le mie capacita' :) ).

Tracce su mille fori

Usando i pennarelli e il diagramma delle tracce (lato bottom-mirror) ho disegnato le singole tracce sulla scheda mille fori.

Ho fatto cosi' per avere una guida per effettuare le saldature e soprattutto la realizzazione con il saldatore delle tracce







Come si vede con il pennarello nero ho segnato le piazzole in cui verranno montati i componenti, mentre in rosso ho segnato le tracce da realizzare con il saldatore.

Ho anche segnato i principali punti (ponticelli) sul lato superiore della mille fori



A questo punto ho iniziato a montare i primi componenti e ad effettuare le saldature a stagno








Ho continuato a montare tutti i componenti fino all'ultimo inclusi i ponticelli. 

Le tracce le ho realizzate in due modi:
  • corte: stagnando la traccia
  • lunghe: usando dei fili da un punto all'atro della traccia per ridurre la stagnatura che e' comunque difficoltosa

Ed ecco infine il lato traccia completato






Guardando a queste saldature e tracce non sono soddisfatto al 100%, pero' dato lo scopo didattico ed amatoriale del progettino possono anche andare.

Comunque non ho problemi ha negare che il mio lato preferito e' il software. Con il saldatore sono sempre stato una schiappa :) :)


Infine ecco la basetta completa lato componenti







Come si vede la basetta usata 70x90 mm e' piu' grande del necessario. Se si vuole basta rifilarla prima di chiuderla in una scatola.

Software


Il software e' ovviamente quello degli articoli precedenti.
Chiaramente per il mio caso specifico l'ho reso piu' completo e resistente.
Lascio a voi l'implementazione della logica di controllo che meglio si adatta al vostro caso

Conslusioni


In conclusione con questo post riesco a rimpiazzare completamente il raspberry-pi usato come controllo caldaia.

Quindi ho raggiunto gli obiettivi iniziali di questo progettino percio' mi ritengo soddisfatto.

Ho gia in mente una versione 2 della IRB su circuito stampato, ma  questo sara' oggetto di un nuovo post.