Tartalomjegyzék:

Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára: 8 lépés (képekkel)
Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára: 8 lépés (képekkel)

Videó: Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára: 8 lépés (képekkel)

Videó: Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára: 8 lépés (képekkel)
Videó: Water level monitoring system with Nodemcu ESP8266 with new blynk app 2024, November
Anonim
Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára
Hosszabbító érzékelők Nodemcu ESP8266 a Weewx számára

Ez egy utasítás arra, hogy érzékelőket adjunk a weewx időjárásjelző szoftverhez.

Ha nem rendelkezik weewx -szel, ebben az oktatóanyagban megtanulhat néhány dolgot.

alapvető ismeretekkel kell rendelkeznie az Arduino kódról és az eszközre történő feltöltésről.

Itt talál weewx információkat:

Amit felépít, az 2 eszköz:

1 A készülék hőmérsékletet és páratartalmat küld a weewx szoftvernek.

1 A készülék különböző talajhőmérsékletű talajhőmérsékletet küld a weewx szoftvernek.

Első készülékünk egy BME 280 érzékelő.

Második eszközünk egy 3 DS18B20 Temperatur érzékelőből álló lánc. (Tetszés szerint hozzáadhat még).

Kezdjük:

1. lépés: Amire szüksége van…

Amire szükséged van…
Amire szükséged van…
Amire szükséged van…
Amire szükséged van…
Amire szükséged van…
Amire szükséged van…

Weewx üzembe helyezés + hozzáférés a weewx szerverhez. (például málna PI 3).

2 Nodemcu ESP8266 modul

3 vagy több DS18B20 érzékelő

1 BME 280 kombinált érzékelő

1 Alumínium cső vagy hasonló, 10 mm átmérőjű és 1 mm falvastagságú és kb. 1 méter hosszú

1 Vízálló tok kábelcsavarral és rögzítőanyával.

1 5 V -os áramforrás (például mobilrakodó).

Néhány vezeték és forrasztási cucc.

BME280 érzékelőt és Nodemcu modulokat talál az ebay -en.

Az alumínium csőhöz helyi hardverboltot választok

A DS18B20 és vízálló tokhoz a www.reichelt.de oldalt használom

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

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

és a tömszelence tömítőanyákkal

www.reichelt.de/Kabelverschraubungen-Bopla…

A bme280 esetében opcionálisan használhat elágazó konzervet

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

2. lépés: Kezdje a BME 280 érzékelő hardver beállításával

Kezdje a BME 280 érzékelő hardver beállításával
Kezdje a BME 280 érzékelő hardver beállításával

Forrasztja a csíkot a BME280 -ban.

Ezután csatlakoztassa a BME -t a Nodemcu -hoz:

BME VIN 3.3V -ig

BME GND - GND

SCL - D4

SDA - D3

Ha úgy tetszik, a készüléket egy házba helyezheti, de győződjön meg arról, hogy néhány lyuk van a házban, hogy a páratartalom és a hőmérséklet értéke megfelelő legyen.

3. lépés: BME 280 Nodemcu ESP8266 kód

BME 280 Nodemcu ESP8266 kód
BME 280 Nodemcu ESP8266 kód
BME 280 Nodemcu ESP8266 kód
BME 280 Nodemcu ESP8266 kód
BME 280 Nodemcu ESP8266 kód
BME 280 Nodemcu ESP8266 kód

A kódhoz használhatja a github tárhelyeimet:

github.com/Landixus/BME280_TO_SERVER_WEEWX

Az ino fájlnak szüksége van néhány beillesztésre:

A weewx szerver vagy URL címe

és az útvonalat, ahol a php fájl van, győződjön meg arról, hogy a terület írható.

Azért választom a public_html dir -t, mert az otthoni szerver.

ha klónozni szeretné a git tárolókat, és a git telepítve van a szerverre, akkor a következő paranccsal klónozhat:

"git clone" https://github.com/Landixus/BME280_TO_SERVER_WEEWX"

Most tennünk kell néhány dolgot a weewx szerverünkön.

El kell végeznie a beállításokhoz vezető utakat!

ban ben

/home/weewx/public_html

hozzon létre egy mappaadatot

az adatmappában hozzon létre egy bme.txt fájlt, például:

nano bme.txt

a fájlnak üresnek kell lennie.

tegye írhatóvá:

chmod -R 777 bme.txt

(ezt soha nem teheti meg interneten elérhető szerveren!)

a mappában

/home/weewx/public_html

beteszed a github repo bme.php -jét.

A trükk az, hogy az INO fájl értékeket küld a bme.php fájlnak, a bme.php pedig a bme.txt fájlba írja az adatokat

Ezután hozzá kell adnunk a szolgáltatást weewx -ben

tegye a bme.py mappába

/home/weewx/bin/user

nyissa meg a weewx.conf mappát

/home/weewx

Mindig jó, ha biztonsági másolatot készít a fájl szerkesztése előtt!

menjen le a Motor sorba, és a sor hasonlítson az enyémre:

[Motor]

# Ez a szakasz azokat a szolgáltatásokat határozza meg, amelyeket futtatni kell. Ők

# típus szerint és az egyes csoportokon belüli szolgáltatások sorrendje szerint csoportosítva

# határozza meg a szolgáltatások futtatásának sorrendjét.

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

indítsa újra a weewx -et a következővel:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

a paranccsal

tail -f/var/log/syslog

a naplófájlban kereshet hibákat vagy sikert, kereshet kimeneti bme: found value of…

Adjon néhány percet a szervernek a generáláshoz, a "my" weewx.conf fájlban 5 percenként jön egy kimenet.

Ha hibaüzenetet kap, ellenőrizze az útvonalakat.

Ha vannak értékei, megjelenítheti azokat a weboldalon:

nyitott bőr.konf

/home/weewx/skins/Standard

menj:

# Ez valószínűleg az én állomásomra jellemző! Add

extraTemp3 = BME1 TemperatureextraHumid1 = BME1 Páratartalom

mentse el a fájlt, és nyissa meg ugyanabban a mappában

index.html.tmpl

keress egy sort:

#if $ day.extraTemp..

#véget, ha

az első #vége után, ha megtalálja, tegye a BME érzékelőt a következőkkel:

^^ Sajnálom, de ezt nem lehet szövegként írni:(mentse a fájlt és lépjen ki.

nincs szükség a weewx újraindítására.

Most etetnie kell a NODEMCU ESP8266 -at az Arduino fájllal.

Ne felejtse el beállítani a wifi -t és a címeket a fájlban.

A betöltés után ellenőrizze a soros kimenetet, hogy nincs -e hiba.

Rövid idő elteltével látnia kell az értékeket weewx webhelyén.

4. lépés: Sikeres BME280 érzékelő eszköz + hibaelhárítás

Sikeres BME280 érzékelő eszköz + hibaelhárítás
Sikeres BME280 érzékelő eszköz + hibaelhárítás
Sikeres BME280 érzékelő eszköz + hibaelhárítás
Sikeres BME280 érzékelő eszköz + hibaelhárítás

Néhány tipp az Ön számára:

Nyisson ki több mint 1 konzolt gitt segítségével

az egyik konzolon végezze el a módosításokat, a másik konzolon pedig élőben olvassa el a rendszernaplóját:

tail -f/var/log/syslog

Ha hibát észlel, először nézze meg a naplófájlt.

A kimenetnek hasonlónak kell lennie az enyémhez:

5. lépés: A Soilsensor hardver beállítása

Talajérzékelő hardver beállítása
Talajérzékelő hardver beállítása
Talajérzékelő hardver beállítása
Talajérzékelő hardver beállítása
Talajérzékelő hardver beállítása
Talajérzékelő hardver beállítása

A DS18B20 érzékelőhöz buszrendszert kell készítenünk néhány vezetékkel és forrasztással.

Ellenőrizze a DS18B20 készüléket

ADATOK, GND, VCC

A VCC és a DATA között 4,7K ellenállás szükséges. Elég, ha az ellenállás az első DS18B20 -nál van

A többi DS18B20 párhuzamos egymással.

Mérje meg a hosszát az Ön igényeinek megfelelően. Forraszoljon össze egy láncot, a csapokat zsugorító csővel rögzítettem.

TESZT -hez a DATA -t a D3 -hoz, a VCC -t a VCC -hez (3.3V), a GND -t pedig a GND -hez kell csatlakoztatni.

A mély alvás opcióhoz hidat kell csatlakoztatni az RST és a D0 között (GPIO16)

Nem szabad most a láncot az alumínium csőbe tenni, mielőtt elvégezné a teszteket!

6. lépés: DS18B20 Nodemcu ESP8266 kód

DS18B20 Nodemcu ESP8266 kód
DS18B20 Nodemcu ESP8266 kód

A kódhoz használhatja a GITHUB tárhelyeimet:

github.com/Landixus/multipleDS18B20WeeWX

Az ino fájlnak is szüksége van néhány beillesztésre: weewx szerverének IP -címe vagy URL -címe és az útvonal, ahová a php fájlt helyezte, győződjön meg arról, hogy a terület írható.

Ha klónozni szeretné a git tárolókat, és telepíteni szeretné a git -t a szerverére, klónozhat a "git clone https://github.com/Landixus/multipleDS18B20WeeWX" paranccsal

Most olyan dolgokat kell elvégeznünk, amelyek mind működnek a weewx szerverünkön.

Meg kell adnia a beállítások elérési útjait

/home/weewx/public_html

hozzon létre egy "mappa" mappát az adatmappában hozzon létre egy ds18b20.txt fájlt, például nano ds18b20.txt a txt fájlnak üresnek kell lennie. tegye írhatóvá a chmod -R 777 ds18b20.txt fájllal (ezt soha ne tegye meg egy internethez hozzáférhető szerveren!) a/home/weewx/public_html mappában, amelyet a github rep. A trükk az, hogy az INO fájl értékeket küld a ground.php -nek, a ground.php pedig a ds18b20.txt fájlba írja az adatokat, a következőben hozzá kell adnunk a szolgáltatást a weewx -hez, és a ds18b20.py mappába/home/weewx/bin/ felhasználó

nyissa meg a weewx.conf fájlt a /home /weewx mappában

Mindig jó, ha biztonsági másolatot készít a fájl szerkesztése előtt!

menj le a sorba:

[Motor]

# típus szerint és az egyes csoportokon belüli szolgáltatások sorrendje szerint csoportosítva

# határozza meg a szolgáltatások futtatásának sorrendjét.

prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 vessző után adja hozzá az inline -t

A "user.ds18b20.ds18b20" úgy kell kinéznie, mint a sor felső ^^

indítsa újra a weewx -et a következővel:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

A tail -f/var/log/syslog paranccsal kereshet a naplófájlban hibákat vagy sikereket kereshet kimenetet ds18b20: found értéke Adjon néhány percet a szervernek a generáláshoz, a weewx.conf fájlban minden 5 percben jöjjön ki tedd. Ha hibaüzenetet kap, ellenőrizze az útvonalakat. Ha vannak értékei, megjelenítheti az oldalon: nyissa meg

skin.conf itt:/home/weewx/skins/Standard:

# Ez valószínűleg az én állomásomra jellemző!

hozzá

groundTemp1 = DS18B201

groundTemp2 = DS18B202

groundTemp3 = DS18B203

mentse a fájlt, és nyissa meg ugyanabban a mappában index.html.tmpl keresse meg a sort:

#ha $ day.extraTemp..…

#véget, ha

az első #vége után, ha úgy találja, helyezze a GroundSensor érzékelőt a következőkre:

^^ sajnálom, de ezt nem lehet szövegként megadni: (mentse el a fájlt, és lépjen ki. nincs szükség a weewx újraindítására. Most a NODEMCU ESP8266 -at kell táplálni az Arduino fájllal.

Ne felejtse el beállítani a wifi -t és a címeket a fájlban. A betöltés után ellenőrizze a soros kimenetet, hogy nincs -e hiba.

Rövid idő elteltével látnia kell az értékeket weewx webhelyén.

7. lépés: Sikeres talajérzékelő és hibaelhárítás

Sikeres talajérzékelő és hibaelhárítás
Sikeres talajérzékelő és hibaelhárítás

Ha minden működik, és látja az értékeket, akkor menjen ki, és tegye az alumíniumcsövet a földbe.

Egy jó módszer az, ha forró ragasztót teszünk a cső 1 oldalára, majd összenyomjuk a csövet, majd van egy szép teteje, hogy könnyebb legyen a talajban.

Először tegye a csövet a talajba, lágyat kalapálhat egy fa deszkával.

Ha a cső elég mély, akkor behelyezheti a ds18b20 láncot és a tápkábeleket a vízálló dobozba.

Győződjön meg arról, hogy a wifi működik ezen a helyen!

Ha nem tudja, hogy milyen mélységű érzékelő van, akkor két lehetőség van.

A teszt fázisában tegyek 1 ds18b20 -at az ujja közé, ennél magasabb a hőmérséklet.

Amikor a cső már a földben van, akkor általában a legmagasabb érték a legmélyebb pont.

8. lépés: Fejezze be

Befejez
Befejez

Csak a vége

Tedd fel kérdéseidet, és mutasd meg a földi tempódat kommentben!

További segítségért csatlakozzon a weewx google csoportokhoz:

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

Ajánlott: