विषयसूची:

मोशन डिटेक्शन अलार्म सिस्टम: 11 कदम (चित्रों के साथ)
मोशन डिटेक्शन अलार्म सिस्टम: 11 कदम (चित्रों के साथ)

वीडियो: मोशन डिटेक्शन अलार्म सिस्टम: 11 कदम (चित्रों के साथ)

वीडियो: मोशन डिटेक्शन अलार्म सिस्टम: 11 कदम (चित्रों के साथ)
वीडियो: Laser Security System based on LDR SENSOR Project #sciencemodel #shorts #learnandfun #ldrsensor 2024, जुलाई
Anonim
मोशन डिटेक्शन अलार्म सिस्टम
मोशन डिटेक्शन अलार्म सिस्टम

ध्यान दें! प्रतिक्रियाशील ब्लॉक अब डाउनलोड के लिए उपलब्ध नहीं हैं। एक कमरे में गति का पता लगाने के लिए एक मूल USB कैमरा का उपयोग किया जा सकता है। निम्नलिखित चरणों में हम आपको दिखाएंगे कि गति का पता चलने पर एसएमएस या ईमेल भेजने वाले जावा एप्लिकेशन को चलाने के लिए तैयार प्रोग्राम के लिए आप रिएक्टिव ब्लॉक्स का उपयोग कैसे कर सकते हैं। रिएटिव ब्लॉक्स के साथ आप जावा एसई एप्लिकेशन बनाते हैं ताकि अलार्म एप्लिकेशन को जावा एसई के साथ किसी भी मशीन पर और एक कैमरा संलग्न या एकीकृत किया जा सके। एप्लिकेशन को आसानी से पाई पर तैनात किया जाता है क्योंकि रास्पियन रिलीज में Oracle जावा पहले से इंस्टॉल है।.

यह वही चीज़ है जिसकी आपको आवश्यकता है:

  1. रास्पबेरी पाई मॉडल बी+ रास्पियन ओएस के साथ
  2. मानक यूएसबी कैमरा
  3. ईथरनेट केबल
  4. Pi. के लिए स्क्रीन और कीबोर्ड
  5. JDK के साथ विंडोज या मैक कंप्यूटर
  6. ध्यान दें! प्रतिक्रियाशील ब्लॉक अब डाउनलोड के लिए उपलब्ध नहीं हैं। एप्लिकेशन को प्रोग्राम करने के लिए आपको रिएक्टिव ब्लॉक्स, एक एक्लिप्स प्लगइन की आवश्यकता होगी।

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

चरण 1: प्रतिक्रियाशील ब्लॉक स्थापित करें

प्रतिक्रियाशील ब्लॉक बंद कर दिए गए हैं

चरण 2: पुस्तकालयों से एप्लिकेशन डाउनलोड करें

पुस्तकालयों से एप्लिकेशन डाउनलोड करें
पुस्तकालयों से एप्लिकेशन डाउनलोड करें

सुनिश्चित करें कि आपने प्रतिक्रियाशील ब्लॉक परिप्रेक्ष्य खोल दिया है और आप ब्लॉक दृश्य में हैं। ब्लॉक दृश्य से आयात बटन का चयन करें और संदर्भ एप्लिकेशन चुनें। मोशन डिटेक्शन प्रोजेक्ट का चयन करें। इस बिंदु पर आपको एक Google आईडी के साथ पंजीकरण करने के लिए कहा जाएगा। यह आपको बिल्डिंग ब्लॉक्स लाइब्रेरी और संशोधित सिस्टम और ट्यूटोरियल तक तत्काल पहुंच प्रदान करेगा।

आपके द्वारा डाउनलोड किए गए मोशन डिटेक्शन प्रोजेक्ट में तीन एप्लिकेशन शामिल हैं, अलार्म सिस्टम एसएमएस, अलार्म सिस्टम ईमेल और एक परीक्षण एप्लिकेशन टेस्ट मोशन डिटेक्शन। इस ट्यूटोरियल में हम आपको अलार्म सिस्टम एसएमएस के माध्यम से मार्गदर्शन करते हैं। यदि आप ईमेल भेजते हैं तो आप अलार्म सिस्टम ईमेल के साथ भी वही कदम उठा सकते हैं

चरण 3: शीर्ष स्तर पर आवेदन

शीर्ष स्तर पर आवेदन
शीर्ष स्तर पर आवेदन

यह चरण आवेदन की व्याख्या देता है। पहला चित्र दिखाता है कि शीर्ष स्तर पर पूरा एप्लिकेशन कैसा दिखता है। यह 7 बिल्डिंग ब्लॉक्स से बना है; पुस्तकालयों से 5 मानक बिल्डिंग ब्लॉक और 2 कस्टम मेड ब्लॉक जो इस एप्लिकेशन के लिए बनाए गए थे।

IoT पुस्तकालय से मानक ब्लॉक हैं:

  • धरनेवाला, USB कैमरे से चित्र लेता है
  • मोशन डिटेक्शन, वास्तविक इमेज डिटेक्शन करता है
  • आवधिक टाइमर, सटीक समय टिकटों पर शुरू होता है और हर अवधि में टिक पिन पर एक संकेत भेजता है।
  • बफर उत्सुक, कतार में पहले तत्व को स्वचालित रूप से धक्का देता है। बफर यह सुनिश्चित करता है कि एसएमएस भेजें ब्लॉक में केवल एक संदेश भेजा जाए क्योंकि यह एक समय में केवल एक संदेश को संसाधित कर सकता है।
  • एसएमएस भेजें बफर्ड, ट्विलियो सेवा के माध्यम से एसएमएस भेजता है। भेजे जाने वाले तत्वों को यह सुनिश्चित करने के लिए बफर किया जाता है कि एक समय में केवल एक ही संदेश भेजा जाए।
  • घुसपैठिए का पता चलने पर बहुत अधिक एसएमएस से बचने के लिए सीमक।
  • जावा गुण फ़ाइल पढ़ें, इनपुट फ़ाइल से कॉन्फ़िगरेशन डेटा पढ़ें
  • देखें, स्क्रीन पर एक छवि देखें।

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

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

हल्के नीले रंग के बॉक्स विशेष रूप से इस एप्लिकेशन के लिए बनाए गए सभी जावा तरीके हैं। मेथड ब्लॉक पर क्लिक करने से जावा एडिटर खुल जाता है।

जब आप किसी बिल्डिंग ब्लॉक पर क्लिक करते हैं तो आप ब्लॉक के अंदर तर्क का विवरण देख सकते हैं। यदि आप उदाहरण के लिए ReadConfig ब्लॉक के अंदर देखते हैं तो आप देखेंगे कि यह एक मौजूदा बिल्डिंग ब्लॉक और 4 जावा विधियों को मिलाकर बनाया गया है।

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

चरण 4: एसएमएस सक्षम करें

एसएमएस सक्षम करें
एसएमएस सक्षम करें

यह अलार्म एप्लिकेशन ट्विलियो को एसएमएस सेवा के रूप में उपयोग करता है। SMS को सक्षम करने के लिए आपको फ़ाइल config/alarm-system.properties को संपादित करना होगा। आप इसे br.ref.motiondetection के तहत पैकेज एक्सप्लोरर व्यू में पा सकते हैं, चित्र देखें।

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

यदि आपके पास Twilio सेवा नहीं है, तो आप अपनी स्वयं की SMS सेवा का उपयोग करने के लिए एप्लिकेशन को संशोधित कर सकते हैं। हमारे पास Clickatell सेवा के लिए बिल्डिंग ब्लॉक का उपयोग करने के लिए तैयार है। या आप एसएमएस भेजने के लिए एक मॉडेम संलग्न कर सकते हैं।

आप कुछ नाम रखने के लिए SMTP ईमेल, AirVantage Cloud, IBM Bluemix और Xively के लिए बिल्डिंग ब्लॉक्स पा सकते हैं।

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

अगर आपको मदद चाहिए तो मुझसे संपर्क करने में संकोच न करें

चरण 5: अपने लैपटॉप पर एप्लिकेशन बनाएं और चलाएं

अपने लैपटॉप पर एप्लिकेशन बनाएं और चलाएं
अपने लैपटॉप पर एप्लिकेशन बनाएं और चलाएं

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

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

चरण 6: अपने कंप्यूटर पर एप्लिकेशन चलाएँ

अपने कंप्यूटर पर एप्लिकेशन चलाएँ
अपने कंप्यूटर पर एप्लिकेशन चलाएँ
अपने कंप्यूटर पर एप्लिकेशन चलाएँ
अपने कंप्यूटर पर एप्लिकेशन चलाएँ

अब आप जेनरेट किए गए प्रोजेक्ट को निष्पादित कर सकते हैं। जेनरेट किए गए _exe प्रोजेक्ट के तहत पैकेज एक्सप्लोरर व्यू में, अलार्मसिस्टम एसएमएस पर राइट क्लिक करें। लॉन्च करें और रनए चुनें और फिर अलार्मसिस्टम एसएमएस चुनें।

स्क्रीन पर विंडो और कंसोल व्यू देखें। दूसरी तस्वीर जैसा कुछ दिखना चाहिए।

कैमरा-विंडो बंद करके एप्लिकेशन को समाप्त करें।

ईमेल भेजें आवेदन के लिए: यदि आपको प्रमाणीकरण त्रुटि मिलती है, तो सुनिश्चित करें कि आपके ईमेल के लिए एसएमटीपी भेजने की अनुमति है। ईमेल ट्यूटोरियल के नीचे समस्या निवारण देखें:

चरण 7: रन करने योग्य JAR फ़ाइल के रूप में निर्यात करें

रननेबल जार फ़ाइल के रूप में निर्यात करें
रननेबल जार फ़ाइल के रूप में निर्यात करें

यदि आप एप्लिकेशन को रास्पबेरी पाई पर चलाना चाहते हैं, तो अगला चरण जेनरेट किए गए प्रोजेक्ट को एक रन करने योग्य JAR फ़ाइल में निर्यात करना है। ऐसा करने के लिए, पैकेज एक्सप्लोरर दृश्य में निष्पादन योग्य प्रोजेक्ट पर राइट क्लिक करें और निर्यात चुनें। फिर रननेबल JAR फ़ाइल विकल्प चुनें और अगला हिट करें। निम्न विंडो में उचित लॉन्च कॉन्फ़िगरेशन और निर्यात गंतव्य का चयन करें। निर्यात गंतव्य में, ब्राउज़ बटन का उपयोग करें ताकि आप.jar फ़ाइल को उस स्थान पर रख सकें जहां आप इसे ढूंढ सकते हैं।

चरण 8: अपना रास्पबेरी पाई तैयार करें

  • रास्पियन के साथ एसडी कार्ड तैयार करें (हमने एनओओबीएस का उपयोग करके परीक्षण किया है)
  • रास्पबेरी पाई में एसडी कार्ड डालें
  • कैमरा कनेक्ट करें
  • नेटवर्क कनेक्ट करें
  • स्क्रीन और कीबोर्ड को Pi. से कनेक्ट करें
  • बिजली की आपूर्ति के लिए माइक्रो यूएसबी को जोड़कर रास्पबेरी पाई शुरू करें।
  • अपने रास्पबेरी पाई का आईपी पता खोजें। शुरू होने पर, आपका रास्पबेरी पाई कुछ इस तरह की रिपोर्ट करेगा "मेरा आईपी पता 10.10 है। 15.107"
  • हमने रास्पियन (डिफ़ॉल्ट लॉगिन: पीआई, पासवर्ड: रास्पबेरी) के साथ परीक्षण किया है, जिसमें डिफ़ॉल्ट रूप से जावा शामिल है।

चरण 9: एप्लिकेशन को अपने रास्पबेरी पाई पर तैनात करें

अपने कंप्यूटर से चलने योग्य जार फ़ाइल को रैप्सबेरी पाई पर कॉपी करने के लिए इन चरणों का पालन करें:

  • अपनी मशीन पर एक टर्मिनल खोलें
  • उस निर्देशिका पर जाएँ जहाँ उत्पन्न JAR फ़ाइल स्थित है
  • scp अलार्म सिस्टम टाइप करें। जार [email protected]:~/
  • आपसे पासवर्ड संयोजन के लिए कहा जाएगा। "pi" डिफ़ॉल्ट उपयोगकर्ता नाम है और "रास्पबेरी" डिफ़ॉल्ट पासवर्ड है
  • उस निर्देशिका पर जाएँ जहाँ कॉन्फ़िगरेशन फ़ाइल अलार्म_सिस्टम.प्रॉपर्टीज स्थित है। मेरे लिए सबसे आसान है कि मैन्युअल रूप से ग्रहण संपादक से फ़ाइल को उसी निर्देशिका में जार फ़ाइल के रूप में कॉपी करें।
  • टाइप करें scp Motiondetection.ini [email protected]:~/

10.10.15.107 आईपी पता है, इसे अपने रास्पबेरी पाई के आईपी पते से बदलें।

- आप निश्चित रूप से इसे पीआई पर कॉपी करने के लिए मेमोरी स्टिक का भी उपयोग कर सकते हैं

चरण 10: अपने रास्पबेरी पाई पर एप्लिकेशन चलाएँ

अब आप एप्लिकेशन चलाने के लिए तैयार हैं।

  • रास्पबेरी पाई में सीधे या दूरस्थ रूप से ssh के माध्यम से लॉगिन करें।
  • एक नई कॉन्फ़िगरेशन निर्देशिका बनाएं: mkdir config
  • जांचें कि क्या रन करने योग्य JAR फ़ाइल और.ini को रास्पबेरी पाई में कॉपी किया गया है
  • .ini फ़ाइल को कॉन्फ़िगरेशन निर्देशिका में ले जाएँ: mv अलार्म_सिस्टम.प्रॉपर्टीज़ config/
  • sudo java -jar अलार्म सिस्टम टाइप करें
  • कंसोल पर आउटपुट देखें
  • ^C. के साथ समाप्त करें

चरण 11: अपना आवेदन संशोधित करें

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

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

विशिष्ट प्रतिक्रियाशील ब्लॉक अनुप्रयोगों को बनाने या संशोधित करने के तरीके के बारे में चरण-दर-चरण विवरण प्राप्त करने के लिए IoT ट्यूटोरियल ट्रेल का पालन करें।

सिफारिश की: