Talaan ng mga Nilalaman:

Mga Extension Sensor Nodemcu ESP8266 para sa Weewx: 8 Hakbang (na may Mga Larawan)
Mga Extension Sensor Nodemcu ESP8266 para sa Weewx: 8 Hakbang (na may Mga Larawan)

Video: Mga Extension Sensor Nodemcu ESP8266 para sa Weewx: 8 Hakbang (na may Mga Larawan)

Video: Mga Extension Sensor Nodemcu ESP8266 para sa Weewx: 8 Hakbang (na may Mga Larawan)
Video: Домашняя автоматизация: лампа переменного тока с использованием реле с NodeMCU D1 Mini через WiFi 2024, Nobyembre
Anonim
Mga Extension Sensor Nodemcu ESP8266 para sa Weewx
Mga Extension Sensor Nodemcu ESP8266 para sa Weewx

Ito ay isang itinuturo upang magdagdag ng Mga Sensor sa software ng istasyon ng panahon ng weewx.

Kung hindi ka pa weewx, maaari kang matuto ng ilang mga bagay-bagay sa tutorial na ito.

kailangan mo ng ilang pangunahing kaalaman ng Arduino code at kung paano mag-upload sa isang aparato.

Mahahanap mo ang impormasyong weewx dito:

Ang binubuo mo ay 2 Mga Device:

Ang 1 aparato ay nagpapadala ng Temperatura at Humidity sa weewx software.

Ang 1 aparato ay nagpapadala ng Mga Temperatura ng Lupa ng iba't ibang mga kalaliman sa lupa sa weewx software.

Ang aming unang Device ay isang BME 280 sensor.

Ang aming pangalawang aparato ay isang kadena ng 3 DS18B20 Temperatur sensor. (Maaari kang magdagdag ng higit pa kung nais mo).

Magsisimula tayo:

Hakbang 1: Ano ang Kailangan Mo …

Ang iyong kailangan…
Ang iyong kailangan…
Ang iyong kailangan…
Ang iyong kailangan…
Ang iyong kailangan…
Ang iyong kailangan…

Weewx up at pagpapatakbo ng + access sa weewx server. (halimbawa isang raspberry PI 3).

2 mga modyul na Nodemcu ESP8266

3 o higit pang mga DS18B20 Sensor

1 BME 280 combo Sensor

1 Aluminyo na tubo o katulad na may diameter na 10mm at 1mm kapal ng pader at ca. 1 metro ang haba

1 Hindi tinatagusan ng tubig na kaso na may cable gland at lock nut.

1 5V Pinagmulan ng lakas (halimbawa ng Mobile loader).

Ang ilang mga wires at mga bagay na panghinang.

Mahahanap mo ang BME280 sensor at Nodemcu modules sa ebay.

Para sa Aluminyo na pipili pumili ako ng isang lokal na tindahan ng hardware

Para sa DS18B20 at hindi tinatagusan ng tubig kaso ginagamit ko ang www.reichelt.de

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

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

at ang pangkat ng mga glandula ng cable na may mga lock nut

www.reichelt.de/Kabelverschraubungen-Bopla…

Para sa bme280 maaari kang opsyonal na gumamit ng isang branching can

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

Hakbang 2: Magsimula Sa Pag-setup ng BME 280 Sensor Hardware

Magsimula Sa Pag-setup ng BME 280 Sensor Hardware
Magsimula Sa Pag-setup ng BME 280 Sensor Hardware

Paghinang ang strip sa BME280.

Pagkatapos ay i-kable ang BME sa Nodemcu:

BME VIN hanggang 3.3V

BME GND sa GND

SCL hanggang D4

SDA hanggang D3

Kung nais mo maaari mong ilagay ang Device sa isang pabahay, ngunit tiyaking, na ang ilang mga butas ay nasa pabahay, upang ang halumigmig at mga halagang temperatura ay wasto.

Hakbang 3: BME 280 Nodemcu ESP8266 Code

BME 280 Nodemcu ESP8266 Code
BME 280 Nodemcu ESP8266 Code
BME 280 Nodemcu ESP8266 Code
BME 280 Nodemcu ESP8266 Code
BME 280 Nodemcu ESP8266 Code
BME 280 Nodemcu ESP8266 Code

Para sa code maaari mong gamitin ang aking mga repository ng github:

github.com/Landixus/BME280_TO_SERVER_WEEWX

Ang file ng ino ay nangangailangan ng ilang pagsingit mula sa iyo:

Ang IP Address ng iyong weewx server o URL

at ang ruta kung saan mayroon kang php file, siguraduhin na ang lugar ay nasusulat.

pipiliin ko ang public_html dir dahil ito ay isang server ng bahay.

kung nais mong i-clone ang mga git repository, at na-install ang git sa iyong server, maaari mong i-clone gamit ang utos:

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

Ngayon kailangan naming gumawa ng ilang mga bagay-bagay sa aming server ng weewx.

Kailangan mong gawin ang mga landas sa iyong mga setting!

sa

/ home / weewx / public_html

lumikha ng isang data ng folder

sa folder ng data lumikha ng isang bme.txt halimbawa kasama ang:

nano bme.txt

dapat walang laman ang file.

gawin itong nakasulat sa:

chmod -R 777 bme.txt

(hindi mo ito nagawa sa isang server na naa-access sa internet!)

sa folder

/ home / weewx / public_html

inilagay mo ang bme.php ng aking github repo.

Ang trick ay ang INO file na nagpapadala ng mga halaga sa bme.php at ang bme.php ang nagsusulat ng data sa bme.txt

Sa susunod kailangan naming idagdag ang serbisyo sa weewx

ilagay ang bme.py sa folder

/ home / weewx / bin / gumagamit

buksan ang iyong weewx.conf sa folder

/ bahay / weewx

palaging mabuti na magkaroon ng isang backup bago i-edit ang file na ito!

bumaba sa linya ng Engine at gawin ang linya na katulad ng sa akin:

[Engine]

# Ang seksyong ito ay tumutukoy sa mga serbisyong dapat patakbuhin. Sila ay

# nakapangkat ayon sa uri, at ang pagkakasunud-sunod ng mga serbisyo sa loob ng bawat pangkat

# tinutukoy ang pagkakasunud-sunod kung saan tatakbo ang mga serbisyo.

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

i-restart ang weewx sa:

huminto sa sudo /etc/init.d/weewx

sudo /etc/init.d/weewx magsimula

may utos

buntot -f / var / log / syslog

maaari kang tumingin sa logfile para sa mga error o tagumpay, maghanap ng isang output bme: nahanap na halaga ng…

Bigyan ang iyong server ng ilang minuto upang makabuo, sa "aking" weewx.conf bawat 5 minuto ay may isang output.

Kung mayroon kang isang mensahe ng error suriin ang iyong mga landas.

Kung mayroon kang mga halaga, maaari mo itong ipakita sa webpage:

buksan ang balat.conf in

/ home / weewx / skin / Standard

pumunta sa:

# Ang isang ito ay malamang na tukoy sa aking istasyon! Idagdag

extraTemp3 = BME1 TemperatureextraHumid1 = BME1 Humidity

i-save ang file at buksan sa parehong folder

index.html.tmpl

maghanap ng isang linya:

#kung $ day.extraTemp..

#tapusin kung

pagkatapos ng unang # sa wakas kung nahanap mo, ilagay ang iyong BME Sensor sa:

^^ Paumanhin ngunit hindi posible na ilagay ito bilang isang teksto:(i-save ang file at lumabas.

hindi na kailangang i-restart ang weewx.

Ngayon ay kailangan mong pakainin ang NODEMCU ESP8266 gamit ang Arduino file.

Huwag kalimutang i-set up ang iyong wifi at mga address sa file.

Matapos ang pag-load suriin ang serial output para sa mga error.

Pagkatapos ng isang maikling panahon dapat mong makita ang mga halaga sa iyong website ng weewx.

Hakbang 4: Tagumpay ng BME280 Sensor Device + Pag-troubleshoot

Tagumpay BME280 Sensor Device + Pag-troubleshoot
Tagumpay BME280 Sensor Device + Pag-troubleshoot
Tagumpay BME280 Sensor Device + Pag-troubleshoot
Tagumpay BME280 Sensor Device + Pag-troubleshoot

Ang ilang mga tip para sa iyo:

Magbukas nang higit pa sa 1 mga console sa pamamagitan ng masilya

sa 1 console gawin ang iyong mga pagbabago, at sa kabilang console basahin ang iyong syslog na live sa:

buntot -f / var / log / syslog

Kung mayroon kang isang error, tingnan muna ang iyong logfile.

Ang iyong output ay dapat magmukhang katulad sa akin:

Hakbang 5: Pag-setup ng Hardware ng Soilsensor

Pag-setup ng Hardware ng Soilsensor
Pag-setup ng Hardware ng Soilsensor
Pag-setup ng Hardware ng Soilsensor
Pag-setup ng Hardware ng Soilsensor
Pag-setup ng Hardware ng Soilsensor
Pag-setup ng Hardware ng Soilsensor

Para sa DS18B20 Sensor kailangan naming gumawa ng isang System ng bus na may ilang mga wire at paghihinang.

Suriin ang iyong DS18B20

DATA, GND, VCC

Sa pagitan ng VCC at DATA kailangan mo ng isang 4.7K Resistor. Sapat na kung mayroon kang risistor sa unang DS18B20

Ang iba pang DS18B20 ay magkatugma sa bawat isa.

Sukatin ang haba para sa iyong mga pangangailangan. Maghinang ng isang kadena magkasama, na-secure ko ang mga pin na may pag-urong na tubo.

Para sa isang PAGSUBOK ikinonekta mo ang DATA sa D3 at VCC sa VCC (3.3V) at GND sa GND.

Para sa pagpipilian ng malalim na pagtulog kailangan mong maglakip ng isang tulay sa pagitan ng RST at D0 (GPIO16)

Hindi mo dapat ilagay ang kadena sa tubo ng Aluminium ngayon, gawin ang iyong mga pagsubok bago!

Hakbang 6: DS18B20 Nodemcu ESP8266 Code

DS18B20 Nodemcu ESP8266 Code
DS18B20 Nodemcu ESP8266 Code

Para sa code maaari mong gamitin ang aking mga repository ng GITHUB:

github.com/Landixus/multipleDS18B20WeeWX

Gayundin ang file ng ino ay nangangailangan ng ilang pagsingit mula sa iyo: Ang IP Address ng iyong weewx server o URL at ang ruta kung saan mo inilagay ang php file, siguraduhing nasusulat ang lugar na pinili ko ang public_html dir dahil ito ay isang server ng bahay.

Kung nais mong i-clone ang mga git repository at naka-install na git sa iyong server maaari mong i-clone gamit ang utos na git clone

Ngayon kailangan naming gumawa ng ilang mga bagay-bagay na gumagana ang lahat sa aming server ng weewx.

Kailangan mong gawin ang mga landas sa iyong mga setting sa

/ home / weewx / public_html

lumikha ng isang folder na "data" sa folder ng data lumikha ng isang ds18b20.txt halimbawa nano ds18b20.txt ang txt ay dapat na emtpy. gawin itong nakasulat sa chmod -R 777 ds18b20.txt (hindi mo kailanman ginawa ito sa isang server na naa-access sa internet!) sa folder / home / weewx / public_html inilagay mo ang ground.php ng aking github rep. Ang trick ay ang INO file na nagpapadala ng mga halaga sa ground.php at sa ground.php ay nagsusulat ng data sa ds18b20.txt sa susunod na kailangan namin upang idagdag ang serbisyo sa weewx ilagay ang ds18b20.py sa folder / home / weewx / bin / gumagamit

buksan ang iyong weewx.conf sa folder / home / weewx

palaging mabuti na magkaroon ng isang backup bago i-edit ang file na ito!

bumaba sa linya:

[Engine]

# nakapangkat ayon sa uri, at ang pagkakasunud-sunod ng mga serbisyo sa loob ng bawat pangkat

# tinutukoy ang pagkakasunud-sunod kung saan tatakbo ang mga serbisyo.

prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 idagdag ang inline pagkatapos ng isang kuwit

Ang "user.ds18b20.ds18b20" ay dapat magmukhang linya sa itaas ^^

i-restart ang weewx sa:

huminto sa sudo /etc/init.d/weewx

sudo /etc/init.d/weewx magsimula

gamit ang utos na utos -f / var / log / syslog maaari kang tumingin sa logfile para sa mga error o tagumpay na maghanap para sa isang output ds18b20: nahanap na halaga ng Bigyan ang iyong server ng ilang minuto upang makabuo, sa aking weewx.conf bawat 5 minuto lumabas ilagay Kung mayroon kang isang mensahe ng error suriin ang iyong mga landas. Kung mayroon kang mga halaga maaari kang pumunta upang ipakita ito sa pahina: buksan

skin.conf in / home / weewx / skin / Standard pumunta sa:

# Ang isang ito ay malamang na tukoy sa aking istasyon!

idagdag

lupaTemp1 = DS18B201

lupaTemp2 = DS18B202

lupaTemp3 = DS18B203

i-save ang file at buksan sa parehong folder index.html.tmpl hanapin ang isang linya:

#kung $ day.extraTemp..…

#tapusin kung

pagkatapos ng unang # katapusan kung nahanap mong ilagay ang iyong GroundSensor Sensor sa:

^^ Paumanhin ngunit hindi posible na ilagay ito bilang isang teksto: (i-save ang file at lumabas. hindi na kailangang i-restart ang weewx. Ngayon ay kailangan mong pakainin ang NODEMCU ESP8266 sa Arduino file.

Huwag kalimutang i-set up ang iyong wifi at mga address sa file. Matapos ang pag-load suriin ang serial output para sa mga error.

Pagkatapos ng isang maikling panahon dapat mong makita ang mga halaga sa iyong website ng weewx.

Hakbang 7: Tagumpay ng Soilsensor at Pag-troubleshoot

Tagumpay Soilsensor at Pag-troubleshoot
Tagumpay Soilsensor at Pag-troubleshoot

Kung mayroon kang lahat na nagtatrabaho at makakita ng mga halaga, pagkatapos ay lumabas at ilagay ang Aluminium na tubo sa lupa.

Ang isang mahusay na paraan ay upang ilagay ang mainit na pandikit sa 1 gilid ng tubo at pagkatapos ay pindutin ang tubo nang magkasama, pagkatapos ay mayroon kang magandang tuktok upang mas madali itong gawin sa lupa.

Ilagay muna ang iyong tubo sa lupa, maaari kang martilyo ng malambot sa isang board na kahoy.

Kung ang tubo ay sapat na malalim maaari mong ilagay ang iyong ds18b20 chain at ang mga powering wires sa waterproof box.

Tiyaking gumagana ang iyong wifi sa lugar na ito!

Kung hindi mo alam kung ano ang sensor kung gaano kalalim, mayroong 2 posibilidad.

Sinusubukan ko ang yugto ng paglalagay ng 1 ds18b20 sa pagitan ng iyong daliri, mas mataas ang temperatura para sa isang ito.

Kapag ang tubo ay nasa lupa na pagkatapos ang normaly ang Pinakamataas na halaga ng pinakamalalim na punto.

Hakbang 8: Tapusin

Tapos na
Tapos na

Ang katapusan lang

I-post ang iyong mga katanungan at ipakita ang iyong mga ground temp sa mga komento!

Para sa higit pang tulong na sumali sa weewx google Groups sa:

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

Inirerekumendang: