Cuprins:

Server web ESP8266 Weather Monitor (fără Arduino): 4 pași
Server web ESP8266 Weather Monitor (fără Arduino): 4 pași

Video: Server web ESP8266 Weather Monitor (fără Arduino): 4 pași

Video: Server web ESP8266 Weather Monitor (fără Arduino): 4 pași
Video: Погодная станция на ESP8266, MQTT и Epaper дисплее 2024, Noiembrie
Anonim
ESP8266 Server Web Monitor meteo (fără Arduino)
ESP8266 Server Web Monitor meteo (fără Arduino)

„Internetul lucrurilor” (IoT) devine zi de zi un subiect din ce în ce mai mare de conversație. Este un concept care nu numai că are potențialul de a influența modul în care trăim, ci și modul în care lucrăm. De la mașini industriale până la dispozitive purtabile - folosind senzori încorporați pentru a colecta date și a lua măsuri cu privire la aceste date într-o rețea.

Deci, am decis să construim un proiect foarte simplu, dar interesant, cu conceptul - IoT.

Astăzi, vom construi un server web de bază pentru a monitoriza vremea din jurul nostru. Putem vizualiza valorile de umiditate și temperatură de pe dispozitivele noastre mobile și notebook-uri. Așa cum am spus, este o pagină web simplă și de bază pentru a vă face o idee despre asta. Puteți revizui și modifica proiectul în funcție de nevoile dvs., cum ar fi că puteți colecta datele și le puteți utiliza pentru o utilizare viitoare, puteți crea o automatizare a locuinței controlând aparatele dvs. de uz casnic sau orice vă puteți imagina. Amintiți-vă întotdeauna - Puterea imaginației ne face infiniti (de John Muir).

Deci, să începem !!

Pasul 1: Strângeți-vă instrumentele

Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!
Strângeți-vă instrumentele !!

1 senzor de umiditate și temperatură SHT25

Senzorul de umiditate și temperatură SHT25 de înaltă precizie al Sensirion a devenit un standard industrial în ceea ce privește factorul de formă și inteligența: încorporat într-un pachet de reflux soldabil Dual Flat No leads (DFN) de 3 x 3 mm picior și 1,1 mm înălțime pe care îl oferă calibrat, semnale de senzori linearizate în format digital, I2C.

1 Adafruit Huzzah ESP8266

Procesorul ESP8266 de la Espressif este un microcontroler de 80 MHz cu front-end WiFi complet (atât ca client cât și ca punct de acces) și stivă TCP / IP cu suport DNS. ESP8266 este o platformă incredibilă pentru dezvoltarea aplicațiilor IoT. ESP8266 oferă o platformă matură pentru monitorizarea și controlul aplicațiilor folosind Arduino Wire Language și Arduino IDE.

1 programator USB ESP8266

Acest adaptor gazdă ESP8266 a fost conceput special pentru versiunea Adafruit Huzzah a ESP8266, permițând interfața I²C.

1 Cablu de conectare I2C

Pasul 2: Conectarea hardware-ului

Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului

Luați ESP8266 și împingeți-l ușor peste programatorul USB. Apoi conectați capătul cablului I2C la senzorul SHT25 și celălalt capăt la programatorul USB. Și ai terminat. Da, ai citit bine. Fără dureri de cap, sună mișto. Dreapta !!

Cu ajutorul programatorului ESP8266 USB, este foarte ușor să programați ESP. Tot ce trebuie să faceți este să conectați senzorul la programatorul USB și sunteți bine să mergeți. Preferăm să utilizăm această gamă de produse, deoarece facilitează conectarea hardware-ului. Fără aceste programe USB plug and play există un risc ridicat de a face o conexiune greșită. O conexiune defectă poate distruge atât wifi-ul, cât și senzorul.

Nu vă faceți griji cu privire la lipirea pinilor ESP la senzor sau la citirea diagramelor pinului și a fișei tehnice. Putem folosi și lucra simultan pe mai mulți senzori, trebuie doar să realizați un lanț.

Aici puteți verifica întreaga gamă de produse după acestea.

Notă: În timp ce realizați conexiuni, asigurați-vă că firul maro al cablului de conectare este conectat la terminalul de masă al senzorului și la fel pentru programatorul USB.

Pasul 3: Cod

Cod
Cod
Cod
Cod
Cod
Cod
Cod
Cod

Codul ESP8266 pentru SHT25 poate fi descărcat din depozitul nostru github

Înainte de a trece la cod, asigurați-vă că ați citit instrucțiunile date în fișierul Readme și configurați ESP8266 în conformitate cu acesta. Configurarea ESP va dura doar 5 minute.

Acum, descărcați (sau git pull) codul și deschideți-l în ID-ul Arduino.

Compilați și încărcați codul și vedeți ieșirea pe Serial Monitor.

Notă: Înainte de încărcare, asigurați-vă că ați introdus rețeaua și parola SSID în cod.

Copiați adresa IP a ESP8266 de pe Serial Monitor și lipiți-o în browserul dvs. web.

Veți vedea un server web cu citire de umiditate și temperatură. Ieșirea senzorului pe Serial Monitor și Web Server este prezentată în imaginea de mai sus.

Pentru confortul dvs., puteți copia și codul ESP funcțional pentru acest senzor și de aici:

#include

#include

#include

#include

// Adresa SHT25 I2C este 0x40 (64)

#define Addr 0x40

const char * ssid = "rețeaua ta ssid";

const char * password = "parola ta"; umiditate plutitoare, cTemp, fTemp;

Server ESP8266WebServer (80);

void handleroot ()

{date int nesemnate [2];

// Porniți transmisia I2C

Wire.beginTransmission (Addr); // Trimiteți comanda de măsurare a umidității, NO HOLD master Wire.write (0xF5); // Opriți transmisia I2C Wire.endTransmission (); întârziere (500);

// Solicitați 2 octeți de date

Wire.requestFrom (Addr, 2);

// Citiți 2 octeți de date

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

// Conversia datelor

umiditate = (((date [0] * 256,0 + date [1]) * 125,0) / 65536.0) - 6;

// Ieșire date pe Serial Monitor

Serial.print ("Umiditate relativă:"); Serial.print (umiditate); Serial.println ("% RH"); }

// Porniți transmisia I2C

Wire.beginTransmission (Addr); // Trimiteți comanda de măsurare a temperaturii, NO HOLD master Wire.write (0xF3); // Opriți transmisia I2C Wire.endTransmission (); întârziere (500);

// Solicitați 2 octeți de date

Wire.requestFrom (Addr, 2);

// Citiți 2 octeți de date

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

// Conversia datelor

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

// Ieșire date pe Serial Monitor

Serial.print ("Temperatura în grade Celsius:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Temperatura în Fahrenheit:"); Serial.print (fTemp); Serial.println ("F"); } // Ieșire date pe serverul web server.sendContent ("<meta http-equiv = 'refresh' content = '5'""

CONTROLAȚI TOTUL

www.controleverything.com

Modul mini senzor I2C SHT25

"); server.sendContent ("

Umiditate relativă = "+ șir (umiditate) +"% RH "); server.sendContent ("

Temperatura în Celsius = "+ Șir (cTemp) +" C "); server.sendContent ("

Temperatura în Fahrenheit = "+ Șir (fTemp) +" F "); întârziere (300);}

configurare nulă ()

{// Inițializați comunicarea I2C ca MASTER Wire.begin (2, 14); // Inițializați comunicarea serială, setați baud rate = 115200 Serial.begin (115200);

// Conectați-vă la rețeaua WiFi

WiFi.begin (ssid, parolă);

// Așteptați conexiunea

while (WiFi.status ()! = WL_CONNECTED) {întârziere (500); Serial.print ("."); } Serial.println (""); Serial.print („Conectat la”); Serial.println (ssid);

// Obțineți adresa IP a ESP8266

Serial.print („Adresă IP:”); Serial.println (WiFi.localIP ());

// Porniți serverul

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

bucla nulă ()

{server.handleClient (); }

Pasul 4: Concluzie

Seria de senzori de umiditate și temperatură SHT25 duce tehnologia senzorilor la un nou nivel, cu performanțe de neegalat ale senzorilor, gama de variante și caracteristici noi. Potrivit pentru o mare varietate de piețe, cum ar fi electrocasnice, medicale, IoT, HVAC sau industriale. Cu ajutorul ESP8266, putem crește capacitatea acestuia la o lungime mai mare. Ne putem controla aparatele și monitoriza performanțele de la notebook-uri și dispozitive mobile. Putem stoca și gestiona datele online și le putem studia oricând pentru modificări.

Putem folosi astfel de idei în industriile medicale, pentru un moment, spuneți doar pentru a controla o ventilație în camera pacientului atunci când umiditatea și temperatura cresc automat. Personalul medical poate monitoriza datele online fără a intra în cameră.

Sper să vă placă efortul și să vă gândiți la mai multe posibilități cu acesta. Așa cum am spus mai sus, imaginația este cheia.:)

Pentru mai multe informații despre SHT25 și ESP8266, consultați linkurile de mai jos:

  • Foaie tehnică a senzorului de umiditate și temperatură SHT25
  • Foaie de date ESP8266

Pentru mai multe informații, vizitați ControlEverything.

Recomandat: