विषयसूची:

Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)
Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)

वीडियो: Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)

वीडियो: Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)
वीडियो: Top 10 Sensors for Arduino Projects And Their Uses 2024, जून
Anonim
Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना
Arduino के साथ इन्फ्रारेड सेंसर का उपयोग करना

इन्फ्रारेड (उर्फ आईआर) सेंसर क्या है?

एक आईआर सेंसर एक इलेक्ट्रॉनिक उपकरण है जो मानकों द्वारा परिभाषित विशिष्ट आवृत्ति रेंज में आईआर सिग्नल को स्कैन करता है और उन्हें अपने आउटपुट पिन (आमतौर पर सिग्नल पिन कहा जाता है) पर विद्युत संकेतों में परिवर्तित करता है। IR सिग्नल का उपयोग मुख्य रूप से कम दूरी (आमतौर पर कुछ मीटर) पर हवा पर कमांड ट्रांसमिट करने के लिए किया जाता है, जैसे कि आपने टीवी रिमोट कंट्रोल या अन्य समान इलेक्ट्रॉनिक उपकरणों पर पहले से ही काम किया है।

आईआर संचार प्रोटोकॉल

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

चरण 1: IR सेंसर कैसा दिखता है?

IR सेंसर कैसा दिखता है?
IR सेंसर कैसा दिखता है?
IR सेंसर कैसा दिखता है?
IR सेंसर कैसा दिखता है?
IR सेंसर कैसा दिखता है?
IR सेंसर कैसा दिखता है?

IR सेंसर अलग-अलग पैकेज पर उपलब्ध हैं। यहां आप IR रिसीवर के लिए कुछ विशिष्ट पैकेजिंग देख सकते हैं।

चरण 2: आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल

आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल
आईआर सेंसर ब्रेकआउट बोर्ड / मॉड्यूल

आप उन्हें eBay, Aliexpress या Amazon पर IR मॉड्यूल/ब्रेकआउट बोर्ड के रूप में भी खरीद सकते हैं। ऐसे मॉड्यूल आम तौर पर ऊपर वर्णित सेंसर में से एक को एक अच्छे ब्रेडबोर्ड अनुकूल पैकेज के साथ एक एलईडी के साथ शामिल करते हैं जो सेंसर को सिग्नल का पता लगाने पर फ्लैश करेगा। ऐसा करने से आप देखेंगे कि क्या कोई डेटा स्थानांतरित किया जा रहा है। मेरा सुझाव है कि आप इनमें से किसी एक मॉड्यूल से शुरुआत करें।

नोट: यदि आपके पास एक कच्चा IR सेंसर है, तो कुछ भी नहीं बदलेगा, सिवाय इसके कि आपको यह सुनिश्चित करने के लिए सेंसर की डेटाशीट की जाँच करनी चाहिए कि आप इसे सही तरीके से तार कर रहे हैं क्योंकि अन्यथा आपके पास एक गंध के साथ एक सुंदर नीला धुआँ हो सकता है जो एक के लिए चलेगा घंटा। आप जानते हैं कि मेरा क्या मतलब है;)

चरण 3: आवश्यक भाग और घटक

आवश्यक भाग और घटक
आवश्यक भाग और घटक

यहां आप उन घटकों की सूची पा सकते हैं जिनकी आपको इस ट्यूटोरियल को पूरा करने के लिए आवश्यकता होगी:

ईबे लिंक:

  • 1 x Arduino Uno:
  • रिमोट के साथ 1 एक्स आईआर सेंसर मॉड्यूल:
  • 4 x 220 ओम रेसिस्टर्स:
  • 4 एक्स एलईडी:
  • 8 x ड्यूपॉन्ट केबल:
  • 1 एक्स सोल्डरलेस ब्रेडबोर्ड:
  • 1 एक्स मिनी ब्रेडबोर्ड (वैकल्पिक):

Amazon.com लिंक:

  • 1 x Arduino Uno:
  • रिमोट के साथ 1 एक्स आईआर सेंसर मॉड्यूल:
  • १ एक्स सोल्डरलेस ब्रेडबोर्ड:
  • 4 x 220 ओम रेसिस्टर्स:
  • 4 एक्स एलईडी:
  • 8 x ड्यूपॉन्ट केबल:
  • 1 x मिनी ब्रेडबोर्ड (वैकल्पिक):

चरण 4: IR सेंसर को Arduino से कनेक्ट करना

IR सेंसर को Arduino से कनेक्ट करना
IR सेंसर को Arduino से कनेक्ट करना
IR सेंसर को Arduino से कनेक्ट करना
IR सेंसर को Arduino से कनेक्ट करना
IR सेंसर को Arduino से कनेक्ट करना
IR सेंसर को Arduino से कनेक्ट करना

Arduino के लिए IR सेंसर कनेक्शन सेट करना बहुत सरल है। VCC और GND पिन के अलावा, सेंसर में केवल एक आउटपुट पिन होता है जिसे Arduino के किसी एक डिजिटल पिन से जोड़ा जाना चाहिए। इस मामले में यह पिन 13 से जुड़ा है।

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

चरण 5: रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें

रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें
रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें
रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें
रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें
रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें
रिमोट पर प्रत्येक कुंजी के अनुरूप कोड खोजें

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

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

आप मेरे Arduino वेब संपादक पर ir-key-code-logger पर साझा किए गए वास्तविक स्रोत कोड तक भी पहुंच सकते हैं।

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

चरण 6: आईआर रिमोट का उपयोग करके एलईडी के एक सेट को नियंत्रित करें

IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें
IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें
IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें
IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें
IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें
IR रिमोट का उपयोग करके LED के एक सेट को नियंत्रित करें

अब जब हमारे पास प्रत्येक बटन के लिए एक कोड है, तो यह उस तरीके पर ध्यान केंद्रित करने का समय है जिस तरह से हम उनका उपयोग कर सकते हैं। आम तौर पर आप दीपक को चालू या बंद करने, रोबोट को विशिष्ट दिशा में ले जाने, एलसीडी/ओएलईडी स्क्रीन पर कुछ प्रदर्शित करने आदि जैसे कुछ करने के लिए Arduino को आदेश भेजने के लिए आईआर रिमोट का उपयोग करते हैं। यहां हम एक सरल का उपयोग करके प्रक्रिया को प्रदर्शित करने का प्रयास करते हैं। विभिन्न रंगों में 4 एलईडी से युक्त सर्किट। हम उनमें से प्रत्येक को IR रिमोट के एक समर्पित बटन द्वारा चालू या बंद करना चाहते हैं। जैसा कि आप योजनाबद्ध पर देख सकते हैं, आपको Arduino को निम्न तरीके से LED और सेंसर से कनेक्ट करना होगा:

Arduino GND -> IR सेंसर GND।

Arduino VCC -> IR सेंसर VCC।

Arduino 13 -> IR सेंसर सिग्नल आउटपुट।

Arduino 2 -> ब्लू एलईडी का एनोड (नीली एलईडी का छोटा पिन)

Arduino 3 -> ग्रीन एलईडी का एनोड (ग्रीन एलईडी का छोटा पिन)

Arduino 4 -> पीली एलईडी का एनोड (पीली एलईडी का छोटा पिन)

Arduino 5 -> लाल एलईडी का एनोड (लाल एलईडी का छोटा पिन)

Arduino GND -> 220 ओम रोकनेवाला (एल ई डी का लंबा पिन) के माध्यम से सभी एल ई डी का कैथोड

आप इस सर्किट से संबंधित कोड संलग्न फ़ाइल में या मेरे Arduino वेब संपादक पर ir-led-control पर पा सकते हैं।

चरण 7: समस्या निवारण

अपना प्रोजेक्ट सेट करते समय और चरणों का पालन करते हुए आप कई अजीब स्थितियों का सामना कर सकते हैं। यहां कुछ सामान्य त्रुटियों की सूची दी गई है जो आपको IR सेंसर के साथ काम करते समय मिल सकती हैं।

कुंजी दबाते समय FFFFFF प्राप्त करना

एक बटन दबाते समय आप देख सकते हैं कि अधिकांश समय यह FFFFFF जैसे कोड की रिपोर्ट करता है। यह तब होता है जब आप किसी बटन को दबाते हैं और उसे थोड़ी देर के लिए पकड़ते हैं, यहां तक कि थोड़े समय के लिए भी। परिदृश्य यह है कि जब आप शुरू में बटन दबाते हैं, तो IR रिमोट बटन कोड भेजता है और जब तक आप बटन को दबाए रखते हैं, यह FFFFFF भेजने को दोहराता है जिसका अर्थ है कि उपयोगकर्ता अभी भी हाल ही में रिपोर्ट किए गए बटन को दबा रहा है। यह ठीक रहेगा। आप बस उन्हें छोड़ सकते हैं। वास्तविक कोड वह है जो आपको सीरियल मॉनिटर पर FFFFFF से ठीक पहले मिला था।

IR सेंसर बिल्कुल भी प्रतिक्रिया नहीं करता है और लगता है कि यह गर्म हो रहा है

बिजली काट दो!!! यदि आप सुनिश्चित हैं कि कुंजी कोड लकड़हारा स्केच सही है, तो समस्या आपके तारों के गलत सेटअप के कारण हो सकती है। मेरे साथ जो परिदृश्य हुआ वह यह था कि मेरे आईआर मॉड्यूल (बोर्ड से जुड़ा हुआ) के लिए मैंने वीसीसी और जीएनडी को विपरीत तरीके से जोड़ा था (मेरे हुकअप तारों के लिए उचित रंगों का उपयोग नहीं करने के कारण)। ऐसा करने से सेंसर कंपोनेंट जल गया और एक अच्छा नीला धुआँ उठ गया। मैंने कच्चे IR सेंसर का एक पैकेट खरीदा और इसे बदलने की कोशिश की और अब यह एक आकर्षण की तरह काम करता है:)। दुर्भाग्य से मैंने वही गलती की जब मैं कच्चे आईआर सेंसर के साथ परीक्षण कर रहा था और इस बार कुछ भी नहीं हुआ सिवाय इसके कि सेंसर गर्म हो गया। इसलिए हमेशा बिजली चालू करने से पहले सर्किट की जांच करें!

कभी-कभी सेंसर एक ऐसे कोड का पता लगाता है जिसे मैंने पहले कभी नहीं देखा है

यह सबसे आम मुद्दों में से एक है। यह निम्न कारणों में से एक के कारण सबसे अधिक संभावना है:

आप अपने IR रिमोट को सीधे सेंसर की ओर नहीं दिखा रहे हैं

इससे कुछ नए कोड (ज्यादातर लंबे कोड) होंगे जो आपको पहले कभी प्राप्त नहीं हुए हैं और आमतौर पर आपके पास पहले से मौजूद कोड की लंबाई से मेल नहीं खाते हैं। इसलिए याद रखें कि रिमोट को हमेशा अपने सेंसर की ओर रखें।

आप एक सस्ते IR रिमोट का उपयोग कर रहे हैं (जैसा कि मैंने इस ट्यूटोरियल में उपयोग किया है)

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

मुझे कैसे पता चलेगा कि लॉग किया गया कोड कचरा नहीं है

कोड आमतौर पर हेक्साडेसिमल प्रारूप में प्रस्तुत किए जाते हैं। यदि आप उन्हें संबंधित बाइनरी मान में परिवर्तित करते हैं, तो आप देखेंगे कि अंतिम बाइट का बाइनरी प्रतिनिधित्व बाइट का निषेध है जो उससे पहले आता है। यदि आप यह जानते हैं, तो आप यह सुनिश्चित करने के लिए अपने कोड में यह जांच कर सकते हैं कि आपको जो कोड प्राप्त हुआ है वह वास्तव में मान्य है या नहीं। उदाहरण के तौर पर, यदि आपको FF7A85 मिला है तो इसका बाइनरी प्रतिनिधित्व नीचे दिया जाएगा:

1111 1111 0111 1010 1000 0101

बाएं से दाएं, 4 अंकों का प्रत्येक बैच मूल हेक्साडेसिमल संख्या में एक वर्ण का प्रतिनिधित्व करता है। जैसा कि आप देख सकते हैं, ७ के संगत बैच ०१११ है और ८ के संगत बैच १००० है जो इसका सटीक निषेध है। निषेध से मेरा मतलब है कि सभी 0s 1s होंगे और सभी 1s को 0s से बदल दिया जाएगा। अगले ए (1010) और 5 (0101) के लिए भी यही सच है।

चरण 8: आगे क्या करना है?

अब आपकी बारी है। यह देखना आपकी कल्पना पर निर्भर है कि आप अपने हाथ में इस छोटे से साधारण सेंसर के साथ क्या कर सकते हैं। शुरू करने के लिए यहां कुछ विचार दिए गए हैं:

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

टिप्पणियों पर मुझे बताएं कि आईआर रिमोट का उपयोग करके आप क्या करेंगे (या आप पहले ही कर चुके हैं)।

सिफारिश की: