विषयसूची:

एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल: 5 कदम
एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल: 5 कदम

वीडियो: एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल: 5 कदम

वीडियो: एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल: 5 कदम
वीडियो: Irregularities In IAY, House Hope Derailed 2024, नवंबर
Anonim
एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल
एआईवाई यूनिवर्सल आईआर रिमोट कंट्रोल

यह निर्देशयोग्य वर्णन करता है कि एआईवाई यूनिवर्सल इन्फ्रारेड रिमोट कंट्रोल कैसे बनाया जाता है। इसका उपयोग आपकी आवाज का उपयोग करके किसी भी टीवी, साउंडबार, डिजीबॉक्स, डीवीडी या ब्लरे प्लेयर को नियंत्रित करने के लिए किया जा सकता है।

मैं इसे सार्वभौमिक कहता हूं क्योंकि इसमें एक IR रिसीवर होता है जिसका उपयोग किसी भी रिमोट कंट्रोल से इन्फ्रारेड सिग्नल को रिकॉर्ड करने के लिए किया जा सकता है।

AIY प्रोजेक्ट IR सिग्नल को रिकॉर्ड और ट्रांसमिट करने के लिए LIRC प्रोग्राम का उपयोग करता है।

चरण 1: पीसीबी बनाएं

पीसीबी बनाओ
पीसीबी बनाओ
पीसीबी बनाओ
पीसीबी बनाओ

हिस्सों की सूची:

दो 940nm 5mm इन्फ्रारेड एलईडी एमिटर

एक TSOP38238 इन्फ्रारेड रिसीवर

एक 2n3904 ट्रांजिस्टर

एक १० ओम रोकनेवाला

वन वर्बार्ड

चार सिंगल कनेक्टर (वैकल्पिक - मैंने छह पिन कनेक्टर को सिंगल कनेक्टर में काटा)

AIY हैट से कनेक्ट करने के लिए केबल।

सुनिश्चित करें कि IR LED की पहली पंक्ति में लंबा पैर और दूसरी पर छोटा पैर है। दूसरी पंक्ति में लंबी लेग के साथ दूसरी एलईडी, और तीसरी पर शॉर्ट लेग।

ट्रांजिस्टर का आधार तीसरे पर होना चाहिए, चौथे पर संग्राहक और पांचवें पर उत्सर्जक होना चाहिए। सुनिश्चित करें कि रोकनेवाला का सपाट पक्ष कनेक्टर का सामना कर रहा है।

रोकनेवाला पंक्ति पाँच और पंक्ति आठ के बीच जाता है।

पंक्ति एक से पंक्ति सात को जोड़ने के लिए तार के एक छोटे टुकड़े का उपयोग करें।

IR रिसीवर को पंक्ति सात, आठ और नौ पर कनेक्ट करें।

कनेक्टर्स को एक, चार, आठ और नौ पंक्तियों में जोड़ें।

कनेक्टर हैं:

पंक्ति एक - +5v शक्ति

पंक्ति चार - ट्रांसमीटर संकेत

पंक्ति आठ - ग्राउंड

पंक्ति नौ - रिसीवर सिग्नल

चरण 2: AIY Hat से कनेक्ट करें

AIY Hat. से कनेक्ट करें
AIY Hat. से कनेक्ट करें
AIY Hat. से कनेक्ट करें
AIY Hat. से कनेक्ट करें

कनेक्टिंग चीजों को बहुत आसान बनाने के लिए मैंने अपने AIY पर हेडर पिन्स को मिलाया है।

सिग्नल के लिए मैंने जिन पिनों का उपयोग किया है वे सर्वो 0 (GPIO 26) और सर्वो 5 (GPIO 24) हैं। मैंने सर्वो पिन के ऊपर क्षैतिज पिन से +5v का भी उपयोग किया। मैंने सर्वो 0 के बगल में GND से मैदान लिया, लेकिन आप अपनी इच्छानुसार किसी भी मैदान का उपयोग कर सकते हैं।

उपयुक्त केबलों का उपयोग करते हुए, मैंने AIY टोपी को इस तरह बोर्ड से जोड़ा:

+5V से पंक्ति एक

सर्वो 0 (GPIO 26) से पंक्ति चार

जीएनडी से पंक्ति 8

सर्वो 5 (GPIO 24) से नौ पंक्ति तक।

चरण 3: एलआईआरसी स्थापित करें

यह मानते हुए कि आपने AIY को पहले ही सेट और टेस्ट कर लिया है:

हमें एलआईआरसी स्थापित करने की आवश्यकता है। मिर्जा इरवान उस्मान के इस बहुमूल्य निर्देश का पालन करें:

www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package

या एलेक्स बैन द्वारा एक वैकल्पिक निर्देश यहां पाया जा सकता है:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/

नोट: मेरे सेटअप के लिए मुझे यह सुनिश्चित करने की आवश्यकता है कि /boot/config.txt फ़ाइल में निम्नलिखित थे:

dtoverlay=lirc-rpi, gpio_in_pin=24, gpio_out_pin=26

चरण 4: अपने उपकरणों के लिए LIRC फ़ाइलें प्राप्त करें या बनाएं

यह अगला चरण lircd.conf फ़ाइल बनाता है जिसमें उन उपकरणों के रिमोट कंट्रोल के बारे में विवरण होता है जिनका आप उपयोग करना चाहते हैं।

इस फ़ाइल को बनाने के दो तरीके हैं:

1. यदि आप भाग्यशाली हैं, तो आप अपने डिवाइस के लिए एलआईआरसी पृष्ठों पर एक मौजूदा फ़ाइल पा सकते हैं

2. अगर आपको यह नहीं मिल रहा है, तो आपको आईआर रिसीवर और अपने रिमोट कंट्रोल का उपयोग करके एक फाइल रिकॉर्ड करने की आवश्यकता होगी।

चरण 1 के लिए, एलआईआरसी होम पेज पर जाएं और समर्थित उपकरणों की सूची देखें:

www.lirc.org/

यदि आप डिवाइस के लिए फ़ाइल ढूंढ सकते हैं, तो आपको फ़ाइल में जानकारी को lircd.conf फ़ाइल /etc/lirc में स्थानांतरित करने की आवश्यकता है

चूंकि मेरा एआईवाई हेडरलेस है, इसलिए मैं lirc.conf में परिवर्तन करने के लिए WINScP का उपयोग करता हूं।

आपको जो जानकारी चाहिए वह "रिमोट शुरू करें" से शुरू होती है और "एंड रिमोट" के साथ समाप्त होती है

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

यदि आपको अपने डिवाइस के लिए कोड नहीं मिल रहा है, तो आपको इसे रिकॉर्ड करना होगा।

LIRC का उपयोग करके प्रत्येक रिमोट कंट्रोल को रिकॉर्ड करने का तरीका जानने के लिए इस निर्देश का पालन करें:

www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/

एक बार जब आप पहला रिमोट कंट्रोल रिकॉर्ड कर लेते हैं, तो प्रक्रिया को तब तक दोहराएं जब तक कि आपके पास सभी रिमोट रिकॉर्ड न हो जाएं। फिर आप अपने द्वारा रिकॉर्ड किए गए सभी कोड के साथ lirc.conf फ़ाइल को अपडेट कर सकते हैं। मुझे अपने साउंडबार के लिए ऐसा करने की ज़रूरत थी।

चरण 5: अपने उपकरणों को नियंत्रित करने के लिए कोड AIY

AIY से IR ट्रांसमीटर को नियंत्रित करने के लिए, "assistant_library_with_local_commands_demo.py" फ़ाइल में आवश्यक परिवर्तन करें।

यह देखने के लिए कि आपका कोड काम कर रहा है या नहीं, आप स्टार्ट देव टर्मिनल से "assistant_library_with_local_commands_demo.py" चला सकते हैं।

यहां दिए गए निर्देशों का पालन करते हुए मैंने अपने एआईवाई को बूट अप पर स्वचालित रूप से शुरू कर दिया है:

aiyprojects.withgoogle.com/voice/#makers-guide-3-4--run-your-app-automatically

ध्यान रखें कि यदि आप अपना कोड बदलना चाहते हैं, तो आपको AIY को चलाना बंद करना होगा, और फिर इनका उपयोग करके इसे फिर से शुरू करना होगा:

सुडो सर्विस my_assistant स्टॉप

सुडो सर्विस my_assistant start

संलग्न कोड में मेरा वर्तमान कार्य कार्यक्रम है।

(ध्यान दें कि इस कोड में इंटरनेट रेडियो जैसी अतिरिक्त सुविधाएं भी हैं)।

कोड आवश्यक IR सिग्नल संचारित करने के लिए LIRC send_start और send_stop भेजने पर विविधताओं का उपयोग करता है। मैंने पाया है कि सिग्नल को शुरू करने और रोकने के बीच एक विराम देना आवश्यक है, और यह उपकरणों के बीच भिन्न हो सकता है (मेरे पैनासोनिक टीवी को स्काई बॉक्स की तुलना में लंबे सिग्नल की आवश्यकता है)। तो उदाहरण के लिए:

subprocess.call('irsend SEND_START mytv KEY_POWER', shell=True)

समय सो जाओ (0.5)

subprocess.call('irsend SEND_STOP mytv KEY_POWER', shell=True)

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

कई उपकरणों को संकेतों के संयोजन भेजना भी संभव है। इसलिए उदाहरण के लिए मेरे पास "सिस्टम ऑन" रूटीन है जो टीवी को पावर भेजता है, साउंडबार को पावर देता है, स्काई बॉक्स शुरू करता है और इसे बीबीसी 1 पर स्विच करता है।

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

हैप्पी एआईवाई आईआर रिमोट कंट्रोलिंग!

सिफारिश की: