Indholdsfortegnelse:

Forlængersensorer Nodemcu ESP8266 til Weewx: 8 trin (med billeder)
Forlængersensorer Nodemcu ESP8266 til Weewx: 8 trin (med billeder)

Video: Forlængersensorer Nodemcu ESP8266 til Weewx: 8 trin (med billeder)

Video: Forlængersensorer Nodemcu ESP8266 til Weewx: 8 trin (med billeder)
Video: MQTT 101: Integrate your DIY Devices into Home Assistant 2024, Juli
Anonim
Forlængersensorer Nodemcu ESP8266 til Weewx
Forlængersensorer Nodemcu ESP8266 til Weewx

Dette kan instrueres i at tilføje sensorer til weewx vejrstationssoftware.

Hvis du ikke har weewx, kan du lære nogle ting i denne vejledning.

du har brug for en grundlæggende viden om Arduino -kode og hvordan du uploader på en enhed.

Du finder weewx -oplysninger her:

Det du bygger er 2 enheder:

1 Enhed sender temperatur og fugtighed til weewx -softwaren.

1 Enhed sender jordtemperaturer på forskellige jorddybder til weewx -softwaren.

Vores første enhed er en BME 280 -sensor.

Vores anden enhed er en kæde med 3 DS18B20 temperatursensorer. (Du kan tilføje flere, hvis du vil).

Lad os begynde:

Trin 1: Hvad du har brug for …

Hvad du har brug for…
Hvad du har brug for…
Hvad du har brug for…
Hvad du har brug for…
Hvad du har brug for…
Hvad du har brug for…

Weewx i gang + adgang til weewx server. (for eksempel et hindbær PI 3).

2 Nodemcu ESP8266 moduler

3 eller flere DS18B20 sensorer

1 BME 280 kombinationsføler

1 Aluminiumsrør eller lignende med en diameter på 10 mm og 1 mm vægtykkelse og ca. 1 meter lang

1 Vandtæt kuffert med kabelforskruning og låsemøtrik.

1 5V strømkilde (mobil læsser f.eks.).

Nogle ledninger og loddetøj.

Du finder BME280 sensor og Nodemcu moduler på eBay.

Til aluminiumsrør vælger jeg en lokal isenkræmmer

Til DS18B20 og vandtæt kuffert bruger jeg www.reichelt.de

www.reichelt.de/DS-18B20/3/index.html?ACTI…

www.reichelt.de/EL-FK-110/3/index.html?ACT…

og gruppen af kabelforskruninger med låsemøtrikker

www.reichelt.de/Kabelverschraubungen-Bopla…

Til bme280 kan du valgfrit bruge en forgreningsdåse

www.reichelt.de/Installationsmaterial/EL-D…

Trin 2: Start med BME 280 Sensor Hardware Setup

Start med BME 280 Sensor Hardware Setup
Start med BME 280 Sensor Hardware Setup

Lod strimlen i BME280.

Tilslut derefter BME til Nodemcu:

BME VIN til 3,3V

BME GND til GND

SCL til D4

SDA til D3

Hvis du vil, kan du sætte enheden i et hus, men sørg for, at der er nogle huller i huset, så fugtigheds- og temperaturværdierne er korrekte.

Trin 3: BME 280 Nodemcu ESP8266 -kode

BME 280 Nodemcu ESP8266 Kode
BME 280 Nodemcu ESP8266 Kode
BME 280 Nodemcu ESP8266 Kode
BME 280 Nodemcu ESP8266 Kode
BME 280 Nodemcu ESP8266 Kode
BME 280 Nodemcu ESP8266 Kode

Til koden kan du bruge mine github -lagre:

github.com/Landixus/BME280_TO_SERVER_WEEWX

Ino -filen har brug for nogle indlæg fra dig:

IP -adressen på din weewx -server eller URL

og ruten, hvor du har php -filen, skal du sørge for, at området er skrivbart.

jeg vælger public_html dir, fordi det er en hjemmeserver.

Hvis du vil klone git -lagrene og have git installeret på din server, kan du klone med kommandoen:

"git -klon" https://github.com/Landixus/BME280_TO_SERVER_WEEWX"

Nu skal vi lave nogle ting på vores weewx -server.

Du skal lave stierne til dine indstillinger!

i

/home/weewx/public_html

oprette mappedata

opret en bme.txt i datamappen for eksempel med:

nano bme.txt

filen skal være tom.

gør det skrivbart med:

chmod -R 777 bme.txt

(du gør aldrig dette på en server, der er tilgængelig på internettet!)

i mappen

/home/weewx/public_html

du sætter bme.php af mit github -repo.

Tricket er, at INO -filen sender værdier til bme.php og bme.php skriver dataene i bme.txt

Næste gang skal vi tilføje tjenesten i weewx

læg bme.py i mappen

/home/weewx/bin/user

Åbn din weewx.conf i mappe

/hjem/weewx

det er altid godt at have en sikkerhedskopi, før du redigerer denne fil!

gå ned til line Engine og få linjen til at ligne min:

[Motor]

# Dette afsnit angiver de tjenester, der skal køres. De er

# grupperet efter type og rækkefølgen af tjenester inden for hver gruppe

# bestemmer den rækkefølge, som tjenesterne vil blive kørt i.

data_services = user.pond. PondService, user.bme.bme

genstart weewx med:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

med kommandoen

hale -f/var/log/syslog

du kan kigge i logfilen efter fejl eller succes, se efter en output bme: fundet værdi af …

Giv din server nogle minutter til at generere, i "min" weewx.conf hvert 5. minut kommer der et output.

Kontroller dine stier, hvis du har en fejlmeddelelse.

Hvis du har værdier, kan du gå til at vise det på websiden:

åben hud. konf. i

/home/weewx/skins/Standard

gå til:

# Denne er sandsynligvis specifik for min station! Tilføj

extraTemp3 = BME1 TemperaturextraHumid1 = BME1 Fugtighed

gem filen og åbn i den samme mappe

index.html.tmpl

se efter en streg:

#if $ day.extraTemp..

#Afslut Hvis

efter den første #slut, hvis du finder, skal du sætte din BME -sensor med:

^^ undskyld, men det er ikke muligt at sætte dette som en tekst:(gem filen og afslut.

det er ikke nødvendigt at genstarte weewx.

Nu skal du fodre NODEMCU ESP8266 med Arduino -filen.

Glem ikke at konfigurere din wifi og adresser i filen.

Efter indlæsning kontrolleres det serielle output for fejl.

Efter en kort periode skal du se værdierne på dit weewx -websted.

Trin 4: Succes BME280 Sensorenhed + Fejlfinding

Succes BME280 Sensorenhed + Fejlfinding
Succes BME280 Sensorenhed + Fejlfinding
Succes BME280 Sensorenhed + Fejlfinding
Succes BME280 Sensorenhed + Fejlfinding

Nogle tips til dig:

Åbn mere end 1 konsoller via spartel

foretag dine ændringer på 1 konsol, og læs din syslog live på den anden konsol med:

hale -f/var/log/syslog

Hvis du har en fejl, skal du først se til din logfil.

Dit output skal ligne mit:

Trin 5: Opsætning af jordsensor

Opsætning af soilsensor hardware
Opsætning af soilsensor hardware
Opsætning af soilsensor hardware
Opsætning af soilsensor hardware
Opsætning af soilsensor hardware
Opsætning af soilsensor hardware

Til DS18B20 -sensoren skal vi lave et bussystem med nogle ledninger og lodning.

Tjek din DS18B20

DATA, GND, VCC

Mellem VCC og DATA har du brug for en 4,7K modstand. Det er nok, hvis du har modstanden ved den første DS18B20

De andre DS18B20 er parallelle med hinanden.

Mål længden efter dine behov. Lod en kæde sammen, jeg har fastgjort tappene med krympeslange.

For en TEST tilslutter du DATA til D3 og VCC til VCC (3.3V) og GND til GND.

For muligheden for dyb søvn skal du vedhæfte en bro mellem RST og D0 (GPIO16)

Du bør ikke lægge kæden i aluminiumsrøret lige nu, foretag dine test før!

Trin 6: DS18B20 Nodemcu ESP8266 -kode

DS18B20 Nodemcu ESP8266 Kode
DS18B20 Nodemcu ESP8266 Kode

Til koden kan du bruge mine GITHUB -depoter:

github.com/Landixus/multipleDS18B20WeeWX

Ino -filen har også brug for nogle indlæg fra dig: IP -adressen på din weewx -server eller URL og ruten, hvor du har lagt php -filen, sørg for, at området er skrivbart, jeg vælger public_html dir, fordi det er en hjemmeserver.

Hvis du vil klone git -lagrene og have git installeret på din server, kan du klone med kommandoen git -klon

Nu skal vi lave nogle ting, som alle arbejder på vores weewx -server.

Du skal lave stierne til dine indstillinger i

/home/weewx/public_html

opret en mappe "data" i datamappen opret en ds18b20.txt f.eks. nano ds18b20.txt txt skal være emtpy. gør det skrivbart med chmod -R 777 ds18b20.txt (du gør dette aldrig på en server, der er tilgængelig på internettet!) i mappen/home/weewx/public_html, du satte ground.php af min github -rep. Tricket er, at INO -filen sender værdier til ground.php og ground.php skriver dataene i ds18b20.txt den næste skal vi tilføje tjenesten i weewx sætte ds18b20.py i mappe/home/weewx/bin/ bruger

Åbn din weewx.conf i mappe /home /weewx

det er altid godt at have en sikkerhedskopi, før du redigerer denne fil!

gå ned til linjen:

[Motor]

# grupperet efter type og rækkefølgen af tjenester inden for hver gruppe

# bestemmer den rækkefølge, som tjenesterne vil blive kørt i.

prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 tilføj inline efter et komma

"user.ds18b20.ds18b20" skal ligne den øverste linje ^^

genstart weewx med:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

med kommandoen tail -f/var/log/syslog kan du kigge i logfilen for fejl eller succes se efter en output ds18b20: fundet værdi af Giv din server nogle minutter at generere, i min weewx.conf hvert 5. minut kommer en ud sætte. Kontroller dine stier, hvis du har en fejlmeddelelse. Hvis du har værdier, kan du gå til at vise det på siden: åben

skin.conf i/home/weewx/skins/Standard gå til:

# Denne er sandsynligvis specifik for min station!

tilføje

jordTemp1 = DS18B201

jordTemp2 = DS18B202

jordTemp3 = DS18B203

gem filen og åbn i den samme mappe index.html.tmpl se efter en linje:

#if $ day.extraTemp..…

#Afslut Hvis

efter den første #slut, hvis du finder, skal du sætte din GroundSensor -sensor med:

^^ beklager, men det er ikke muligt at sætte dette som en tekst: (gem filen og afslut. det er ikke nødvendigt at genstarte weewx. Nu skal du fodre NODEMCU ESP8266 med Arduino -filen.

Glem ikke at konfigurere din wifi og adresser i filen. Efter indlæsning kontrolleres det serielle output for fejl.

Efter en kort periode skal du se værdierne på dit weewx -websted.

Trin 7: Success Soilsensor og fejlfinding

Success Soilsensor og fejlfinding
Success Soilsensor og fejlfinding

Hvis du har alt arbejdet og ser værdier, skal du gå udenfor og sætte aluminiumsrøret i jorden.

En god måde er at putte varm lim i 1 side af røret og derefter trykke røret sammen, så har du en fin top for at bringe det lettere i jorden.

Sæt først dit rør i jorden, du kan hamre blødt med et træbræt.

Hvis røret er dybt nok, kan du sætte din ds18b20 kæde i og strømkablerne i den vandtætte boks.

Sørg for, at din wifi fungerer på dette sted!

Hvis du ikke ved, hvilken sensor der er så dyb, er der 2 muligheder.

Jeg tester fase 1 ds18b20 mellem din finger, temperaturen går højere for denne.

Når røret allerede er i jorden, er normalitet den højeste værdi det dybeste punkt.

Trin 8: Afslut

Afslut
Afslut

Bare slutningen

Stil dine spørgsmål, og vis dine jordtemperaturer i kommentarerne!

For mere hjælp kan du deltage i weewx google grupper på:

groups.google.com/forum/#!forum/weewx-user

Anbefalede: