ESP8266 – Modulo Wireless Wi-fi

ESP8266 cosa è ? 

I moduli ESP8266 sono dei piccolissimi circuiti, ad un costo veramente irrisorio che vanno dai 3 ai 5 Euro, programmabili con la compatibilità Arduino, si connettono alla rete Wi-Fi e possono comandare dei dispositivi, hanno praticamente dei GPIO come quelli sul Raspberry che da remoto potete attivare.

In poche parole li potremmo considerare come un’estensione dei GPIO del Raspberry ma gestibili via Wi-fi, l’utilizzo che ne ho fatto è proprio questo, comandare da mio Raspberry via Wi-fi dispositivi sparsi in casa, nel mio caso un secondo acquario.

Di questi ESP ce ne sono diversi modelli, ne prenderemo in considerazione 2 l’ESP01 e ESP12, la differenza tra questi due è che l’ESP01 ha solo 2 GPIO da poter gestire, mentre l’ESP12 è molto più evoluto ha ben 10 GPIO più anche ingresso per collegare sensori I2C, entrambi sono di dimensioni veramente ridotte solo 1,5 x 2,5Cm.

Una volta programmati con l’opportuno software, li alimentiamo con 3,3V (hanno un consumo massimo di 170mA) si collegheranno automaticamente alla rete Wi-Fi di casa ognuno potrà essere programmato con un indirizzo IP fisso quindi da un browser possiamo accedervi e accendere o spegnere i GPIO che vogliamo.

Schema di collegamento:

 Il collegamento è davvero molto semplice, nello schema sottostante è mostrato il collegamento di base (che è identico sia per ESP01 che per ESP12) ovvero lo accendiamo e lui funziona, ovviamente poi ai GPIO utilizzeremo lo stesso sistema che abbiamo utilizzato in precedenza sul Raspberry nei vari articoli:

Notiamo i pin TXD e RXD questi andranno collegati alla Seriale Rs232 per la programmazione del software.

L’alimentazione è a 3,3V a volte non è facile avere questa tensione in quanto normalmente in giro i chip regolatori al massimo arrivano a 5V, esiste quindi un piccolissimo circuitino (dal costo di 1Euro) che fa al caso nostro in cui possiamo dare in ingresso una tensione da 4,5V a 7V e lui la regolerà perfettamente a 3,3V per alimentare il nostro ESP.

Recentemente ho trovato su internet dei bellissimi moduli di alimentazione da da 200V forniscono direttamente 3,3V evitando così di dover utilizzare il regolatore e il trasformatore esterno inoltre è di dimensioni veramente ridotte , questi moduli li potete trovare su Amazon ad un costo davvero esiguo.

Programmare ESP8266:

Per programmare gli ESP è necessario di disporre di una porta seriale RS232, se il vostro computer non ha più questo tipo di porte in quanto ormai non più utilizzate esistono dei convertitori USB, io ne ho preso uno della Prolific mod. PL2303HX a pochi euro. Attenzione che dall’USB escono 5V troppi per il nostro ESP8266 occorre quindi utilizzare il circuitino sopra citato per convertirli a 3,3V.

Il software da utilizzare è quello che si usa per Arduino che potete scaricare da https://www.arduino.cc/

Dopo aver installato il software sul vostro computer, è necessario impostare la porta COM con quella del vostro computer ed installare la scheda Generic ESP8266 per fare questo andante nelle impostazioni del software e al campo URL Aggiuntive per il Gestore schede scrivete il link seguente:

http://arduino.esp8266.com/stable/package_esp8266com_index.json

andiamo poi nel menu strumenti dove vedere “Schede:” apriamo Gestore schede, nel campo ricerca scriviamo ESP8266 vedrete sotto comparire l’installazione della scheda, una volta installata sempre da Strumenti>Schede: andiamo a selezionare la voce Generic ESP8266 Module, siamo pronti ora per la programmazione.

P.S. Per far entrare in modalità programmazione i chip ESP8266 è indispensabile portare a massa (GND) il pin del GPIO0 , sul circuito dove è montato il chip ho messo un ponticello che cortocircuito quando devo effettuare la programmazione.

Rimane un’ultima cosa, il programma da caricare all’interno del chip detto anche Sketch, che dovrete aprire con il software di Arduino per andarlo a caricare sul chip.

Scaricare il programma web_server_wifi, apritelo con Arduino e andiamo a modificare alcune righe:

const char* ssid = “xxxxxx”;                -> Nome della vostra rete Wi.-fi
const char* password = “xxxxxxx”;     -> Password della vostra rete
IPAddress ip(192, 168, 0, 11);             -> Indirizzo IP fisso che volete assegnare
IPAddress gateway(192,168,0,1);       -> Indirizzo IP del gateway (IP Router)

Questo programma è impostato per pilotare 2 GPIO quindi si può utilizzare sia sul ESP01 che su ESP12 per cambiare il numero del GPIO da usare modificare le linee:

int gpio0_pin = 15;            -> Imposta la chiamata gpio0 per comandare il GPIO15
int gpio2_pin = 2;              -> Imposta la chiamata gpio2 per comandare il GPIO02

alla riga webPage +=….. è possibile inserire codice Html che visualizzerà a video quando richiamate dal browser internet l’IP del vostro ESP.

Modificando opportunamente il programma è possibile aggiungere per ESP12 più comandi.

Andiamo quindi ora a caricare il programma sul nostro ESP alla voce Sketch>Carica se tutto è collegato correttamente il software verrà compilato e caricato sul chip.

Scolleghiamo tutto e diamo alimentazione al nostro ESP, apriamo il browser internet e digitiamo il nostro indirizzo IP che abbiamo configurato nel programma, e vedremo apparire quello che vedere nell’immagine qui al fianco, in pratica abbiamo installato un WebServer a cui volendo possiamo fargli fare tutto quello che vogliamo gestendo il tutto da Internet.

 

Condividi con:
Share
Updated: 28 Novembre 2020 — 21:51

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *