Arduino: अलार्म घड़ी का निर्माण - यह कैसे काम करता है
इस व्यावहारिक टिप में, आप सीखेंगे कि कैसे Arduino के साथ एक अलार्म घड़ी का निर्माण किया जाए। यह सही कोड के साथ आसान है।
Arduino: अलार्म घड़ी का निर्माण - यह कैसे काम करता है
एक Arduino अलार्म घड़ी के लिए आपको एक बिजली की आपूर्ति, रिमोट कंट्रोल के साथ एक IR रिसीवर, एक बजर, एक DS3231 रीयल-टाइम मॉड्यूल, एक थर्मिस्टर, एक एलसीडी और निश्चित रूप से एक ब्रेडबोर्ड और जम्पर केबल के साथ एक Arduino की आवश्यकता होती है।
- पहले बिजली की आपूर्ति ब्रेडबोर्ड पर चारों ओर सही तरीके से करें और सुनिश्चित करें कि यह दोनों तरफ 5 वोल्ट पर सेट है।
- अवरक्त रिसीवर को प्लस और माइनस बार से कनेक्ट करें और 3 पिन करें।
- सक्रिय बजर को 13 पिन करने के लिए और जमीन (माइनस बार) से कनेक्ट करें।
- DS3231 मॉड्यूल प्लस और माइनस बार से भी जुड़ा हुआ है। इसके अलावा Arduino पर SDA को SDA और SCL को SCL से कनेक्ट करें।
- अब आपको थर्मिस्टर की आवश्यकता है, जो 5 वोल्ट से और एनालॉग 0 से 10 कोम रोकनेवाला के माध्यम से भी जुड़ा हुआ है।
- अंत में, आपको एलसीडी कनेक्ट करना होगा। K, से जुड़ा है - और A से +। D7 के माध्यम से पिन D4, Arduino पर 12 के माध्यम से पिन 9 से जुड़ते हैं। अब आपको E को पिन 8, RW को माइनस बार और RS को पिन 7 से जोड़ना है। पिन V0 को 10k पोटेंशियोमीटर से कनेक्ट करें, जो 5V और जमीन से जुड़ा है। अंत में, VDD को 5V और VSS को जमीन से जोड़ दें।
Arduino अलार्म घड़ी का कार्यक्रम
यदि आपने सब कुछ ठीक से सेट किया है, तो आप Arduino अलार्म घड़ी को प्रोग्राम कर सकते हैं। हमने इसके लिए एक छोटा सा नमूना कोड लिखा है:
- #include #include #include #include "IRremote.h" int tempPin = 0; DS3231 घड़ी; RTCDateTime dt; लिक्विड क्रिस्टल एलसीडी (7, 8, 9, 10, 11, 12); int रिसीवर = 3; IRrecv irrecv (रिसीवर); decode_results परिणाम; इंट अलार्म; बूलियन अलार्म_स्टेट = गलत; स्ट्रिंग घंटे; स्ट्रिंग गंतव्य_टाइम; स्ट्रिंग मिनट; स्ट्रिंग current_time; int बजर = 13; शून्य अनुवाद () {स्विच (परिणाम। परिणाम) {मामला 0xFFA25D: अलार्म_स्टेट =! अलार्म_लेट; तोड़; // पावर केस 0xFFE21D: ब्रेक; // FUNC / STOP मामला 0xFF629D: ब्रेक; // वीओएल + केस 0xFF22DD: ब्रेक; // फास्ट बैक केस 0xFF02FD: ब्रेक; // PAUSE मामला 0xFFC23D: ब्रेक; // फास्ट फॉरवर्ड मामला 0xFFE01F: ब्रेक; // नीचे मामला 0xFFA857: ब्रेक; // वीओएल- केस 0xFF906F: ब्रेक; // यूपी केस 0xFF9867: ब्रेक; // ईक्यू मामला 0xFFB04F: ब्रेक; // ST / REPT केस 0xFF6897: अलार्म = 0; (जोड़ने); तोड़; // 0 मामला 0xFF30CF: अलार्म = 1; (जोड़ने); तोड़; // 1 मामला 0xFF18E7: अलार्म = 2; (जोड़ने); तोड़; // 2 मामला 0xFF7A85: अलार्म = 3; (जोड़ने); तोड़; // 3 मामला 0xFF10EF: अलार्म = 4; (जोड़ने); तोड़; // 4 मामला 0xFF38C7: अलार्म = 5; (जोड़ने); तोड़; // 5 मामला 0xFF5AA5: अलार्म = 6; (जोड़ने); तोड़; // 6 मामला 0xFF42BD: अलार्म = 7; (जोड़ने); तोड़; // 7 मामला 0xFF4AB5: अलार्म = 8; (जोड़ने); तोड़; // 8 मामला 0xFF52AD: अलार्म = 9; (जोड़ने); तोड़; // 9 मामला 0xFFFFFFFF: ब्रेक; डिफ़ॉल्ट: ब्रेक; } देरी (500); } शून्य जोड़ें () {गंतव्य_टाइम + = स्ट्रिंग (अलार्म); } शून्य सेटअप () {pinMode (बजर, OUTPUT); lcd.begin (16, 2); clock.begin (); clock.setDateTime (__ DATE__, __TIME__); irrecv.enableIRIn (); } शून्य लूप () {int tempReading = analogRead (tempPin); डबल अस्थायी = लॉग (10000.0 * ((1024.0 / अस्थायी - 1))); tempK = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * tempK * tempK)) * tempK); फ्लोट टेम्पप = टेम्पप - २ tem३.१५; अस्थायी अस्थायी = (अस्थायी * 9.0) / 5.0 + 32.0; dt = clock.getDateTime (); lcd.setCursor (0, 0); lcd.print (clock.date प्रारूप ("dmY H: i: s", dt)); lcd.setCursor (0, 1); lcd.print (स्ट्रिंग (tempC) + "" + स्ट्रिंग ((चार) 223) + "C"); if (irrecv.decode (& results)) {translIR (); irrecv.resume (); } घंटे = clock.dateFormat ("एच", डीटी); मिनट = clock.dateFormat ("i", dt); current_time = घंटा + मिनट; अगर (करंट_टाइम == डेस्टिनेशन_टाइम && अलार्म_स्टेट == सच) {पिनमोड (बजर, हाई); } और {pinMode (बजर, LOW); } अगर (अलार्म_स्टैट == सच) {lcd.setCursor (10, 1); lcd.print ( "!"); } और {lcd.setCursor (10, 1); lcd.print (""); } अगर (डेस्टिनेशन_टाइम.लिफ्टिंग () == 4) {lcd.setCursor (११, १); lcd.print (destination_time); } और यदि (डेस्टी_टाइम.लिफ्ट () <4) {lcd.setCursor (11, 1); lcd.print ( "प्रकार"); } और {lcd.setCursor (11, 1); lcd.print ( "प्रकार"); डेस्टिनेशन_टाइम = ""; } देरी (1000); }
- युक्ति: इस कोड को अपने IDE में कॉपी करें और आवश्यकतानुसार इसे अनुकूलित करें। आप हमारी चित्र गैलरी में कोड लाइनों का विस्तृत विवरण पा सकते हैं।
अगले लेख में, हम बताएंगे कि आप Arduino के साथ GSM मॉड्यूल को कैसे नियंत्रित कर सकते हैं।