विषयसूची:

Arduino वायरलेस अलार्म सिस्टम मौजूदा सेंसर का उपयोग कर रहा है: 9 कदम (चित्रों के साथ)
Arduino वायरलेस अलार्म सिस्टम मौजूदा सेंसर का उपयोग कर रहा है: 9 कदम (चित्रों के साथ)

वीडियो: Arduino वायरलेस अलार्म सिस्टम मौजूदा सेंसर का उपयोग कर रहा है: 9 कदम (चित्रों के साथ)

वीडियो: Arduino वायरलेस अलार्म सिस्टम मौजूदा सेंसर का उपयोग कर रहा है: 9 कदम (चित्रों के साथ)
वीडियो: What is Arduino with Full Information? – [Hindi] – Quick Support 2024, नवंबर
Anonim
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम
मौजूदा सेंसर का उपयोग कर Arduino वायरलेस अलार्म सिस्टम

यदि आपके पास 433 मेगाहर्ट्ज या 315 मेगाहर्ट्ज वायरलेस अलार्म सेंसर मौजूद हैं तो यह परियोजना लगभग $ 20.00 की लागत से लगभग आधे घंटे में बनाई जा सकती है।

यह वायरलेस अलार्म सेंसर के साथ एक पूर्ण नई परियोजना भी हो सकती है, जैसे कि इन्फ्रारेड मोशन डिटेक्टर और रीड स्विच, आसानी से और सस्ते में ऑनलाइन उपलब्ध हैं। बस 433 मेगाहर्ट्ज या 315 मेगाहर्ट्ज सेंसर खोजें जो पीटी 2262 या ईवी 1527 कोडिंग का उपयोग करते हैं।

मुझे यकीन है कि मेरे जैसे कई लोग हैं जिन्होंने वायरलेस सेंसर के साथ जीएसएम/2 जी अलार्म सिस्टम खरीदा है और इससे खुश थे, हालांकि जब मैं जहां रहता हूं वहां 2 जी/जीएसएम नेटवर्क बंद कर दिया गया था, मुझे अलार्म सिस्टम के साथ छोड़ दिया गया था अब कार्यक्रम नहीं है या उस पर समय भी निर्धारित नहीं किया है। एक दिन यह सोचते हुए कि मैं अपने अलार्म को फिर से चालू करने के लिए क्या कर सकता हूं, मेरे मन में यह जांचने के लिए आया कि क्या एक Arduino सेंसर से सिग्नल प्राप्त कर सकता है। मैं एक अस्थिर https://www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/ पर ठोकर खाई और कुछ प्रयोग करने के बाद यह निर्धारित किया कि मैं अपने मौजूदा सेंसर से सिग्नल प्राप्त कर सकता हूं। मैंने एक अलार्म सिस्टम बनाने की प्रक्रिया शुरू की जो मेरे मौजूदा अलार्म को बदल सकता है और बढ़ी हुई कार्यक्षमता भी प्रदान करेगा। पुराने अलार्म के साथ मुद्दों में से एक वास्तव में कभी नहीं जानता था कि 25 में से कौन सा सेंसर बंद हो गया था, मेरे नए अलार्म बिल्ड में एलसीडी स्क्रीन जोड़ने से अब मुझे एलसीडी पर टेक्स्ट मिलता है जो दर्शाता है कि कौन सा सेंसर सक्रिय था। नया अलार्म अभी भी मेरे मौजूदा वायरलेस कीफॉब्स द्वारा मैन्युअल रूप से सशस्त्र हो सकता है और इसमें वास्तविक समय की घड़ी होती है जो इसे दिन के पूर्व निर्धारित समय पर स्वचालित रूप से हाथ और निरस्त्र करने की अनुमति देती है।

आपूर्ति

यह सुनिश्चित करने के लिए कि आप इन भागों के सही संस्करण का उपयोग करते हैं, अंत में अतिरिक्त नोट देखें।

Arduino Uno या समान

Arduino के लिए 433 या 315 मेगाहर्ट्ज रिसीवर मॉड्यूल

Arduino के लिए DS3231 रीयल टाइम क्लॉक मॉड्यूल

Arduino के लिए I2C 16x2 LDC मॉड्यूल

वायरलेस अलार्म रीड स्विच, मोशन सेंसर और रिमोट की फोब्स वांछित के रूप में

पीजो बजर

एलईडी और 220 ओम रोकनेवाला

ब्रेडबोर्ड (वैकल्पिक लेकिन अनुशंसित)

Arduino के लिए उपयुक्त बिजली की आपूर्ति

जम्पर तार आदि

Arduino IDE के साथ पीसी स्थापित

Arduino का बुनियादी ज्ञान

चरण 1: आपूर्ति

आपूर्ति
आपूर्ति
आपूर्ति
आपूर्ति
आपूर्ति
आपूर्ति

आपूर्ति के ऊपर कुछ चित्र जो आपको इस परियोजना के लिए आवश्यक होंगे

चरण 2: छवि में दिखाए गए अनुसार अर्दुनियो और मॉड्यूल को तार दें

छवि में दिखाए गए अनुसार अर्दुनियो और मॉड्यूल को तार दें
छवि में दिखाए गए अनुसार अर्दुनियो और मॉड्यूल को तार दें

Arduino और पृथ्वी के पिन 5 के बीच पीजो

Arduino के पिन 8 और 220ohm रोकनेवाला के बीच फिर पृथ्वी पर एलईडी

433 या 315 मेगाहर्ट्ज रिसीवर, वीसीसी से 5 वी, जीएनडी टू ग्राउंड और या तो 2 डेटा पिन में से एक Arduino के पिन 2 में

I2C 16X2 LCD मॉड्यूल VCC से 5V, GND से ग्राउंड, SCL SDA पिन से Arduino के SCL SDA (पिन A5 SCL है, पिन A4 SDA है)

DS3231 RTC मॉड्यूल VCC से 5V, GND से ग्राउंड, SCL SDA पिन से Arduino के SCL SDA (अधिकांश Arduino के GND और AREF पिन के ऊपर स्थित दूसरा सेट है)

मुझे पता है कि आप में से कुछ को इससे अधिक जानकारी और नीचे संलग्न स्केच की आवश्यकता नहीं होगी, लेकिन मैं किसी और के लिए कुछ और विवरण में जाऊंगा जो थोड़ी और सहायता चाहते हैं।

चरण 3: Arduino IDE में आवश्यक पुस्तकालय जोड़ें

Arduino IDE में आवश्यक पुस्तकालय जोड़ें
Arduino IDE में आवश्यक पुस्तकालय जोड़ें
Arduino IDE में आवश्यक पुस्तकालय जोड़ें
Arduino IDE में आवश्यक पुस्तकालय जोड़ें
Arduino IDE में आवश्यक पुस्तकालय जोड़ें
Arduino IDE में आवश्यक पुस्तकालय जोड़ें

अलार्म चलाने के लिए Arduino स्केच कुछ पुस्तकालयों का उपयोग करता है जो डिफ़ॉल्ट रूप से Arduino IDE पर पहले से स्थापित नहीं हैं।

Arduino IDE में RCSwitch लाइब्रेरी जोड़ने के लिए। शीर्ष मेनू में Arduino IDE खोलें "स्केच" चुनें, फिर ड्रॉप डाउन से "लाइब्रेरी शामिल करें" चुनें और अगले ड्रॉप डाउन से "लाइब्रेरी प्रबंधित करें" चुनें। फिर "अपनी खोज को फ़िल्टर करें" बॉक्स में "RCSW" टाइप करें, अगला "सुई 77 द्वारा आरसी-स्विच" के लिए इंस्टॉल पर क्लिक करें।

पुस्तकालयों को जोड़ने पर विस्तृत निर्देश

जब हम इस पर होते हैं तो हमें टाइम, टाइम अलार्म, DS1307RTC और लिक्विड क्रिस्टल_I2C नामक पुस्तकालयों को भी जोड़ने की आवश्यकता होती है, जो ऊपर की तरह ही है, लेकिन प्रत्येक नए पुस्तकालय के नाम की खोज करना और स्थापित करना। ऊपर स्क्रीन शॉट देखें यदि सुनिश्चित नहीं है कि कौन सी लाइब्रेरी का उपयोग करना है।

DS3231 रीयल-टाइम घड़ी DS1307RTC लाइब्रेरी के साथ संगत है और उसका उपयोग करती है।

चरण 4: अगला हमें आपके सेंसर के लिए कोड प्राप्त करने की आवश्यकता है

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

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

इन दोनों साइटों पर इन कोडों को कैसे प्राप्त किया जाए, इस बारे में व्यापक जानकारी है;

www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/

github.com/sui77/rc-switch/wiki

हालाँकि यहाँ मेरा संक्षिप्त संस्करण है;

कोड प्राप्त करने के लिए आपके सेंसर और रिमोट कुंजी फ़ॉब्स भेज रहे हैं, Arduino को चरण 1 में USB केबल के माध्यम से एक पीसी में संलग्न करें और Arduino IDE खोलें। फिर Arduino IDE में "फ़ाइल" ड्रॉप डाउन पर जाएं, फिर "उदाहरण" पर जाएं, उदाहरण के स्केच की सूची को नीचे स्क्रॉल करें जब तक कि आपको "RCSWITCH" न मिल जाए, फिर "ReceiveDemo_Advanced" स्केच का चयन करें और इसे Arduino पर अपलोड करें। एक बार जब स्केच सफलतापूर्वक अपलोड हो जाता है तो Arduino IDE के सीरियल मॉनिटर को खोलें, यह अभी भी USB के माध्यम से आपके पीसी से जुड़ा हुआ है। अब पहले सेंसर को ट्रिगर करें जिसके लिए आप कोड प्राप्त करना चाहते हैं, RCSwitch से आउटपुट सीरियल मॉनिटर विंडो में दिखाई देगा। इस परियोजना के लिए हम स्क्रीनशॉट 2 में हाइलाइट किए गए दशमलव कोड की तलाश कर रहे हैं। आपको अक्सर दिखाई देने वाले दशमलव मान की तलाश में सेंसर को कई बार ट्रिगर करना होगा, कभी-कभी वास्तविक मान के साथ मिश्रित विभिन्न मान होंगे, ऐसा होता है यादृच्छिक रेडियो तरंगों या समान आवृत्ति पर चलने वाले अन्य उपकरणों के हस्तक्षेप से।

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

चरण 5: Arduino कोड टेम्पलेट

नीचे मेरे Arduino कोड की एक.ino फ़ाइल के रूप में एक प्रति है जिसे Wireless_Alarm कहा जाता है। आप उस पर क्लिक कर सकते हैं और यह Arduino IDE में खुल जाना चाहिए। मैं एक प्रोग्रामर नहीं हूं, मेरा कोड Arduino IDE में पाए गए उदाहरणों से भाग में इकट्ठा किया गया है, यह शायद विशेष रूप से सुरुचिपूर्ण नहीं है, लेकिन यह काम करता है और लंबे समय से विश्वसनीय रहा है।

अपने स्वयं के सेंसर से कोड शामिल करने के लिए परिवर्तन करने के बाद स्केच को फिर से सहेजना याद रखें।

चरण ६: चरण ५ में आपके द्वारा प्राप्त कोड को टेम्पलेट Arduino Sketch में चिपकाएँ।

अब आपके द्वारा उपयोग किए जा रहे सेंसर और रिमोट कीफॉब्स के लिए कोड को कस्टमाइज़ करने के चरण।

यदि आप अपने IDE में Wireless_Alarm स्केच खोलते हैं, तो आप लाइन 111 पर देखेंगे।

अगर (mySwitch.getReceivedValue() == 115166236) // फोब आर्म बटन कोड

जहां मौजूदा कोड में यह 115166236 पढ़ता है, आपको अपने रिमोट कीफोब के आर्म बटन के लिए उस नंबर को दशमलव कोड से बदलने की आवश्यकता है जिसे आपने चरण 5 में रिकॉर्ड किया था।

उदाहरण के लिए यदि चरण ५ में आपको दशमलव ११५४३२१ मिला है तो आप पंक्ति १११ को अब पढ़ने के लिए संशोधित करेंगे;

अगर (mySwitch.getReceivedValue() == 1154321) // फोब आर्म बटन कोड

लाइन 125 के लिए भी यही प्रक्रिया अपनाएं।

अगर (mySwitch.getReceivedValue () == १११६६६२३४) // एफओबी निरस्त्र बटन कोड

अपने रिमोट कीफोब डिसर्म बटन के कोड के लिए 115166234 को प्रतिस्थापित करें जिसे आपने चरण 5 में रिकॉर्ड किया था।

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

अब लाइन 140. पर स्केच में अलार्म सेंसर को कोडिंग करने के लिए

if(ledState == High && mySwitch.getReceivedValue() == 1151640) // सिग्नल भेजने वाले कार्यालय की अलमारी के लिए कार्रवाई

११११६४० निकालें और अपने किसी अलार्म सेंसर का दशमलव मान डालें।

फिर लाइन 158 पर।

एलसीडी.प्रिंट (एफ ("ऑफिस अलमारी")); // एलसीडी को संदेश प्रिंट करें यह जानने के लिए कि कौन सा सेंसर सक्रिय था (और जाकर चोर को ढूंढें:)

ऑफिस अलमारी को उस सेंसर के लिए एलसीडी पर प्रदर्शित करने के लिए कभी भी बदलें। उदाहरण के लिए यदि आप चाहते हैं कि यह किचन के दरवाजे को पढ़े तो लाइन को इस तरह बनाएं;

एलसीडी.प्रिंट (एफ ("किचनडूर")); // एलसीडी को संदेश प्रिंट करें यह जानने के लिए कि कौन सा सेंसर सक्रिय था (और जाकर चोर को ढूंढें:)

नाम 16 वर्णों से अधिक नहीं होना चाहिए।

लाइन १६५ और १८७ के बीच, १८७ से नीचे की पंक्तियों में जितनी बार आवश्यकता हो कॉपी और पेस्ट करने के लिए एक टेम्पलेट है। mySwitch.getReceivedValue () == के बाद की संख्या को अपने अन्य सेंसरों में से एक के दशमलव के साथ बदलें जिसे आपने चरण ५ में रिकॉर्ड किया था। और LCD.print(F("sensornamehere")) में " " के भीतर नाम बदलें; उस नाम पर जिसे आप अपना सेंसर देना चाहते हैं।

यदि आप रिमोट कीफॉब्स का उपयोग हाथ और अपने अलार्म को निष्क्रिय करने के लिए नहीं कर रहे हैं तो आप केवल 111-136 लाइनों को अनदेखा कर सकते हैं या प्रत्येक अवांछित लाइनों की शुरुआत में // डाल सकते हैं और Arduino उन्हें नहीं पढ़ेगा।

अपने परिवर्तन करने के बाद फ़ाइल को सहेजना याद रखें।

चरण 7: संशोधित.ino को अपने Arduino और परीक्षण में अपलोड करें।

अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।
अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।
अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।
अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।
अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।
अपने Arduino और टेस्ट में संशोधित.ino अपलोड करें।

Arduino अभी भी USB द्वारा आपके पीसी से जुड़ा हुआ है, स्केच को Arduino Board पर अपलोड करें। एक बार अपलोड सफलतापूर्वक पूरा हो जाने के बाद एलसीडी को "अलार्म ऑन डिसर्म्ड" पढ़ना चाहिए। अपने रिमोट पर आर्म बटन को पुश करें और एलसीडी को "अलार्म ऑन आर्म्ड" पढ़ना चाहिए और एलईडी को जलाया जाना चाहिए ताकि आपको पता चल सके कि यह सशस्त्र है, अब एक सेंसर चालू करें, जबकि यह सशस्त्र है, एलसीडी को अलार्म को टाइम स्टैम्प द्वारा पढ़ना चाहिए और सेंसर का स्थान, बीपर को 2 मिनट तक बजना चाहिए जब तक कि आप डिसर्म बटन को धक्का न दें। यदि आपको यह परिणाम नहीं मिल रहा है, तो आपको चरण 5 में मिले कोड और पिछले चरण में आपके द्वारा कोड में किए गए परिवर्तनों को फिर से जांचें, सभी घटकों की वायरिंग को भी दोबारा जांचें। यदि एलसीडी बिल्कुल नहीं पढ़ रहा है, तो एलसीडी मॉड्यूल के पीछे एक विपरीत समायोजन होता है। एक बार कंट्रास्ट सही ढंग से सेट हो जाने पर अगर एलसीडी अभी भी नहीं पढ़ रहा है तो स्केच में लाइन 12 पर एलसीडी के पते को 0x3f से 0x27 में बदलने का प्रयास करें। यहाँ एलसीडी समस्या निवारण I2C LCD ट्यूटोरियल

चरण 8: आरटीसी मॉड्यूल पर समय निर्धारित करना और आर्म और डिसआर्म टाइम्स को बदलना

उम्मीद है कि आपका RTC पहले से ही सही समय के साथ सेट किया गया था, लेकिन यदि IDE नहीं खुला है, तो 'फ़ाइल' चुनें और ड्रॉपडाउन से "उदाहरण" पर क्लिक करें, "DS1307RTC" पर नीचे स्क्रॉल करें और "सेटटाइम" स्केच का चयन करें, स्केच को अपने लिए डाउनलोड करें Arduino और यह आपके पीसी से समय के साथ वास्तविक समय घड़ी सेट करेगा। फिर आपको अपने Arduino पर Wireless_Alarm स्केच को फिर से लोड करना होगा।

मैंने जो Wireless_Alarm.ino प्रदान किया है, वह डिफ़ॉल्ट रूप से हर रात 10.15 बजे अलार्म को स्वचालित रूप से चालू कर देगा और प्रत्येक सुबह 6.00 बजे निरस्त्र कर देगा। इन समयों को बदलने के लिए, स्केच को 71 और 72 की पंक्तियों में संशोधित करें। अलार्म के बाद समय कोष्ठक में है। HH, MM, SS प्रारूप में अलार्म दोहराएं। जो भी समय आपको सूट करे, उसमें इसे बदल दें।

अलार्म। अलार्म रिपीट (6, 00, 0, मॉर्निंग अलार्म); // निरस्त्र समय

अलार्म.अलार्म रिपीट (२२, १५, ०, इवनिंगअलार्म); // एआरएम समय

तो निरस्त्र करने का समय सुबह 9.15 बजे और हाथ का समय शाम 5.30 बजे बदलने के लिए कोड इस तरह दिखेगा

अलार्म। अलार्म रिपीट (9, 15, 0, मॉर्निंग अलार्म); // निरस्त्र समय

अलार्म। अलार्म रिपीट (17, 30, 0, इवनिंग अलार्म); // एआरएम समय

यदि आप नहीं चाहते कि अलार्म हाथ लगे और निरस्त्र हो जाए तो स्वचालित रूप से // को 2 पंक्तियों के सामने रख दें और उनका उपयोग नहीं किया जाएगा।

//Alarm.alarmRepeat(6, 00, 0, MorningAlarm); // निरस्त्र समय

//Alarm.alarmRepeat(22, 15, 0, शाम अलार्म); // हाथ का समय

लाइन 22. को संशोधित करके अलार्म बीपर के ध्वनि समय को बदला जा सकता है

लंबा अंतराल = 120000; // समय की लंबाई के लिए मिली देरी के लिए अलार्म लगता है

अंतराल मिलीसेकंड में है इसलिए 120000 = 120 सेकंड, 120000 से 30000 को बदलने से 30 सेकंड के लिए अलार्म बज जाएगा।

सायरन, स्ट्रोब लाइट, हाई वॉल्यूम बीपर आदि को चलाने के लिए एक सोलनॉइड को भी 7 या पिन 9 को पिन करने के लिए तार दिया जा सकता है और ऊपर सेट किए गए "अंतराल" के लिए चलेगा। ध्यान रखें कि Arduino पिन के लिए अधिकतम भार 40mA से अधिक नहीं होना चाहिए।

चरण 9: अतिरिक्त नोट्स

Arduino के लिए 433 या 315 MHz रिसीवर मॉड्यूल का चयन करते समय आपको उस अलार्म सेंसर से मिलान करने के लिए आवृत्ति चुननी चाहिए जिसका आप उपयोग करना चाहते हैं। मैं एक मॉड्यूल खरीदने का सुझाव देता हूं जो सर्वश्रेष्ठ प्रदर्शन के लिए एक छोटे सर्पिल पेचदार एंटीना के साथ आता है, वैकल्पिक रूप से 17.3 मिमी लंबा सीधा तार एंटीना भी प्रदर्शन को बढ़ाता है।

16x2 एलसीडी मॉड्यूल के साथ आपको यहां दिए गए निर्देशों और कोड का उपयोग करने के लिए 4 पिन I2C एलसीडी का उपयोग करना चाहिए, इसे 16 पिन मानक एलसीडी के साथ बनाया जा सकता है लेकिन यह यहां वायरिंग या कोड के साथ काम नहीं करेगा।

वायरलेस अलार्म रीड स्विच, मोशन सेंसर और रिमोट कुंजी फ़ॉब्स 433 मेगाहर्ट्ज या 315 मेगाहर्ट्ज होने चाहिए जो उस रिसीवर से मेल खाते हों जिसका आप उपयोग करना चाहते हैं और पीटी 2262 या ईवी 1527 कोडिंग का उपयोग करना चाहिए।

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

किसी भी प्रश्न का उत्तर देने में खुशी होती है।

धन्यवाद।

सिफारिश की: