विषयसूची:

बर्ड फीडर मॉनिटर V2.0: 12 चरण (चित्रों के साथ)
बर्ड फीडर मॉनिटर V2.0: 12 चरण (चित्रों के साथ)

वीडियो: बर्ड फीडर मॉनिटर V2.0: 12 चरण (चित्रों के साथ)

वीडियो: बर्ड फीडर मॉनिटर V2.0: 12 चरण (चित्रों के साथ)
वीडियो: ये हैंडीमैन टिप्स और हैक्स हैं बेहद शानदार ▶3 2024, जुलाई
Anonim
Image
Image
बर्ड फीडर मॉनिटर V2.0
बर्ड फीडर मॉनिटर V2.0

यह हमारे बर्ड फीडर पर आने वाले पक्षियों द्वारा खर्च की गई संख्या और समय की निगरानी, फोटोग्राफ और रिकॉर्ड करने की एक परियोजना है। इस परियोजना के लिए एकाधिक रास्पबेरी पाई (आरपीआई) का उपयोग किया गया था। एक का उपयोग कैपेसिटिव टच सेंसर, Adafruit CAP1188 के रूप में किया गया था, जो पक्षियों के भोजन की तस्वीरों का पता लगाने, रिकॉर्ड करने और ट्रिगर करने के लिए था। इस निगरानी प्रणाली के संचालन को नियंत्रित करने के साथ-साथ निगरानी और विश्लेषण के लिए डेटा को स्टोर और बनाए रखने के लिए एक और आरपीआई कॉन्फ़िगर किया गया था। फीडर पर जाने वाले प्रत्येक पक्षी की तस्वीर लेने के लिए अंतिम आरपीआई को कैमरे के रूप में कॉन्फ़िगर किया गया था।

आपूर्ति

  1. 1 ईए - रास्पबेरी पाई डब्ल्यू
  2. 1 ईए - रास्पबेरी पाई 3 - मॉडल बी + - एमक्यूटीटी सर्वर के लिए
  3. 1 ईए - कैमरा के साथ रास्पबेरी पाई - वैकल्पिक
  4. 2 ईए - आरपीआई और सीएपी1188 सेंसर के लिए वेदरप्रूफ केस
  5. 1 ईए - प्रवाहकीय चिपकने वाला कॉपर फ़ॉइल टेप
  6. तार - 18-22 एडब्ल्यूजी
  7. सोल्डरिंग आयरन और सोल्डर
  8. इलेक्ट्रॉनिक्स के लिए सोल्डरिंग फ्लक्स
  9. सिलिकॉन कलकिंग*
  10. 8 ईए - एम3 एक्स 25 मशीन स्क्रू*
  11. 8 ईए - एम3 नट*
  12. 1 ईए - बढ़ते CAP1188. के लिए प्रोटो बोर्ड
  13. 1 ईए - 1x8 महिला ड्यूपॉन्ट कनेक्टर
  14. 1 ईए - 1x6 पुरुष ड्यूपॉन्ट कनेक्टर
  15. 1 ईए - सीएपी 1188 - 8-कुंजी कैपेसिटिव टच सेंसर
  16. 2 EA - PG7 वाटरप्रूफ IP68 Nylon केबल ग्लैंड ज्वाइंट एडजस्टेबल लॉकनट 3mm-6.5mm दीया केबल वायर के लिए
  17. 1 सेट - 2 पिन वे कार वाटरप्रूफ इलेक्ट्रिकल कनेक्टर प्लग वायर एडब्ल्यूजी मरीन पैक 10. के साथ
  18. 3 ईए - 5 वीडीसी बिजली आपूर्ति - प्रत्येक आरपीआई के लिए एक
  19. 1 ईए - बर्ड फीडर (सीडरवर्क्स प्लास्टिक हॉपर बर्ड फीडर), या प्लास्टिक या लकड़ी के पेच के साथ कोई बर्ड फीडर

*3डी प्रिंटेड वेदरप्रूफ केसों के लिए

चरण 1: बर्ड फीडर मॉनिटरिंग सिस्टम का अवलोकन

बर्ड फीडर मॉनिटरिंग सिस्टम का अवलोकन
बर्ड फीडर मॉनिटरिंग सिस्टम का अवलोकन

यह एक निगरानी प्रणाली है जिसे हमारे बर्ड फीडर पर भोजन करने वाले पक्षियों की गिनती, समय, रिकॉर्ड और तस्वीरें लेने के लिए डिज़ाइन किया गया है। मेरे बर्ड फीडर मॉनिटर के पिछले संस्करण में एक Arduino Yun का उपयोग किया गया था, और डेटा को मेरे Google ड्राइव पर एक स्प्रेडशीट में संग्रहीत किया गया था। यह संस्करण कई रास्पबेरी पाई, एमक्यूटीटी संचार और डेटा और तस्वीरों के स्थानीय भंडारण का उपयोग करता है।

बर्ड फीडर रास्पबेरी पाई ज़ीरो डब्ल्यू और कैपेसिटिव टच सेंसर (CAP1188) से लैस है। पर्चों पर प्रकाश करने वाला कोई भी पक्षी स्पर्श संवेदक को सक्रिय करता है जो प्रत्येक घटना के अंतिम समय को निर्धारित करने के लिए एक टाइमर शुरू करता है। जैसे ही स्पर्श सक्रिय होता है, "मॉनिटर/फीडर/पिक्चर" MQTT संदेश बर्ड फीडर मॉनिटर द्वारा प्रकाशित किया जाता है। यह संदेश रास्पबेरी पाई कैमरा को फोटो लेने के लिए सूचित करता है। यदि MQTT सर्वर एक "मॉनिटर/फीडर/गेटकाउंट" संदेश प्रकाशित करता है, तो बर्ड फीडर मॉनिटर एक "मॉनीटर/फीडर/काउंट" MQTT संदेश के साथ प्रतिक्रिया करेगा जिसे सर्वर स्टोर करेगा।

MQTT सर्वर कई कार्य करता है। यह बर्ड फीडर मॉनिटर से डेटा का अनुरोध और भंडारण करता है, और यह मॉनिटर के संचालन को नियंत्रित करता है। यह डॉन पर मॉनिटर को सक्रिय करता है और शाम को इसे बंद कर देता है। यह डेटा का अनुरोध करने के लिए समय अंतराल को भी नियंत्रित करता है, और यह डार्कस्काई के माध्यम से वर्तमान मौसम की स्थिति पर भी नज़र रखता है। मौसम की स्थिति की निगरानी कुछ कारणों से की जाती है। सबसे पहले, वर्षा की मात्रा सेंसर को प्रभावित कर सकती है। यदि ऐसा होता है, तो बारिश होने पर सेंसर नियमित आधार पर पुन: कैलिब्रेट किए जाते हैं। दूसरा कारण, पक्षी गणना डेटा के साथ सहसंबंध के लिए मौसम की स्थिति की निगरानी और रिकॉर्ड करना है।

रास्पबेरी पाई कैमरा एक आरपीआई + रास्पबेरी पाई कैमरा मॉड्यूल है। इस प्रोजेक्ट के लिए उपयोग किया गया कैमरा सॉफ़्टवेयर USB वेबकैम के साथ कार्य नहीं करता है। आरपीआई कैमरा वाईफ़ाई से लैस है और एमक्यूटीटी क्लाइंट सॉफ्टवेयर संचालित कर रहा है। यह एमक्यूटीटी संदेशों की "मॉनिटर/फीडर/पिक्चर" की सदस्यता लेता है, और हर बार यह संदेश प्राप्त होने पर एक फोटो लेता है। तस्वीरें आरपीआई कैमरा पर संग्रहीत हैं, और दूरस्थ रूप से प्रबंधित की जाती हैं।

चरण 2: बर्ड फीडर मॉनिटर पर रास्पियन स्थापित करना

बर्ड फीडर मॉनिटर पर रास्पियन स्थापित करना
बर्ड फीडर मॉनिटर पर रास्पियन स्थापित करना

रास्पबेरी पाई ज़ीरो डब्ल्यू पर रास्पियन लाइट का नवीनतम संस्करण स्थापित करें। मैं चरण-दर-चरण निर्देशों का पालन करने की सलाह देता हूं जो एडफ्रूट के रास्पबेरी पाई ज़ीरो हेडलेस क्विक स्टार्ट में पाए जा सकते हैं।

निम्नलिखित चरणों को ऊपर दिए गए निर्देशों में शामिल किया गया था, लेकिन यह दोहराने लायक है:

एसएसएच के माध्यम से आरपीआई से कनेक्ट करें और निम्न आदेश चलाएं:

सुडो एपीटी-अपडेट प्राप्त करेंसुडो एपीटी-अपग्रेड प्राप्त करें

उपरोक्त आदेशों को पूरा होने में कुछ समय लगेगा, लेकिन इन आदेशों को चलाने से यह सुनिश्चित हो जाएगा कि आप नवीनतम पैकेजों के साथ अप-टू-डेट हैं।

अगला, RPi सॉफ़्टवेयर को कॉन्फ़िगर करने के लिए निम्न कमांड चलाएँ:

सुडो रास्पि-कॉन्फ़िगरेशन

अपना पासवर्ड बदलें, SPI और I2C को सक्षम करें, और फाइल सिस्टम का विस्तार करें। एक बार ये पूरा हो जाने के बाद, raspi-config से बाहर निकलें।

चरण 3: RPi और CAP1188 की वायरिंग

आरपीआई और सीएपी1188. की वायरिंग
आरपीआई और सीएपी1188. की वायरिंग

रास्पबेरी पाई डब्ल्यू (आरपीआई) और सीएपी1188 को I2C का उपयोग करके तार-तार किया जाता है। एक, पांच या आठ सेंसर के साथ अन्य कैपेसिटिव टच सेंसर उपलब्ध हैं। मैंने आठ को चुना क्योंकि मेरे बर्ड फीडर में छह भुजाएँ हैं।

तारों:

  • CAP1188 एसडीए == आरपीआई पिन 3
  • CAP1188 SCK == RPi पिन 5
  • CAP1188 VIN == RPi पिन 1 (+3.3VDC)
  • CAP1188 GND == RPi पिन 9 (GND)
  • CAP1188 C1-C8 == 1x8 महिला ड्यूपॉन्ट कनेक्टर के माध्यम से प्रत्येक पर्च पर तारों से कनेक्ट करें
  • CAP1188 3Vo == CAP1188 AD - I2C एड्रेस को 0x28. पर हार्डवायर करें
  • आरपीआई पिन 2 == +5वीडीसी
  • आरपीआई पिन 14 == जीएनडी

मेरे गैरेज से भूमिगत तार चलाकर और बर्ड फीडर स्टैंड के रूप में उपयोग किए जाने वाले पाइप के माध्यम से आरपीआई के लिए बिजली बाहरी रूप से प्रदान की गई थी। आरपीआई बर्ड फीडर मॉनिटर को जोड़ने के लिए तार के अंत में 2-पिन वेदरप्रूफ कनेक्टर लगाया गया था। तार का दूसरा सिरा गैरेज में एक फ्यूज्ड 5-वीडीसी बिजली आपूर्ति से जुड़ा था। इस परियोजना को बैटरी के साथ काम करना चाहिए, लेकिन मैं नियमित रूप से बैटरी बदलने की परेशानी नहीं चाहता था।

मैंने आरपीआई वाले वेदरप्रूफ बॉक्स को CAP1188 वाले वेदरप्रूफ बॉक्स से जोड़ने के लिए एक 16 लंबी केबल का निर्माण किया। कैपेसिटिव सेंसर को यथासंभव पर्चों के करीब स्थित होना चाहिए।

RPi Zero और CAP1188 को एक वेदरप्रूफ बॉक्स में पैक किया जा सकता था, लेकिन मैंने उन्हें अलग से पैकेज करना पसंद किया।

चरण 4: बर्ड फीडर मॉनिटर को कॉन्फ़िगर करना

बर्ड फीडर मॉनिटर को कॉन्फ़िगर करना
बर्ड फीडर मॉनिटर को कॉन्फ़िगर करना
बर्ड फीडर मॉनिटर को कॉन्फ़िगर करना
बर्ड फीडर मॉनिटर को कॉन्फ़िगर करना

रास्पबेरी पाई ज़ीरो डब्ल्यू में लॉग इन करें और निम्न चरणों का पालन करें।

पाइप स्थापित करें:

sudo apt-python3-pip स्थापित करें

एडफ्रूट सर्किटपायथन स्थापित करें:

sudo pip3 install --upgrad setuptools

I2C और SPI उपकरणों की जाँच करें:

एलएस /देव/i2c* /dev/spi*

आपको निम्नलिखित प्रतिक्रिया देखनी चाहिए:

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

अगला GPIO और Adafruit blinka पैकेज स्थापित करें:

pip3 RPI स्थापित करें।GPIOpip3 adafruit-blinka स्थापित करें

Adafruit का CAP1188 मॉड्यूल स्थापित करें:

pip3 adafruit-circuitpython-cap1188 स्थापित करें

I2C उपकरण स्थापित करें:

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

उपरोक्त टूल से I2C पतों की जाँच करें:

i2cdetect -y 1

यदि CAP1188 जुड़ा हुआ है, तो आपको वही प्रतिक्रिया दिखाई देगी जो ऊपर की तस्वीर में देखी गई है, जो इंगित करती है कि सेंसर I2C पते 0x28 (या 0x29 आपकी पसंद के I2C पते के आधार पर) पर है।

मच्छर, मच्छर-ग्राहक और पाहो-मक्ट्ट स्थापित करें:

sudo apt-मच्छर मच्छर-ग्राहक स्थापित करें अजगर-मच्छर

sudo pip3 paho-mqtt. स्थापित करें

मैं इस आरपीआई पर एमक्यूटीटी को कॉन्फ़िगर और सेटअप करने के लिए रास्पबेरी पाई पर एडफ्रूट के कॉन्फिगरिंग एमक्यूटीटी का उपयोग करने की सलाह देता हूं।

बर्ड फीडर मॉनिटर सॉफ्टवेयर स्थापित करें:

सीडी ~

sudo apt-git git क्लोन स्थापित करें "https://github.com/sbkirby/RPi_bird_feeder_monitor.git"

लॉग निर्देशिका बनाएँ:

सीडी ~

एमकेडीआईआर लॉग

CAP1188 सेंसर को RPi से वायर करें और MQTT सर्वर के चालू होने के बाद सिस्टम का परीक्षण करने के लिए निम्नलिखित कार्य करें:

सीडी आरपीआई_बर्ड_फीडर_मॉनिटर

सुडो नैनो config.json

अपने स्थानीय सेटअप से मेल खाने के लिए "OIP_HOST", "MQTT_USER", "MQTT_PW" और "MQTT_PORT" के मानों को बदलें। बाहर निकलें और अपने परिवर्तनों को सहेजें।

शुरु होते वक्त चलाएं

जबकि अभी भी /home/pi/RPi_bird_feeder_monitor निर्देशिका में है।

नैनो लांचर.शो

Launcher.sh. में निम्न पाठ शामिल करें

#!/बिन/श

# Launcher.sh # होम डायरेक्टरी में नेविगेट करें, फिर इस डायरेक्टरी में, फिर पायथन स्क्रिप्ट को निष्पादित करें, फिर होम cd / cd होम/pi/RPi_bird_feeder_monitor sudo python3 फीडर_mqtt_client.py cd /

लॉन्चर से बाहर निकलें और सहेजें

हमें स्क्रिप्ट को निष्पादन योग्य बनाने की आवश्यकता है।

chmod ७५५ लांचर.sh

स्क्रिप्ट का परीक्षण करें।

श लांचर.शो

इसके बाद, हमें स्क्रिप्ट को स्टार्टअप पर लॉन्च करने के लिए क्रॉस्टैब (लिनक्स टास्क मैनेजर) को संपादित करने की आवश्यकता है। नोट: हम पहले ही /logs निर्देशिका बना चुके हैं।

सुडो क्रोंटैब -ई

यह क्रॉस्टैब विंडो लाएगा जैसा कि ऊपर देखा गया है। फ़ाइल के अंत तक नेविगेट करें और निम्न पंक्ति दर्ज करें।

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

फ़ाइल से बाहर निकलें और सहेजें, और आरपीआई को रीबूट करें। आरपीआई रिबूट के बाद स्क्रिप्ट को फीडर_एमक्यूटी_क्लाइंट.py स्क्रिप्ट शुरू करनी चाहिए। स्क्रिप्ट की स्थिति /logs फ़ोल्डर में स्थित लॉग फ़ाइलों में जाँची जा सकती है।

चरण 5: 3 डी प्रिंटेड पार्ट्स

3डी प्रिंटेड पार्ट्स
3डी प्रिंटेड पार्ट्स
3डी प्रिंटेड पार्ट्स
3डी प्रिंटेड पार्ट्स
3डी प्रिंटेड पार्ट्स
3डी प्रिंटेड पार्ट्स

ये STL फ़ाइलें मेरे द्वारा इस प्रोजेक्ट के लिए बनाए गए 3D Printed भागों के लिए हैं, और ये सभी भाग वैकल्पिक हैं। वेदरप्रूफ मामलों को स्थानीय रूप से गढ़ा या खरीदा जा सकता है। सीडरवर्क्स बर्ड फीडर के लिए "माउंटिंग वेज" भी वैकल्पिक है। CAP1188 सेंसर केस को माउंट करने के लिए यह हिस्सा आवश्यक था।

चरण 6: बर्ड फीडर मॉनिटर असेंबली

बर्ड फीडर मॉनिटर असेंबली
बर्ड फीडर मॉनिटर असेंबली

रास्पियन को स्थापित करने के बाद, आरपीआई और सीएपी 1188 सेंसर को कॉन्फ़िगर और परीक्षण करने के बाद, जैसा कि पहले उल्लेख किया गया है, अब इन उपकरणों को उनके मौसमरोधी मामलों में माउंट करने का समय है।

मैंने RPi और CAP1188 सेंसर को माउंट करने के लिए प्रिंट किए गए दो वेदरप्रूफ मामलों का उपयोग किया। सबसे पहले, मैंने प्रत्येक मामले के एक छोर पर 1/2 छेद ड्रिल किया। एसडी कार्ड के साथ आरपीआई मामले पर छेद ड्रिल करें। प्रत्येक छेद में एडजस्टेबल लॉकनट के साथ नायलॉन केबल ग्लैंड संयुक्त माउंट करें। चार चलाएं प्रत्येक केस के बीच कंडक्टर केबल। 2 पिन कार वाटरप्रूफ इलेक्ट्रिकल फीमेल कनेक्टर को आरपीआई में स्थापित और मिलाप करें जैसा कि ऊपर की तस्वीर में दिखाया गया है। लाल तार को आरपीआई के +5वीडीसी पिन 2 और काले तार को जीएनडी या पिन 14 में मिलाएं। आरपीआई पर उपयोग किए जाने वाले अन्य कनेक्शनों के लिए वायरिंग आरेख देखें।

CAP1188 केस पर ग्लैंड जॉइंट के माध्यम से चार कंडक्टर तार के दूसरे छोर को चलाएं, और वायरिंग आरेख में बताए अनुसार तारों को संलग्न करें। CAP1188 के सभी 8 कैपेसिटिव टच सेंसर को 8 पिन महिला ड्यूपॉन्ट कनेक्टर में मिलाया गया है। जब शीर्ष लगाया जाता है तो पानी की तंग मुहर की अनुमति देने के लिए इस कनेक्टर को मामले के किनारे पर भर्ती किया जाता है। नोट: दोनों मामलों में शीर्ष को ग्लैंड संयुक्त कनेक्टर्स पर नट्स की अनुमति देने के लिए शायद संशोधनों की आवश्यकता होगी।

बंद करने से पहले, मैं प्रत्येक मामले के किनारों पर और ग्लैंड जोड़ों के तारों के आसपास मामलों को सील करने के लिए सिलिकॉन caulking लागू करता हूं। मैं तत्वों से इसे सील करने के लिए ड्यूपॉन्ट कनेक्टर के पीछे सिलिकॉन भी जोड़ता हूं।

चरण 7: बर्ड फीडर को तार देना

बर्ड फीडर वायरिंग
बर्ड फीडर वायरिंग
बर्ड फीडर वायरिंग
बर्ड फीडर वायरिंग
बर्ड फीडर वायरिंग
बर्ड फीडर वायरिंग

फीडर पर प्रत्येक पर्च 1/4 चौड़ा स्वयं चिपकने वाला तांबा पन्नी टेप के साथ कवर किया गया था। टेप और पर्च के माध्यम से एक छोटा छेद ड्रिल किया गया था, और एक तार को फोइल टेप में मिलाया गया था और फीडर के नीचे रूट किया गया था। प्रत्येक तार एक पुरुष 6-पिन ड्यूपॉन्ट कनेक्टर से जुड़े होते हैं।

नोट: ऊपर दिखाए गए बर्ड फीडर के साथ, मैं 1 1/4 "- 1 1/2" के प्रत्येक पन्नी पट्टी के सिरों के बीच एक अंतर की सिफारिश करता हूं। मैंने पाया कि बड़े पक्षी, जैसे कि ग्रेकल और कबूतर, एक ही समय में दो पन्नी स्ट्रिप्स को छूने में सक्षम होते हैं यदि उन्हें एक साथ बंद करने के लिए रखा जाता है।

पहले उल्लेखित "माउंटिंग वेज" को सीएपी1188 वाले वेदरप्रूफ बॉक्स को माउंट करने के लिए एक स्तर क्षेत्र प्रदान करने के लिए फीडर के नीचे मुद्रित और चिपकाया गया था। संलग्न करने का एक साधन प्रदान करने के लिए वेल्क्रो टेप को बॉक्स के साथ-साथ लकड़ी के ब्लॉक पर भी लगाया गया था। यह पूर्ण विधानसभा के ऊपर की तस्वीर में देखा जा सकता है। फीडर के नीचे उन्हें सुरक्षित करने के लिए पाइप और आरपीआई बॉक्स के चारों ओर लपेटने के लिए एक वेल्क्रो स्ट्रैप का उपयोग किया जाता है।

बर्ड फीडर को फीडर से जुड़े सेंसर और आरपीआई के साथ फिर से भर दिया जाता है, और यह अभी भी पाइप स्टैंड पर है। सौभाग्य से, मैं 6'2 लंबा हूं और बिना ज्यादा मेहनत किए कंटेनर तक पहुंच गया हूं।

चरण 8: एमक्यूटीटी सर्वर

एमक्यूटीटी सर्वर
एमक्यूटीटी सर्वर
एमक्यूटीटी सर्वर
एमक्यूटीटी सर्वर
एमक्यूटीटी सर्वर
एमक्यूटीटी सर्वर

यदि आप पहले से ही IOT की दुनिया में काम कर रहे हैं, तो आपके पास पहले से ही एक MQTT सर्वर हो सकता है और आपके नेटवर्क पर चल रहा हो। यदि आप नहीं करते हैं, तो मैं एमक्यूटीटी सर्वर के लिए रास्पबेरी पीआई 3 का उपयोग करने की सलाह देता हूं, और एंड्रियास स्पाइस की वेबसाइट "नोड-रेड, इंफक्सडीबी और ग्राफाना इंस्टॉलेशन" पर मिले निर्देशों और आईएमजी छवि फ़ाइल का उपयोग करने की सलाह देता हूं। एंड्रियास के पास इस विषय पर एक सूचनात्मक वीडियो भी है #255 नोड-रेड, इन्फ्लक्सडीबी, और रास्पबेरी पाई पर ग्राफाना ट्यूटोरियल।

एक बार नोड-रेड सर्वर चालू हो जाने पर, आप डेटा को ~/RPi_bird_feeder_monitor/json/Bird_Feeder_Monitor_Flow.json में कॉपी करके और क्लिपबोर्ड को एक नए प्रवाह में चिपकाने के लिए Import > Clipboard का उपयोग करके बर्ड फीडर मॉनिटर प्रवाह आयात कर सकते हैं।

इस प्रवाह के लिए निम्नलिखित नोड्स की आवश्यकता होगी:

  • नोड-रेड-नोड-डार्कस्की - इस नोड का उपयोग करने के लिए एक डार्कस्काई एपीआई खाते की आवश्यकता होती है।
  • नोड-रेड-कॉन्ट्रिब-बिगटाइमर - स्कारगिल टेक द्वारा बिग टाइमर
  • नोड-रेड-कॉन्ट्रिब-इनफ्लक्सडीबी - इन्फ्लक्सडीबी डेटाबेस

आपके स्थान के लिए मौसम डेटा DarkSky के माध्यम से प्रदान किया जाता है। और मैं वर्तमान में "precipintensity", "तापमान", "आर्द्रता", "विंडस्पीड", "विंडबियरिंग", "विंडगस्ट" और "क्लाउडकवर" की निगरानी और रिकॉर्ड करता हूं। "precipintensity" महत्वपूर्ण है क्योंकि इसका उपयोग यह निर्धारित करने के लिए किया जाता है कि बारिश के परिणामस्वरूप सेंसर को पुन: कैलिब्रेट करने की आवश्यकता है या नहीं।

बिग टाइमर नोड टाइमर का स्विस आर्मी नाइफ है। इसका उपयोग प्रत्येक दिन डॉन और डस्क में डेटा की रिकॉर्डिंग शुरू और बंद करने के लिए किया जाता है।

InfluxDB समय श्रृंखला डेटाबेस का उपयोग करने के लिए एक हल्का वजन है। हर बार जब हम डेटा डालते हैं तो डेटाबेस स्वचालित रूप से टाइमस्टैम्प जोड़ता है। SQLite के विपरीत, फ़ील्ड को परिभाषित करने की आवश्यकता नहीं है। डेटाबेस में डेटा डालने पर वे स्वचालित रूप से जुड़ जाते हैं।

नोड-लाल विन्यास

ऊपर उल्लिखित JSON फ़ाइल एक फ़्लो लोड करेगी जिसके लिए आपकी आवश्यकताओं के अनुरूप कुछ ट्वीक की आवश्यकता होती है।

  1. "MQTT पब्लिश" और "मॉनिटर/फीडर/#" को अपने MQTT सर्वर से कनेक्ट करें।
  2. "डॉन एंड डस्क टाइमर (कॉन्फ़िगरेशन)" बिग टाइमर नोड में अक्षांश और देशांतर को अपने स्थान पर सेट करें।
  3. "मॉनिटर/फीडर/खगोल विज्ञान (कॉन्फ़िगरेशन)" नोड को कॉन्फ़िगर करें। प्रत्येक पर्च के लिए कैमरा सक्षम/अक्षम किया जा सकता है। उदाहरण के लिए, मेरे दो पर्चियां पीछे की ओर हैं, और इन पर्चों के लिए कैमरा अक्षम है।
  4. "काउंटर टाइमर (कॉन्फ़िगरेशन)" नोड को वांछित समय अंतराल पर सेट करें। डिफ़ॉल्ट = 5 मिनट
  5. "डार्कस्काई (कॉन्फ़िगर)" नोड में अक्षांश और देशांतर को अपने स्थान पर सेट करें। दूसरे, अपनी डार्कस्की एपीआई कुंजी को डार्कस्की-क्रेडेंशियल्स नोड में दर्ज करें।
  6. "मॉनिटर/फीडर/रीकैलिब्रेट (कॉन्फ़िगरेशन)" फ़ंक्शन नोड में वर्षा की तीव्रता सेट करें। डिफ़ॉल्ट = 0.001 इंच/घंटा
  7. एमक्यूटीटी संदेशों को फ़िल्टर करने के लिए "एमक्यूटीटी रिसीवर डीबग नोड (कॉन्फ़िगर) के लिए विषय फ़िल्टर (कॉन्फ़िगरेशन)" फ़ंक्शन नोड संपादित करें जिसे आप देखना नहीं चाहते हैं।
  8. वैकल्पिक: यदि आप अपने Google ड्राइव पर स्प्रेडशीट में डेटा स्टोर करना चाहते हैं, तो आपको फॉर्म फील्ड आईडी के साथ "बिल्ड Google डॉक्स पेलोड (कॉन्फ़िगरेशन)" फ़ंक्शन नोड को संपादित करना होगा।
  9. वैकल्पिक: "Google डॉक्स GET (कॉन्फ़िगर)" HTTP अनुरोध नोड के URL फ़ील्ड में अपना अद्वितीय फ़ॉर्म URL जोड़ें।

नोड-लाल यूआई डेस्कटॉप

बर्ड_फीडर_मॉनिटर_फ्लो में सेल फोन के माध्यम से एमक्यूटीटी सर्वर तक पहुंचने के लिए एक यूजर इंटरफेस (यूआई) शामिल है। मॉनिटर को बंद या चालू किया जा सकता है, सेंसर को फिर से कैलिब्रेट किया जा सकता है या मैन्युअल रूप से तस्वीरें ले सकते हैं। कुल सेंसर "टच" भी दिखाया गया है, जो आपको फीडर पर आने वाले पक्षियों की संख्या का एक मोटा विचार देगा।

चरण 9: ग्राफाना

ग्राफाना
ग्राफाना
ग्राफाना
ग्राफाना

"ग्राफाना एक ओपन सोर्स मेट्रिक एनालिटिक्स और विज़ुअलाइज़ेशन सूट है। इसका उपयोग आमतौर पर इन्फ्रास्ट्रक्चर और एप्लिकेशन एनालिटिक्स के लिए टाइम सीरीज़ डेटा को देखने के लिए किया जाता है, लेकिन कई इसका उपयोग औद्योगिक सेंसर, होम ऑटोमेशन, वेदर और प्रोसेस कंट्रोल सहित अन्य डोमेन में करते हैं।" रेफरी: ग्राफाना डॉक्स।

यह सॉफ़्टवेयर एंड्रियास स्पाइस की छवि फ़ाइल में शामिल है जिसका उपयोग मेरे MQTT सर्वर को बनाने के लिए किया गया था। MQTT सर्वर पर InfluxDB डेटाबेस को कॉन्फ़िगर करने के बाद, ग्राफाना को इस डेटाबेस का उपयोग करने के लिए कॉन्फ़िगर किया जा सकता है जैसा कि ऊपर की छवि में देखा गया है। इसके बाद, इस परियोजना द्वारा उपयोग किए जाने वाले डैशबोर्ड को ~/RPi_bird_feeder_monitor/json/ Bird_Feeder_Monitor_Grafana.json में मिली JSON फ़ाइल से लोड किया जा सकता है। Grafana को कॉन्फ़िगर करने के लिए युक्तियाँ एंड्रियास स्पाइस की वेबसाइट "नोड-रेड, इंफक्सडीबी और ग्राफाना इंस्टॉलेशन" पर पाई जा सकती हैं।

चरण 10: इन्फ्लक्सडीबी

इन्फ्लक्सडीबी
इन्फ्लक्सडीबी
इन्फ्लक्सडीबी
इन्फ्लक्सडीबी

जैसा कि पहले उल्लेख किया गया है कि Adreas Spiess के पास InfluxDB के कॉन्फ़िगरेशन के माध्यम से चलने के लिए एक महान मार्गदर्शिका और वीडियो है। मेरे डेटाबेस को कॉन्फ़िगर करने के लिए मैंने जो कदम उठाए हैं, वे यहां दिए गए हैं।

सबसे पहले, मैंने SSH के माध्यम से अपने MQTT सर्वर में लॉग इन किया और एक USER बनाया:

रूट @ एमक्यूटीटीपीआई: ~#

root@MQTTPi:~# influx "https://localhost:8086" संस्करण से कनेक्टेड 1.7.6 InfluxDB शेल संस्करण: 1.7.6 एक InfluxQL क्वेरी दर्ज करें> सभी विशेषाधिकारों के साथ 'रास्पबेरी' पासवर्ड के साथ उपयोगकर्ता "pi" बनाएं> उपयोगकर्ता दिखाएं उपयोगकर्ता व्यवस्थापक ---- ----- पाई सच

इसके बाद, मैंने एक डेटाबेस बनाया:

डेटाबेस बनाएं BIRD_FEEDER_MONITOR>> डेटाबेस नाम दिखाएं: डेटाबेस का नाम ---- _आंतरिक BIRD_FEEDER_MONITOR>

ऊपर डेटाबेस बनाने के बाद, आप InfluxDB नोड को Node-Red में कॉन्फ़िगर कर सकते हैं। जैसा कि ऊपर फोटो में देखा गया है, मैं माप को "फीडर" नाम देता हूं। डेटा इनिशियलाइज़ होने के बाद इसे InfluxDB में देखा जा सकता है:

डेटाबेस का उपयोग करके BIRD_FEEDER_MONITOR का उपयोग करें BIRD_FEEDER_MONITOR

> माप दिखाएं नाम: माप का नाम ---- फीडर>

InfluxDB की कई विशेषताओं में से एक यह है कि FIELDS कॉन्फ़िगरेशन की आवश्यकता नहीं है। डेटा दर्ज होने पर FIELDS स्वचालित रूप से जोड़े और कॉन्फ़िगर किए जाते हैं। इस डेटाबेस के लिए FIELDS और FIELDTYPE इस प्रकार हैं:

SHIELD KEYSname: फीडर्स फील्डकी फील्ड टाइप -------- --------- क्लाउडकवर फ्लोट काउंट_1 फ्लोट काउंट_2 फ्लोट काउंट_3 फ्लोट काउंट_4 फ्लोट काउंट_5 फ्लोट काउंट_6 फ्लोट ह्यूमिडिटी फ्लोट नेम स्ट्रिंग प्रीसिप_इंट फ्लोट टेम्प फ्लोट टाइम_1 फ्लोट टाइम_2 फ्लोट टाइम_3 फ्लोट टाइम_4 फ्लोट टाइम_5 फ्लोट टाइम_6 फ्लोट विंडदिर फ्लोट विंडगस्ट फ्लोट विंडस्पीड फ्लोट >

डेटाबेस से कुछ प्रविष्टियाँ नीचे देखी जा सकती हैं:

चयन करें * फीडर से LIMIT 10 नाम: फीडर्स टाइम क्लाउडकवर काउंट_1 काउंट_2 काउंट_3 काउंट_4 काउंट_5 काउंट_6 ह्यूमिडिटी नेम प्रीसिप_इंट टेम्प टाइम_1 टाइम_2 टाइम_3 टाइम_4 टाइम_5 टाइम_6 विंडदिर विंडगस्ट विंडस्पीड ---- ---------- ----- ------------------------------------------------------------- --------------------------------------------------------------------- ------ -------- --------- 1550270591000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 1550271814000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 0 1550272230000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 1550272530000000000 0 0 0 0 0 फीडर1 0 0 0 0 0 1550272830000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 1550273130000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 0 1550273430000000000 0 0 0 0 0 फीडर1 0 0 0 0 0 1550273730000000000 0 0 0 0 0 फीडर1 0 0 0 0 0 0 1550274030000000000 0 0 0 0 0 फीडर1 0 0 0 0 0 0 1550274330000000000 0 0 0 0 0 0 फीडर1 0 0 0 0 0 0 >

चरण 11: रास्पबेरी पाई कैमरा

रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा
रास्पबेरी पाई कैमरा

मैं रास्पबेरी पाई कैमरा को इकट्ठा करने के लिए अपने निर्देश योग्य, रिमोट सीएनसी स्टॉप और मॉनिटर का उपयोग करने की सलाह देता हूं। कैमरा बनाने के लिए 6 और 8 को छोड़कर बताए गए सभी चरणों का पालन करें।कृपया ध्यान दें कि मैं अपने कैमरे के लिए एक पुराने रास्पबेरी पाई का उपयोग कर रहा हूं, लेकिन इसने मेरी दुकान की खिड़की से बहुत अच्छा काम किया है।

रसियन अपग्रेड करें:

सुडो एपीटी-अपडेट प्राप्त करेंसुडो एपीटी-अपग्रेड प्राप्त करें

पीआईपी स्थापित करें:

sudo apt-python3-pip स्थापित करें

पाहो-एमक्यूटीटी स्थापित करें:

sudo pip3 paho-mqtt. स्थापित करें

गिट और बर्ड मॉनिटरिंग सॉफ्टवेयर स्थापित करें:

सीडी ~

sudo apt-git git क्लोन स्थापित करें "https://github.com/sbkirby/RPi_bird_feeder_monitor.git"

यदि आप कैमरे द्वारा ली गई छवियों से वीडियो बनाना चाहते हैं, तो ffmpeg स्थापित करें:

गिट क्लोन "https://git.ffmpeg.org/ffmpeg.git" ffmpeg

cd ffmpeg./configure make sudo make install

बर्ड फीडर मॉनिटरिंग सॉफ्टवेयर पर अनुमतियों को कॉन्फ़िगर करना:

सीडी आरपीआई_बर्ड_फीडर_मॉनिटर

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

व्यक्तिगत रूप से, मैं RPi कैमरा पर make_movie.sh का उपयोग करने की अनुशंसा नहीं करता। आरपीआई पर चलने के लिए इसे कई संसाधनों की आवश्यकता होती है। मैं अनुशंसा करता हूं कि छवियों को आपके पीसी पर स्थानांतरित करें और वहां ffmpeg चलाएं।

शुरु होते वक्त चलाएं

आरपीआई में लॉग इन करें और /RPi_bird_feeder_monitor निर्देशिका में बदलें।

सीडी आरपीआई_बर्ड_फीडर_मॉनिटर

नैनो लांचर.शो

Launcher.sh. में निम्न पाठ शामिल करें

#!/बिन/श

# Launcher.sh # होम डायरेक्टरी में नेविगेट करें, फिर इस डायरेक्टरी में, फिर पायथन स्क्रिप्ट को निष्पादित करें, फिर होम cd / cd होम/pi/RPi_bird_feeder_monitor sudo python3 camera_mqtt_client.py cd /

लॉन्चर से बाहर निकलें और सहेजें

हमें स्क्रिप्ट और निष्पादन योग्य बनाने की जरूरत है।

chmod ७५५ लांचर.sh

स्क्रिप्ट का परीक्षण करें।

श लांचर.शो

एक लॉग निर्देशिका बनाएँ:

सीडी ~

एमकेडीआईआर लॉग

इसके बाद, हमें स्क्रिप्ट को स्टार्टअप पर लॉन्च करने के लिए क्रॉस्टैब (लिनक्स टास्क मैनेजर) को संपादित करने की आवश्यकता है।

सुडो क्रोंटैब -ई

यह क्रॉस्टैब विंडो लाएगा जैसा कि ऊपर देखा गया है। फ़ाइल के अंत तक नेविगेट करें और निम्न पंक्ति दर्ज करें।

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

फ़ाइल से बाहर निकलें और सहेजें, और आरपीआई को रीबूट करें। आरपीआई रिबूट के बाद स्क्रिप्ट को camera_mqtt_client.py स्क्रिप्ट शुरू करनी चाहिए। स्क्रिप्ट की स्थिति /logs फ़ोल्डर में स्थित लॉग फ़ाइलों में जाँची जा सकती है।

चरण 12: आनंद लें

आनंद लेना
आनंद लेना

हम पक्षियों को देखने का आनंद लेते हैं, हालांकि हम अधिकतम आनंद के लिए फीडर को किसी स्थान पर नहीं रख सकते हैं। हम में से अधिकांश लोग इसे केवल नाश्ते की मेज से देख सकते हैं, और हर कोई वहां से फीडर नहीं देख सकता है। इसलिए, बर्ड फीडर मॉनिटर के साथ हम अपनी सुविधानुसार पक्षियों की प्रशंसा कर सकते हैं।

मॉनिटर के साथ हमने जो एक चीज खोजी है, वह है एक पर्च पर पक्षियों के उतरने की आवृत्ति, इसके बाद अगले पर्च तक रुकना, जब तक कि वे पूरे फीडर को परिचालित नहीं कर देते। नतीजतन, पक्षियों की संख्या हमारे फीडर पर आने वाले अलग-अलग पक्षियों की संख्या से बहुत दूर है। केवल एक या दो संकीर्ण पर्चों वाला एक फीडर शायद पक्षियों की "गिनती" के लिए सबसे अच्छा होगा।

सेंसर प्रतियोगिता
सेंसर प्रतियोगिता
सेंसर प्रतियोगिता
सेंसर प्रतियोगिता

सेंसर प्रतियोगिता में द्वितीय पुरस्कार

सिफारिश की: