Indholdsfortegnelse:
- Trin 1: Saml dine værktøjer
- Trin 2: Tilslutning af hardware
- Trin 3: Kode
- KONTROL ALT
- SHT25 Sensor I2C Mini -modul
- Trin 4: Konklusion
Video: ESP8266 Weather Monitor Web Server (Uden Arduino): 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
"Tingenes internet" (IoT) bliver et stadig større voksende samtaleemne dag for dag. Det er et koncept, der ikke kun har potentiale til at påvirke, hvordan vi lever, men også hvordan vi arbejder. Fra industrimaskiner til bærbare enheder - ved hjælp af indbyggede sensorer til at indsamle data og handle på disse data på tværs af et netværk.
Så vi besluttede at bygge et meget simpelt, men interessant projekt med konceptet - IoT.
I dag vil vi bygge en grundlæggende webserver til at overvåge vejret omkring os. Vi kan se fugtigheds- og temperaturværdierne på vores mobile enheder og notebooks. Som jeg sagde, det er en enkel og grundlæggende webside, der giver dig en idé om det. Du kan opgradere og ændre projektet til dine behov, ligesom du kan indsamle dataene og bruge dem til fremtidig brug, du kan oprette en hjemmeautomatisering ved at styre dine husholdningsapparater eller alt, hvad du kan forestille dig. Husk altid - Fantasiens kraft gør os uendelige (af John Muir).
Så lad os begynde !!
Trin 1: Saml dine værktøjer
1 SHT25 Fugtigheds- og temperatursensor
SHT25 fugtigheds- og temperatursensoren med høj nøjagtighed i Sensirion er blevet en industristandard med hensyn til formfaktor og intelligens: Indlejret i en reflow loddbar Dual Flat No leads (DFN) pakke med 3 x 3 mm fodprint og 1,1 mm højde giver kalibreret, lineariserede sensorsignaler i digitalt, I2C -format.
1 Adafruit Huzzah ESP8266
ESP8266-processoren fra Espressif er en 80 MHz mikrokontroller med en fuld WiFi-front-end (både som klient og adgangspunkt) og TCP/IP-stak med DNS-understøttelse også. ESP8266 er en utrolig platform til udvikling af IoT -applikationer. ESP8266 giver en moden platform til overvågning og kontrol af applikationer ved hjælp af Arduino Wire Language og Arduino IDE.
1 ESP8266 USB -programmerer
Denne ESP8266 -værtsadapter blev designet specielt til Adafruit Huzzah -versionen af ESP8266, hvilket muliggjorde I²C -interface.
1 I2C -tilslutningskabel
Trin 2: Tilslutning af hardware
Tag ESP8266 og skub den forsigtigt hen over USB -programmereren. Tilslut derefter den ene ende af I2C -kablet til SHT25 -sensoren og den anden ende til USB -programmereren. Og du er færdig. Ja, du læste det rigtigt. Ingen hovedpine, det lyder fedt. Ret !!
Ved hjælp af ESP8266 USB Programmerer er det meget let at programmere ESP. Alt du skal gøre er at tilslutte sensoren til USB Programmer, og du er klar til at gå. Vi foretrækker at bruge dette produktsortiment, fordi det gør det meget lettere at tilslutte hardwaren. Uden disse plug and play USB Programmer er der stor risiko for at lave en forkert forbindelse. En dårlig ledning kan dræbe din wifi såvel som din sensor.
Du skal ikke bekymre dig om at lodde stifterne på ESP til sensoren eller læse stiftdiagrammerne og databladet. Vi kan bruge og arbejde på flere sensorer samtidigt, du skal bare lave en kæde.
Her tjekker du hele produktsortimentet efter dem.
Bemærk: Sørg for, at forbindelseskablets brune ledning er tilsluttet jordens terminal på sensoren, mens USB -programmereren er tilsluttet, mens du tilslutter.
Trin 3: Kode
ESP8266 -koden til SHT25 kan downloades fra vores github -lager
Inden du går videre til koden, skal du læse instruktionerne i Readme -filen og konfigurere din ESP8266 i henhold til den. Det tager kun 5 minutter at konfigurere ESP.
Download nu (eller git pull) koden og åbn den i Arduino IDE.
Kompilér og upload koden, og se output på Serial Monitor.
Bemærk: Før du uploader, skal du sørge for at indtaste dit SSID -netværk og din adgangskode i koden.
Kopier IP -adressen på ESP8266 fra Serial Monitor og indsæt den i din webbrowser.
Du vil se en webserver med fugt- og temperaturaflæsning. Sensorens output på Serial Monitor og Web Server er vist på billedet ovenfor.
For din komfort kan du også kopiere den fungerende ESP -kode til denne sensor herfra:
#omfatte
#omfatte
#omfatte
#omfatte
// SHT25 I2C -adressen er 0x40 (64)
#define Addr 0x40
const char* ssid = "dit ssid -netværk";
const char* password = "dit kodeord"; flyde fugtighed, cTemp, fTemp;
ESP8266WebServer -server (80);
void handleroot ()
{usignerede int -data [2];
// Start I2C -transmission
Wire.beginTransmission (Addr); // Send kommando for fugtighedsmåling, NO HOLD master Wire.write (0xF5); // Stop I2C -transmission Wire.endTransmission (); forsinkelse (500);
// Anmod om 2 bytes data
Wire.requestFrom (Addr, 2);
// Læs 2 bytes data
// luftfugtighed msb, fugtighed lsb hvis (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read ();
// Konverter dataene
fugtighed = (((data [0] * 256,0 + data [1]) * 125,0) / 65536,0) - 6;
// Output data til Serial Monitor
Serial.print ("Relativ fugtighed:"); Serielt tryk (fugtighed); Serial.println (" %RH"); }
// Start I2C -transmission
Wire.beginTransmission (Addr); // Send kommando for temperaturmåling, NO HOLD master Wire.write (0xF3); // Stop I2C -transmission Wire.endTransmission (); forsinkelse (500);
// Anmod om 2 bytes data
Wire.requestFrom (Addr, 2);
// Læs 2 bytes data
// temp msb, temp lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read ();
// Konverter dataene
cTemp = (((data [0] * 256,0 + data [1]) * 175,72) / 65536,0) - 46,85; fTemp = (cTemp * 1,8) + 32;
// Output data til Serial Monitor
Serial.print ("Temperatur i Celsius:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Temperatur i Fahrenheit:"); Serial.print (fTemp); Serial.println ("F"); } // Outputdata til webserverserver.sendContent ("<meta http-equiv = 'refresh' content = '5'""
KONTROL ALT
www.controleverything.com
SHT25 Sensor I2C Mini -modul
"); server.sendContent ("
Relativ luftfugtighed = " + streng (luftfugtighed) +" %RH "); server.sendContent ("
Temperatur i Celsius = " + String (cTemp) +" C "); server.sendContent ("
Temperatur i Fahrenheit = " + streng (fTemp) +" F "); forsinkelse (300);}
ugyldig opsætning ()
{// Initialiser I2C -kommunikation som MASTER Wire.begin (2, 14); // Initialiser seriel kommunikation, indstil baudhastighed = 115200 Serial.begin (115200);
// Opret forbindelse til WiFi -netværk
WiFi.begin (ssid, adgangskode);
// Vent på forbindelsen
mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println (""); Serial.print ("Tilsluttet"); Serial.println (ssid);
// Få IP -adressen på ESP8266
Serial.print ("IP -adresse:"); Serial.println (WiFi.localIP ());
// Start serveren
server.on ("/", handleroot); server.begin (); Serial.println ("HTTP -server startet"); }
hulrum ()
{server.handleClient (); }
Trin 4: Konklusion
SHT25 fugt- og temperatursensorserien tager sensorteknologi til et nyt niveau med uovertruffen sensorydelse, række varianter og nye funktioner. Velegnet til en lang række markeder, såsom husholdningsapparater, medicinsk, IoT, HVAC eller industriel. Ved hjælp af ESP8266 kan vi øge kapaciteten til en større længde. Vi kan styre vores apparater og overvåge deres ydeevne fra vores notebooks og mobile enheder. Vi kan gemme og administrere dataene online og studere dem når som helst for ændringer.
Vi kan bruge sådanne ideer i medicinske industrier, for et øjeblik skal du bare sige at styre en ventilation i et patientrum, når luftfugtighed og temperatur stiger automatisk. Det medicinske personale kan overvåge dataene online uden at gå ind i lokalet.
Håber du kan lide indsatsen og tænk over de flere muligheder med den. Som jeg sagde ovenfor, er fantasi nøglen.:)
For mere information om SHT25 og ESP8266, tjek nedenstående links:
- SHT25 Datablad til fugt- og temperatursensor
- ESP8266 Datablad
For mere information, besøg ControlEverything.
Anbefalede:
DIY håndfri desinfektionsdispenser uden kontakt uden en Arduino eller en mikrokontroller: 17 trin (med billeder)
DIY Non Contact Hand Sanitizer Dispenser Uden en Arduino eller en mikrokontroller: Som vi alle ved, ramte COVID-19-udbruddet verden og ændrede vores livsstil. I denne tilstand er alkohol og hånddesinfektionsmidler vitale væsker, men de skal bruges korrekt. Berøring af alkoholbeholdere eller håndsprit med inficerede hænder
NaTaLia Weather Station: Arduino Solar Powered Weather Station Gjorde den rigtige vej: 8 trin (med billeder)
NaTaLia Weather Station: Arduino Solar Powered Weather Station Gjorde den rigtige vej: Efter 1 års vellykket drift på 2 forskellige steder deler jeg mine solcelledrevne vejrstation projektplaner og forklarer, hvordan det udviklede sig til et system, der virkelig kan overleve over lang tid perioder fra solenergi. Hvis du følger
Naviger robot med skosensorer, Uden GPS, Uden kort: 13 trin (med billeder)
Naviger robot med skosensorer, Uden GPS, Uden kort: Robotten bevæger sig i en forudprogrammeret sti og sender (over bluetooth) sine faktiske bevægelsesoplysninger til en telefon til sporing i realtid. Arduino er forprogrammeret med sti og oblu bruges til at registrere robottens bevægelse. oblu sender bevægelse til
Brug Orange Pi Uden Skærm ved hjælp af SSH og VNC Server: 6 trin
Brug Orange Pi Uden Skærm ved hjælp af SSH og VNC Server: Orange Pi er som en minicomputer. Det har alle grundlæggende porte, som en normal computer har. Ligesom HDMIUSBEthernetIT har nogle særlige specielle porte Ligesom USB OTGGPIO HeadersSD -kortspor Parallel kameraport Hvis du vil betjene orange pi, skal du have et behov for
HC - 06 (Slave Module) Ændring af "NAME" uden brug "Monitor Serial Arduino" der "Let fungerer": Fejlfri måde!: 3 trin
HC - 06 (slave -modul) Ændring af "NAME" uden brug "Monitor Serial Arduino" … der "Let fungerer": Fejlfri måde!: Efter " Lang tid " forsøger at ændre navn på HC - 06 (slave -modul) ved hjælp af " seriel monitor af Arduino, uden " Succes ", jeg fandt en anden nem måde og jeg deler nu! Hav det sjovt venner