ESP8266 „Weather Monitor“žiniatinklio serveris (be „Arduino“): 4 žingsniai
ESP8266 „Weather Monitor“žiniatinklio serveris (be „Arduino“): 4 žingsniai
Anonim
ESP8266 „Weather Monitor“žiniatinklio serveris (be „Arduino“)
ESP8266 „Weather Monitor“žiniatinklio serveris (be „Arduino“)

„Daiktų internetas“(daiktų internetas) tampa vis labiau augančia pokalbių tema kiekvieną dieną. Tai koncepcija, kuri ne tik gali paveikti mūsų gyvenimą, bet ir tai, kaip mes dirbame. Nuo pramoninių mašinų iki nešiojamų prietaisų - naudojant įmontuotus jutiklius duomenims rinkti ir su jais susijusiems veiksmams tinkle atlikti.

Taigi, mes nusprendėme sukurti labai paprastą, tačiau įdomų projektą, kurio koncepcija - IoT.

Šiandien mes sukursime pagrindinį žiniatinklio serverį, kuris stebės mus supantį orą. Drėgmės ir temperatūros vertes galime peržiūrėti savo mobiliuosiuose įrenginiuose ir nešiojamuosiuose kompiuteriuose. Kaip jau sakiau, tai paprastas ir paprastas tinklalapis, leidžiantis jums apie tai įsivaizduoti. Galite prižiūrėti ir modifikuoti projektą pagal savo poreikius, pavyzdžiui, rinkti duomenis ir naudoti juos būsimam naudojimui, galite sukurti namų automatiką valdydami savo buitinę techniką ar viską, ką galite įsivaizduoti. Visada atminkite - vaizduotės galia daro mus begaliniais (John Muir).

Taigi, pradėkime !!

1 žingsnis: surinkite savo įrankius

Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!
Surinkite savo įrankius !!

1 SHT25 drėgmės ir temperatūros jutiklis

Didelio tikslumo „Sensirion“drėgmės ir temperatūros jutiklis SHT25 tapo pramonės standartu formos ir intelekto požiūriu: įterptas į perpylimo lydmetalį „Dual Flat No Lead“(DFN) pakuotėje, kurioje yra 3 x 3 mm pėdų atspaudas ir 1,1 mm aukščio. linijiniai jutiklių signalai skaitmeniniu, I2C formatu.

1 „Adafruit Huzzah“ESP8266

„Espressif“ESP8266 procesorius yra 80 MHz mikrovaldiklis, turintis pilną „WiFi“sąsają (tiek kaip klientas, tiek prieigos taškas) ir TCP/IP krūvą su DNS palaikymu. ESP8266 yra neįtikėtina platforma, skirta interneto taikomųjų programų kūrimui. ESP8266 suteikia subrendusią platformą programoms stebėti ir valdyti naudojant „Arduino Wire Language“ir „Arduino IDE“.

1 ESP8266 USB programuotojas

Šis ESP8266 pagrindinio kompiuterio adapteris buvo sukurtas specialiai ESP8266 „Adafruit Huzzah“versijai, leidžiančiai naudoti I²C sąsają.

1 I2C jungiamasis kabelis

2 žingsnis: Prijunkite aparatūrą

Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas

Paimkite ESP8266 ir švelniai stumkite jį per USB programuotoją. Tada vieną I2C kabelio galą prijunkite prie SHT25 jutiklio, o kitą - prie USB programuotojo. Ir baigta. Taip, jūs perskaitėte teisingai. Neskauda galvos, skamba šauniai. Teisingai !!

ESP8266 USB programuotojo pagalba labai lengva programuoti ESP. Viskas, ką jums reikia padaryti, tai prijungti jutiklį prie USB programuotojo ir viskas gerai. Mes mieliau naudojame šį produktų asortimentą, nes tai labai palengvina aparatūros prijungimą. Be šių „plug and play“USB programuotojų yra didelė rizika, kad bus užmegztas neteisingas ryšys. Blogas laidas gali užmušti jūsų „Wi -Fi“ir jutiklį.

Nesijaudinkite dėl litavimo ESP kaiščių prie jutiklio ar skaitymo kaiščių diagramų ir duomenų lapo. Mes galime vienu metu naudoti ir dirbti su keliais jutikliais, jums tiesiog reikia sukurti grandinę.

Čia galite patikrinti visą jų asortimentą.

Pastaba: jungdamiesi įsitikinkite, kad ruda jungiamojo kabelio viela yra prijungta prie jutiklio įžeminimo gnybto ir USB programuotojui.

3 žingsnis: kodas

Kodas
Kodas
Kodas
Kodas
Kodas
Kodas
Kodas
Kodas

SHT25 ESP8266 kodą galima atsisiųsti iš mūsų „github“saugyklos

Prieš pereidami prie kodo, būtinai perskaitykite „Readme“faile pateiktas instrukcijas ir pagal tai nustatykite savo ESP8266. ESP nustatymas užtruks tik 5 minutes.

Dabar atsisiųskite (arba ištraukite) kodą ir atidarykite jį „Arduino IDE“.

Surinkite ir įkelkite kodą ir pamatykite serijos monitoriaus išvestį.

Pastaba: prieš įkeldami į kodą būtinai įveskite SSID tinklą ir slaptažodį.

Nukopijuokite ESP8266 IP adresą iš serijinio monitoriaus ir įklijuokite jį į savo interneto naršyklę.

Pamatysite žiniatinklio serverį su drėgmės ir temperatūros rodmenimis. Serijinio monitoriaus ir žiniatinklio serverio jutiklio išvestis parodyta aukščiau esančiame paveikslėlyje.

Jūsų patogumui taip pat galite nukopijuoti darbinį šio jutiklio ESP kodą iš čia:

#įtraukti

#įtraukti

#įtraukti

#įtraukti

// SHT25 I2C adresas yra 0x40 (64)

#define Addr 0x40

const char* ssid = "tavo ssid tinklas";

const char* password = "tavo slaptažodis"; plūdės drėgmė, cTemp, fTemp;

ESP8266WebServer serveris (80);

tuščia rankena ()

{unsigned int data [2];

// Pradėti I2C perdavimą

Wire.beginTransmission (Addr); // Siųsti drėgmės matavimo komandą, NO HOLD master Wire.write (0xF5); // Sustabdyti I2C perdavimą Wire.endTransmission (); vėlavimas (500);

// Prašyti 2 baitų duomenų

Wire.requestFrom (Addr, 2);

// Skaityti 2 baitus duomenų

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

// Konvertuoti duomenis

drėgmė = (((duomenys [0] * 256,0 + duomenys [1]) * 125,0) / 65536,0) - 6;

// Išvesti duomenis į serijinį monitorių

Serial.print („Santykinė drėgmė:“); Serijinis atspaudas (drėgmė); Serial.println (" %RH"); }

// Pradėti I2C perdavimą

Wire.beginTransmission (Addr); // Siųsti temperatūros matavimo komandą, NO HOLD master Wire.write (0xF3); // Sustabdyti I2C perdavimą Wire.endTransmission (); vėlavimas (500);

// Prašyti 2 baitų duomenų

Wire.requestFrom (Addr, 2);

// Skaityti 2 baitus duomenų

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

// Konvertuoti duomenis

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

// Išvesti duomenis į serijinį monitorių

Serial.print ("Temperatūra Celsijaus laipsniais:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Temperatūra Farenheitu:"); Serial.print (fTemp); Serial.println ("F"); } // Išvesti duomenis į žiniatinklio serverio serverį.sendContent ("<meta http-equiv = 'refresh' content = '5'""

VISKĄ VALDYTI

www.controleverything.com

SHT25 jutiklio I2C mini modulis

"); server.sendContent ("

Santykinis drėgnumas = " + eilutė (drėgmė) +" %RH "); server.sendContent ("

Temperatūra Celsijaus = " + eilutė (cTemp) +" C "); server.sendContent ("

Temperatūra Farenheitu = " + eilutė (fTemp) +" F "); uždelsimas (300);}

negaliojanti sąranka ()

{// Inicijuoti I2C ryšį kaip MASTER Wire.begin (2, 14); // Inicijuoti nuoseklųjį ryšį, nustatyti duomenų perdavimo spartą = 115200 Serial.begin (115200);

// Prisijunkite prie „WiFi“tinklo

WiFi.begin (ssid, slaptažodis);

// Palaukite ryšio

while (WiFi.status ()! = WL_CONNECTED) {delay (500); Serijinis atspaudas ("."); } Serial.println (""); Serial.print ("Prisijungta"); Serial.println (ssid);

// Gaukite ESP8266 IP adresą

Serial.print („IP adresas:“); Serial.println (WiFi.localIP ());

// Paleisti serverį

server.on ("/", rankena); server.begin (); Serial.println („HTTP serveris paleistas“); }

tuštumos kilpa ()

{server.handleClient (); }

4 žingsnis: Išvada

SHT25 drėgmės ir temperatūros jutiklių serija pakelia jutiklių technologijas į naują lygį su neprilygstamu jutiklio našumu, variantų gama ir naujomis funkcijomis. Tinka įvairioms rinkoms, tokioms kaip buitinė technika, medicininė, daiktų interneto, ŠVOK ar pramoninė. Naudodami ESP8266, galime padidinti jo talpą iki ilgesnio. Mes galime valdyti savo prietaisus ir stebėti jų veikimą iš nešiojamųjų kompiuterių ir mobiliųjų įrenginių. Mes galime saugoti ir tvarkyti duomenis internete ir bet kada juos ištirti, kad juos būtų galima pakeisti.

Tokias idėjas galime panaudoti medicinos pramonėje, nors trumpam pasakykime, kaip valdyti ventiliaciją paciento kambaryje, kai drėgmė ir temperatūra automatiškai padidėja. Medicinos personalas gali stebėti duomenis internete, neėjęs į kambarį.

Tikimės, kad jums patinka pastangos ir pagalvokite apie daugiau galimybių. Kaip sakiau aukščiau, vaizduotė yra raktas.:)

Norėdami gauti daugiau informacijos apie SHT25 ir ESP8266, patikrinkite toliau pateiktas nuorodas:

  • SHT25 Drėgmės ir temperatūros jutiklio duomenų lapas
  • ESP8266 duomenų lapas

Norėdami gauti daugiau informacijos, apsilankykite „ControlEverything“.