विषयसूची:

पुराने अलार्म और Arduino का उपयोग कर मौसम पूर्वानुमान घड़ी: 13 कदम (चित्रों के साथ)
पुराने अलार्म और Arduino का उपयोग कर मौसम पूर्वानुमान घड़ी: 13 कदम (चित्रों के साथ)

वीडियो: पुराने अलार्म और Arduino का उपयोग कर मौसम पूर्वानुमान घड़ी: 13 कदम (चित्रों के साथ)

वीडियो: पुराने अलार्म और Arduino का उपयोग कर मौसम पूर्वानुमान घड़ी: 13 कदम (चित्रों के साथ)
वीडियो: बगड़ावत कथा | Full Video | Mangal Singh, Sayar Bhai, Raju Mewadi | Bagdawat Katha | Rajasthani Katha 2024, जुलाई
Anonim
पुराने अलार्म और Arduino का उपयोग करके मौसम पूर्वानुमान घड़ी
पुराने अलार्म और Arduino का उपयोग करके मौसम पूर्वानुमान घड़ी
पुराने अलार्म और Arduino का उपयोग करके मौसम पूर्वानुमान घड़ी
पुराने अलार्म और Arduino का उपयोग करके मौसम पूर्वानुमान घड़ी

मेरे पास एक टूटी हुई अलार्म घड़ी पड़ी थी और इसे घड़ी और मौसम पूर्वानुमान स्टेशन में बदलने का विचार आया।

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

  • पुरानी गोलाकार अलार्म घड़ी
  • अरुडिनो नैनो
  • BME280 सेंसर मॉड्यूल (अस्थायी, आर्द्रता, दबाव)
  • Nokia 5110. से LCD डिस्प्ले मॉड्यूल
  • DS1307 आरटीसी घड़ी
  • TP4056 लिथियम बैटरी चार्जर
  • मोबाइल फोन से बचाई गई पुरानी ली-आयन बैटरी
  • छोटा 3.7v से 5v बूस्टर मॉड्यूल
  • लाइट डिपेंडेंट रेसिस्टर (LDR - लाइट मीटर)
  • बजर (पुराने पीसी से बचा हुआ इस्तेमाल किया गया)
  • 3 पुश बटन
  • प्रतिरोधों का एक गुच्छा (2x10k, 270 ओम) और एक ट्रांजिस्टर (2N2222A या समान)
  • कुछ चौड़ी सिकुड़न ट्यूब
  • स्क्रैप पीसीबी फ्रंट प्लेट सजावट के रूप में उपयोग करने के लिए
  • माइक्रो-यूएसबी एक्सटेंशन केबल (महिला और पुरुष दोनों पक्ष माइक्रो-यूएसबी हैं)
  • 2x8cm प्रोटोटाइप बोर्ड और कुछ तार

चरण 1: सब कुछ अलग करें

सब कुछ जुदा करना
सब कुछ जुदा करना

पहले मैंने पुरानी घड़ी को डिसाइड किया। घंटियाँ, मोटर, टूटी हुई घड़ी की व्यवस्था…

चरण 2: डिजिटल सेटिंग्स के लिए बटन

डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन
डिजिटल सेटिंग्स के लिए बटन

चूंकि नई घड़ी पूरी तरह से डिजिटल होगी और अंदर एक मिनी-कंप्यूटर होगा, इसलिए मैंने किनारे पर 3 साधारण अच्छे दिखने वाले बटन जोड़े।

एल्यूमीनियम के एक स्क्रैप टुकड़े का उपयोग करके मैंने एक लेबल बनाने के लिए ओवरले को काट दिया। लेबल के लिए अक्षरों को लेटर-पंच और एक ब्लैक मार्कर का उपयोग करके बनाया गया था।

चरण 3: मोटर के लिए संधारित्र

मोटर के लिए संधारित्र
मोटर के लिए संधारित्र

मैं अलार्म को मोटर से चलाने के लिए पुरानी घंटियाँ रखूँगा। पुराने टूटे हुए घड़ी तंत्र में 104 लेबल वाला सिरेमिक कैपेसिटर था। मैंने इसे सर्किट बोर्ड से हटा दिया और इसे सीधे मोटर में मिला दिया - इससे अलार्म के दौरान मोटर चालू करते समय बिजली की स्पाइक्स को रोकने में मदद मिलेगी। यह भी ध्यान रखना महत्वपूर्ण है कि मोटर को ट्रांजिस्टर के माध्यम से नियंत्रित किया जाएगा लेकिन इस पर बाद में और अधिक।

चरण 4: घड़ी के लिए नया चेहरा

घड़ी के लिए नया चेहरा
घड़ी के लिए नया चेहरा
घड़ी के लिए नया चेहरा
घड़ी के लिए नया चेहरा

चूंकि मैंने घड़ी के लिए एक नया चेहरा बनाने का फैसला किया है - मैंने अपने डंपस्टर ढेर से एक सर्किट बोर्ड लिया और सभी घटकों को जल्दी से हटाने के लिए एक बिल्डर हीटगन का इस्तेमाल किया। बीच में छेद नई घड़ी की डिजिटल स्क्रीन के लिए बनाया गया है।

चरण 5: पुराने मोबाइल फोन से डिजिटल डिस्प्ले

पुराने मोबाइल फोन से डिजिटल डिस्प्ले
पुराने मोबाइल फोन से डिजिटल डिस्प्ले
पुराने मोबाइल फोन से डिजिटल डिस्प्ले
पुराने मोबाइल फोन से डिजिटल डिस्प्ले

इस परियोजना के लिए मैंने पुराने नोकिया 5110 मोबाइल फोन से एलसीडी स्क्रीन का उपयोग करने का निर्णय लिया। ये स्क्रीन एक मॉड्यूल के रूप में बिक्री के लिए व्यापक रूप से उपलब्ध हैं, वे बहुत कम शक्ति खींचते हैं और Arduino के लिए अच्छे पुस्तकालय हैं। यदि आप ५११० स्क्रीन के साथ एक नया मॉड्यूल खरीद रहे हैं - आप ग्रह को बचा रहे हैं क्योंकि सभी नए मॉड्यूल बचाए गए ५११०, ३११० और ३२१० फोन से बनाए गए हैं!

चरण 6: सर्किट को जोड़ना

सर्किट को जोड़ना
सर्किट को जोड़ना
सर्किट को जोड़ना
सर्किट को जोड़ना
सर्किट को जोड़ना
सर्किट को जोड़ना

आप पहले ही अनुमान लगा चुके होंगे कि मैं इस घड़ी को नियंत्रित करने के लिए Arduino बोर्ड का उपयोग करने की योजना बना रहा था। शुरुआती Arduino प्रशंसकों के लिए भी परियोजना आसानी से दोहराने योग्य है क्योंकि मैंने अपना खुद का सर्किट बोर्ड नहीं बनाया है। यह एक Arduino नैनो बोर्ड है जिसमें मॉड्यूल जुड़े हुए हैं - BME280 तापमान, दबाव और आर्द्रता सेंसर, DS1307 RTC घड़ी, TP4056 लिथियम बैटरी चार्जर, छोटा 3.7v से 5v बूस्टर मॉड्यूल, लाइट डिपेंडेंट रेसिस्टर (LDR - लाइट मीटर) और एक बजर (पुराने पीसी से लिया गया)।

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

सेटअप के बारे में कुछ नोट्स:

  • ट्रांजिस्टर के माध्यम से मोटर को बैटरी से सीधे जोड़ा जाता है। Arduino रेसिस्टर और PWM पिन D5 के माध्यम से ट्रांजिस्टर को नियंत्रित करता है।
  • एलसीडी कनेक्टर के लिए पिन D7-12 का उपयोग किया जाता है। ग्राउंड और वीसीसी जंक्शन बोर्ड पर रेल से जुड़े हैं।
  • LDR को क्लॉकफेस पर स्थापित किया गया था और रेसिस्टर + 3 आउटगोइंग तारों को क्लॉक फेस के ठीक पीछे मिलाप किया गया था।
  • बटन कनेक्शन के लिए मैंने Arduino के अंदर आंतरिक PULLUP फ़ंक्शन का उपयोग किया। मेनू बटन इंटरप्ट से जुड़ा हुआ है और मुझे बाद में ही एहसास हुआ कि आप इंटरप्ट के लिए भी इंटरनल PULLUP का उपयोग कर सकते हैं। मेनू बटन के लिए रुकावट आवश्यक है ताकि कोड हर समय बटनों की स्थिति को स्कैन न करे।
  • घड़ी बैटरी की स्थिति की निगरानी और प्रदर्शन करेगी ताकि बैटरी सीधे पिन ए0 से जुड़ी हो। बैटरी वोल्टेज कभी भी 4.2V से अधिक नहीं होता है इसलिए बैटरी को सीधे Arduino एनालॉग पिन से कनेक्ट करना सुरक्षित होता है।
  • बजर सीधे PWM पिन D6 से जुड़ा है। हालांकि यह एक अच्छा अभ्यास नहीं है, मैं इससे दूर हो गया क्योंकि Arduino नैनो कहा से अधिक कल्पना को संभाल सकता है और इसलिए भी कि बजर लगातार काम नहीं करेगा। एक ही सेटअप आसानी से ईएसपी बोर्डों पर पिन को जला देगा, इसलिए उन मामलों में मैं ट्रांजिस्टर नियंत्रण का उपयोग करने की सलाह देता हूं।
  • घड़ी में पहले से ही एक स्विच था इसलिए मैंने इसे इस्तेमाल करने का फैसला किया। यह पीठ पर प्राकृतिक दिखता है।

चरण 7: आसान कनेक्शन के लिए जंक्शन बोर्ड

आसान कनेक्शन के लिए जंक्शन बोर्ड
आसान कनेक्शन के लिए जंक्शन बोर्ड
आसान कनेक्शन के लिए जंक्शन बोर्ड
आसान कनेक्शन के लिए जंक्शन बोर्ड

सभी मॉड्यूल को सकारात्मक और जमीनी कनेक्शन की आवश्यकता होती है इसलिए मैंने 2x8cm प्रोटोटाइप बोर्ड का उपयोग करने का निर्णय लिया और इसमें 5V और ग्राउंड रेल को मिलाया। मैंने वहां एक छोटी I2C रेल भी बनाई, क्योंकि मेरे पास I2C इंटरफ़ेस का उपयोग करने वाले कई मॉड्यूल थे।

दूसरी तरफ मैंने मानक पिनों को मिलाया ताकि आवश्यकता पड़ने पर मैं मॉड्यूल को कनेक्ट और डिस्कनेक्ट कर सकूं।

कुछ अतिरिक्त घटकों को भी वहां मिलाया गया था जैसे कि ट्रांजिस्टर और मोटर नियंत्रण के लिए रोकनेवाला और मेनू बटन के लिए एक अवरोधक जो इंटरप्ट का उपयोग करता है। मैंने पिछले भाग में योजनाएँ दिखाईं।

बीटीडब्ल्यू क्या आप पहली तस्वीर में घड़ी के चेहरे पर पहले से स्थापित एलडीआर सेंसर देख सकते हैं?

चरण 8: पावर सेट करना

शक्ति की स्थापना
शक्ति की स्थापना

मैंने इस घड़ी को चलाने के लिए अपने सेलफोन से एक पुरानी लिथियम-आयन बैटरी का इस्तेमाल किया। आमतौर पर जिन मोबाइल फोन की बैटरियों को बदला जाता है उनमें अभी भी अच्छी क्षमता होती है (नए समय की तुलना में कम से कम आधी)। उनका लाभ यह है कि उनके पास एक अंतर्निर्मित निर्वहन सुरक्षा सर्किट है और वे बहुत पतले भी हैं इसलिए छोटे अंतरिक्ष परिदृश्यों में उपयोग किया जा सकता है।

बैटरी को जोड़ने के लिए आप बस तारों को बैटरी पर + और - पिन से मिलाते हैं। चिंता न करें, आप सेल को नुकसान नहीं पहुंचाएंगे क्योंकि पिन और सेल के रसायनों के बीच एक नियंत्रक और कुछ खाली जगह है।

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

चरण 9: फर्मवेयर को चार्ज करने और अपडेट करने के लिए माइक्रो यूएसबी

फर्मवेयर चार्ज करने और अपडेट करने के लिए माइक्रो यूएसबी
फर्मवेयर चार्ज करने और अपडेट करने के लिए माइक्रो यूएसबी

एक बार जब मैंने सब कुछ मिला दिया, तो मैंने बैक पैनल पर बजर और टेम्प / प्रेशर / ह्यूमिडिटी सेंसर चिपका दिया। वे सभी पुराने क्लॉक डायल कंट्रोल से मौजूदा स्लॉट में अच्छी तरह से फिट हैं।

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

चूंकि मैं इसे घड़ी और मौसम स्टेशन के कार्यों को चार्ज करने और अपडेट करने दोनों के लिए उपयोग करना चाहता था - मैंने यूएसबी केबल को छीन लिया, टीपी 4056 चार्जर और डेटा +/डेटा-वायर के माध्यम से सीधे Arduino नैनो के यूएसबी सॉकेट में बिजली के तारों को रूट किया। आप इसे पिछले अनुभागों में दिखाए गए योजनाबद्ध पर देख सकते हैं।

चरण 10: अंतिम विधानसभा

आखिरी सभा
आखिरी सभा
आखिरी सभा
आखिरी सभा
आखिरी सभा
आखिरी सभा

अब सब कुछ वापस मूल घड़ी में पैक करने का समय आ गया था। मैंने घटकों और मॉड्यूल को अलग करने के लिए सिकुड़ ट्यूब का इस्तेमाल किया। यहां तक कि Arduino भी सिकुड़ ट्यूब में लिपटा हुआ था।

प्रत्येक घटक कहाँ रखा गया था यह देखने के लिए पहली फ़ोटो पर होवर करें।

चरण 11: कोड

जैसा कि आप देख सकते हैं, घड़ी पूरी तरह से अंदर पैक है। इसने मेरे पास मौजूद पुरानी घड़ी की तुलना में कुछ अधिक परिष्कृत बनाने की अनुमति दी - यह देखते हुए कि निश्चित रूप से कुछ प्रोग्रामिंग कौशल हैं। मैंने शुरुआती कोड लिखा था लेकिन अपने दोस्त से कहा कि वह आगे आए और मेरी मदद करे।

अब तक, घड़ी के अलावा, ये ऐसे कार्य हैं जिनका यह प्रोजेक्ट पहले से ही समर्थन कर रहा है:

  • समय और दिनांक प्रदर्शन (साथ ही समय और एक ही स्क्रीन पर अलार्म का सक्रियण)
  • स्क्रीन अंधेरे की स्थिति में या जब आंदोलन का पता चलता है (प्रकाश के परिवर्तन के आधार पर)
  • मौसम पूर्वानुमान (धूप, बादल, बरसात)
  • तापमान, दबाव और आर्द्रता का प्रदर्शन (आर्द्रता के लिए यह इंगित करेगा कि क्या यह बहुत शुष्क है)
  • सेटिंग्स के लिए मेनू: अलार्म, बदलते समय, दिनांक प्रदर्शन को सक्षम / अक्षम करना, मौसम परिवर्तन ध्वनि सूचनाओं को सक्षम / अक्षम करना और शाही और मीट्रिक इकाइयों के बीच स्विच करना
  • अलार्म सेटिंग - चालू/बंद, समय सेट करना, मेलोडी सेट करना और/या सूचनाओं के लिए घंटी

नवीनतम कोड:

भविष्य में नई सुविधाओं के साथ कोड अपडेट होने जा रहा है इसलिए फर्मवेयर अपडेट के लिए वापस जांचना सुनिश्चित करें:-)

यदि आप Arduino की दुनिया में नए हैं, तो ये वे चरण हैं जिन्हें मैं करने की सलाह दूंगा:

  • अपने बोर्ड के लिए USB ड्राइवर स्थापित करें (जैसे CH340)
  • Arduino IDE स्थापित करें
  • इस परियोजना में प्रयुक्त पुस्तकालय स्थापित करें
  • गिटहब से डाउनलोड करें और माइक्रो यूएसबी केबल का उपयोग करके नवीनतम प्रोजेक्ट कोड को घड़ी पर अपलोड करें (आप मोबाइल फोन से एक का उपयोग कर सकते हैं)

पूर्वानुमान एल्गोरिथ्म निम्नलिखित है:

Arduino Nano को हर 12 मिनट में BME280 सेंसर से नया डेटा मिलता है। माप चक्र 3 घंटे है। 3 घंटे के बाद दबाव की निगरानी की सीमा (3 घंटे के दौरान अधिकतम और न्यूनतम मूल्य) वर्तमान सीमा और वर्तमान दबाव मूल्य के दौरान औसत मूल्यों के सापेक्ष बदल जाती है। हर घंटे वर्तमान दबाव मूल्य के साथ दबाव परिवर्तन की दिशा सहेजी जाती है। kPa इकाइयों का उपयोग पूर्वानुमान गणना के लिए किया जाता है।

नैनो की स्मृति सीमाओं के कारण पूर्वानुमान एल्गोरिथ्म को सरल बनाना पड़ा। लेकिन सरलीकरण के बावजूद, यह अगले 12-24 घंटों में वर्षा की भविष्यवाणी करने में सक्षम है, हालांकि पूर्वानुमान अब अधिक निराशावादी है - डिफ़ॉल्ट मान "बादल मौसम" है।

"सनी वेदर" - दबाव का वर्तमान मूल्य मानक से 7 अंक अधिक है, दबाव नहीं गिर रहा है और पिछले 3 घंटों के दौरान न्यूनतम और अधिकतम मूल्यों के बीच का अंतर 2 अंक से अधिक नहीं है।

संभावित वर्षा "बरसात का मौसम" - वर्तमान दबाव मानक से 15 अंक कम है और न्यूनतम और अधिकतम मूल्यों के बीच का अंतर 2 अंक से अधिक है या दबाव गिर रहा है और वर्तमान मूल्य और मानक के बीच का अंतर 3 - 30 अंक है।

पूर्वानुमान की गुणवत्ता में सुधार करने के लिए मुख्य कोड फ़ाइल में अपनी "ऊंचाई" को बदलने की अनुशंसा की जाती है। उदाहरण के लिए आप यहां अपनी ऊंचाई प्राप्त कर सकते हैं:

चरण 12: चरण-दर-चरण वीडियो

Image
Image

यदि मैंने ऊपर जो किया है उसका पालन करना मुश्किल था, तो यहां एक वीडियो संस्करण भी दिखाया गया है जिसमें सभी चरणों को दिखाया गया है।

चरण 13: अंतिम शब्द

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

सभी घटक कम कीमत के हैं और स्पार्कफुन/एलीएक्सप्रेस/ईबे/अमेज़ॅन पर उपलब्ध हैं।

मुझे आशा है कि यह ट्यूटोरियल आपके लिए दिलचस्प था और आभारी होंगे यदि आप क्लॉक प्रतियोगिता में मेरे पहले इंस्ट्रक्शनल का समर्थन कर सकते हैं।

घड़ियाँ प्रतियोगिता
घड़ियाँ प्रतियोगिता
घड़ियाँ प्रतियोगिता
घड़ियाँ प्रतियोगिता

घड़ियाँ प्रतियोगिता में उपविजेता

सिफारिश की: