विषयसूची:

एमक्यूटीटी पर रिमोट कंट्रोल और फोटो निगरानी: 8 कदम
एमक्यूटीटी पर रिमोट कंट्रोल और फोटो निगरानी: 8 कदम

वीडियो: एमक्यूटीटी पर रिमोट कंट्रोल और फोटो निगरानी: 8 कदम

वीडियो: एमक्यूटीटी पर रिमोट कंट्रोल और फोटो निगरानी: 8 कदम
वीडियो: Message Queue Telemetry Transport (MQTT) in IoT | MQTT Protocol in iot | Lec-25 2024, नवंबर
Anonim
MQTT पर रिमोट कंट्रोल और फोटो सर्विलांस
MQTT पर रिमोट कंट्रोल और फोटो सर्विलांस

नमस्ते।

आज मैं इस बारे में बात करना चाहूंगा कि रिमोट कंट्रोल और मॉनिटरिंग सिस्टम कैसे बनाया जाए, उदाहरण के लिए, गेराज दरवाजे, प्रकाश व्यवस्था, हीटिंग, दबाव नियंत्रण, तापमान और कई अन्य मापदंडों को नियंत्रित करने के लिए। लेकिन इस प्रणाली की मुख्य विशेषता यह है कि आप दूरस्थ वस्तु से दूरस्थ रूप से तस्वीरें प्राप्त कर सकते हैं। कहानी शुरू करने से पहले, एक छोटी प्रस्तावना। एक बार मैं एक संगत Arduino M0-SD बोर्ड, एक VC0706 कैमरा और Arduino के लिए एक 3G/GPRS/GSM/GPS शील्ड का उपयोग करके एक फोटो निगरानी प्रणाली बनाना चाहता था। Arduino M0-SD संगत बोर्ड को इस स्थिति से चुना गया था कि यह प्रोग्राम करना बहुत आसान है (ठीक Arduino UNO की तरह), ऑपरेटिंग वोल्टेज 3.3V है - यह VC0706 कैमरा के साथ काम करने के लिए बहुत सुविधाजनक है, बड़ी मात्रा में ROM और रैम, यूएआरटी के कई पोर्ट, यूएसबी का एक अलग वर्चुअल पोर्ट, लेकिन मुख्य लाभ सीधे बोर्ड पर एक माइक्रो एसडी कनेक्टर की उपस्थिति है (यह बड़ी मात्रा में डेटा, जैसे कि छवियों को संग्रहीत करने के लिए बहुत सुविधाजनक है)।

Arduino के लिए 3G/GPRS/GSM/GPS शील्ड संगत Arduino M0-SD बोर्ड के साथ उपयोग के लिए बहुत सुविधाजनक है। इंटरनेट पर कई पुस्तकालय हैं, साथ ही इस ढाल के साथ काम करने के कई उदाहरण हैं। डेटा ट्रांसफर दर (3G) पारंपरिक GPRS शील्ड (विशेष रूप से छवियों को प्रसारित करने के लिए सुविधाजनक) की तुलना में बहुत अधिक है। जीपीएस मॉड्यूल की उपलब्धता एक अतिरिक्त लाभ है।

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

संदर्भ द्वारा Arduino UNO के लिए भी इसी तरह की एक परियोजना है।

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

मैंने अपने 3G/GPRS/GSM/GPS शील्ड (SIM5320) के लिए MQTT प्रोटोकॉल के कार्यान्वयन के उदाहरणों की तलाश की और दुर्भाग्य से, मुझे वह कार्यान्वयन नहीं मिला जिसकी मुझे आवश्यकता थी। लेकिन इसने मुझे अकेला नहीं छोड़ा। मैंने आवश्यक कार्यक्षमता को स्वतंत्र रूप से लागू करने का निर्णय लिया। नतीजतन, मैं एक मोबाइल फोन पर इंस्टॉल किए गए एप्लिकेशन से एमक्यूटीटी पर नियंत्रित (तीन एलईडी द्वारा इंगित) एक डिवाइस बनाने में कामयाब रहा, और फोन से कमांड पर फोन पर एक फोटो भी भेजता है। (मैं आपको एक रहस्य बताऊंगा कि मैंने पहले एमक्यूटीटी ब्रोकर के माध्यम से छवियों को भेजने का कोई उदाहरण नहीं देखा है और इसे पहली बार किया है। और जब मैं पहली तस्वीर स्थानांतरित करने में कामयाब रहा तो मैं बेहद खुश था!:-)) और इसलिए, मैं सीधे पहले चरण पर जाने का प्रस्ताव करता हूं - आवश्यक घटकों की एक सूची।

चरण 1: घटकों की सूची

घटकों की सूची
घटकों की सूची
घटकों की सूची
घटकों की सूची
घटकों की सूची
घटकों की सूची
घटकों की सूची
घटकों की सूची

हमें अगले घटकों की आवश्यकता है:

1) Arduino M0-SD संगत।

2) टीटीएल-कैमरा वीसी0706।

3) Arduino के लिए 3G/GPRS/GSM/GPS शील्ड।

4) लाल, हरे, पीले एलईडी, 3 प्रतिरोधक (100-500 ओम), तार, 2.54 मिमी पिच के साथ पिन कोण कनेक्टर।

5) एसी-डीसी पावर एडॉप्टर (6V 1A), 3G एंटीना, आदि।

चरण 2: कैमरा तैयार करना

कैमरा की तैयारी
कैमरा की तैयारी
कैमरा की तैयारी
कैमरा की तैयारी
कैमरा की तैयारी
कैमरा की तैयारी

पीसी से सीधे कनेक्शन के लिए कैमरे में RS-232 आउटपुट है। MAX232 (RS-232 कनवर्टर) को निकालना और संबंधित पिन 7-10 (TX), 8-9 (RX) के बीच संपर्क पैड को बंद करना आवश्यक है।

कैमरे के साथ आए छह-तार केबल को थोड़ा फिर से बनाने की जरूरत है:

  • कनेक्टर से दो तारों को हटा दें।
  • चित्र में दिखाए अनुसार लाल (+ 5V) और काले (GND) तारों को पुनर्व्यवस्थित करें।

तारों के नंगे सिरों पर "मादा" जैसे टांके लगाने की युक्तियाँ होनी चाहिए।

चरण 3: संगत Arduino M0-SD. की तैयारी

संगत Arduino M0-SD. की तैयारी
संगत Arduino M0-SD. की तैयारी
संगत Arduino M0-SD. की तैयारी
संगत Arduino M0-SD. की तैयारी
संगत Arduino M0-SD. की तैयारी
संगत Arduino M0-SD. की तैयारी

जैसा कि पहले ही उल्लेख किया गया है, संगत Arduino M0-SD मूल Arduino M0 के साथ संगत हार्डवेयर और सॉफ़्टवेयर है, लेकिन इसमें मेमोरी कार्ड को जोड़ने के लिए एक ऑनबोर्ड माइक्रोएसडी कनेक्टर भी है।

बोर्ड पर कैमरे को संगत Arduino M0-SD से जोड़ने के लिए, कोणीय कनेक्टर को टर्मिनलों TXD, RXD (कनेक्टर X6) से मिलाप करना आवश्यक है जैसा कि चित्र में दिखाया गया है। यह पोर्ट "सीरियल" से मेल खाता है।

कैमरे से सफेद (कैमरा RX) और पीले (कैमरा TX) तारों को क्रमशः TXD और RXD (कनेक्टर X6) के टर्मिनलों से जोड़ा जाना चाहिए जैसा कि चित्र में दिखाया गया है।

चरण 4: ३जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी

3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी
3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी
3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी
3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी
3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी
3जी/जीपीआरएस/जीएसएम/जीपीएस शील्ड सिम५३२०. की तैयारी

स्लॉट में सिम कार्ड स्थापित करने से पहले, आपको पिन कोड अनुरोध को अक्षम करना होगा। फिर बोर्ड के निचले हिस्से में स्लॉट में सिम कार्ड स्थापित करें जैसा कि चित्र में दिखाया गया है। दो जंपर्स को RX-1 (D1), TX-0 (D0) स्थिति में स्थापित किया जाना चाहिए।

चरण 5: हार्डवेयर असेंबली

हार्डवेयर असेंबली
हार्डवेयर असेंबली
हार्डवेयर असेंबली
हार्डवेयर असेंबली
हार्डवेयर असेंबली
हार्डवेयर असेंबली

हार्डवेयर असेंबली में कई सरल ऑपरेशन होते हैं:

  • एल ई डी को नियंत्रित करने के लिए, आपको पहले एल ई डी और वर्तमान-सीमित प्रतिरोधों (100-500 ओम) के एक छोटे डिजाइन को मिलाप करने की आवश्यकता है जैसा कि चित्र में दिखाया गया है। एल ई डी की ध्रुवीयता पर ध्यान दें - एनोड को प्रतिरोधों (+) में मिलाया जाना चाहिए। एल ई डी के परजीवी जोखिम को कम करने के लिए, मैंने नियमित कार्डबोर्ड से एक काली स्क्रीन बनाई।
  • एल ई डी और कैमरे को एक संगत Arduino M0-SD बोर्ड से कनेक्ट करें जैसा कि चित्र में दिखाया गया है। कैमरे की बिजली आपूर्ति (लाल तार "+ 5V" और काली तार "GND") स्लॉट से "+5V" और "GND" टर्मिनलों से ली जानी चाहिए। आप इसके लिए एंगल कनेक्टर का भी इस्तेमाल कर सकते हैं।
  • उसके बाद, 3G/GPRS/GSM/GPS शील्ड को संगत Arduino M0-SD बोर्ड से कनेक्ट करें। 3जी एंटेना कनेक्ट करना न भूलें।

चरण 6: MQTT ब्रोकर सेट करना

MQTT ब्रोकर की स्थापना
MQTT ब्रोकर की स्थापना
MQTT ब्रोकर की स्थापना
MQTT ब्रोकर की स्थापना
MQTT ब्रोकर की स्थापना
MQTT ब्रोकर की स्थापना

मैंने MQTT ब्रोकर के रूप में एक बहुत ही सुविधाजनक और स्पष्ट www.cloudmqtt.com चुना है। यह मुफ्त परीक्षण प्रदान करता है। साइट पर सीधे संदेश प्राप्त करना और भेजना भी संभव है।

सेटअप प्रक्रिया इस प्रकार है:

  1. ऑनलाइन पंजीकरण करें।
  2. "नया उदाहरण बनाएं" बटन दबाएं।
  3. नाम सेट करें, उदाहरण के लिए "MqttCamera"।
  4. प्रेस बटन "क्षेत्र का चयन करें"। उदाहरण के लिए, "यूएस-ईस्ट-1 (उत्तरी वर्जीनिया)" चुनें।
  5. प्रेस बटन "समीक्षा"।
  6. "क्रिएट इंस्टेंस" बटन दबाएं। संदेश देखें "उदाहरण सफलतापूर्वक बनाया गया"।
  7. "MqttCamera" पर क्लिक करें।
  8. जानकारी याद रखें: सर्वर, उपयोगकर्ता, पासवर्ड, पोर्ट, एपीआई कुंजी (हमें 7 वें और 8 वें चरणों में इसकी आवश्यकता होगी)।
  9. फिर आप "वेबसोकेट यूआई" विंडो पर जा सकते हैं, जहां आप परीक्षण और डिबग कर सकते हैं, संदेश देख सकते हैं और भेज सकते हैं (हमें अगले चरण में इस विंडो की आवश्यकता होगी)।

चरण 7: एमक्यूटीटी डैश ऐप

एमक्यूटीटी डैश ऐप
एमक्यूटीटी डैश ऐप
एमक्यूटीटी डैश ऐप
एमक्यूटीटी डैश ऐप
एमक्यूटीटी डैश ऐप
एमक्यूटीटी डैश ऐप

मोबाइल फोन में कंट्रोल पैनल बनाने के लिए, मैंने एक बहुत ही उपयोगकर्ता के अनुकूल और स्पष्ट MQTT डैश ऐप को चुना।

अपने फोन पर एमक्यूटीटी डैश ऐप इंस्टॉल करें और निम्नलिखित सेटिंग्स करें:

  1. एप्लिकेशन खोलें।
  2. MQTT डैश विंडो में, नया कंट्रोल पैनल जोड़ने के लिए (+) पर क्लिक करें।
  3. दिखाई देने वाली विंडो में, आवश्यक फ़ील्ड भरें, जैसे: नाम (उदाहरण के लिए, MqttCamera), पता, पोर्ट, उपयोगकर्ता नाम, उपयोगकर्ता पासवर्ड (चरण 6 से डेटा लें)।
  4. फ़ील्ड भरने के बाद, डिस्केट आइकन (ऑपरेशन "सहेजें") पर क्लिक करें।
  5. नियंत्रण कक्षों की सूची वाली विंडो में, दिखाई देने वाली रेखा " MqttCamera " पर क्लिक करें।
  6. खुलने वाली कंट्रोल पैनल विंडो में, मेट्रिक्स लोड करने के लिए एरो आइकन पर क्लिक करें।
  7. फिर पॉप-अप विंडो में, "सदस्यता लें और मीट्रिक के लिए प्रतीक्षा करें" बटन पर क्लिक करें।
  8. एक व्यक्तिगत कंप्यूटर पर, एक एमक्यूटीटी-ब्रोकर में एक खाता खोलें (पिछला चरण देखें), "वेबसोकेट यूआई" विंडो खोलें, "मैट्रिक्स/एक्सचेंज" विषय को "संदेश भेजें" विंडो में सेट करें, और से टेक्स्ट रिकॉर्ड करें "संदेश" विंडो में संलग्न metrics.txt फ़ाइल, "भेजें" बटन पर क्लिक करें।
  9. 10 सेकंड प्रतीक्षा करें, सुनिश्चित करें कि फोन में मीट्रिक प्राप्त हो गया है और नियंत्रण कक्ष अपडेट किया गया है।

फिर आप संगत Arduino M0-SD प्रोग्रामिंग के लिए आगे बढ़ सकते हैं।

चरण 8: प्रोग्रामिंग और कार्य

प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य
प्रोग्रामिंग और कार्य

संगत Arduino M0-SD की प्रोग्रामिंग करने से पहले, आपको कंप्यूटर पर सभी आवश्यक लाइब्रेरी (पबसबक्लाइंट-मास्टर, टाइनीजीएसएम-मास्टर) स्थापित करने की आवश्यकता है, जिसका मैंने नीचे उल्लेख किया है। इन पुस्तकालयों को एक संगत Arduino M0-SD बोर्ड, एक VC0706 कैमरा और एक 3G/GPRS/GSM/GPS SIM5320 शील्ड के साथ काम करने के लिए थोड़ा संशोधित किया गया था।

आपको अपने केबल और बिजली की आपूर्ति (3G/GPRS/GSM/GPS शील्ड को पावर देने के लिए 6V 1A) को संगत Arduino M0-SD से कनेक्ट करने की आवश्यकता है।

Arduino IDE प्रारंभ करें। Arduino में IDE को चुनना होगा: Tools-> Board: Arduino M0 Pro (Native USB Port) ।

स्केच MqttCamera.ino खोलें। फ़ील्ड भरें: उपयोगकर्ता नाम, उपयोगकर्ता पासवर्ड, एपीआई कुंजी, पोर्ट, सर्वर (चरण 6 से डेटा लें)।

सीरियल मॉनिटर विंडो खोलें।

स्केच अपलोड करें। मैं प्रोग्रामिंग प्रक्रिया का विस्तार से वर्णन नहीं करता (इंटरनेट पर पर्याप्त निर्देश हैं)।

सफल लोडिंग और उचित असेंबली के बाद, सीरियल मॉनिटर विंडो में निम्नलिखित जानकारी दिखाई देनी चाहिए:

VC0706 कैमरा + Arduino M0 + SIM5320 + MQTT

कैमरा init… संस्करण: ----------------- VC0703 1.00 Ctrl infr मौजूद है उपयोगकर्ता द्वारा परिभाषित सेंसर 525 ----------------- सफलता ! मोडेम प्रारंभ किया जा रहा है… मोडेम: AT+CGMM SIMCOM_SIM5320E नेटवर्क की प्रतीक्षा कर रहा है… ठीक है इंटरनेट से कनेक्ट हो रहा है ठीक 3.83.68.228 से कनेक्ट हो रहा है विफल 3.83.68.228 से कनेक्ट हो रहा है ठीक पिंग: 0

लाइन "पिंग: एक्सएक्स" संगत Arduino M0-SD से सर्वर के लिए एक आवधिक संदेश है। इस जानकारी के बजाय, आप ADC माप, इनपुट स्थिति और बहुत कुछ भेज सकते हैं।

MQTT डैश ऐप में, लाइट बल्ब (LED_YELLOW, LED_GREEN, LED_RED) के आइकन पर क्लिक करें - चालू/बंद करें। सीरियल मॉनिटर की विंडो में देखें - कुछ इस तरह की जानकारी होनी चाहिए:

LED_YELLOW चालू

LED_YELLOW_Off LED_GREEN LED_GREEN ऑफ LED_RED पर LED_RED ऑफ पर

कैमरा आइकन पर क्लिक करें - "शूट" कमांड भेजें और थोड़ी देर प्रतीक्षा करें। सीरियल मॉनिटर विंडो में निम्नलिखित जानकारी दिखाई देनी चाहिए:

शूट शुरू करें!

तस्वीर ली! IMAGE332 बनाएं। 3488 बाइट छवि लाने के लिए-j.webp

और थोड़ी देर बाद (5-10 सेकंड) विंडो में "व्यू इमेज" फोटो प्रदर्शित होनी चाहिए।

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

मुझे आशा है कि मेरा निर्देश आपके लिए दिलचस्प और उपयोगी था। मुझे आपकी प्रतिक्रिया और टिप्पणियों पर खुशी होगी। मेरे डिवाइस को विकसित करने और आपके साथ नए नवाचारों को साझा करने की मेरी योजना में। देखने के लिए धन्यवाद!

सिफारिश की: