Sadržaj:

ESP8266 i Visuino: DHT11 Web server za temperaturu i vlažnost: 12 koraka
ESP8266 i Visuino: DHT11 Web server za temperaturu i vlažnost: 12 koraka

Video: ESP8266 i Visuino: DHT11 Web server za temperaturu i vlažnost: 12 koraka

Video: ESP8266 i Visuino: DHT11 Web server za temperaturu i vlažnost: 12 koraka
Video: Терморегулятор c Удаленным Управлением 📈 на ESP8266. Часть 1 2024, Novembar
Anonim
Image
Image

ESP8266 moduli su odlični jeftini samostalni kontroleri s ugrađenim Wi-Fi-jem, a o njima sam već napravio niz uputa.

DTH11/DTH21/DTH22 i AM2301 su vrlo popularni kombinirani Arduino senzori za temperaturu i vlagu, a s njima sam napravio i brojne instrukcije, uključujući instrukcije za daljinski termometar i senzor vlažnosti s 2 ESP8266 spojena na njihovu privatnu Wi-Fi mrežu.

U ovom uputstvu ću vam pokazati kako možete napraviti web server za temperaturu i vlažnost sa ESP8266 i DHT11 i povezati se na njega na vašoj postojećoj Wi-Fi mreži sa više uređaja sa web pretraživačem.

Korak 1: Komponente

Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
  1. OneNodeMCU ESP8266 ploča (koristio sam verziju NodeMCU 0.9, ali svaka druga, ili čak samostalna ESP-12 ili ESP-01 će raditi)
  2. Jedan DHT11 senzorski modul koji sam dobio iz ovog jeftinog seta od 37 senzora
  3. 3 žensko-ženske kratkospojne žice

Korak 2: Priključite DHT11 na NodeMCU ESP8266 modul

Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
Spojite DHT11 na NodeMCU ESP8266 modul
  1. Spojite napajanje (crvena žica), uzemljenje (crna žica) i podatke (siva žica) na DHT11 modul (Slika 1 prikazuje 2 različite vrste senzorskih modula DHT11. Kao što vidite, pinovi se mogu razlikovati, pa ih pažljivo povežite!)
  2. Spojite drugi kraj žice za uzemljenje (crna žica) na pin za uzemljenje modula ESP8266 (slika 2)
  3. Spojite drugi kraj kabela za napajanje (crvena žica) na utičnicu za napajanje od 3,3 V modula ESP8266 (Slika 2)
  4. Spojite drugi kraj podatkovne žice (siva žica) na digitalni pin 2 modula ESP8266 (slika 3)
  5. Slika 4 prikazuje gdje su uzemljenje, napajanje 3,3 V i 2 digitalna pina NodeMCU 0,9

Korak 3: Pokrenite Visuino i odaberite vrstu ploče ESP8266

Pokrenite Visuino i odaberite vrstu ploče ESP8266
Pokrenite Visuino i odaberite vrstu ploče ESP8266
Pokrenite Visuino i odaberite vrstu ploče ESP8266
Pokrenite Visuino i odaberite vrstu ploče ESP8266

Da biste započeli programiranje Arduina, morat ćete instalirati Arduino IDE odavde:

Imajte na umu da postoje neke kritične greške u Arduino IDE 1.6.6

Obavezno instalirajte 1.6.7 ili noviju verziju, u protivnom ovaj Instructable neće raditi!

Ako to niste učinili, slijedite korake u ovom uputstvu za postavljanje Arduino IDE -a za programiranje ESP 8266

Takođe je potrebno instalirati Visuino:

  1. Pokrenite Visuinoas prikazan na prvoj slici
  2. Kliknite na gumb "Alati" na Arduino komponenti (slika 1) u Visuinu
  3. Kad se pojavi dijaloški okvir, odaberite "NodeMCU ESP-12" kao što je prikazano na slici 2

Korak 4: U Visuinu: Postavite naziv hosta i pristupnu tačku

U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku
U Visuinu: Postavite naziv hosta i pristupnu tačku

Prvo moramo konfigurirati modul za povezivanje s postojećom pristupnom točkom i dodijeliti mu HostName tako da ga možemo otkriti na mreži.

  1. U Inspektoru objekata proširite svojstvo „Moduli“, a zatim pod svojstvo „WiFi“
  2. U Inspektoru objekata postavite vrijednost svojstva "HostName" na "dht11server" (Slika 1)
  3. U Object Inspectoru proširite pod svojstvo „AccessPoints“pod „WiFi“i kliknite na dugme „…“pored njegove vrijednosti (Slika 2)
  4. U uređivaču "AccessPoins" odaberite "WiFi Access Point" u desnom prikazu, a zatim kliknite gumb "+" s lijeve strane da biste dodali pristupnu točku (Slika 2)
  5. U Inspektoru objekata postavite vrijednost svojstva "SSID" na SSID vašeg Wi-Fi hotspota (pristupna tačka) (Slika 4)
  6. Ako vaš Wi-Fi hotspot (pristupna točka) zahtijeva lozinku, u Inspectoru objekta postavite lozinku u vrijednost svojstva "Password" (Slika 4)
  7. Zatvorite dijalog "Pristupne tačke"

Korak 5: U Visuinu: Dodajte utičnicu poslužitelja TCP/IP za komunikaciju

U Visuinu: Dodajte utičnicu TCP/IP poslužitelja za komunikaciju
U Visuinu: Dodajte utičnicu TCP/IP poslužitelja za komunikaciju
U Visuinu: Dodajte utičnicu TCP/IP poslužitelja za komunikaciju
U Visuinu: Dodajte utičnicu TCP/IP poslužitelja za komunikaciju
U Visuinu: Dodajte utičnicu poslužitelja TCP/IP za komunikaciju
U Visuinu: Dodajte utičnicu poslužitelja TCP/IP za komunikaciju

Zatim moramo dodati utičnicu TCP/IP servera za komunikaciju.

  1. U Inspektoru objekata kliknite gumb "…" pored vrijednosti pod svojstva "Utičnice" WiFi (Slika 1)
  2. U uređivaču utičnica odaberite „TCP/IP poslužitelj“, a zatim kliknite gumb „+“(slika 2) da biste ga dodali (slika 3)
  3. Zatvorite dijalog "Utičnice"

Korak 6: U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta sa 2 analogna kanala

U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala
U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala
U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala
U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala
U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala
U Visuinu: Dodajte DTH11 i komponentu formatiranog teksta s 2 analogna kanala

Za kontrolu i očitavanje temperature i vlažnosti iz DHT11 moramo dodati komponente za to u Visuino.

Također moramo generirati web stranicu iz podataka. Stranica je samo HTML tekstualni dokument, pa možemo koristiti komponentu Formatirani tekst za njeno generiranje.

  1. Upišite "dht" u okvir za filtere u okviru s alatima za komponente, a zatim odaberite komponentu "vlažnost i termometar DHT11/21/22/AM2301" (slika 1) i ispustite je u područje dizajna
  2. Upišite "form" u okvir za filtriranje okvira s alatima za komponente, zatim odaberite komponentu "Formatirani tekst" (slika 2) i ispustite je u područje dizajna
  3. Kliknite na gumb "Alati" komponente FormattedText1 (Slika 3)
  4. U uređivaču elemenata odaberite analogni element s desne strane i kliknite dva puta na dugme "+" s lijeve strane (slika 4), da biste ih dodali 2 (slika 5)
  5. Zatvorite uređivač "Elementi"

Korak 7: U Visuinu: Postavite formatirani tekst za odgovor poslužitelja

U Visuinu: Postavite formatirani tekst za odgovor poslužitelja
U Visuinu: Postavite formatirani tekst za odgovor poslužitelja
U Visuinu: Postavite formatirani tekst za odgovor poslužitelja
U Visuinu: Postavite formatirani tekst za odgovor poslužitelja

Moramo navesti HTML tekst koji će se generirati kada se web klijent poveže s poslužiteljem.

Navest ćemo vezu za zatvaranje nakon podataka koje sam poslao, a također ćemo uputiti preglednik da se ponovo poveže (osvježi) nakon 5 sekundi dodavanjem "Osvježi: 5" u dokument. Na ovaj način web stranica će se osvježavati svakih 5 sekundi.

  1. U području dizajna odaberite komponentu FormattedText1 (slika 1)
  2. U Inspektoru objekata odaberite svojstvo "Tekst" i kliknite gumb "…" pored njegove vrijednosti (Slika 1)
  3. U uređivaču "Text" unesite: "HTTP/1.1 200 OK" "Content-Type: text/html" "Veza: zatvori" "Osvježi: 5" "" """"""" Temperatura: %0 "" Vlažnost: %1 "" "" "(Slika 2) %0 će biti zamijenjena vrijednošću iz AnalogElement1, a %1 će biti zamijenjena vrijednošću iz AnalogElement2
  4. Pritisnite dugme OK da biste zatvorili dijalog

Korak 8: U Visuinu: Spojite DHT11 komponentu

U Visuinu: Spojite DHT11 komponentu
U Visuinu: Spojite DHT11 komponentu
U Visuinu: Spojite DHT11 komponentu
U Visuinu: Spojite DHT11 komponentu
U Visuinu: Spojite DHT11 komponentu
U Visuinu: Spojite DHT11 komponentu
  1. Spojite izlazni pin "Temperature" komponente HumidityThermometer1 na "In" iglu AnalogElement1 komponente FormattedText1 (Slika 1)
  2. Spojite izlazni pin "Humidity" komponente HumidityThermometer1 na "In" pin AnalogElement2 komponente FormattedText1 (Slika 2)
  3. Spojite iglu "Senzor" komponente HumidityThermometer1 na "Digitalni" ulazni pin "Digitalnog [2]" kanala Arduino komponente (Slika 3)

Korak 9: U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova

U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova
U Visuinu: Dodajte i povežite komponentu za otkrivanje rubova

Moramo poslati HTML tekst svaki put kada se pojavi nova veza. Prije nego što pošaljemo, moramo malo pričekati jer web preglednici moraju poslati zahtjev prije nego što očekuju da će vidjeti rezultat. Za to ćemo koristiti Delay komponentu povezanu na "Connected" pin TCP/IP Server Socket -a.

  1. Upišite "delay" u okvir Filter of Toolbox Component Toolbox, zatim odaberite komponentu "Delay" (Slika 1) i ispustite je u područje dizajna
  2. U svojstvima postavite vrijednost svojstva "Interval (uS)" na 200000 (Slika 2)
  3. Spojite “Connected” pin “Modules. WiFi. Sockets. TCPServer1” “NodeMCU ESP-12” komponente na “In” pin Delay1 komponente (Slika 3)
  4. Povežite "Out" pin Delay1 komponente sa ulaznim pinom "Clock" komponente FormattedText1 (Slika 4)

Korak 10: U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja

U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
U Visuinu: Povežite komponentu formatiranog teksta i Dodajte i povežite komponentu kašnjenja
  1. Spojite "Out" iglu komponente FormattedText1 sa "In" iglom "Modules. WiFi. Sockets. TCPServer1" komponente "NodeMCU ESP-12" (Slika 1)
  2. Upišite "delay" u okvir Filter of Toolbox Component Toolbox, zatim odaberite komponentu "Delay" (Slika 2) i ispustite je u područje dizajna
  3. Spojite "Out" iglu komponente FormattedText1 na "In" pin Delay2 komponente (Slika 3)
  4. Spojite "Out" pin Delay2 komponente na "Disconnect" ulazni pin "Modules. WiFi. Sockets. TCPServer1" komponente "NodeMCU ESP-12" (Slika 4)

Delay komponenta će isključiti utičnicu ubrzo nakon slanja teksta.

Korak 11: Generirajte, kompajlirajte i prenesite Arduino kôd

Generirajte, kompajlirajte i učitajte Arduino kod
Generirajte, kompajlirajte i učitajte Arduino kod
Generirajte, kompajlirajte i učitajte Arduino kod
Generirajte, kompajlirajte i učitajte Arduino kod
  1. U Visuinu pritisnite F9 ili kliknite gumb prikazan na slici 1 za generiranje Arduino koda, a zatim otvorite Arduino IDE
  2. Priključite modul NodeMCU pomoću USB kabla na računar
  3. Odaberite vrstu ploče i serijski port kao što sam vam pokazao u ovom uputstvu
  4. U Arduino IDE -u kliknite gumb Upload za sastavljanje i učitavanje koda (Slika 2)

Korak 12: I igrajte se …

Image
Image
I sviraj…
I sviraj…

Čestitamo! Napravili ste Wi-Fi web server za temperaturu i vlažnost.

Na slici 1 i u videu možete vidjeti povezani i napajani projekt. Koristio sam malu USB Power Bank za napajanje modula.

Provjerite jeste li u projektu na koraku 4 unijeli ispravan SSID i lozinku za svoju Wi-Fi hotspot

Ako otvorite web preglednik na računaru ili mobilnom uređaju i upišete:

dht11server./

I pritisnite Enter, vidjet ćete temperaturu i vlažnost koju mjeri modul. Očitavanje će se osvježavati svakih 5 sekundi kako je navedeno u koraku 7.

Dodajte Dot na kraju imena, inače Windows neće moći riješiti naziv domene

Na slici 2 možete vidjeti kompletan Visuino dijagram.

U prilogu je i projekt Visuino koji sam stvorio za ovaj Instructable. Možete ga preuzeti i otvoriti u Visuinu:

Preporučuje se: