विषयसूची:
- आपूर्ति
- चरण 1: कनेक्शन
- चरण 2: कार्यक्रम बनाना
- चरण 3: कोड जोड़ना
- चरण 4: USART. जोड़ना
- चरण 5: कोड चलाना
- चरण 6: संवेदनशीलता बदलें
- चरण 7: अपनी पसंद की कोई भी चीज़ स्विच करें
वीडियो: क्लैप-ऑन स्विच: 7 कदम (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
एक रिश्तेदार ने मुझसे एक बार पूछा कि क्या मैं एक ऐसा स्विच बना सकता हूं जो ताली बजाने के लिए प्रतिक्रिया करता है। इसलिए मैंने एक प्रोजेक्ट बनाने के लिए कुछ सामान का ऑर्डर दिया है और एक इंस्ट्रक्शनल बनाने का फैसला किया है ताकि हर किसी के पास एक भयानक स्विच हो सके।
माइक्रोकंट्रोलर इस परियोजना का दिमाग है। एक ध्वनि संवेदक माइक्रोकंट्रोलर से जुड़ा होता है, ध्वनि का पता चलने पर सेंसर एनालॉग डेटा भेज रहा है। माइक्रोकंट्रोलर को ध्वनि में बड़े अंतर का पता लगाने के लिए प्रोग्राम किया गया है। जब एक उच्च पर्याप्त अंतर का पता लगाया जाता है, जिसका अर्थ है ताली, माइक्रोकंट्रोलर रिले को एक संकेत भेजता है। रिले स्विच करता है और प्रकाश चालू होता है। दूसरी बार ताली बजाने पर फिर से लाइट बंद हो जाएगी।
आपूर्ति
भौतिक सामान:
- प्रोग्रामिंग के लिए केबल के साथ 1x ATmega328P Xplained मिनी
- 1x 5v रिले मॉड्यूल 1-चैनल (KY-019 या समान)
- 1x साउंड सेंसर मॉड्यूल (KY-038 या समान)
- 1x ब्रेडबोर्ड
- 6x पुरुष-पुरुष जम्पर तार
- कॉर्ड के साथ 1x लाइट सॉकेट (या कोई अन्य डिवाइस जिसे आप चालू करना चाहते हैं)
- 1x लाइटबल्ब
- 1x रोकनेवाला* (मैं 220 ओम का उपयोग करता हूं)
- 1 एक्स एलईडी *
सॉफ्टवेयर डाउनलोड):
- एटमेलस्टूडियो 7.0(https://www.microchip.com/mplab/avr-support/atmel-studio-7)
- पुट्टी (www.putty.org)*
* परीक्षण उद्देश्यों के लिए
चरण 1: कनेक्शन
चित्र में दिखाए अनुसार सभी तारों को कनेक्ट करें।
चरण 2: कार्यक्रम बनाना
मुझे सी में कोड करना पसंद है इसलिए यह प्रोजेक्ट सी में लिखा गया है।
यदि आपने अभी तक आवश्यक सॉफ़्टवेयर डाउनलोड और इंस्टॉल नहीं किया है, तो इसे अभी डाउनलोड और इंस्टॉल करें।
अब इन अगले चरणों का पालन करें:
- एटमेलस्टूडियो खोलें।
- "फाइल" -> "नया" -> "प्रोजेक्ट" पर क्लिक करें।
- "जीसीसी सी निष्पादन योग्य परियोजना" पर क्लिक करें। अपने प्रोजेक्ट को स्टोर करने के लिए एक नाम और स्थान दें। ओके पर क्लिक करें"।
- ATmega328P खोजें। "ATmega328P" -> "ओके" पर क्लिक करें।
- मुख्य प्रोग्राम को खोलने के लिए "main.c" पर सॉल्यूशन एक्सप्लोरर में क्लिक करें।
चरण 3: कोड जोड़ना
main.c. में पहले से मौजूद कोड को डिलीट करें
निम्नलिखित कोड को main.c. में कॉपी और पेस्ट करें
#F_CPU 16000000 परिभाषित करें
#include #include #include #include "usart.h" #define MINIMALVALUE 5 void InitADC(); uint16_t ReadADC (uint8_t ADCchannel); डबल वैल1, वैल2; int main(void) {// USART USART_init(9600) को इनिशियलाइज़ करें; USART_putstr ("#USART init\n"); // ADC InitADC () को इनिशियलाइज़ करें; USART_putstr ("#ADC init\n"); // PORTC आउटपुट का PC1 पिन, बाकी इनपुट। डीडीआरसी = 0b00000010; // प्रारंभिक मान को PORTC कम पर सेट करें। PORTC = 0b00000000; जबकि (१) {// पोटेंशियोमीटर मान पढ़ना // वैल १ वैल १ में रीड वैल्यू और स्टोर = रीडएडीसी (०); _देरी_एमएस(1); // वैल २ वैल २ = रीडएडीसी (०) में स्टोर में अगला मूल्य पढ़ें; चार स्ट्र [10]; // ReadADC () पूर्णांकों में मान वापस देता है। यदि हम डिबग करना चाहते हैं या पोटीन पर मान देखना चाहते हैं, // मान को वर्णों में बदलने की आवश्यकता है ताकि USART इसे प्रिंट कर सके। इटोआ (वैल 1, स्ट्र, 10); USART_putstr (str); USART_putstr ("\ n"); // यदि 2 मानों में एक निश्चित अंतर है। एक ध्वनि का पता लगाया जाता है और एक पोर्ट स्विच करता है। // MINIMALVALUE को बदला जा सकता है, इसे बढ़ाने से यह कम संवेदनशील हो जाएगा। घटाना इसे और अधिक संवेदनशील बना देगा यदि(val1-val2 > MINIMALVALUE || val2-val1 > MINIMALVALUE) { PORTC ^= 0b00000010; // यूसी _delay_ms (200) पर प्रकाश; } } } शून्य InitADC () {// चुनें Vref=AVcc ADMUX |= (1<<REFS0); // प्रीस्कूलर को 128 पर सेट करें और ADC ADCSRA |= (1<<ADPS2)|(1<<ADPS1)|(1<<ADPS0)|(1<<ADEN) को सक्षम करें; } uint16_t ReadADC(uint8_t ADCchannel) {// सुरक्षा मास्क के साथ ADC चैनल का चयन करें ADMUX = (ADMUX और 0xF0) | (एडीसीचैनल और 0x0F); // एकल रूपांतरण मोड ADCSRA |= (1<<ADSC); // एडीसी रूपांतरण पूरा होने तक प्रतीक्षा करें (एडीसीएसआरए और (1<<एडीएससी)); वापसी एडीसी; }
चरण 4: USART. जोड़ना
USART एक सीरियल संचार प्रोटोकॉल है जिसका उपयोग माइक्रोकंट्रोलर पर किया जा सकता है। मैं इसे सेंसर से एनालॉग डेटा देखने के लिए माइक्रोकंट्रोलर पर उपयोग करता हूं।
USART पहले से ही सही ढंग से प्रोग्राम किया गया है, जिसमें एक शीर्षलेख (.h) और स्रोत (.c) फ़ाइल है। 2 फ़ाइलें डाउनलोड करें और उन्हें AtmelStudio में अपने प्रोग्राम में जोड़ें।
समाधान एक्सप्लोरर में प्रोजेक्ट नाम पर राइट-क्लिक करें। "जोड़ें" -> "मौजूदा आइटम …" पर क्लिक करें और 2 डाउनलोड की गई फ़ाइलों का चयन करें।
चरण 5: कोड चलाना
माइक्रोकंट्रोलर को कंप्यूटर से कनेक्ट करें। अपने कंप्यूटर पर "डिवाइस मैनेजर" खोजें और इसे खोलें। "पोर्ट (COM और LPT)" देखें और याद रखें कि COM-पोर्ट माइक्रोकंट्रोलर चालू है।
PuTTY खोलें और "सीरियल" पर क्लिक करें, माइक्रोकंट्रोलर का COM-पोर्ट टाइप करें और "ओपन" पर क्लिक करें। एक टर्मिनल पॉप अप होता है, इसे अभी के लिए छोड़ दें।
माइक्रोकंट्रोलर प्रोग्रामिंग के लिए सही टूल का चयन करने के लिए AtmelStudio पर वापस जाएं।
- हैमर टूल पर क्लिक करें।
- "mEDBG*ATML" डिबगर/प्रोग्रामर चुनें।
- इंटरफ़ेस "डीबगवायर" चुनें।
- "डिबगिंग के बिना शुरू करें" पर क्लिक करें।
कार्यक्रम का निर्माण और लेखन होगा।
जब प्रोग्राम सही ढंग से चलता है तो आपको पुटी में पूर्णांक मान दिखाई देंगे। स्क्रूड्राइवर का उपयोग करके मैं सेंसर पर स्क्रू घुमाकर पुटी में देखे गए मान को बदल सकता हूं। मेरा सेंसर स्क्रू को पूरी तरह घुमाते समय 0 से 1000 तक मान देता है। मैं पेंच को कुल मूल्य के १००(१०%) में बदल रहा हूँ। मुझे पता चला है कि यह मेरे लिए काम करता है।
चरण 6: संवेदनशीलता बदलें
प्रकाश के चालू होने पर संवेदनशीलता को समायोजित करने के लिए आप 2 विकल्पों का उपयोग कर सकते हैं, लेकिन दोनों में से किसी एक को नहीं चुनें:
- सेंसर पेंच बदलें;
- कोड मान बदलें।
मैं विकल्प 2 का उपयोग करता हूं। MINIMALVALUE को बढ़ाने से यह कम संवेदनशील हो जाएगा, घटने से यह अधिक संवेदनशील हो जाएगा।
#define MINIMALVALUE 5
चरण 7: अपनी पसंद की कोई भी चीज़ स्विच करें
चेतावनी: उच्च वोल्टेज स्विच करते समय देखें
जब आप सेंसर की संवेदनशीलता से खुश होते हैं तो आप सर्किट को बदल सकते हैं। ऊपर की छवि की तरह सर्किट को बदलें। अब आप अपनी पसंद की कोई भी चीज़ स्विच कर सकते हैं!
सिफारिश की:
डबल क्लैप एलईडी स्विच: 3 कदम
डबल क्लैप एलईडी स्विच: यह क्या करता है आबिद की संपत्ति का उपयोग करते हुए, मैंने एक Arduino लियोनार्डो, एक ब्रेडबोर्ड, कुछ केबल, एक साधारण माइक्रोफोन और एक एलईडी का उपयोग करके एक डबल क्लैप एलईडी लाइट स्विच बनाया। जब आप दो बार ताली बजाते हैं, तो एलईडी चालू हो जाती है। दो बार फिर से ताली बजाएं, और एलईडी लाइट बुझ जाएगी
ब्लूटूथ रिमोट नियंत्रित लाइट स्विच -- रेट्रोफिट। लाइट स्विच स्टिल वर्क्स, नो एक्स्ट्रा राइटिंग: 9 स्टेप्स (चित्रों के साथ)
ब्लूटूथ रिमोट नियंत्रित लाइट स्विच -- रेट्रोफिट। लाइट स्विच स्टिल वर्क्स, नो एक्स्ट्रा राइटिंग.: अपडेट २५ नवंबर २०१७ - इस प्रोजेक्ट के हाई पावर संस्करण के लिए जो किलोवाट लोड को नियंत्रित कर सकता है, हाई पावर लोड के लिए रेट्रोफिट बीएलई कंट्रोल देखें - कोई अतिरिक्त वायरिंग की आवश्यकता नहीं है अपडेट १५ नवंबर २०१७ - कुछ बीएलई बोर्ड / सॉफ्टवेयर स्टैक डेली
ब्लूटूथ क्लैप स्विच .: 3 चरण (चित्रों के साथ)
ब्लूटूथ क्लैप स्विच.: पुराने ब्लूटूथ स्पीकर का पुन: उपयोग करने का यह एक सस्ता तरीका है। यह DIY डिवाइस है जो मोबाइल में इंस्टॉल किए गए सॉफ़्टवेयर में ताली बजाकर लाइट या सिटी वोल्टेज की किसी भी चीज़ को चालू या बंद करने में सक्षम है। आपको जो सामान चाहिए:। Arduino बोर्ड 5v रिले किसी भी पुराने ब्लूटूथ
एक स्विच और विसुइनो के साथ एलईडी के 3 बैंकों को स्विच करना: 9 कदम (चित्रों के साथ)
एक स्विच और विसुइनो के साथ एलईडी के 3 बैंकों को स्विच करना: यह परियोजना एक प्रयोग से निकली जिसे मैं आजमाना चाहता था, मैं देखना चाहता था कि डॉलर के बिल और सुरक्षा जांच के विभिन्न हिस्सों को देखने के लिए कितनी यूवी प्रकाश की आवश्यकता थी। मुझे इसे बनाने में बहुत मज़ा आया और मैं इन निर्देशों को यहाँ साझा करना चाहता था। चीज़ें आप
छाता क्लैंप और मॉडलिंग लाइट के साथ घर का बना स्टूडियो स्ट्रोब रिग: 6 कदम (चित्रों के साथ)
अम्ब्रेला क्लैंप और मॉडलिंग लाइट के साथ होममेड स्टूडियो स्ट्रोब रिग: मैं ज्यादातर समय टूट जाता हूं लेकिन मैं हमेशा कुछ स्टूडियो स्ट्रोब रखना चाहता हूं ताकि मैं पोर्ट्रेट आसानी से कर सकूं लेकिन लागत मेरे लिए पहुंच से बाहर है। सौभाग्य से मुझे पता चला कि एक क्लैंप कैसे बनाया जाता है जो गर्म जूते के स्ट्रोब का उपयोग करता है (जिन्हें आप टी पर रख सकते हैं