Innehållsförteckning:

ESP8266 Weather Monitor Web Server (utan Arduino): 4 steg
ESP8266 Weather Monitor Web Server (utan Arduino): 4 steg

Video: ESP8266 Weather Monitor Web Server (utan Arduino): 4 steg

Video: ESP8266 Weather Monitor Web Server (utan Arduino): 4 steg
Video: YouTube Subscriber Device with ESP8266 2024, November
Anonim
ESP8266 Weather Monitor webbserver (utan Arduino)
ESP8266 Weather Monitor webbserver (utan Arduino)

"Sakernas internet" (IoT) blir ett allt växande samtalsämne dag för dag. Det är ett koncept som inte bara har potential att påverka hur vi lever utan också hur vi arbetar. Från industrimaskiner till bärbara enheter - med hjälp av inbyggda sensorer för att samla in data och vidta åtgärder på den informationen i ett nätverk.

Så vi bestämde oss för att bygga ett mycket enkelt men intressant projekt med konceptet - IoT.

Idag kommer vi att bygga en grundläggande webbserver för att övervaka vädret runt omkring oss. Vi kan se fukt- och temperaturvärdena på våra mobila enheter och bärbara datorer. Som sagt, det är en enkel och grundläggande webbsida för att ge dig en uppfattning om det. Du kan uppgradera och modifiera projektet efter dina behov, som att du kan samla in data och använda den för framtida bruk, du kan skapa en hemautomation genom att styra dina hushållsapparater eller allt du kan tänka dig. Kom alltid ihåg - Fantasiens kraft gör oss oändliga (av John Muir).

Så, låt oss börja !!

Steg 1: Samla dina verktyg !

Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!
Samla dina verktyg !!

1 SHT25 fukt- och temperatursensor

SHT25 fuktighets- och temperaturgivare med hög noggrannhet i Sensirion har blivit en industristandard när det gäller formfaktor och intelligens: Inbäddad i ett återflödeslödbart Dual Flat No leads (DFN) -paket med 3 x 3 mm fotavtryck och 1,1 mm höjd ger kalibrering, lineariserade sensorsignaler i digitalt I2C -format.

1 Adafruit Huzzah ESP8266

ESP8266-processorn från Espressif är en 80 MHz mikrokontroller med en fullständig WiFi-front-end (både som klient och åtkomstpunkt) och TCP/IP-stack med DNS-stöd också. ESP8266 är en otrolig plattform för IoT -applikationsutveckling. ESP8266 ger en mogen plattform för övervakning och kontroll av applikationer med Arduino Wire Language och Arduino IDE.

1 ESP8266 USB -programmerare

Denna ESP8266 -värdadapter har utformats speciellt för Adafruit Huzzah -versionen av ESP8266, vilket möjliggör I²C -gränssnitt.

1 I2C -anslutningskabel

Steg 2: Ansluta hårdvara.

Ansluter hårdvara.
Ansluter hårdvara.
Ansluter hårdvara.
Ansluter hårdvara.
Ansluter hårdvara.
Ansluter hårdvara.

Ta ESP8266 och skjut den försiktigt över USB -programmeraren. Anslut sedan den ena änden av I2C -kabeln till SHT25 -sensorn och den andra änden till USB -programmeraren. Och du är klar. Ja, du läste rätt. Ingen huvudvärk, låter coolt. Höger !!

Med hjälp av ESP8266 USB Programmerare är det väldigt enkelt att programmera ESP. Allt du behöver göra är att ansluta sensorn till USB -programmeraren så är du klar. Vi föredrar att använda detta produktsortiment eftersom det gör det mycket enklare att ansluta hårdvaran. Utan dessa plug and play USB -programmerare finns det stor risk för felaktig anslutning. En dålig kabeldragning kan döda både din wifi och din sensor.

Du behöver inte oroa dig för att löda ESP -stiften i sensorn eller läsa stiftdiagrammen och databladet. Vi kan använda och arbeta med flera sensorer samtidigt, du behöver bara göra en kedja.

Här kontrollerar du hela sortimentet av dem.

Observera: Kontrollera att anslutningskabelns bruna kabel är ansluten till sensorns jordanslutning och för USB -programmerare när du gör anslutningar.

Steg 3: Kod

Koda
Koda
Koda
Koda
Koda
Koda
Koda
Koda

ESP8266 -koden för SHT25 kan laddas ner från vårt github -arkiv

Innan du går vidare till koden, se till att du läser instruktionerna i Readme -filen och konfigurerar din ESP8266 enligt den. Det tar bara 5 minuter att ställa in ESP.

Ladda ner (eller git pull) koden och öppna den i Arduino IDE.

Kompilera och ladda upp koden och se utdata på Serial Monitor.

Obs! Innan du laddar upp, se till att du anger ditt SSID -nätverk och lösenord i koden.

Kopiera IP -adressen till ESP8266 från Serial Monitor och klistra in den i din webbläsare.

Du kommer att se en webbserver med avläsning av luftfuktighet och temperatur. Sensorns utsignal på seriell bildskärm och webbserver visas i bilden ovan.

För din bekvämlighet kan du kopiera den fungerande ESP -koden för denna sensor härifrån också:

#omfatta

#omfatta

#omfatta

#omfatta

// SHT25 I2C -adressen är 0x40 (64)

#define Addr 0x40

const char* ssid = "ditt ssid -nätverk";

const char* password = "ditt lösenord"; flottörfuktighet, cTemp, fTemp;

ESP8266WebServer -server (80);

void handleroot ()

{osignerade int -data [2];

// Starta I2C -överföring

Wire.beginTransmission (Addr); // Skicka kommando för fuktmätning, NO HOLD master Wire.write (0xF5); // Stoppa I2C -överföring Wire.endTransmission (); fördröjning (500);

// Begär 2 byte med data

Wire.requestFrom (Addr, 2);

// Läs 2 byte med data

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

// Konvertera data

luftfuktighet = (((data [0] * 256,0 + data [1]) * 125,0) / 65536,0) - 6;

// Utdata till Serial Monitor

Serial.print ("Relativ luftfuktighet:"); Seriellt tryck (luftfuktighet); Serial.println (" %RH"); }

// Starta I2C -överföring

Wire.beginTransmission (Addr); // Skicka kommando för temperaturmätning, NO HOLD master Wire.write (0xF3); // Stoppa I2C -överföring Wire.endTransmission (); fördröjning (500);

// Begär 2 byte med data

Wire.requestFrom (Addr, 2);

// Läs 2 byte med data

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

// Konvertera data

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

// Utdata till Serial Monitor

Serial.print ("Temperatur i Celsius:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Temperatur i Fahrenheit:"); Serial.print (fTemp); Serial.println ("F"); } // Utdata till webbserver server.sendContent ("<meta http-equiv = 'refresh' content = '5'""

KONTROLLERA ALLT

www.controleverything.com

SHT25 Sensor I2C Mini -modul

"); server.sendContent ("

Relativ luftfuktighet = " + Sträng (luftfuktighet) +" %RH "); server.sendContent ("

Temperatur i Celsius = " + String (cTemp) +" C "); server.sendContent ("

Temperatur i Fahrenheit = " + String (fTemp) +" F "); fördröjning (300);}

void setup ()

{// Initiera I2C -kommunikation som MASTER Wire.begin (2, 14); // Initiera seriell kommunikation, ange överföringshastighet = 115200 Serial.begin (115200);

// Anslut till WiFi -nätverk

WiFi.begin (ssid, lösenord);

// Vänta på anslutning

medan (WiFi.status ()! = WL_CONNECTED) {fördröjning (500); Serial.print ("."); } Serial.println (""); Serial.print ("Ansluten till"); Serial.println (ssid);

// Få IP -adressen för ESP8266

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

// Starta servern

server.on ("/", handleroot); server.begin (); Serial.println ("HTTP -server startad"); }

void loop ()

{server.handleClient (); }

Steg 4: Slutsats

SHT25 -serien för fukt- och temperatursensorer tar sensortekniken till en ny nivå med oöverträffad sensorprestanda, olika varianter och nya funktioner. Lämplig för en mängd olika marknader, till exempel hushållsapparater, medicinsk, IoT, HVAC eller industri. Med hjälp av ESP8266 kan vi öka dess kapacitet till en större längd. Vi kan styra våra apparater och övervaka prestanda från våra bärbara datorer och mobila enheter. Vi kan lagra och hantera data online och studera dem när som helst för ändringar.

Vi kan använda sådana idéer inom medicinska industrier, för ett ögonblick är det bara att säga för att styra en ventilation i ett patientrum när luftfuktighet och temperatur ökar automatiskt. Medicinsk personal kan övervaka data online utan att gå in i rummet.

Hoppas att du gillar ansträngningen och tänker på fler möjligheter med den. Som jag sa ovan är fantasi nyckeln.:)

För mer information om SHT25 och ESP8266, kolla in länkarna nedan:

  • SHT25 Datablad för fukt- och temperatursensor
  • ESP8266 Datablad

För mer information, besök ControlEverything.

Rekommenderad: