Sommario:

ESP8266 Weather Monitor Web Server (senza Arduino): 4 passaggi
ESP8266 Weather Monitor Web Server (senza Arduino): 4 passaggi

Video: ESP8266 Weather Monitor Web Server (senza Arduino): 4 passaggi

Video: ESP8266 Weather Monitor Web Server (senza Arduino): 4 passaggi
Video: Control ESP32 and ESP8266 GPIOs from Anywhere in the World 2024, Dicembre
Anonim
Server Web per il monitoraggio del tempo ESP8266 (senza Arduino)
Server Web per il monitoraggio del tempo ESP8266 (senza Arduino)

L'"Internet delle cose" (IoT) sta diventando un argomento di conversazione sempre più crescente giorno dopo giorno. È un concetto che non solo ha il potenziale per influenzare il modo in cui viviamo, ma anche il modo in cui lavoriamo. Dalle macchine industriali ai dispositivi indossabili, utilizzando sensori integrati per raccogliere dati e agire su tali dati attraverso una rete.

Quindi, abbiamo deciso di costruire un progetto molto semplice ma interessante con il concetto: IoT.

Oggi creeremo un server web di base per monitorare il tempo intorno a noi. Possiamo visualizzare i valori di umidità e temperatura sui nostri dispositivi mobili e notebook. Come ho detto, è una pagina web semplice ed essenziale per darti un'idea al riguardo. Puoi aggiornare e modificare il progetto in base alle tue esigenze, così come raccogliere i dati e utilizzarli per un uso futuro, puoi creare una domotica controllando i tuoi elettrodomestici o qualsiasi cosa tu possa immaginare. Ricorda sempre - Il potere dell'immaginazione ci rende infiniti (di John Muir).

Allora, cominciamo!!

Passaggio 1: raccogli i tuoi strumenti

Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!
Raccogli i tuoi strumenti !!

1 SHT25 Sensore di umidità e temperatura

Il sensore di umidità e temperatura ad alta precisione SHT25 di Sensirion è diventato uno standard del settore in termini di fattore di forma e intelligenza: integrato in un pacchetto Dual Flat No lead (DFN) saldabile a riflusso di 3 x 3 mm di ingombro e 1,1 mm di altezza fornisce calibrato, segnali dei sensori linearizzati in formato digitale I2C.

1 Adafruit Huzzah ESP8266

Il processore ESP8266 di Espressif è un microcontrollore da 80 MHz con un front-end WiFi completo (sia come client che come punto di accesso) e stack TCP/IP con supporto DNS. ESP8266 è un'incredibile piattaforma per lo sviluppo di applicazioni IoT. L'ESP8266 fornisce una piattaforma matura per il monitoraggio e il controllo delle applicazioni utilizzando Arduino Wire Language e Arduino IDE.

1 programmatore USB ESP8266

Questo adattatore host ESP8266 è stato progettato specificamente per la versione Adafruit Huzzah di ESP8266, consentendo l'interfaccia I²C.

1 cavo di collegamento I2C

Passaggio 2: collegamento dell'hardware

Collegamento dell'hardware
Collegamento dell'hardware
Collegamento dell'hardware
Collegamento dell'hardware
Collegamento dell'hardware
Collegamento dell'hardware

Prendi l'ESP8266 e spingilo delicatamente sul programmatore USB. Quindi collegare un'estremità del cavo I2C al sensore SHT25 e l'altra estremità al programmatore USB. E hai finito. Sì, hai letto bene. Nessun mal di testa, suona bene. Destra !!

Con l'aiuto del programmatore USB ESP8266, è molto facile programmare ESP. Tutto quello che devi fare è collegare il sensore al programmatore USB e sei a posto. Preferiamo utilizzare questa gamma di prodotti perché rende molto più semplice il collegamento dell'hardware. Senza questi programmatori USB plug and play c'è un grosso rischio di fare una connessione sbagliata. Un cattivo cablaggio può uccidere il tuo wifi e il tuo sensore.

Non preoccuparti di saldare i pin dell'ESP al sensore o leggere i diagrammi dei pin e la scheda tecnica. Possiamo utilizzare e lavorare su più sensori contemporaneamente, devi solo creare una catena.

Qui puoi controllare l'intera gamma di prodotti da loro.

Nota: durante i collegamenti assicurarsi che il filo marrone del cavo di collegamento sia collegato al terminale di terra del sensore e lo stesso per il programmatore USB.

Passaggio 3: codice

Codice
Codice
Codice
Codice
Codice
Codice
Codice
Codice

Il codice ESP8266 per SHT25 può essere scaricato dal nostro repository github

Prima di passare al codice, assicurati di leggere le istruzioni fornite nel file Leggimi e imposta il tuo ESP8266 in base ad esso. Ci vorranno solo 5 minuti per impostare l'ESP.

Ora scarica (o git pull) il codice e aprilo nell'IDE di Arduino.

Compila e carica il codice e guarda l'output su Serial Monitor.

Nota: prima di caricare, assicurati di inserire la tua rete SSID e la password nel codice.

Copia l'indirizzo IP di ESP8266 dal monitor seriale e incollalo nel tuo browser web.

Vedrai un server web con la lettura di umidità e temperatura. L'output del sensore su Serial Monitor e Web Server è mostrato nell'immagine sopra.

Per comodità puoi copiare il codice ESP funzionante per questo sensore anche da qui:

#includere

#includere

#includere

#includere

// L'indirizzo SHT25 I2C è 0x40(64)

#define Indirizzo 0x40

const char* ssid = "la tua rete ssid";

const char* password = "la tua password"; umidità galleggiante, cTemp, fTemp;

Server ESP8266WebServer(80);

void handleroot()

{ dati int non firmati[2];

// Avvia la trasmissione I2C

Wire.beginTransmission(Addr); // Invia il comando di misurazione dell'umidità, NO HOLD master Wire.write(0xF5); // Arresta la trasmissione I2C Wire.endTransmission(); ritardo (500);

// Richiedi 2 byte di dati

Wire.requestFrom(Addr, 2);

// Legge 2 byte di dati

// umidità msb, umidità lsb if (Wire.available() == 2) { data[0] = Wire.read(); data[1] = Wire.read();

// Converti i dati

umidità = (((data[0] * 256,0 + dati[1]) * 125,0) / 65536.0) - 6;

// Invia i dati al monitor seriale

Serial.print("Umidità relativa:"); Serial.print(umidità); Serial.println("%RH"); }

// Avvia la trasmissione I2C

Wire.beginTransmission(Addr); // Invia il comando di misurazione della temperatura, NO HOLD master Wire.write(0xF3); // Arresta la trasmissione I2C Wire.endTransmission(); ritardo (500);

// Richiedi 2 byte di dati

Wire.requestFrom(Addr, 2);

// Legge 2 byte di dati

// temp msb, temp lsb if (Wire.available() == 2) { data[0] = Wire.read(); data[1] = Wire.read();

// Converti i dati

cTemp = (((data[0] * 256,0 + dati[1]) * 175,72) / 65536.0) - 46,85; fTemp = (cTemp * 1.8) + 32;

// Invia i dati al monitor seriale

Serial.print("Temperatura in gradi Celsius:"); Serial.print(cTemp); Serial.println("C"); Serial.print("Temperatura in gradi Fahrenheit:"); Serial.print(fTemp); Serial.println("F"); } // Invia i dati al server web server.sendContent ("<meta http-equiv='refresh' content='5'""

CONTROLLA TUTTO

www.controleverything.com

Mini modulo I2C sensore SHT25

"); server.sendContent ("

Umidità relativa = " + String(umidità) + " %RH"); server.sendContent ("

Temperatura in gradi Celsius = " + String(cTemp) + " C"); server.sendContent ("

Temperatura in Fahrenheit = " + String(fTemp) + "F"); delay(300); }

configurazione nulla()

{ // Inizializza la comunicazione I2C come MASTER Wire.begin(2, 14); // Inizializza la comunicazione seriale, imposta baud rate = 115200 Serial.begin(115200);

// Connettiti alla rete WiFi

WiFi.begin(ssid, password);

// Attendi la connessione

while (WiFi.status() != WL_CONNECTED) { ritardo(500); Serial.print("."); } Serial.println(""); Serial.print("Connesso a"); Serial.println(ssid);

// Ottieni l'indirizzo IP di ESP8266

Serial.print("Indirizzo IP: "); Serial.println(WiFi.localIP());

// Avvia il server

server.on("/", handleroot); server.begin(); Serial.println("Server HTTP avviato"); }

ciclo vuoto()

{ server.handleClient(); }

Passaggio 4: conclusione

La serie di sensori di umidità e temperatura SHT25 porta la tecnologia dei sensori a un nuovo livello con prestazioni del sensore senza pari, gamma di varianti e nuove funzionalità. Adatto per un'ampia varietà di mercati, come elettrodomestici, medicale, IoT, HVAC o industriale. Con l'aiuto di ESP8266, possiamo aumentare la sua capacità a una lunghezza maggiore. Possiamo controllare i nostri dispositivi e monitorarne le prestazioni dai nostri notebook e dispositivi mobili. Possiamo archiviare e gestire i dati online e studiarli in qualsiasi momento per modifiche.

Possiamo usare tali idee nelle industrie mediche, per un momento solo dire di controllare una ventilazione in una stanza del paziente quando l'umidità e la temperatura aumentano automaticamente. Il personale medico può monitorare i dati online senza entrare nella stanza.

Spero che ti piaccia lo sforzo e pensi a più possibilità con esso. Come ho detto sopra, l'immaginazione è la chiave.:)

Per ulteriori informazioni su SHT25 e ESP8266, controlla i collegamenti seguenti:

  • Scheda tecnica del sensore di umidità e temperatura SHT25
  • Scheda tecnica ESP8266

Per maggiori informazioni, visita ControlEverything.

Consigliato: