Mündəricat:

Bird Feeder Monitor V2.0: 12 Addım (Şəkillərlə birlikdə)
Bird Feeder Monitor V2.0: 12 Addım (Şəkillərlə birlikdə)

Video: Bird Feeder Monitor V2.0: 12 Addım (Şəkillərlə birlikdə)

Video: Bird Feeder Monitor V2.0: 12 Addım (Şəkillərlə birlikdə)
Video: Mən Zənginlər və Məşhurlar üçün Şəxsi Muzeydə işləyirəm. Dəhşət hekayələri. Dəhşət. 2024, Noyabr
Anonim
Image
Image
Bird Feeder Monitor V2.0
Bird Feeder Monitor V2.0

Bu, quş qidalandırıcımızı ziyarət edən quşların sayını və vaxtını izləmək, fotoşəkil çəkmək və qeyd etmək üçün bir layihədir. Bu layihə üçün çoxlu Raspberry Pi (RPi) istifadə edilmişdir. Bunlardan biri, qidalanan quşların fotoşəkillərini aşkar etmək, qeyd etmək və tetiklemek üçün Adafruit CAP1188 tutumlu bir sensor kimi istifadə edildi. Başqa bir RPi, bu monitorinq sisteminin işini nəzarət etmək, habelə monitorinq və analiz üçün məlumatları saxlamaq və saxlamaq üçün konfiqurasiya edilmişdir. Son RPi, qidalandırıcıya gələn hər quşu fotoşəkil çəkmək üçün Kamera olaraq konfiqurasiya edilmişdir.

Təchizat

  1. 1 ədəd - Raspberry Pi W
  2. 1 ea - Raspberry Pi 3 - Model B+ - MQTT Server üçün
  3. 1 ea - Kameralı Raspberry Pi - İsteğe bağlı
  4. 2 ea - RPi və CAP1188 Sensoru üçün hava şəraitinə davamlı çantalar
  5. 1 ea - İletken Yapışqanlı Mis Folqa Bant
  6. Tel - 18-22 AWG
  7. Lehimləmə Dəmiri və Lehim
  8. Elektronika üçün lehimləmə axını
  9. Silikon doldurma*
  10. 8 ədəd - M3 x 25 Maşın Vidaları*
  11. 8 ədəd - M3 Fındıq*
  12. 1 ea - CAP1188 montajı üçün Proto Kartı
  13. 1 ea - 1x8 Qadın Dupont Konnektoru
  14. 1 ədəd - 1x6 Kişi Dupont Bağlayıcı
  15. 1 ea - CAP1188 - 8 Açarlı Kapasitif Toxunma Sensoru
  16. 2 ea - PG7 Suya Dayanıklı IP68 Neylon Kablo Bağı 3mm -6.5mm Dia Kabel Teli üçün Birgə Ayarlanabilir Kilit.
  17. 1 dəst - 10 Pinli AWG Dəniz Paketi ilə 2 Pin Way Avtomobil Suya davamlı Elektrik Bağlayıcı Fişi
  18. 3 ea - 5VDC Güc Təchizatı - hər RPi üçün bir
  19. 1 ea - Quş Qidalandırıcı (CedarWorks Plastic Hopper Bird Feeder) və ya plastik və ya taxta tündlü hər hansı Bir Quş Besleyici

*3D Çaplı Hava Keçirməyən Kılıflar üçün

Addım 1: Quş Qidalandırıcı İzləmə Sisteminə Baxış

Quş Qidalandırıcı İzləmə Sisteminə Baxış
Quş Qidalandırıcı İzləmə Sisteminə Baxış

Bu, quş qidalandırıcımızda qidalanan quşları saymaq, vaxt keçirmək, qeyd etmək və fotoşəkil çəkmək üçün hazırlanmış bir izləmə sistemidir. Bird Feeder Monitor -un əvvəlki versiyası bir Arduino Yun istifadə etdi və məlumatları Google Diskimdə elektron tabloda saxladı. Bu versiya çoxlu Raspberry Pi, MQTT əlaqələrindən və məlumat və fotoşəkillərin yerli saxlanmasından istifadə edir.

Bird Feeder, Raspberry Pi Zero W və Kapasitif Toxunma Sensoru (CAP1188) ilə təchiz edilmişdir. Tündərdə işıq saçan quşlar, hər bir hadisənin nə qədər davam edəcəyini təyin etmək üçün bir taymeri işə salan sensoru işə salır. Toxunma aktivləşən kimi "monitor/feeder/picture" MQTT mesajı Quş Besleyici Monitor tərəfindən yayımlanır. Bu mesaj Raspberry Pi Kamerasına şəkil çəkdirməyi bildirir. MQTT Server bir "monitor/feeder/getcount" mesajı dərc edərsə, Bird Feeder Monitor serverin saxlayacağı "monitor/feeder/count" MQTT mesajı ilə cavab verəcək.

MQTT Server bir neçə vəzifəni yerinə yetirir. Bird Feeder Monitor -dan məlumat tələb edir və saxlayır və monitorun işinə nəzarət edir. Şəfəq vaxtı monitoru işə salır və alacakaranlıqda söndürür. Məlumat istəmək üçün vaxt aralığını da nəzarət edir və eyni zamanda DarkSky vasitəsilə cari hava şəraitini izləyir. Hava şəraiti bir neçə səbəbdən izlənilir. Hər şeydən əvvəl, yağış miqdarı sensorlara təsir edə bilər. Bu baş verərsə, yağış yağanda sensorlar müntəzəm olaraq yenidən kalibr edilir. İkinci səbəb, quş sayma məlumatları ilə əlaqə qurmaq üçün hava şəraitini izləmək və qeyd etməkdir.

Raspberry Pi kamera, RPi + Raspberry Pi Kamera moduludur. Bu layihə üçün istifadə olunan kamera proqramı USB veb kamerası ilə işləmir. RPi Kamera WIFI ilə təchiz olunmuşdur və MQTT Müştəri proqramı ilə işləyir. "Monitor/feeder/picture" MQTT mesajlarına abunə olur və bu mesaj hər dəfə alındıqda şəkil çəkir. Şəkillər RPi Kamerada saxlanılır və uzaqdan idarə olunur.

Addım 2: Raspbian -ı Bird Feeder Monitor -a quraşdırın

Bird Feeder Monitorunda Raspbian quraşdırılması
Bird Feeder Monitorunda Raspbian quraşdırılması

Raspbian Lite-in ən son versiyasını Raspberry Pi Zero W-də quraşdırın. Adafruit-in Raspberry Pi Zero Başsız Tez Başlanğıcında tapa biləcəyiniz addım-addım təlimatları izləməyi məsləhət görürəm.

Aşağıdakı addımlar yuxarıdakı təlimatlara daxil edilmişdir, lakin təkrar etməyə layiqdirlər:

Ssh vasitəsilə RPi -yə qoşulun və aşağıdakı əmrləri yerinə yetirin:

sudo apt-get yeniləmələri və apt-get yeniləmələri

Yuxarıdakı əmrlərin yerinə yetirilməsi bir az vaxt aparacaq, ancaq bu əmrləri yerinə yetirmək sizi ən son paketlərdən xəbərdar olmağınızı təmin edəcək.

Sonra, RPi Proqramını konfiqurasiya etmək üçün aşağıdakı əmri işlədin:

sudo raspi-config

Şifrənizi dəyişdirin, SPI və I2C -ni aktiv edin və fayl sistemini genişləndirin. Bunlar tamamlandıqdan sonra raspi-config-dən çıxın.

Addım 3: RPi və CAP1188 -in naqilləri

RPi və CAP1188 kabelləri
RPi və CAP1188 kabelləri

Raspberry Pi W (RPi) və CAP1188 I2C istifadə edərək bağlanmışdır. Bir, beş və ya səkkiz sensoru olan digər tutumlu sensor sensorlar da mövcuddur. Quş bəsləyicimin altı tərəfi olduğu üçün səkkizini seçdim.

Kablolama:

  • CAP1188 SDA == RPi Pin 3
  • CAP1188 SCK == RPi Pin 5
  • CAP1188 VIN == RPi Pin 1 (+3.3VDC)
  • CAP1188 GND == RPi Pin 9 (GND)
  • CAP1188 C1-C8 == 1x8 Dupont Konnektoru vasitəsi ilə hər perchdəki tellərə qoşulun
  • CAP1188 3Vo == CAP1188 AD - I2C ünvanını 0x28 -ə bağlayın
  • RPi Pin 2 == +5VDC
  • RPi Pin 14 == GND

RPi üçün güc xaricdən, qarajımdan yeraltı bir tel çəkərək və quş yemi dayanacağı olaraq istifadə olunan borudan keçərək təmin edildi. RPi Bird Feeder Monitorunu bağlamaq üçün telin ucuna 2 Pinli Hava Keçirməyən Bağlayıcı bağlandı. Telin digər ucu qarajdakı 5 VDC qaynaqlı bir enerji təchizatına qoşuldu. Bu layihə batareyalarla işləməlidir, amma batareyaları müntəzəm olaraq dəyişdirmək istəmirdim.

RPi ehtiva edən Hava Keçirməyən Qutunu CAP1188 ehtiva edən Hava Keçirməyən Qutuya bağlamaq üçün 16 düym uzunluğunda bir kabel çəkdim. Kapasitiv sensorun perçinlərə mümkün qədər yaxın yerləşməsi lazımdır.

RPi Zero və CAP1188 hava şəraitinə davamlı bir qutuda qablaşdırıla bilərdi, amma onları ayrıca qablaşdırmağa üstünlük verdim.

Addım 4: Bird Feeder Monitorunun konfiqurasiyası

Bird Feeder Monitorunun konfiqurasiyası
Bird Feeder Monitorunun konfiqurasiyası
Bird Feeder Monitorunun konfiqurasiyası
Bird Feeder Monitorunun konfiqurasiyası

Raspberry Pi Zero W -ə daxil olun və aşağıdakı addımları yerinə yetirin.

Pip quraşdırın:

sudo apt-get python3-pip quraşdırın

Adafruit CircuitPython quraşdırın:

sudo pip3 install -setuptools -u təkmilləşdirin

I2C və SPI cihazlarını yoxlayın:

ls /dev /i2c* /dev /spi*

Aşağıdakı cavabı görməlisiniz:

/dev/i2c-1 /dev/spidev0.0 /dev/spidev0.1

Sonra GPIO və Adafruit blinka paketini quraşdırın:

pip3 qurmaq RPI. GPIOpip3 qurmaq adafruit-blinka

Adafruit -in CAP1188 modulunu quraşdırın:

pip3 adafruit-circuitpython-cap1188 quraşdırın

I2C alətlərini quraşdırın:

sudo apt-get install python-smbussudo apt-get install i2c-tools

I2C ünvanlarını yuxarıdakı alətlə yoxlayın:

i2cdetect -y 1

CAP1188 bağlıdırsa, yuxarıdakı fotoşəkildə göründüyü kimi eyni cavabı görəcəksiniz ki, bu da sensorun I2C 0x28 ünvanında olduğunu göstərir (və ya seçdiyiniz I2C ünvanından asılı olaraq 0x29).

Sivrisinek, ağcaqanad müştəriləri və paho-mqtt quraşdırın:

sudo apt-get mosquitto mosquitto-client python-mosquitto qurun

sudo pip3 paho-mqtt quraşdırın

Bu RPi -də MQTT -ni konfiqurasiya etmək və qurmaq üçün Adafruit -in Raspberry Pi -də MQTT -nin Konfiqurasiyasından istifadə etməyi məsləhət görürəm.

Bird Feeder Monitor proqramını quraşdırın:

cd ~

sudo apt-get install git git clone "https://github.com/sbkirby/RPi_bird_feeder_monitor.git"

Qeydlər qovluğu yaradın:

cd ~

mkdir qeydləri

CAP1188 sensorunu RPi -yə bağlayın və MQTT serveri işə salındıqdan sonra sistemi sınamaq üçün aşağıdakıları edin:

cd RPi_bird_feeder_monitor

sudo nano config.json

Yerli quruluşunuza uyğun olaraq "OIP_HOST", "MQTT_USER", "MQTT_PW" və "MQTT_PORT" üçün dəyərləri dəyişdirin. Çıxın və dəyişikliklərinizi qeyd edin.

Başlanğıcda işləyin

Hələ/home/pi/RPi_bird_feeder_monitor qovluğunda olarkən.

nano başlatma.sh

Launcher.sh saytına aşağıdakı mətni daxil edin

#!/bin/sh

# launcher.sh # ana qovluğa gedin, sonra bu qovluğa gedin, sonra python skriptini icra edin, sonra evə geri cd /cd home /pi /RPi_bird_feeder_monitor sudo python3 feeder_mqtt_client.py cd /

Başlatıcıdan çıxın və saxla.sh

Ssenarini icra edilə bilən hala gətirməliyik.

chmod 755 başlatma.sh

Ssenarini sınayın.

sh başlatma.sh

Sonra, başlanğıcda skriptin işə salınması üçün crontab -ı (linux tapşırıq meneceri) redaktə etməliyik. Qeyd: /logs kataloqunu əvvəllər yaratmışıq.

sudo crontab -e

Bu, crontab pəncərəsini yuxarıda göründüyü kimi gətirəcək. Faylın sonuna gedin və aşağıdakı sətri daxil edin.

@reboot sh /home/pi/RPi_bird_feeder_monitor/launcher.sh>/home/pi/logs/cronlog 2> & 1

Fayldan çıxın və qeyd edin və RPi -ni yenidən başladın. Skript, RPi yenidən başladıqdan sonra feeder_mqtt_client.py skriptini başlamalıdır. Skriptin vəziyyəti /logs qovluğunda yerləşən qeyd sənədlərində yoxlanıla bilər.

Addım 5: 3D çaplı hissələr

3D çaplı hissələr
3D çaplı hissələr
3D çaplı hissələr
3D çaplı hissələr
3D çaplı hissələr
3D çaplı hissələr

Bu STL faylları bu layihə üçün yaratdığım 3D Çap olunmuş hissələr üçündür və bu hissələrin hamısı isteğe bağlıdır. Hava şəraitinə davamlı qablar yerli olaraq istehsal oluna və ya satın alına bilər. CedarWorks Quş Besleyicinin "Montaj Kəməri" də isteğe bağlıdır. Bu hissə CAP1188 sensor korpusunun montajı üçün lazım idi.

Addım 6: Quş Qidalandırıcı Monitoru Montajı

Quş Qidalandırıcı Monitoru Məclisi
Quş Qidalandırıcı Monitoru Məclisi

Raspbian qurduqdan sonra, əvvəllər qeyd edildiyi kimi RPi və CAP1188 Sensorunu konfiqurasiya və sınaqdan keçirdikdən sonra, indi bu cihazları hava şəraitinə uyğun olmayan çantalarına quraşdırmağın vaxtıdır.

RPi və CAP1188 Sensorunu bağlamaq üçün çap etdiyim iki hava keçirməyən korpusdan istifadə etdim. Hər şeydən əvvəl, hər bir kassanın bir ucunda 1/2 delik açdım. SD Kartı ilə qarşı tərəfdəki RPi korpusundakı deliyi qazın. Hər çuxurda Ayarlanabilir Locknut ilə Neylon Kabel Rezinini birləşdirin. hər bir qutu arasında keçirici kabel. 2 Pinli Avtomobil Suya davamlı Elektrikli Qadın Dişi Konnektorunu yuxarıdakı fotoda göstərildiyi kimi RPi -yə quraşdırın və lehimləyin. Qırmızı teli RPi -nin +5VDC Pin 2 -nə, qara teli isə GND və ya Pin 14 -ə lehimləyin. RPi -də istifadə olunan digər əlaqələr üçün kabel sxeminə baxın.

Dörd iletken telinin digər ucunu CAP1188 korpusundakı Gland Joint -dən keçirin və telləri naqillərin sxemində göstərildiyi kimi bağlayın. CAP1188 kapasitiv sensor sensorlarının hamısı 8 Pinli qadın Dupont konnektoruna lehimlənir. Bu bağlayıcı, üst tətbiq edildikdə su keçirməyən bir möhürə icazə vermək üçün qutunun yan tərəfinə girilmişdir. Qeyd: Hər iki halda da üst hissə, Gland Joint Connectors üzərindəki qoz -fındıqlara icazə vermək üçün dəyişikliklər tələb edəcək.

Bağlamadan əvvəl, hər bir korpusun kənarlarına və korpusları möhürləmək üçün Gland oynaqlarının tellərinin ətrafına silikon örtük tətbiq edirəm. Dupont konnektorunun arxasına elementlərdən yapışdırmaq üçün silikon əlavə edirəm.

Addım 7: Quş Besleyicinin Kablolanması

Quş Besleyicinin naqilləri
Quş Besleyicinin naqilləri
Quş Besleyicinin Kablolanması
Quş Besleyicinin Kablolanması
Quş Besleyicinin naqilləri
Quş Besleyicinin naqilləri

Qidalanma qurğusunun hər biri 1/4 genişliyində öz -özünə yapışan mis folqa lenti ilə örtülmüşdü. Bant və perçin arasına kiçik bir deşik açılmış və folqa lentinə bir tel lehimlənmiş və qidalandırıcının altından keçirilmişdir. tellər kişi 6 pinli Dupont konnektoruna qoşulur.

Qeyd: Yuxarıda göstərilən quş yemi ilə, hər bir folqa zolağının ucları arasında 1 1/4 " - 1 1/2" aralığında bir boşluq etməyi məsləhət görürəm. Kəşf etdim ki, qaraciyərlər və göyərçinlər kimi daha böyük quşlar bir -birinə bağlansalar eyni anda iki folqa şeridinə toxuna bilirlər.

Daha əvvəl qeyd olunan "Montaj pazı", çap edilmiş və CAP1188 ehtiva edən Hava Keçirməyən Qutunun quraşdırılması üçün düz bir sahə təmin etmək üçün qidalandırıcının dibinə yapışdırılmışdır. Bağlama vasitəsi təmin etmək üçün Qutuya və taxta bloka cırt bant tətbiq edildi. Bunu tamamlanmış montajın yuxarıdakı fotoşəklində görmək olar. Borunu və RPi qutusunu qidalandırıcının altına bağlamaq üçün sarmaq üçün bir velkro kəmər istifadə olunur.

Quş qidalandırıcı, qidalandırıcıya əlavə edilmiş sensor və RPi ilə doldurulur və hələ də boru dayağında olarkən. Xoşbəxtlikdən, 6'2 boyum var və çox səy göstərmədən konteynerə çatıram.

Addım 8: MQTT Server

MQTT Server
MQTT Server
MQTT Server
MQTT Server
MQTT Server
MQTT Server

Əgər artıq IOT dünyasında çalışırsınızsa, şəbəkənizdə artıq MQTT Serveriniz ola bilər. Bunu etməsəniz, MQTT Server üçün bir Raspberry Pi 3 istifadə etməyi və Andreas Spiessin "Node-Red, InfuxDB & Grafana Installation" saytında tapılan təlimatları və IMG görüntü faylını istifadə etməyi məsləhət görürəm. Andreasın, bu mövzuda 255 Node-Red, InfluxDB və Raspberry Pi-də Grafana Dərsliyi haqqında məlumatlandırıcı bir videosu da var.

Node-Red Server işə düşdükdən sonra ~/RPi_bird_feeder_monitor/json/Bird_Feeder_Monitor_Flow.json-dakı məlumatları kopyalayaraq və Panoya yeni axına yapışdırmaq üçün İdxal> Panodan istifadə edərək Quş Qidalandırıcı Monitor axını idxal edə bilərsiniz.

Bu axın üçün aşağıdakı qovşaqlar lazımdır:

  • node-red-node-darksky-Bu qovşaqdan istifadə etmək üçün DarkSky API hesabı tələb olunur.
  • node-red-Contrib-bigtimer-Scargill Tech tərəfindən Böyük Taymer
  • node-red-Contribution-influxdb-InfluxDB Verilənlər Bazası

Yeriniz üçün hava məlumatları DarkSky vasitəsilə təmin edilir. Və hazırda "precipIntensity", "temperatur", "rütubət", "windSpeed", "windBearing", "windGust" və "cloudCover" izləyirəm və qeyd edirəm. Yağış nəticəsində sensorların yenidən kalibr edilməsinin lazım olub olmadığını müəyyən etmək üçün istifadə edildiyi üçün "precipIntensity" vacibdir.

Böyük Taymer düyünü, taymerlərin İsveçrə ordusu bıçağıdır. Hər gün Şəfəq və Akşam saatlarında məlumatların qeydini başlatmaq və dayandırmaq üçün istifadə olunur.

InfluxDB, istifadəsi asan olan zaman seriyası verilənlər bazasıdır. Verilənlər bazası hər dəfə məlumat daxil etdiyimiz zaman avtomatik olaraq bir zaman damgası əlavə edir. SQLite -dən fərqli olaraq sahələri təyin etmək lazım deyil. Verilənlər bazaya daxil edildikdə avtomatik olaraq əlavə olunur.

Düyün-Qırmızı Konfiqurasiya

Yuxarıda göstərilən JSON faylı, tələblərinizə uyğun bir neçə düzəliş tələb edən bir axını yükləyəcək.

  1. "MQTT Publish" və "monitor/feeder/#" qovluqlarını MQTT Serverinizə qoşun.
  2. Enlem və Boylamı "Şəfəq və Alacakaranlıq Taymeri (konfiqurasiya)" Böyük Zamanlayıcı qovşağında yerləşdiyiniz yerə təyin edin.
  3. "Monitor/feeder/astronomy (config)" qovşağını konfiqurasiya edin. Kamera hər perch üçün aktiv/deaktiv edilə bilər. Məsələn, mənim iki tündüm arxa tərəfdədir və kamera bu perçlər üçün deaktivdir.
  4. "Counter Timer (config)" düyməsini istədiyiniz vaxt aralığına qoyun. Varsayılan = 5 dəq
  5. Enlem və Boylamı "DarkSky (config)" qovşağında yerləşdiyiniz yerə təyin edin. İkincisi, DarkSky API Açarınızı darksky-etimadnamə qovşağına daxil edin.
  6. Yağış intensivliyini "monitor/feeder/recalibrate (config)" Function node -da təyin edin. Varsayılan = 0.001 in/hr
  7. Görmək istəmədiyiniz MQTT mesajlarını süzmək üçün "MQTT Alıcı Debug Node (Konfiqurasiya) üçün Mövzu Filtri" funksiyasını düzəldin.
  8. İsteğe bağlı: Məlumatları Google Diskinizdə elektron tabloda saxlamaq istəyirsinizsə, Form Sahə ID -ləri ilə "Google Sənədləri Yükləmə (Konfiqurasiya) Oluştur" funksiyası düyməsini redaktə etməlisiniz.
  9. İsteğe bağlı: "Google Sənədlər GET (konfiqurasiya)" HTTP İstək qovşağının URL sahəsinə özünəməxsus Form URL -ni əlavə edin.

Node-Qırmızı UI Masaüstü

Bird_Feeder_Monitor_Flow, mobil telefon vasitəsilə MQTT Server -ə daxil olmaq üçün İstifadəçi İnterfeysi (UI) daxildir. Monitoru SÖKMƏK və ya AÇIQ etmək, Sensorları yenidən kalibr etmək və ya Şəkilləri əl ilə çəkmək olar. Ümumilikdə "toxunma" sensoru da göstərilir ki, bu da qidalandırıcıya gedən quşların sayı haqqında kobud bir fikir verəcəkdir.

Addım 9: Grafana

Qrafana
Qrafana
Qrafana
Qrafana

"Grafana, açıq mənbəli metrik analitik və vizuallaşdırma paketidir. Ən çox infrastruktur və tətbiq analitiği üçün zaman seriyası məlumatlarını görselleştirmek üçün istifadə olunur, lakin bir çoxları sənaye sensorları, ev avtomatlaşdırması, hava və proses nəzarəti də daxil olmaqla digər sahələrdə istifadə edir." refn: Grafana Sənədləri.

Bu proqram, MQTT Serverimi yaratmaq üçün istifadə olunan Andreas Spiessin şəkil faylına daxildir. MQTT Server -də InfluxDB verilənlər bazasını konfiqurasiya etdikdən sonra, Grafana bu verilənlər bazasını yuxarıdakı şəkildə göründüyü kimi istifadə etmək üçün konfiqurasiya edilə bilər. Daha sonra, bu layihənin istifadə etdiyi tablosu ~/RPi_bird_feeder_monitor/json/Bird_Feeder_Monitor_Grafana.jsonda olan JSON faylından yüklənə bilər. Grafananı konfiqurasiya etmək üçün göstərişləri Andreas Spiessin "Node-Red, InfuxDB & Grafana Installation" saytında tapa bilərsiniz.

Addım 10: InfluxDB

InfluxDB
InfluxDB
InfluxDB
InfluxDB

Daha əvvəl də qeyd edildiyi kimi, Adreas Spiess -in InfluxDB konfiqurasiyasından keçmək üçün əla bir bələdçisi və videosu var. Verilənlər bazasını konfiqurasiya etmək üçün atdığım addımlar budur.

Hər şeydən əvvəl SSH vasitəsilə MQTT Serverimə daxil oldum və İSTİFADƏÇİ yaratdım:

kök@MQTTPi: ~#

root@MQTTPi: ~# axın "https:// localhost: 8086" versiyasına qoşulur 1.7.6 InfluxDB qabıq versiyası: 1.7.6 bir InfluxQL sorğusu daxil edin> İstifadəçi "pi" ni parol ilə "moruq" ilə bütün üstünlüklərlə göstərin istifadəçi admin ---- ----- pi doğru

Sonra bir verilənlər bazası yaratdım:

DATABASE BIRD_FEEDER_MONITOR YARAD>> VERTABANLARI GÖSTƏRİN adı: verilənlər bazası adı ---- _internal BIRD_FEEDER_MONITOR>

Yuxarıdakı verilənlər bazasını yaratdıqdan sonra InfluxDB düyünü Node-Red-də konfiqurasiya edə bilərsiniz. Yuxarıdakı fotoşəkildə göründüyü kimi Ölçmə "qidalandırıcılar" adlandırıram. Məlumat başladıqdan sonra bunu InfluxDB -də görmək olar:

BIRD_FEEDER_MONITOR istifadə edin BIRD_FEEDER_MONITOR verilənlər bazasından istifadə edin

> ÖLÇÜMLƏRİ GÖSTƏRİN adı: ölçülərin adı ---- qidalandırıcılar>

InfluxDB -nin bir çox xüsusiyyətlərindən biri də FIELDS konfiqurasiyasına ehtiyac yoxdur. Sahələr məlumat daxil edildikdə avtomatik olaraq əlavə olunur və konfiqurasiya olunur. Bu verilənlər bazası üçün FIELDS və FIELDTYPE:

SAHƏ KEYİ GÖSTƏRİN Adı: qidalandırıcılar sahəsiKey fieldType -------- --------- bulud örtüyü float count_1 float count_2 float count_3 float count_4 float count_5 float count_6 float rütubət float adı string precip_Int float temp float time_1 float time_2 üzmək vaxtı_3 üzmək vaxtı_4 üzmək vaxtı_5 üzmək vaxtı_6 üzmək winddir üzmək

Verilənlər bazasından bir neçə girişi aşağıda görmək olar:

SEÇ * FROM-dən LİMİT 10 adı: qidalanma vaxtı bulud örtüyü sayı_1 say_2 say_3 say_4 say_5 say_6 rütubət adı precip_Int temp vaxtı_1 vaxt_2 vaxt_3 zaman_4 zaman_5 zaman_6 winddir külək küləyi ---- ---------- ----- -------- ------- ------- ------- ------- -------- ----- --------- ---- ------ ------ ------ ------ ------ ------- ------ -------- --------- 1550270591000000000 0 0 0 0 0 0 Besleyici1 0 0 0 0 0 0 1550271814000000000 0 0 0 0 0 0 Besleyici1 0 0 0 0 0 0 155027223000000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 0 0 1550272530000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 0 1550272830000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 1550273130000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 0 1550273430000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 1550273730000000000 0 0 0 0 0 0 Feeder1 0 0 0 0 0 1550274030000000000 0 0 0 0 0 0 Besleyici1 0 0 0 0 0 0 1550274330000000000000000 0 0 0 0 0 0 0 Feeder1 0 0 0 0 0 0>

Addım 11: Raspberry Pi Kamera

Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera
Raspberry Pi Kamera

Raspberry Pi Kamerasını yığmaq üçün Təlimatlı, Uzaqdan CNC Durdurma və Monitordan istifadə etməyi məsləhət görürəm. Kamera yaratmaq üçün 6 və 8 istisna olmaqla qeyd olunan bütün addımları yerinə yetirin. Zəhmət olmasa Kameram üçün daha köhnə bir Raspberry Pi istifadə etdiyimi, ancaq Mağaza pəncərəmdən çox yaxşı işlədiyini unutmayın.

Rasbiyanı təkmilləşdirin:

sudo apt-get yeniləmələri və apt-get yeniləmələri

PIP quraşdırın:

sudo apt-get python3-pip quraşdırın

Paho-mqtt quraşdırın:

sudo pip3 paho-mqtt quraşdırın

Git və Bird Monitoring Proqramını quraşdırın:

cd ~

sudo apt-get install git git clone "https://github.com/sbkirby/RPi_bird_feeder_monitor.git"

Kamera tərəfindən çəkilmiş şəkillərdən video çəkmək istəyirsinizsə, ffmpeg qurun:

git klonu "https://git.ffmpeg.org/ffmpeg.git" ffmpeg

cd ffmpeg./configure sudo make install qurun

Bird Feeder Monitoring proqramında icazələrin konfiqurasiyası:

cd RPi_bird_feeder_monitor

sudo chmod 764 make_movie.sh sudo chmod 764 take_photo.sh sudo chown www-data: www-data make_movie.sh sudo chown www-data: www-data take_photo.sh

Şəxsən mən RPi Kamerada make_movie.sh istifadə etməyi məsləhət görmürəm. RPi üzərində çalışmaq üçün bir çox qaynağa ehtiyac var. Şəkilləri kompüterinizə köçürməyi və orada ffmpeg işə salmağı məsləhət görürəm.

Başlanğıcda işləyin

RPi -yə daxil olun və /RPi_bird_feeder_monitor qovluğuna keçin.

cd RPi_bird_feeder_monitor

nano başlatma.sh

Launcher.sh saytına aşağıdakı mətni daxil edin

#!/bin/sh

# launcher.sh # ana qovluğa gedin, sonra bu qovluğa gedin, sonra python skriptini icra edin, sonra evə qayıdın cd /cd home /pi /RPi_bird_feeder_monitor sudo python3 camera_mqtt_client.py cd /

Başlatıcıdan çıxın və saxla.sh

Ssenarini və icra edilə bilən hala gətirməliyik.

chmod 755 başlatma.sh

Ssenarini sınayın.

sh başlatma.sh

Günlük qovluğu yaradın:

cd ~

mkdir qeydləri

Sonra, başlanğıcda skriptin işə salınması üçün crontab -ı (linux tapşırıq meneceri) redaktə etməliyik.

sudo crontab -e

Bu, crontab pəncərəsini yuxarıda göründüyü kimi gətirəcək. Faylın sonuna gedin və aşağıdakı sətri daxil edin.

@reboot sh /home/pi/RPi_bird_feeder_monitor/launcher.sh>/home/pi/logs/cronlog 2> & 1

Fayldan çıxın və qeyd edin və RPi -ni yenidən başladın. Skript, RPi yenidən başladıqdan sonra camera_mqtt_client.py skriptinə başlamalıdır. Skriptin vəziyyəti /logs qovluğunda yerləşən qeyd sənədlərində yoxlanıla bilər.

Addım 12: Zövq alın

Zövq alın
Zövq alın

Quşları seyr etməkdən zövq alırıq, lakin maksimum zövq almaq üçün qidalandırıcıyı bir yerə yerləşdirə bilmərik. Əksəriyyətimizin görə biləcəyi yeganə yer səhər yeməyi masasıdır və hər kəs oradan yemi görə bilməz. Buna görə də, Quş Yemləmə Monitoru ilə rahatlıqla quşlara heyran ola bilərik.

Monitörlə kəşf etdiyimiz bir şey, quşların bir perchə enmə tezliyi və sonra bütün yemi dolaşana qədər bir sonrakı pervana tullanmasıdır. Nəticədə, quş sayımları, qidalandırıcımızı ziyarət edən fərdi quşların sayından YOXDUR. Yalnız bir və ya iki dar tündlü bir qidalandırıcı, quşları "saymaq" üçün ən yaxşı olardı.

Sensorlar Müsabiqəsi
Sensorlar Müsabiqəsi
Sensorlar Müsabiqəsi
Sensorlar Müsabiqəsi

Sensorlar yarışmasında ikinci mükafat

Tövsiyə: