Sisällysluettelo:
- Vaihe 1: Tarvitsemasi asiat
- Vaihe 2: Hanki DHT11 -kirjastot
- Vaihe 3: Liitännät
- Vaihe 4: Tukiaseman koodi
- Vaihe 5: Viimeinen vaihe: Testaus
Video: ESP8266 NodeMCU -tukiasema (AP) verkkopalvelimelle, jossa on DT11 -lämpötila -anturi ja tulostuslämpötila ja -kosteus selaimessa: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Hei kaverit useimmissa projekteissa käytämme ESP8266: a ja useimmissa projekteissa käytämme ESP8266: ta verkkopalvelimena, joten dataa voidaan käyttää millä tahansa laitteella wifi -yhteyden kautta käyttämällä ESP8266: n isännöimää verkkopalvelinta, mutta ainoa ongelma on, että tarvitsemme toimivan reitittimen että laitteemme on myös yhdistettävä reitittimeen ja meidän on asetettava wifi -tunnuksemme koodiin, joten jos muutat wifi -yhteyttä, sinun on muutettava koodin tunnistetiedot ja sinun on ladattava se uudelleen.: 1- tarvitsemme wifi-yhteyden verkkopalvelimen (reitittimen) isännöimiseen 2- joka kerta, jos wifi-yhteys on muutettava, meidän on syötettävä kirjautumistiedot ja ladattava koodi uudelleen. wifi -yhteyden avulla voimme saada ESP8266: n luomaan oman wifi -yhteyden, joten jos muodostamme yhteyden tähän wifi -yhteyteen, voimme käyttää ESP8266: n verkkopalvelinta, joten periaatteessa isännöimme verkkopalvelinta, jossa on ESP8266 ja jossa on tukiasema. tulee luomaan verkkopalvelin, joka käyttää tukiasemaa ESP8266: n kanssa, ja yhdistämme DHT11 -anturin sekä tulostuslämpötilan ja kosteuden verkkopalvelinsivulle.
Vaihe 1: Tarvitsemasi asiat
1x ESP 8266 Nodemcu: 1x DHT11: 1x leipälauta:.: Harvat hyppääjät:
Vaihe 2: Hanki DHT11 -kirjastot
Avaa Arduino IDE ja valitse Luonnos> Sisällytä kirjasto> Hallitse kirjastoja. Kirjastohallinnan pitäisi avautua. Etsi "DHT" hakukentästä ja asenna DHT -kirjasto Adafruitista. Kun olet asentanut DHT -kirjaston Adafruitista, kirjoita hakukenttään "Adafruit Unified Sensor". Etsi kirjasto vierittämällä se alas ja asenna se. Kirjastojen asentamisen jälkeen käynnistä Arduino IDE uudelleen.
Vaihe 3: Liitännät
Piiri on erittäin helppo liittää kaikki Kuten skmatiikassa on esitetty
Vaihe 4: Tukiaseman koodi
Aiemmista ohjeistani aion muuttaa näiden ohjeiden verkkopalvelinkoodia:
Kopioi alla oleva koodi:
#Sisällytä "Arduino.h"#Sisällytä "ESP8266WiFi.h"
#include "Hash.h"
#include "ESPAsyncTCP.h"
#include "ESPAsyncWebServer.h"
#include "Adafruit_Sensor.h"
#sisältää "DHT.h"
const char* ssid = "ESP8266"; const char* password = "password";#define DHTPIN 5 // DHT -anturiin kytketty digitaalinen nasta // Poista käytettävän anturin tyyppi: //#define DHTTYPE DHT11 // DHT 11#define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE); // nykyinen lämpötila ja kosteus, päivitetty silmukassa () float t = 0.0; float h = 0.0; // Luo AsyncWebServer -objekti porttiin 80AsyncWebServer -palvelin (80); // Yleensä kannattaa käyttää "unsigned long" -muuttujia, jotka pitävät aikaa // Arvo muuttuu nopeasti liian suureksi, jotta int voidaan tallentaa pitkäaikainen edellinenMillis = 0; // tallentaa DHT: n viimeisimmän päivityksen // Päivittää DHT -lukemat 10 sekunnin välein pitkä aikaväli = 10000; const char index_html PROGMEM = R "rawliteral (ESP8266 DHT -palvelin
Lämpötila % LÄMPÖTILA % ° C
Kosteus % KOSTEUS % %) rawliteral "; // Korvaa paikkamerkin DHT -arvoillaString -prosessori (const String & var) {//Serial.println(var); if (var ==" TEMPERATURE ") {return String (t);} else if (var == "KOSTEUS") {return String (h);} return String ();} void setup () {// Sarjaportti virheenkorjausta varten Serial.begin (115200); dht.begin (); Serial.print ("Asetus AP (Tukiasema)… "); // Poista salasanaparametri, jos haluat, että tukiasema (tukiasema) on avoin WiFi.softAP (ssid, salasana); IPAddress IP = WiFi.softAPIP (); Serial.print (" AP IP -osoite: "); Serial.println (IP); // Tulosta ESP8266 Paikallinen IP -osoite Serial.println (WiFi.localIP ()); // Reitti pää- / verkkosivun palvelimelle.on (" / ", HTTP_GET, (AsyncWebServerRequest *-pyyntö) {request-> send_P (200, "text/html", index_html, prosessori);}); server.on ("/lämpötila", HTTP_GET, (AsyncWebServerRequest *-pyyntö) {request- > send_P (200, "teksti/tavallinen", merkkijono (t).c_str ());}); server.on ("/kosteus", HTTP_GET, (AsyncWebServerRequest *-pyyntö) {request-> send_P (200, "teksti/tavallinen", Jono (h).c_str ()); }); // Käynnistä palvelinpalvelin.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = intervalli) {// tallenna viimeksi päivitetty DHT -arvot previousMillis = currentMillis; // Lue lämpötila celsiusasteina (oletus) float newT = dht.readTemperature (); // Lue lämpötila Fahrenheitina (isFahrenheit = true) // float newT = dht.readTemperature (true); // jos lämpötilan lukeminen epäonnistui, älä muuta t -arvoa, jos (isnan (newT)) {Serial.println ("Epäonnistui lukea DHT -anturista! "); } muu {t = newT; Sarja.println (t); } // Lue Kosteuden float newH = dht.readHumidity (); // jos kosteuden lukeminen epäonnistui, älä muuta h -arvoa, jos (isnan (newH)) {Serial.println ("Lukeminen epäonnistui DHT -anturista!"); } muu {h = newH; Sarja.println (h); }}} Ennen kuin lähetät koodin, muista kirjoittaa seuraavat asiat: const char* ssid = "ESP8266"; // mitä tahansa wifi -palvelua haluatconst char* password = "password"; // pass liittääksesi yllä olevaan ssidSet ESP8266 tukiasemana: Jos haluat asettaa esp8266: n liityntäpisteeksi, käytämme softAP -komentoa alla olevan kuvan mukaisesti; Wi -Fi.softAP (ssid, salasana); On myös muita valinnaisia parametreja, jotka voit siirtää softAP () -menetelmään. Tässä on kaikki parametrit: Jos avaat sarjamonitorin, näet tukiaseman IP -osoitteen. Tämä tapahtuu noudattamalla koodin osaa. IPAddress IP = WiFi.softAPIP (); Serial.print ("AP IP address:"); Serial.println (IP); Oletuksena IP -osoite on: 192.168.4.1
Vaihe 5: Viimeinen vaihe: Testaus
Kun olet ladannut koodin, avaa matkapuhelimesi/tietokoneesi wifi ja muodosta yhteys esp8266 wifi -verkkoon (mitä koodia syöttämäsi SSID ja salasana käyttävät sitä). https://192.168.4.1.) ja voit nähdä selaimesi lämpötilan ja kosteuden minun omana. Emme käyttäneet mitään wifi -verkkoa tämän suorittamiseen, joten esp8266 -tukiasema toimii näin.
Suositeltava:
Sähkebotti, jossa on NodeMCU (ESP8266): 3 vaihetta
Sähkebotti, jossa on NodeMCU (ESP8266): Tarvitsetko botin, joka antaa ilmoituksia järjestelmästäsi? tai tehdä jotain vain lähettämällä viestin? Telegram Bot on ratkaisusi! Tässä opetusohjelmassa käytän Telegram Webiä ja BotFatheria botin luomiseen
Esp8266 -pohjainen tehostusmuunnin, jossa on hämmästyttävä Blynk -käyttöliittymä, jossa on palautesäädin: 6 vaihetta
Esp8266 -pohjainen tehostusmuunnin hämmästyttävällä Blynk -käyttöliittymällä, jossa on palautesäädin: Tässä projektissa näytän sinulle tehokkaan ja yleisen tavan DC -jännitteiden lisäämiseen. Näytän sinulle, kuinka helppoa voi olla tehostusmuuntimen rakentaminen Nodemcun avulla. Rakennetaan se. Se sisältää myös näytön volttimittarin ja palautteen
ESP32 -liitäntä, jossa on SSD1306, jossa on MicroPython: 5 vaihetta
ESP32 -liitäntä SSD1306: lla, jossa on MicroPython: Mikropython on pythonin optimoima ja pieni jalanjälki. Mikropython on saatavana monille ohjainperheille, mukaan lukien ESP8266, ESP32, Ardui
ArOZ -järjestelmä Raspberry Pi -verkkopalvelimelle: 5 vaihetta
ArOZ -järjestelmä Raspberry Pi -verkkopalvelimelle: Oletko koskaan halunnut jakaa musiikkia tai videota ystävillesi, kun Internet -yhteyttä ei ole tai se on hidas? Voit käyttää Bluetoothia tai NFC: tä, mutta tässä on toinen ratkaisu, ArOZ Online, avoimen lähdekoodin helppokäyttöinen ja asennettava videoalusta ja
Uuden virtuaalipalvelimen asentaminen Apache -verkkopalvelimelle: 3 vaihetta
Uuden virtuaalipalvelimen asentaminen Apache -verkkopalvelimelle: Tämän opetusohjelman tarkoituksena on käydä läpi uuden Apache -verkkopalvelimen virtuaalipalvelimen määritys ja käynnistäminen. Virtuaalinen isäntä on "profiili" joka tunnistaa, mitä DNS -isäntää (esim. www.MyOtherhostname.com) kutsutaan