Sadržaj:
- Korak 1: Stvorite i postavite svoje kanale Thingspeak
- Korak 2: Postavite Arduino IDE, knjižnice i konfigurirajte BME280
- Korak 3: Programirajte ESP8266 s Arduino IDE -om
- Korak 4: Vratite se na Thingspeak da biste učinili neke izmjene podataka
- Korak 5: Uredite priloženu HTML datoteku
Video: ESP8266 NodeMCU s BME280 mjeračima i grafikonom: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Moderni mjerači i tablica za vašu razvojnu ploču ESP8266 NodeMCU sa BME280 osjetnikom temperature, vlažnosti i tlaka. Thingspeak će pohraniti sve vaše podatke u oblak za preuzimanje u bilo koje vrijeme godinama (nadamo se) sljedećih godina. Mjerači i grafikon popunjavaju se iz podataka pohranjenih na Thingspeak -u i automatski se ažuriraju svakih 5 minuta.
Potrebne stavke:
ESP8266 NodeMCU razvojna ploča (3,79 USD sa Banggood.com Hong Kong)
Bosch BME280 (5,63 USD s Banggood.com Hong Konga)
Džemperi za hljeb (3,09 USD sa Banggood.com Hong Kong)
Oglasna ploča (2,28 USD iz Banggood.com Hong Kong)
Napajanje, besplatno ako imate mikro USB punjač za telefon
Mikro USB kabel, besplatan ako ga već imate
Arduino IDE, besplatno preuzimanje
Ovdje preuzmite.ino i. HTML kodne datoteke
Korak 1: Stvorite i postavite svoje kanale Thingspeak
1. Napravite besplatni Thingspeak račun i novi kanal na https://thingspeak.com, nazovite kanal "ESP8266-NodeMCU-12E-BME280"
2. Novi kanal trebao bi imati 3 polja pod nazivom Temperatura Tlak vlažnosti zraka u tom određenom redoslijedu (Napomena Veliko početno slovo u prvom slovu).
3. Zabilježite svoj novi "ID kanala" XXXXXX pod "Postavke kanala"
4. Kliknite vezu "API ključevi" i uzmite u obzir svoje "API pisanje" i "Čitanje API ključeva" XXXXXXXXXXXXXXX. Također, učinite ovo javnim kanalom pod dijeljenjem.
5. Izradite drugi kanal Thingspeak koji će sadržavati podatke "Danas" (od ponoći) visoke niske. Nazovite to "BME280 dnevni visoki niski podaci"
6. Ovaj novi kanal trebao bi imati 6 polja pod nazivom Tmax Tmin Hmax Hmin Pmax Pmin u tom određenom redoslijedu (Napomena Prvo slovo u početnom slovu).
7. Zabilježite "BME280 Daily High Low Data" "ID kanala", "Read" i "Write API keys", kao u prethodnim koracima.
Korak 2: Postavite Arduino IDE, knjižnice i konfigurirajte BME280
8. Slijedite upute za instaliranje jezgre Arduino IDE & ESP8266 na
9. Pokrenite Arduino IDE kako bismo mogli instalirati četiri potrebne biblioteke.
10. Trebat će vam knjižnica "Adafruit Unified Sensor Driver", instalirajte je u "Library Manager" u Arduino IDE. Skica izbornika Uključi knjižnicu Upravljanje knjižnicama pretražujte prema vrsti = "Preporučena" tema = "Senzori", a zatim u okvir za pretraživanje stavite riječi Adafruit Unified Sensor Driver. Ona koju želite kaže "Adafruit Unified Driver Sensor Driver by Adafruit"
11. Osim toga, trebat ćete i da je "Adafruit BME280 Library" instalira u "Library Manager" u Arduino IDE -u. Skica izbornika Uključi knjižnicu Upravljanje knjižnicama vrši pretraživanje prema vrsti = "Preporučena" tema = "Senzori", a zatim stavite riječi Adafruit BME280 Library u okvir za pretraživanje. Ona koju želite kaže "Adafruit BME280 Library by Adafruit"
12. Druga biblioteka koja vam je potrebna je Wire.h, instalirajte je u "Upravitelj knjižnica" u Arduino IDE -u. Izbornik, skica Uključi knjižnicu Upravljanje knjižnicama Pretražite prema Type = "Contributed" Topic = "Signal Input/Output", a zatim stavite riječ Wire u okvir za pretraživanje. Ona koju želite kaže "Wire Built-in by Arduino" Najvjerojatnije na dnu odabira.
13. Još jedna knjižnica, ESP8266WiFi, instalirajte je u "Upravitelj knjižnica" u Arduino IDE -u. Izbornik, skica Uključi knjižnicu Upravljanje knjižnicama Pretražite prema Type = "Contributed" Topic = "Communication", a zatim u okvir za pretraživanje stavite riječ ESP8266wifi. Ona koju želite kaže "ESP8266wifi ugrađen od Ivana Grokhotkova"
14. I2C adresa za BME280 je kodirana u datoteci Adafruit_BME280.h (potražite redak #define BME280_ADDRESS 0x77) unutar mape Adafruit_BME280_Library. Adafruit-ovi BME senzorski moduli ožičeni su za upotrebu I2C adrese 0x77. Ali BME280 može imati nešto drugačiju I2C adresu (0x76) ako je njegov vanjski SDO pin uzemljen. Ako senzorske module koristite od treće strane, vjerojatno se ta adresa ne podudara sa zadanim vrijednostima u biblioteci Adafruit. Na primjer, za većinu senzorskih modula BME280 dostupnih na eBayu ili Aliexpressu njihova je I2C adresa 0x76. Ako ne dobijete odgovor od senzora koristeći zadanu adresu postavljenu u datoteci Adafruit_BME280.h, možda ćete je morati promijeniti u 0x76.
Priključne točke BME280 i ESP8266. ESP8266 3.3V na BME280 Vin, ESP8266 GND na BME280 GND, ESP8266 D4 na BME280 SCL, ESP8266 D3 na BME280 SDA. 15. Otvorite priloženu datoteku ESP8266-NodeMCU-12E-BME280.html u uređivaču teksta i unesite svoj "ESP8266-NodeMCU-12E-BME280" (prvi kanal koji ste stvorili) "ID kanala" i "Čitanje API ključa" za varijable key1 & chan1. Također unesite "Read API Key" i "Channel ID" za "BME280 Daily High Low Data" (Drugi kanal koji ste stvorili) za key2 i chan2. Osim toga, unesite pomak vremenske zone od UTC -a. Kao u -5 za mene. Sve vrijednosti moraju biti unutar navedenih navodnika "XXXXX". Spremite i izađite iz uređivača teksta.
Priključite svoj ESP8266 USB kabelom u računalo, a zatim odaberite serijski port kao USB priključak.
Korisnici Linuxa možda će morati promijeniti vlastito povezivanje USB priključka kako bi komunicirali s /dev /ttyUSB0 kao u "sudo chown yourrusername /dev /ttyUSB0" ili bilo što što ste odabrali kao svoj port u postavkama.
Korak 3: Programirajte ESP8266 s Arduino IDE -om
16. Zatim ćemo programirati ESP8266. Spojite USB kabel između vašeg ESP8266 i računala.
Učitajte priloženu datoteku New_BME_Sensor.ino u Arduino IDE. Vaš senzor BME280 trebao bi biti priključen na D3 (SDA) i D4 (SCL) na ESP8266. Unesite "ESP8266-NodeMCU-12E-BME280" (prvi kanal koji ste stvorili) "Ključ za pisanje" "Bežični SSID" i "Lozinka" u ispravan odjeljak skice. Zatim kliknite stavku izbornika "Sketch" & "Upload". Nakon što prenesete skicu (Napredak doseže 100%) na svoj ESP8266, možete otvoriti serijski monitor (ikona u gornjem desnom kutu izgleda kao povećalo) i vidjeti ispis podataka nakon 5 minuta, svakih 5 minuta. Podaci se šalju stvarima u intervalima od 5 minuta, pa će proći neko vrijeme prije nego što dobijete značajne podatke grafikona, no očitanja mjerača trebali biste imati nakon 5 minuta.
Pobrinite se da ispravno očitate BME280 na serijskom monitoru.
Prvo mjerenje vjerojatno će biti neispravno.
Pričekajte nekoliko minuta do sljedećeg čitanja i provjerite izgledaju li očitanja dobro.
Korak 4: Vratite se na Thingspeak da biste učinili neke izmjene podataka
17. Sada, dok se podaci polako učitavaju na thingspeak, dopustimo neke prilagodbe kako bismo dobili dodatne podatke od onoga što se prenosi. Vratite se na stranicu Thingspeak i na stranici kanala Thingspeak "BME280 Daily High Low Data" (Drugi kanal koji ste stvorili) kliknite zeleni gumb "MATLAB Analysis". Odaberite predložak "Prilagođeno (bez početnog koda)"
18. Imenujte MATLAB analizu "Izračunaj Min Max od ponoći".
19. Kopirajte kôd MATLAB Analysis.txt u predviđeni prostor. Unesite "ID kanala" za "ESP8266-NodeMCU-12E-BME280" (prvi kanal koji ste stvorili) u "readChannelID". Unesite "BME280 Daily High Low Data" (Drugi kanal koji ste stvorili) Upišite "Channel ID" & "Write Key" u writeNewChannelID & writeAPIKey respektivno. Znam da zvuči zbunjujuće (pročitaj ponovo). Pritisnite Spremi i pokreni. Ako ste to učinili ispravno i kanal za čitanje je javan, nećete vidjeti pogreške i uspješno ispisuje vrijednosti. Napomena, možda ćete vidjeti pogrešku ako na taj kanal još nisu preneseni podaci. Unatoč pogrešci, nastavite. Po želji možete ponovno posjetiti Kliknite Spremi i pokreni kako biste bili sigurni da radi nakon što su podaci preneseni.
20. Zatim moramo stvoriti "Vremensku kontrolu" koja će aktivirati ovaj kôd svakih 5 minuta i naši se podaci zapisuju na kanal "BME280 Daily High Low Data" (drugi kanal koji ste stvorili). Na glavnoj stranici "BME280 Daily High Low Data" (drugi kanal koji ste stvorili) odaberite Aplikacije pri vrhu. Pod radnjama odaberite "TimeControl", a zatim zeleni gumb "New TimeControl". Dajte mu naziv "Pošalji visoke niske temperature ESP8266". Odaberite svoju vremensku zonu ako je potrebno i odaberite "Ponavlja se" u odjeljku Učestalost. Odaberite Minuta pod Ponavljanje. Postavljeno za trčanje svakih 5 minuta. Radnja bi trebala biti MATLAB analiza, a "Kôd za izvršavanje" je "Izračunaj Min Maks od ponoći". Uštedite TimeControl.
Korak 5: Uredite priloženu HTML datoteku
Uredite HTML datoteke i potražite komentare s natpisom "******** Promijeni me 1 od 8 *********" Promijenite ih prema vlastitim željama.
Bilješke:
Neka od tekstualnih polja i tjedni grafikon neće se ispravno popuniti sve dok ne dobijete cijeli dan i cijeli tjedan podataka za odjeljak i grafikon 24 sata i tjedna. Nakon što imate hrpu podataka, možete zumirati grafikone kotačićem miša (desni klik za vraćanje na početne vrijednosti). Također možete imati četvrti mjerač (kao što se vidi na snimkama zaslona) s drugog senzora s drugog kanala, ali ja sam započeo relevantne dijelove. Ako se osjećate pametno, spojite ga. Također morate biti svjesni nekih vremenskih pitanja. Vjerojatno nećete imati apsolutno najnovije podatke, ali oni bi uvijek trebali biti stariji od 5 minuta. To dolazi od trenutka kad se aktivira kontrola vremena, kada su podaci poslani s ESP8266 i kada ste učitali / osvježili web stranicu.
Otvorite priloženu datoteku ESP8266-NodeMCU-12E-BME280.html u svom web pregledniku i trebali biste vidjeti popunjene mjerače i grafikon.
Preuzmite datoteke.ino i. HTML ovdje
Preporučeni:
Bitcoin oznaka s grafikonom: 8 koraka
Bitcoin Ticker With Graph: Ovo sam napravio na temelju projekta za BTC oznaku cijena, koji dobiva podatke o cijeni sa stranice coinmarketcap.com koju je izvorno napisao Brian Lough. Koristio je ESP8266, ploču kompatibilnu s Arduinom koja dolazi s ugrađenim WiFi -jem. Kako opisuje
Izradite Apple HomeKit temperaturni senzor pomoću ESP8266 i BME280: 10 koraka
Napravite Apple HomeKit osjetnik temperature pomoću ESP8266 i BME280: U današnjim instrukcijama napravit ćemo senzor za nisku cijenu, vlagu i vlagu na temelju AOSONG AM2302/DHT22 ili BME280 osjetnika temperature/vlažnosti, YL-69 senzora vlage i platformu ESP8266/Nodemcu. A za prikazivanje
Dobivanje vremena s interneta pomoću ESP8266 - Projekt NTP sata sa ESP8266 Nodemcu: 5 koraka
Dobivanje vremena s interneta pomoću ESP8266 | Projekt NTP sata sa ESP8266 Nodemcu: U ovom ćemo vodiču vidjeti kako dobiti vrijeme koristeći ESP8266/nodemcu s Arduino IDE -om. Dobivanje vremena osobito je korisno pri bilježenju podataka radi vremenske oznake vaših očitanja. Ako vaš projekt ESP8266 ima pristup internetu, možete dobiti vrijeme koristeći Network T
ESP8266 Vodič za NODEMCU BLYNK IOT - Esp8266 IOT koristeći Blunk i Arduino IDE - Upravljanje LED diodama putem Interneta: 6 koraka
ESP8266 Vodič za NODEMCU BLYNK IOT | Esp8266 IOT koristeći Blunk i Arduino IDE | Upravljanje LED diodama putem interneta: Zdravo dečki, u ovim uputama naučit ćemo kako koristiti IOT s našim ESP8266 ili Nodemcu. Za to ćemo koristiti aplikaciju blynk. Pa ćemo koristiti naš esp8266/nodemcu za kontrolu LED dioda putem interneta. Dakle, aplikacija Blynk bit će spojena na naš esp8266 ili Nodemcu
Izradite Apple HomeKit temperaturni senzor (BME280) pomoću RaspberryPI i BME280: 5 koraka
Napravite Apple HomeKit temperaturni senzor (BME280) pomoću RaspberryPI -a i BME280: zadnjih nekoliko mjeseci sam se igrao s IOT uređajima i postavio sam oko 10 različitih senzora za praćenje stanja oko kuće i vikendice. A ja sam prvotno počeo koristiti AOSONG DHT22 osjetnik umjerene vlažnosti