Mündəricat:
- Addım 1: Ehtiyacınız olan…
- Addım 2: BME 280 Sensor Hardware Setup ilə başlayın
- Addım 3: BME 280 Nodemcu ESP8266 Kodu
- Addım 4: BME280 Sensor Cihazının Müvəffəqiyyəti + Problemlərin Giderme
- Addım 5: Torpaq Sensorunun Quraşdırılması
- Addım 6: DS18B20 Nodemcu ESP8266 Kodu
- Addım 7: Uğurlu Torpaq Sensor və Problem Giderme
- Addım 8: Bitirin
Video: Weewx üçün Nodemcu ESP8266 Uzatma Sensorları: 8 Addım (Şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Weewx hava stansiyası proqramına Sensor əlavə etmək təlimatdır.
Weewx yoxdursa, bu dərslikdə bəzi şeylər öyrənə bilərsiniz.
Arduino kodu və cihaza yükləmə qaydaları haqqında bəzi əsas biliklərə ehtiyacınız var.
Weewx məlumatlarını burada tapa bilərsiniz:
Qurduğunuz 2 cihazdır:
1 Cihaz Weewx proqramına İstilik və Nəmlik göndərir.
1 Cihaz, Weewx proqramına müxtəlif yerin dərinliklərində olan Torpaq İstiliyini göndərir.
İlk cihazımız BME 280 sensorudur.
İkinci cihazımız 3 DS18B20 Temperatur sensoru zənciridir. (İstəsəniz daha çox əlavə edə bilərsiniz).
Gəlin başlayaq:
Addım 1: Ehtiyacınız olan…
Weewx işə düşür və + weewx serverinə giriş. (məsələn, moruq PI 3).
2 Nodemcu ESP8266 modulu
3 və ya daha çox DS18B20 Sensoru
1 BME 280 Combo Sensor
1 Alüminium boru və ya buna bənzər diametri 10 mm və 1 mm olan divar qalınlığı və təxminən. 1 metr uzunluğunda
1 Su keçirməyən korpus kabel kəməri və kilid qozu ilə.
1 5V enerji mənbəyi (məsələn, mobil yükləyici).
Bəzi tellər və lehim əşyaları.
Ebayda BME280 sensoru və Nodemcu modullarını tapa bilərsiniz.
Alüminium boru üçün yerli bir hardware mağazası seçirəm
DS18B20 və su keçirməyən korpus üçün www.reichelt.de saytından istifadə edirəm
www.reichelt.de/DS-18B20/3/index.html?ACTI…
www.reichelt.de/EL-FK-110/3/index.html?ACT…
və kilid qoz -fındıqları olan kabel kanalı qrupu
www.reichelt.de/Kabelverschraubungen-Bopla…
Bme280 üçün isteğe bağlı olaraq bir budaq qutusu istifadə edə bilərsiniz
www.reichelt.de/Installationsmaterial/EL-D…
Addım 2: BME 280 Sensor Hardware Setup ilə başlayın
Şeridi BME280 -də lehimləyin.
Sonra BME -ni Nodemcu -ya bağlayın:
BME VIN 3.3V -ə qədər
BME GND -dən GND -ə
SCL -dən D4 -ə qədər
SDA -dan D3 -ə qədər
İstəyirsinizsə, Cihazı bir yuvaya qoya bilərsiniz, ancaq rütubət və temperatur dəyərlərinin doğru olması üçün korpusda bəzi deşiklərin olduğundan əmin olun.
Addım 3: BME 280 Nodemcu ESP8266 Kodu
Kod üçün github depolarımdan istifadə edə bilərsiniz:
github.com/Landixus/BME280_TO_SERVER_WEEWX
İno faylına sizdən bəzi əlavələr lazımdır:
Weewx serverinizin və ya URL -nin IP ünvanı
və php faylına sahib olduğunuz marşrut, ərazinin yazıla biləcəyinə əmin olun.
public_html dir seçirəm, çünki ev serveridir.
git depolarını klonlaşdırmaq və serverinizdə git yükləmək istəyirsinizsə, əmrlə klonlaya bilərsiniz:
"git klonu" https://github.com/Landixus/BME280_TO_SERVER_WEEWX"
İndi weewx serverimizdə bəzi işlər görməliyik.
Ayarlarınızın yollarını etməlisiniz!
daxilində
/home/weewx/public_html
qovluq məlumatı yaradın
Məlumat qovluğunda bme.txt yaradın, məsələn:
nano bme.txt
fayl boş olmalıdır.
ilə yazıla bilər:
chmod -R 777 bme.txt
(bunu heç vaxt internetə çıxışı olan bir serverdə etməzsən!)
qovluqda
/home/weewx/public_html
github repo bme.php -ni qoyursan.
Hiylə budur ki, INO faylı bme.php -ə dəyər göndərir və bme.php bme.txt -də məlumat yazır.
Sonrakı xidməti weewx -ə əlavə etməliyik
bme.py qovluğuna qoyun
/home/weewx/bin/user
weewx.conf qovluğunuzu açın
/ev/weewx
Bu faylı redaktə etməzdən əvvəl bir nüsxənin olması həmişə yaxşıdır!
Mühərrik xəttinə enin və xətti mənim kimi görün:
[Mühərrik]
# Bu bölmədə işləməli olan xidmətlər göstərilir. Onlar
# növünə və hər qrupdakı xidmətlərin sırasına görə qruplaşdırılmışdır
# xidmətlərin işlənmə qaydasını təyin edir.
data_services = user.pond. PondService, user.bme.bme
weewx -i yenidən başladın:
sudo /etc/init.d/weewx dayandırın
sudo /etc/init.d/weewx başlanğıcı
əmri ilə
quyruq -f/var/log/syslog
səhvlər və ya müvəffəqiyyətlər üçün logfile baxa bilərsiniz, bme çıxışını axtarın: tapılan dəyər …
Yaratmaq üçün serverinizə bir neçə dəqiqə verin, "mənim" weewx.conf -də hər 5 dəqiqədə bir çıxış gəlir.
Bir səhv mesajınız varsa, yollarınızı yoxlayın.
Dəyərləriniz varsa, onu veb səhifədə göstərmək üçün gedə bilərsiniz:
açıq dəri
/home/weewx/skins/Standart
getmək:
# Bu yəqin ki, stansiyama xasdır! Əlavə et
extraTemp3 = BME1 TemperaturextraHumid1 = BME1 Rütubət
faylı qeyd edin və eyni qovluqda açın
index.html.tmpl
bir xətt axtarın:
#if $ day.extraTemp..
#əgər bitərsə
ilk #sondan sonra taparsanız, BME Sensorunuzu qoyun:
^^ üzr istəyirəm amma bunu mətn kimi yazmaq mümkün deyil:(faylı qeyd edin və çıxın.
weewx'i yenidən başlatmağa ehtiyac yoxdur.
İndi NODEMCU ESP8266 -nı Arduino faylı ilə qidalandırmaq lazımdır.
Faylda wifi və ünvanlarınızı qurmağı unutmayın.
Yüklədikdən sonra seriya çıxışını yoxlayın.
Qısa müddətdən sonra Weewx veb saytınızdakı dəyərləri görməlisiniz.
Addım 4: BME280 Sensor Cihazının Müvəffəqiyyəti + Problemlərin Giderme
Sizin üçün bəzi məsləhətlər:
Macun vasitəsilə 1 -dən çox konsol açın
1 konsolda dəyişikliklərinizi edin və digər konsolda syslogunuzu canlı oxuyun:
quyruq -f/var/log/syslog
Səhviniz varsa, əvvəlcə logfile baxın.
Çıxışınız mənimkinə bənzəməlidir:
Addım 5: Torpaq Sensorunun Quraşdırılması
DS18B20 Sensoru üçün bir az telli və lehimli bir avtobus sistemi qurmalıyıq.
DS18B20 -ni yoxlayın
VERİLƏR, GND, VCC
VCC və DATA arasında 4.7K rezistora ehtiyacınız var. İlk DS18B20 -də rezistorunuz varsa kifayətdir
Digər DS18B20 bir -birinə paraleldir.
Ehtiyaclarınız üçün uzunluğu ölçün. Bir zənciri birlikdə lehimləyin, sancaqları daralan boru ilə təmin etdim.
TEST üçün DATA -nı D3 -ə və VCC -ni VCC -yə (3.3V) və GND -ni GND -ə bağlayırsınız.
Dərin yuxu seçimi üçün RST ilə D0 (GPIO16) arasında bir körpü bağlamalısınız.
Zənciri hazırda Alüminium boruya qoymamalısınız, əvvəl testlərinizi edin!
Addım 6: DS18B20 Nodemcu ESP8266 Kodu
Kod üçün GITHUB depolarımdan istifadə edə bilərsiniz:
github.com/Landixus/multipleDS18B20WeeWX
Həmçinin ino faylının sizdən bəzi əlavələrə ehtiyacı var: Weewx serverinizin və ya URL -nin IP ünvanı və php faylını qoyduğunuz marşrut, sahənin yazılabilir olduğundan əmin olun, public_html dir -i ev serveri olduğu üçün seçirəm.
Git anbarlarını klonlamaq və serverinizdə git yükləmək istəyirsinizsə "git clone https://github.com/Landixus/multipleDS18B20WeeWX" əmri ilə klonlaya bilərsiniz.
İndi hər şeyin weewx serverimizdə işlədiyi bəzi şeylər etməliyik.
Parametrlərinizə gedən yolları daxil etməlisiniz
/home/weewx/public_html
Məlumat qovluğunda "data" qovluğu yaradın, məsələn nano ds18b20.txt ds18b20.txt yaradın, txt emtpy olmalıdır. chmod -R 777 ds18b20.txt (bunu heç vaxt internetə çıxışı olan bir serverdə etməzsiniz!) ilə/home/weewx/public_html qovluğunda yaza bilərsiniz, mənim github nümayəndəmin ground.php faylını qoydunuz. Hiylə budur ki, INO faylı dəyərləri ground.php -ə göndərir və ground.php məlumatları ds18b20.txt -ə yazır, xidməti weewx -ə əlavə etməliyik, ds18b20.py qovluğuna/home/weewx/bin/ istifadəçi
weewx.conf qovluğunu /home /weewx -də açın
Bu faylı redaktə etməzdən əvvəl bir nüsxənin olması həmişə yaxşıdır!
xəttə enin:
[Mühərrik]
# növünə və hər qrupdakı xidmətlərin sırasına görə qruplaşdırılmışdır
# xidmətlərin işlənmə qaydasını təyin edir.
prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 sətirini vergüldən sonra əlavə edin
"user.ds18b20.ds18b20" sətrin yuxarı hissəsinə bənzəməlidir ^^
weewx -i yenidən başladın:
sudo /etc/init.d/weewx dayandırın
sudo /etc/init.d/weewx başlayın
tail -f/var/log/syslog əmri ilə səhvlər və ya müvəffəqiyyətlər üçün günlük faylına baxa bilərsiniz ds18b20: tapılan dəyər serverinizə yaratmaq üçün bir neçə dəqiqə verin, hər 5 dəqiqədə mənim weewx.conf -də qoy. Bir səhv mesajınız varsa, yollarınızı yoxlayın. Dəyərləriniz varsa onu səhifədə göstərmək üçün gedə bilərsiniz: açın
skin.conf in/home/weewx/skins/Standart gedin:
# Bu yəqin ki, stansiyama xasdır!
əlavə et
torpaqTemp1 = DS18B201
torpaqTemp2 = DS18B202
torpaqTemp3 = DS18B203
faylı qeyd edin və index.html.tmpl qovluğunda açın, bir xətt axtarın:
#if $ day.extraTemp..…
#əgər bitərsə
ilk #sondan sonra GroundSensor Sensorunuzu qoyun:
^^ Üzr istəyirik, ancaq bunu mətn kimi qoymaq mümkün deyil: (faylı qeyd edin və çıxın. weewx -i yenidən başlatmağa ehtiyac yoxdur. İndi NODEMCU ESP8266 -nı Arduino faylı ilə qidalandırmalısınız.
Faylda wifi və ünvanlarınızı qurmağı unutmayın. Yüklədikdən sonra seriya çıxışını yoxlayın.
Qısa müddətdən sonra Weewx veb saytınızdakı dəyərləri görməlisiniz.
Addım 7: Uğurlu Torpaq Sensor və Problem Giderme
Bütün işləriniz varsa və dəyərləri görürsünüzsə, çölə çıxın və alüminium borunu yerə qoyun.
Yaxşı bir yol borunun 1 tərəfinə isti yapışqan qoymaq və sonra borunu bir -birinə sıxmaqdır, sonra yerə asanlaşdırmaq üçün gözəl bir üstə sahibsiniz.
Borunuzu əvvəlcə yerə qoyun, taxta lövhə ilə yumşaq bir şəkildə çəkə bilərsiniz.
Boru kifayət qədər dərindirsə, ds18b20 zəncirinizi və elektrik naqillərini su keçirməyən qutuya qoya bilərsiniz.
Wi -Fi -nın bu yerdə işlədiyinə əmin olun!
Hansı sensorun nə qədər dərin olduğunu bilmirsinizsə, 2 variant var.
Test mərhələsi barmağınızın arasına 1 ds18b20 qoydu, bunun üçün temperatur daha yüksək olur.
Boru artıq torpaqda olduqda, normal olaraq ən yüksək dəyər ən dərin nöqtədir.
Addım 8: Bitirin
Yalnız sonu
Suallarınızı yazın və əsas istiliyinizi şərhlərdə göstərin!
Daha çox kömək üçün weewx google Groups -a qoşulun:
groups.google.com/forum/#!forum/weewx-user
Tövsiyə:
Raspberry Pi -yə Əlavə Xüsusiyyətlər Əlavə etmək üçün RaspberryPi 3/4 Uzatma Kartı: 15 Addım (Şəkillərlə)
Raspberry Pi -yə Əlavə Xüsusiyyətlər Əlavə etmək üçün RaspberryPi 3/4 Uzatma Kartı: bilirik ki, moruq pi 3/4 ADC (rəqəmsal çeviriciyə analoq) və RTC (real vaxt saatı) ilə birlikdə gəlmir, buna görə 16 ədəd olan bir PCB dizayn edirəm kanal 12bit ADC, RTC, SIM7600 4G modulu, düymələr, rölelər, USB çıxışı, 5V güc çıxışı, 12V güc
ESP8266 - Qapı və Pəncərə Sensorları - ESP8266. Yaşlılara Yardım (unutqanlıq): 5 addım
ESP8266 - Qapı və Pəncərə Sensorları - ESP8266. Yaşlılara Yardım (unutqanlıq): ESP8266 - GPIO 0 və GPIO 2 (IOT) istifadə edən qapı / pəncərə sensorları. İnternetdə və ya brauzerlərlə yerli şəbəkədə baxıla bilər. Həm də " HelpIdoso Vxapp " tətbiq. 5Vdc, 1 röle / gərginlik üçün 110/220 VAC təchizatı istifadə edir
Fərdi Nümunə Pompaları üçün İşləmə Sensorları: 3 Addım
Fərdi Nümunə Pompaları üçün Əməliyyat Sensorları: Fərdi nümunə götürmə nasoslarının yaxşı işləməsinə nəzarət edən bir sistem hazırladım
Arduino Robotları üçün Ucuz IR Yaxınlıq Sensorları: 6 Addım (Şəkillərlə)
Arduino Robotları üçün Ucuz IR Yaxınlıq Sensorları: Bu infraqırmızı yaxınlıq sensorları kiçik, hazırlanması asan və super ucuzdur! Robotlarda, xətt izləmə, kənar hissetmə və minimal məsafə algılama üçün əla işləyirlər. Həm də çox, çox ucuzdur
Arduino Robotları üçün Ucuz Zərbə Sensorları: 4 Addım (Şəkillərlə birlikdə)
Arduino Robotları üçün Ucuz Zərbə Sensorları: Robotunuzu ələ keçirmək üçün ucuz, asanlıqla qaynaqlanan qabar sensorlarına ehtiyacınız var- Arduino layihəsini nəzərdə tuturam? Bu kiçik sensorların istifadəsi asan, hazırlanması asan və cüzdanda (hər biri 17 qəpik!) Və mikro nəzarətçi-ba-da sadə maneələrin aşkarlanması üçün əla işləyir