INHOUDSOPGAWE:
- Stap 1: Komponente
- Stap 2: Koppel die DHT11 aan die NodeMCU ESP8266 -module
- Stap 3: Begin Visuino en kies die tipe ESP8266 -bord
- Stap 4: In Visuino: Stel 'n gasheernaam en toegangspunt in
- Stap 5: In Visuino: Voeg 'n TCP/IP -bedienersok vir die kommunikasie by
- Stap 6: In Visuino: Voeg DTH11 en geformateerde tekskomponent by met 2 analoog kanale
- Stap 7: In Visuino: Stel geformateerde teks in vir die bedienerreaksie
- Stap 8: Koppel die DHT11 -komponent in Visuino
- Stap 9: In Visuino: Voeg komponent van Edge Detect by en verbind dit
- Stap 10: In Visuino: Koppel die geformateerde tekskomponent en voeg by en koppel vertragingskomponent
- Stap 11: Genereer, stel op en laai die Arduino -kode op
- Stap 12: En speel …
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
ESP8266-modules is uitstekende selfstandige beheerders met 'n lae koste met ingeboude Wi-Fi, en ek het al 'n aantal instruksies daaroor gemaak.
DTH11/DTH21/DTH22 en AM2301 is baie gewild gekombineerde Arduino-sensors vir temperatuur en humiditeit, en ek het ook 'n aantal instruksies saam met hulle gemaak, insluitend 'n Instrueerbare op afstandtermometer en humiditeitsensor met 2 ESP8266 wat op hul eie privaat Wi-Fi-netwerk verbind is.
In hierdie instruksies sal ek u wys hoe u 'n temperatuur- en humiditeitswebbediener met ESP8266 en DHT11 kan maak en op u bestaande Wi-Fi-netwerk vanaf verskeie toestelle met 'n webblaaier daaraan kan koppel.
Stap 1: Komponente
- OneNodeMCU ESP8266-bord (ek het NodeMCU 0.9-weergawe gebruik, maar enige ander, of selfs alleenstaande ESP-12 of ESP-01 sal werk)
- Een DHT11 -sensormodule wat ek gekry het uit hierdie goedkoop 37 sensorset
- 3 vroulike-vroulike springdrade
Stap 2: Koppel die DHT11 aan die NodeMCU ESP8266 -module
- Koppel die krag (rooi draad), grond (swart draad) en data (grys draad) aan die DHT11 -module (prent 1 toon 2 verskillende tipes DHT11 -sensormodules. Soos u kan sien, kan die penne verskil, dus versigtig!)
- Koppel die ander kant van die gronddraad (swart draad) aan die grondpen van die ESP8266 -module (prent 2)
- Koppel die ander kant van die kragdraad (rooi draad) aan die 3.3V -kragpen van die ESP8266 -module (prent 2)
- Koppel die ander kant van die datadraad (grys draad) aan die digitale pen 2 van die ESP8266 -module (prent 3)
- Foto 4 toon waar die grond, 3.3V krag en digitale 2 penne van die NodeMCU 0.9 is
Stap 3: Begin Visuino en kies die tipe ESP8266 -bord
Om die Arduino te begin programmeer, moet u die Arduino IDE van hier af laat installeer:
Hou in gedagte dat daar 'n paar kritieke foute in Arduino IDE 1.6.6 is
Maak seker dat u 1.6.7 of hoër installeer, anders werk hierdie instruksie nie!
As u dit nog nie gedoen het nie, volg die stappe in hierdie instruksie om die Arduino IDE op te stel om ESP 8266 te programmeer
Die Visuino: https://www.visuino.com moet ook geïnstalleer word.
- Begin Visuinoas wat in die eerste prentjie getoon word
- Klik op die knoppie "Tools" op die Arduino -komponent (prent 1) in Visuino
- As die dialoog verskyn, kies "NodeMCU ESP-12" soos op prent 2 getoon
Stap 4: In Visuino: Stel 'n gasheernaam en toegangspunt in
Eerstens moet ons die module instel om aan te sluit op die bestaande toegangspunt en HostName daaraan toe te ken sodat ons dit op die netwerk kan ontdek.
- Brei in die Object Inspector die eiendom "Modules" uit, dan die sub -eiendom "WiFi"
- Stel die waarde van die "HostName" -eienskappe in die Object Inspector op "dht11server" (prent 1)
- Brei in die Object Inspector die sub -eienskap "AccessPoints" van die "WiFi" uit en klik op die "…" knoppie langs die waarde daarvan (prent 2)
- Kies in die "AccessPoins" -redakteur "WiFi Access Point" in die regter aansig en klik dan op die "+" knoppie aan die linkerkant om die toegangspunt by te voeg (prent 2)
- Stel in die Object Inspector die waarde van die "SSID" -eienskappe op die SSID van u Wi-Fi-hotspot (toegangspunt) (prent 4)
- As u Wi-Fi-hotspot (toegangspunt) 'n wagwoord benodig, stel die wagwoord in die waarde van die eiendom "Wagwoord" in die objekinspekteur (prent 4)
- Maak die dialoog "AccessPoints" toe
Stap 5: In Visuino: Voeg 'n TCP/IP -bedienersok vir die kommunikasie by
Vervolgens moet ons 'n TCP/IP Server -aansluiting vir die kommunikasie byvoeg.
- Klik in die Object Inspector op die '…' knoppie langs die waarde van die 'Sockets' sub -eiendom van die WiFi (prent 1)
- Kies 'TCP/IP Server' in die Sockets -redakteur en klik dan op die '+' knoppie (prent 2) om een by te voeg (prent 3)
- Maak die dialoog "Sockets" toe
Stap 6: In Visuino: Voeg DTH11 en geformateerde tekskomponent by met 2 analoog kanale
Om die temperatuur en humiditeit van die DHT11 te beheer en te lees, moet ons 'n komponent daarvoor in Visuino byvoeg.
Ons moet ook die webblad uit die data genereer. Die bladsy is slegs 'n HTML -teksdokument, sodat ons die geformateerde teks -komponent kan gebruik om dit te genereer.
- Tik "dht" in die filterkas van die komponentgereedskap en kies dan die komponent "Humiditeits- en termometer DHT11/21/22/AM2301" (prent 1) en laat dit in die ontwerparea val.
- Tik "vorm" in die filterkassie van die komponentgereedskap, kies dan die "Opgemaakte teks" -komponent (prent 2) en laat dit in die ontwerparea val
- Klik op die knoppie "Tools" van die komponent FormattedText1 (prent 3)
- Kies in die Elements -redakteur die analoog element aan die regterkant en klik 2 keer op die "+" - knoppie aan die linkerkant (prent 4) om 2 daarvan by te voeg (prent 5)
- Sluit die redakteur "Elements"
Stap 7: In Visuino: Stel geformateerde teks in vir die bedienerreaksie
Ons moet die HTML -teks spesifiseer wat gegenereer sal word wanneer 'n webkliënt met die bediener verbind word.
Ons sal die verbinding spesifiseer om te sluit nadat die data wat ek gestuur het, en ons sal die blaaier ook opdrag gee om weer na 5 sekondes weer aan te sluit (Refresh) deur 'Refresh: 5' by die dokument te voeg. Op hierdie manier sal die webblad elke 5 sekondes verfris.
- Kies in die ontwerpgebied die komponent FormattedText1 (prent 1)
- Kies in die Object Inspector die eienskap "Teks" en klik op die "…" knoppie langs die waarde daarvan (prent 1)
- Tik in die "Teks" -redakteur: "HTTP/1.1 200 OK" "Inhoudstipe: teks/html" "Verbinding: sluit" "Verfris: 5" "" """""""" Temperatuur: %0 "" Humiditeit: %1 "" "" "" (prent 2) Die %0 word vervang met die waarde van AnalogElement1, en %1 word vervang met die waarde van AnalogElement2
- Klik op die OK -knoppie om die dialoog te sluit
Stap 8: Koppel die DHT11 -komponent in Visuino
- Koppel die uitsetpen "Temperatuur" van die HumidityThermometer1 -komponent aan die "In" -pen van die AnalogElement1 van die FormattedText1 -komponent (prent 1)
- Koppel die "Humidity" -uitgangspen van die HumidityThermometer1 -komponent aan die "In" -pen van die AnalogElement2 van die FormattedText1 -komponent (prent 2)
- Koppel die "Sensor" -pen van die HumidityThermometer1 -komponent aan die "Digitale" invoerpen van die "Digitale [2]" kanaal van die Arduino -komponent (prent 3)
Stap 9: In Visuino: Voeg komponent van Edge Detect by en verbind dit
Ons moet die HTML -teks stuur elke keer as daar 'n nuwe verbinding is. Voordat ons stuur, moet ons 'n bietjie wag, aangesien die webblaaiers 'n versoek moet stuur voordat hulle die resultaat verwag. Om dit te kan doen, gebruik ons die vertragingskomponent wat gekoppel is aan die "Connected" -pen van die TCP/IP -bedieneraansluiting.
- Tik "vertraging" in die filterkassie van die komponentgereedskap, kies dan die "Vertraging" -komponent (prent 1) en laat dit in die ontwerparea val
- Stel die waarde van die "Interval (us)" -eienskappe in die Eienskappe in op 200000 (prent 2)
- Koppel die "Connected" -pen van die "Modules. WiFi. Sockets. TCPServer1" van die "NodeMCU ESP-12" -komponent aan die "In" -pen van die Delay1-komponent (prent 3)
- Koppel die "Out" -pen van die Delay1 -komponent aan die "Clock" -invoerpen van die FormattedText1 -komponent (prent 4)
Stap 10: In Visuino: Koppel die geformateerde tekskomponent en voeg by en koppel vertragingskomponent
- Koppel die "Out" -pen van die FormattedText1-komponent aan die "In" -pen van die "Modules. WiFi. Sockets. TCPServer1" van die "NodeMCU ESP-12" -komponent (prent 1)
- Tik 'vertraging' in die filterkassie van die komponentgereedskap, kies dan die 'Vertraging' -komponent (prent 2) en laat dit in die ontwerparea val
- Koppel die "Out" -pen van die FormattedText1 -komponent aan die "In" -pen van die Delay2 -komponent (prent 3)
- Koppel die "Out" -pen van die Delay2-komponent aan die "Disconnect" -invoerpen van die "Modules. WiFi. Sockets. TCPServer1" van die "NodeMCU ESP-12" -komponent (prent 4)
Die vertragingskomponent ontkoppel die aansluiting kort nadat die teks gestuur is.
Stap 11: Genereer, stel op en laai die Arduino -kode op
- Druk in Visuino F9 of klik op die knoppie op prent 1 om die Arduino -kode te genereer en maak die Arduino IDE oop
- Koppel die NodeMCU -module met 'n USB -kabel aan op die rekenaar
- Kies die bordtipe en die seriële poort soos ek u in hierdie instruksies getoon het
- Klik in die Arduino IDE op die oplaai -knoppie om die kode saam te stel en op te laai (prent 2)
Stap 12: En speel …
Baie geluk! U het 'n Wi-Fi-temperatuur- en humiditeitswebbediener gemaak.
Op prent 1 en in die video kan u die gekoppelde en aangeskrewe projek sien. Ek het 'n klein USB Power Bank gebruik om die module aan te dryf.
Maak seker dat u in die projek op stap 4 die korrekte SSID en wagwoord vir u Wi-Fi-hotspot ingevoer het
As u 'n webblaaier op u rekenaar of mobiele toestel oopmaak en tik:
dht11server./
En druk Enter, u sal die temperatuur en humiditeit wat deur die module gemeet word, sien. Die lesing word elke 5 sekondes verfris soos in stap 7 gespesifiseer.
Maak seker dat u die punt aan die einde van die naam byvoeg, anders kan Windows nie die domeinnaam oplos nie
Op prent 2 kan u die volledige Visuino -diagram sien.
Die Visuino -projek wat ek vir hierdie Instructable geskep het, is ook aangeheg. U kan dit aflaai en oopmaak in Visuino: