Sadržaj:
- Korak 1: Skupite svoje alate
- Korak 2: Povezivanje hardvera
- Korak 3: Kodirajte
- KONTROLIRAJTE SVE
- Mini modul senzora SHT25 I2C
- Korak 4: Zaključak
Video: ESP8266 Web server za praćenje vremena (bez Arduina): 4 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:06
„Internet stvari“(IoT) iz dana u dan postaje sve veća tema razgovora. To je koncept koji ne samo da može utjecati na način na koji živimo, već i na način na koji radimo. Od industrijskih mašina do nosivih uređaja - pomoću ugrađenih senzora za prikupljanje podataka i poduzimanje radnji na tim podacima širom mreže.
Stoga smo odlučili izgraditi vrlo jednostavan, ali zanimljiv projekt s konceptom - IoT.
Danas ćemo izgraditi osnovni web server za praćenje vremena oko nas. Vrijednosti vlažnosti i temperature možemo vidjeti na našim mobilnim uređajima i prijenosnim računalima. Kao što sam rekao, to je jednostavna i osnovna web stranica koja vam daje ideju o tome. Možete nadograditi i izmijeniti projekt prema svojim potrebama, kao što možete prikupiti podatke i koristiti ih za buduću upotrebu, možete stvoriti kućnu automatizaciju tako što ćete kontrolirati svoje kućanske aparate ili bilo što drugo što možete zamisliti. Uvijek zapamtite - Moć mašte čini nas beskonačnim (John Muir).
Dakle, počnimo !!
Korak 1: Skupite svoje alate
1 SHT25 Senzor vlage i temperature
Senzor vlažnosti i temperature SHT25 kompanije Sensirion visoke preciznosti postao je industrijski standard u pogledu faktora oblika i inteligencije: Ugrađen u paket za lemljenje sa dvostrukim ravnim odvodima (DFN) od 3 x 3 mm sa otiskom stopala i 1,1 mm koji omogućava kalibriranje, linearni signali senzora u digitalnom, I2C formatu.
1 Adafruit Huzzah ESP8266
ESP8266 procesor kompanije Espressif je 80 MHz mikrokontroler sa punim WiFi prednjim dijelom (i kao klijent i kao pristupna tačka) i TCP/IP stogom sa DNS podrškom. ESP8266 je nevjerovatna platforma za razvoj IoT aplikacija. ESP8266 pruža zrelu platformu za praćenje i upravljanje aplikacijama koristeći Arduino Wire Language i Arduino IDE.
1 ESP8266 USB programator
Ovaj adapter za domaćinstvo ESP8266 dizajniran je posebno za Adafruit Huzzah verziju ESP8266, omogućavajući I²C sučelje.
1 I2C priključni kabel
Korak 2: Povezivanje hardvera
Uzmite ESP8266 i lagano ga gurnite preko USB programatora. Zatim spojite jedan kraj I2C kabela sa SHT25 senzorom, a drugi kraj u USB programator. I završili ste. Da, dobro ste pročitali. Nema glavobolje, zvuči super. Tačno !!
Uz pomoć ESP8266 USB programatora, vrlo je jednostavno programirati ESP. Sve što trebate učiniti je priključiti senzor u USB programator i spremni ste. Radije koristimo ovaj asortiman proizvoda jer uvelike olakšava povezivanje hardvera. Bez ovih USB programatora plug and play postoji veliki rizik od pogrešne veze. Loše ožičenje može ubiti vaš WiFi kao i vaš senzor.
Nema brige oko lemljenja pinova ESP -a na senzor ili čitanja dijagrama pinova i tablice s podacima. Možemo koristiti i raditi na više senzora istovremeno, samo trebate napraviti lanac.
Ovdje provjeravate cijeli asortiman njihovih proizvoda.
Napomena: Prilikom povezivanja provjerite je li smeđa žica spojnog kabela spojena na uzemljenje senzora i isto za USB programator.
Korak 3: Kodirajte
Kod ESP8266 za SHT25 može se preuzeti sa našeg github spremišta
Prije nego što pređete na kôd, svakako pročitajte upute date u datoteci Readme i postavite svoj ESP8266 prema njemu. Za postavljanje ESP -a bit će potrebno samo 5 minuta.
Sada preuzmite (ili git povucite) kôd i otvorite ga u Arduino IDE -u.
Sastavite i otpremite kôd i pogledajte izlaz na Serial Monitor.
Napomena: Prije učitavanja, obavezno unesite svoju SSID mrežu i lozinku u kôd.
Kopirajte IP adresu ESP8266 sa serijskog monitora i zalijepite je u svoj web preglednik.
Vidjet ćete web server sa očitanjem vlažnosti i temperature. Izlaz senzora na serijskom monitoru i web serveru prikazan je na gornjoj slici.
Radi vaše udobnosti, ovdje možete kopirati i radni ESP kod za ovaj senzor:
#include
#include
#include
#include
// SHT25 I2C adresa je 0x40 (64)
#define Addr 0x40
const char* ssid = "vaša ssid mreža";
const char* password = "vaša lozinka"; vlažnost plovka, cTemp, fTemp;
ESP8266WebServer server (80);
void handleroot ()
{nepotpisani int podaci [2];
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr); // Pošaljite naredbu za mjerenje vlažnosti, NO HOLD master Wire.write (0xF5); // Zaustavljanje I2C prijenosa Wire.endTransmission (); kašnjenje (500);
// Zatražite 2 bajta podataka
Wire.requestFrom (Addr, 2);
// Očitavanje 2 bajta podataka
// vlažnost msb, vlažnost lsb if (Wire.available () == 2) {data [0] = Wire.read (); podaci [1] = Wire.read ();
// Pretvorimo podatke
vlažnost = (((podaci [0] * 256,0 + podaci [1]) * 125,0) / 65536,0) - 6;
// Izlaženje podataka na serijski monitor
Serial.print ("Relativna vlažnost:"); Serial.print (vlažnost); Serial.println (" %RH"); }
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr); // Slanje naredbe za mjerenje temperature, NO HOLD master Wire.write (0xF3); // Zaustavljanje I2C prijenosa Wire.endTransmission (); kašnjenje (500);
// Zatražite 2 bajta podataka
Wire.requestFrom (Addr, 2);
// Očitavanje 2 bajta podataka
// temp msb, temp lsb if (Wire.available () == 2) {data [0] = Wire.read (); podaci [1] = Wire.read ();
// Pretvorimo podatke
cTemp = (((podaci [0] * 256,0 + podaci [1]) * 175,72) / 65536,0) - 46,85; fTemp = (cTemp * 1.8) + 32;
// Izlaženje podataka na serijski monitor
Serial.print ("Temperatura u Celzijusima:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Temperatura u Fahrenheitu:"); Serial.print (fTemp); Serial.println ("F"); } // Izlaženje podataka na server server.sendContent ("<meta http-equiv = 'refresh' content = '5'""
KONTROLIRAJTE SVE
www.controleverything.com
Mini modul senzora SHT25 I2C
"); server.sendContent ("
Relativna vlažnost = " + niz (vlažnost) +" %RH "); server.sendContent ("
Temperatura u Celzijusima = " + String (cTemp) +" C "); server.sendContent ("
Temperatura u Fahrenheitu = " + niz (fTemp) +" F "); kašnjenje (300);}
void setup ()
{// Inicializirajte I2C komunikaciju kao MASTER Wire.begin (2, 14); // Pokreće serijsku komunikaciju, postavlja brzinu prijenosa = 115200 Serial.begin (115200);
// Povezivanje na WiFi mrežu
WiFi.begin (ssid, lozinka);
// Pričekajte vezu
while (WiFi.status ()! = WL_CONNECTED) {kašnjenje (500); Serial.print ("."); } Serial.println (""); Serial.print ("Povezano sa"); Serial.println (ssid);
// Dobijte IP adresu ESP8266
Serial.print ("IP adresa:"); Serial.println (WiFi.localIP ());
// Pokretanje poslužitelja
server.on ("/", handleroot); server.begin (); Serial.println ("HTTP poslužitelj pokrenut"); }
void loop ()
{server.handleClient (); }
Korak 4: Zaključak
Serija senzora vlažnosti i temperature SHT25 podiže tehnologiju senzora na novu razinu s neusporedivim performansama senzora, rasponom varijanti i novim značajkama. Pogodno za mnoga tržišta, poput kućanskih aparata, medicinskih, IoT, HVAC ili industrijskih. Uz pomoć ESP8266 možemo povećati njegov kapacitet na veću dužinu. Možemo kontrolirati svoje uređaje i tamo pratiti performanse prijenosnih računara i mobilnih uređaja. Podatke možemo pohraniti i upravljati na mreži i proučiti ih u bilo kojem trenutku radi izmjena.
Takve ideje možemo upotrijebiti u medicinskoj industriji, na trenutak samo recimo da kontroliramo ventilaciju u sobi za pacijente kada se vlažnost i temperatura automatski povećaju. Medicinsko osoblje može pratiti podatke na mreži bez ulaska u sobu.
Nadam se da vam se trud sviđa i razmislite o više mogućnosti s njim. Kao što sam već rekao, mašta je ključ.:)
Za više informacija o SHT25 i ESP8266, pogledajte donje veze:
- Tehnički list SHT25 osjetnika vlažnosti i temperature
- ESP8266 Tehnički list
Za više informacija posjetite ControlEverything.
Preporučuje se:
Pametni distribuirani IoT sistem za praćenje vremena pomoću NodeMCU: 11 koraka
Pametni distribuirani IoT sistem za praćenje vremena pomoću NodeMCU -a: Svi ste možda svjesni tradicionalne meteorološke stanice; ali jeste li se ikada zapitali kako to zapravo funkcionira? Budući da je tradicionalna meteorološka stanica skupa i glomazna, gustoća ovih stanica po jedinici površine vrlo je mala što doprinosi
Arduino 3-u-1 prikaz vremena i vremena: 11 koraka
Arduino 3-u-1 prikaz vremena i vremena: Volim PIC mikrokontrolere i volim programiranje na asemblerskom jeziku. Zapravo, u posljednjih nekoliko godina na svojoj sam web stranici objavio oko 40 projekata na temelju te kombinacije. Nedavno sam naručivao neke dijelove iz jednog od mojih omiljenih američkih v
Kako napraviti IoT uređaj za kontrolu uređaja i praćenje vremena pomoću Esp8266: 5 koraka
Kako napraviti IoT uređaj za kontrolu uređaja i praćenje vremena pomoću Esp8266: Internet stvari (IoT) je međusobno umrežavanje fizičkih uređaja (koji se nazivaju i "povezani uređaji" i "pametni uređaji"), zgrada, i drugi predmeti ugrađeni u elektroniku, softver, senzore, aktuatore i
Robot za praćenje s linije bez Arduina: 4 koraka
Robot za praćenje linija bez Arduina: U ovom uputstvu ću vas naučiti kako napraviti robota koji slijedi liniju bez korištenja arduina. Koristit ću vrlo jednostavne korake za objašnjenje. Ovaj robot će koristiti IR senzor blizine za praćenje linije. Neće vam trebati nikakvi svojevrsno iskustvo programiranja za b
Hladnjak / postolje za prijenosno računalo bez troškova (bez ljepila, bez bušenja, bez matica i vijaka, bez vijaka): 3 koraka
Hladnjak / postolje za prijenosno računalo bez troškova (bez ljepila, bez bušenja, bez matica i vijaka, bez vijaka): AŽURIRAJTE: MOLIM VAS LJUBAV GLAS ZA MOJE UPUTSTVO, HVALA ^ _ ^ MOŽETE I DA GLASATE ULAZITE NA www.instructables.com/id/Zero-Cost-Aluminium-Furnace-No-Propane-No-Glue-/ ILI MOŽDA GLASATE ZA NAJBOLJEG PRIJATELJA