- सामग्री की आवश्यकता:
- सर्किट आरेख:
- रास्पबेरी अजगर कार्यक्रम:
- रास्पबेरी पाई और टेलीग्राम बॉट के साथ एलईडी को नियंत्रित करना:
टेलीग्राम हमारे सभी मोबाइल नियंत्रण उद्देश्य के लिए रास्पबेरी पाई के साथ संयोजन करने के लिए एक इष्टतम अनुप्रयोग है। इसे बहुत अच्छा डेवलपर समर्थन मिला है और टेलीग्राम बॉट्स के प्रदर्शन को बढ़ाने के लिए बहुत सारी सुविधाओं को जल्द ही जारी करने की योजना बनाई जा रही है। हमारे पिछले ट्यूटोरियल में हमने सीखा कि कैसे हम रास्पबेरी पाई के लिए टेलीग्राम बॉट सेट कर सकते हैं और यह भी सीख सकते हैं कि इसके साथ चैट करें और चित्र, दस्तावेज़ और ऑडियो फ़ाइलें साझा करें।
अब, हम टेलीग्राम का उपयोग करके रास्पबेरी पिंस पर GPIO पिन को कैसे नियंत्रित कर सकते हैं, यह सीखकर हम अगले कदम पर आगे बढ़ेंगे, ताकि हम अपने बॉट के लिए कुछ हार्डवेयर सपोर्ट प्रदान करें। इस ट्यूटोरियल में हम रास्पबेरी पाई GPIO पिन से चार एल ई डी कनेक्ट करेंगे और टेलीग्राम पर प्राकृतिक भाषा (जैसे चैटिंग) का उपयोग करके उन्हें टॉगल करेंगे । दिलचस्प सही लगता है? हमें शुरू करने दो।
सामग्री की आवश्यकता:
- चार एलईडी (किसी भी रंग)
- रास्पबेरी पाई (इंटरनेट कनेक्शन के साथ)
- ब्रेड बोर्ड
- तारों को जोड़ना
पूर्व आवश्यक वस्तुएँ:
ट्यूटोरियल के साथ आगे बढ़ने से पहले सुनिश्चित करें कि आपका रास्पबेरी पाई इंटरनेट से जुड़ा है और आप अपने पाई पर पायथन प्रोग्राम चला सकते हैं। रास्पबेरी पाई पाई के साथ टेलीग्राम बॉट स्थापित करने का तरीका जानने के लिए पिछले ट्यूटोरियल को भी पढ़ें, क्योंकि मैं मान लूंगा कि आप प्रोजेक्ट के साथ आगे बढ़ने के लिए उस सामान से परिचित हैं।
यदि आप रास्पबेरी पाई के लिए नए हैं तो हमारे रास्पबेरी पाई परिचय लेख और अन्य रास्पबेरी पाई ट्यूटोरियल का पालन करें।
सर्किट आरेख:
रास्पबेरी पाई और टेलीग्राम एंड्रॉइड ऐप का उपयोग करके नियंत्रणों के लिए सर्किट आरेख चार एलईडी और कुछ कनेक्टिंग तारों से अधिक कुछ नहीं है। रास्पबेरी पाई GPIO पिन 3.3V TTL पर काम करने के बाद से हमें वर्तमान सीमित प्रतिरोधों की आवश्यकता नहीं होगी। नीचे दिए गए सर्किट का पालन करें और अपने एलईडी को कनेक्ट करें।
निम्न तालिका आपको चार एल ई डी के कनेक्शन के लिए पिन नंबर और जीपीआईओ नंबर निर्धारित करने में मदद करेगी।
एलईडी टर्मिनल |
पिन नम्बर |
GPIO नंबर |
ग्रीन एनोड |
पिन ३१ |
GPIO 6 |
रेड एनोड |
पिन ३३ |
GPIO 13 |
पीला एनोड |
पिन ३५ |
GPIO 19 |
सफेद एनोड |
पिन ३। |
GPIO 26 |
चारों का कैथोड |
पिन ३ 39 |
भूमि |
नीचे सर्किट आरेख है जिसमें चार एल ई डी ऊपर दी गई तालिका के अनुसार जुड़े हुए हैं:
एक बार आपके कनेक्शन के बाद आपका हार्डवेयर सेट-अप कुछ इस तरह दिखना चाहिए।
रास्पबेरी अजगर कार्यक्रम:
हार्डवेयर तैयार होने के बाद, हम पायथन प्रोग्राम के साथ आगे बढ़ सकते हैं। इस कार्यक्रम में हमें टेलीग्राम बॉट से भेजे गए डेटा (संदेश) को पढ़ना है और तदनुसार एलईडी को टॉगल करना है। इसे और अधिक स्वाभाविक बनाने के लिए, प्रत्येक वाक्य की जाँच करने और अपने प्रोग्राम के अंदर उन वाक्य को हार्ड कोड करने के बजाय हम शब्दों की जाँच कर सकते हैं और उसी के अनुसार आगे बढ़ सकते हैं।
इसलिए कार्यक्रम मुख्य रूप से दो शब्दों के लिए जाँच करेगा, वे चालू और बंद हैं। एक बार इन दो शब्दों में से किसी एक का पता लगाने के बाद, यह सफेद, पीले, हरे और लाल जैसे अन्य कीवर्ड की तलाश करेगा । संबंधित रंग एलईडी तभी टॉगल किया जाएगा जब शब्द का पता लगाया जाएगा। हम टेलीग्राम बॉट में एक संदेश भेजने के लिए पता लगाए गए शब्दों के लिए एक स्ट्रिंग भी अपडेट करेंगे।
पूरा कार्यक्रम इस पेज के नीचे पाया जा सकता है; बस नीचे मैंने कार्यक्रम को छोटे सार्थक खंडों में तोड़कर समझाया है।
इस कार्यक्रम को काम करने के लिए, हमें अपने रास्पबेरी पाई में डाउनलोड किए गए और आयात किए गए टेलीपोट की आवश्यकता है । हमारे पिछले ट्यूटोरियल में हमने पहले ही अपने रास्पबेरी पाई के अंदर टेलीपोर्ट डाउनलोड कर लिया है, इसलिए अब हमें इसे अपने प्रोग्राम में GPIO लाइब्रेरी के साथ आयात करना होगा जैसा कि नीचे दिखाया गया है।
आयात RPi.GPIO के रूप में GPIO आयात telepot से telepot.loop आयात MessageLoop
हम इस कार्यक्रम का उपयोग करके एलईडी रोशनी के लिए नियंत्रित करेंगे और एलईडी का रंग सफेद, पीला, लाल और हरा होगा। वे सर्किट आरेख में दिखाए गए पिन से जुड़े हुए हैं; आइए हम इन एल ई डी के लिए पिन नामों को उनके रंग के आधार पर परिभाषित करते हैं ताकि यह कार्यक्रम में उनका उपयोग करे।
सफेद = 26 पीला = 19 लाल = 13 हरा = 6
अगला कदम इन सभी एलईडी पिंस को आउटपुट पिंस के रूप में परिभाषित करना और उन्हें नीचे की पंक्तियों का उपयोग करके डिफ़ॉल्ट रूप से बंद करना परिभाषित करना होगा।
#LED व्हाइट GPIO.setup (सफ़ेद, GPIO.OUT) GPIO.output (सफ़ेद, 0) #Off शुरू में #LED येलो GPIO.setup (पीला, GPIO.OUT) GPIO.output (पीला, 0: # ओफ़ शुरू में #LED लाल GPIO.setup (लाल, GPIO.OUT) GPIO.output (लाल, 0) # प्रारंभिक रूप से #LED हरे GPIO.setup (हरा, GPIO.OUT) GPIO.output (हरा, 0) # प्रारंभ में देखें
जैसा कि हमने अपने पिछले ट्यूटोरियल में सीखा है कि रास्पबेरी बॉट द्वारा किए जाने वाले सभी कार्यों को फ़ंक्शन कार्रवाई के अंदर परिभाषित किया जाएगा। यहां हमें मोबाइल से भेजे गए संदेश को सुनने के लिए बॉट बनाना होगा, उसकी तुलना कुछ कीवर्ड से करनी होगी और उसी के अनुसार एलईडी को टॉगल करना होगा।
मोबाइल से भेजे जाने वाले प्रत्येक संदेश के लिए, एक चैट आईडी और कमांड होगी । यह चैट आईडी प्रोग्राम द्वारा प्रेषक को वापस जवाब देने के लिए आवश्यक है। तो हम चैट आईडी और संदेश को सेव करते हैं, जैसा कि नीचे दिखाया गया है।
chat_id = msg कमांड = msg
अब, हम जो कुछ भी फोन से भेजते हैं उसे वेरिएबल कमांड में स्ट्रिंग के रूप में सहेजा जाएगा । इसलिए, हमें इस चर में मुख्य शब्दों की जांच करनी होगी । पायथन में एक कमांड है जो यहां चीजों को आसान बनाती है। उदाहरण के लिए, यदि हमें यह जांचना है कि कमांड वेरिएबल में स्टोर किए गए स्ट्रिंग में "ऑन" शब्द मौजूद है या नहीं, तो हम नीचे दी गई लाइन का उपयोग कर सकते हैं।
यदि कमांड में 'ऑन' है:
इसी तरह हम सभी कीवर्ड की जांच करते हैं, एक बार जब हम "ऑन" प्राप्त करते हैं, तो हम यह जांचने के लिए आगे बढ़ते हैं कि उपयोगकर्ता ने किस रंग का उल्लेख किया है। यह समान कमांड द्वारा समान कीवर्ड की तुलना करके भी किया जाता है। हम संदेश नामक एक स्ट्रिंग को भी अपडेट करते हैं जिसे उपयोगकर्ता को स्थिति संदेश के रूप में वापस दिया जा सकता है।
if 'on' इन कमांड: संदेश = "चालू" यदि "कमांड में सफेद": संदेश = संदेश + "सफेद" GPIO.output (सफेद, 1) यदि कमांड में 'पीला': संदेश = संदेश + "पीला" GPIO.output (पीला, 1) यदि कमांड में 'लाल': संदेश = संदेश + "लाल" GPIO.output (लाल, 1) यदि कमांड में 'हरा': संदेश = संदेश + "हरा" GPIO.output (हरा, 1)) यदि कमांड में 'सभी': संदेश = संदेश + "सभी" GPIO.output (सफेद, 1) GPIO.output (पीला, 1) GPIO.output (लाल, 1) GPIO.output (हरा, 1) संदेश - संदेश + "प्रकाश (ओं)" telegram_bot.sendMessage (chat_id, संदेश)
जैसा कि ऊपर दिखाया गया है कि हम 'ग्रीन', 'व्हाइट', 'रेड', 'येलो' और 'ऑल' जैसे कीवर्ड्स की तलाश करते हैं और 'टर्न ऑन' उस विशेष एलईडी को अकेले देखते हैं। एक बार काम पूरा हो जाने के बाद हम उपयोगकर्ता को एक संदेश भेजते हैं कि अभी क्या हुआ है। एक ही विधि लाइट बंद करने के लिए इस्तेमाल किया जा सकता बंद अच्छी तरह से।
अगर कमांड में 'ऑफ': मैसेज = "टर्न ऑफ" यदि कमांड में 'व्हाइट': मैसेज = मैसेज + "व्हाइट" GPIO.output (व्हाइट, 0) अगर कमांड में 'येलो': मैसेज = मैसेज + "पीला" GPIO.output (पीला, 0) अगर कमांड में 'लाल' है: संदेश = संदेश + "लाल" GPIO.output (लाल, 0) यदि कमांड में 'हरा': संदेश = संदेश + "हरा" GPIO.output (हरा, 0)) यदि कमांड में 'सभी': संदेश = संदेश + "सभी" GPIO.output (सफेद, 0) GPIO.output (पीला, 0) GPIO.output (लाल, 0) GPIO.output (हरा, 0) संदेश - संदेश + "प्रकाश (ओं)" telegram_bot.sendMessage (chat_id, संदेश)
रास्पबेरी पाई और टेलीग्राम बॉट के साथ एलईडी को नियंत्रित करना:
अपने एल ई डी कनेक्ट करें और अजगर पर अपना कार्यक्रम लॉन्च करें। सुनिश्चित करें कि आपने अपने बॉट के लिए टोकन पता बदल दिया है । और अपनी इच्छानुसार कमांड टाइप करना शुरू करें। उदाहरण के लिए लाल और पीले प्रकाश को चालू करने के लिए आप निम्न में से किसी भी कमांड का उपयोग कर सकते हैं।
1. लाल और पीले रंग की रोशनी पर ध्यान दें
2. लाल और पीले रंग पर सही सिलाई
3. लाल और पीले रंग पर
4. कृपया डाल पर पीले और लाल प्रकाश
जैसा कि आप देख सकते हैं कि बॉट केवल कीवर्ड के लिए दिखता है और सेंटेंस में अन्य शब्दों को अनदेखा करेगा, इस तरह से आप इसे स्वाभाविक रूप से बोल सकते हैं। इस पृष्ठ के अंत में दिए गए वीडियो पर प्रोजेक्ट का पूरा काम किया जा सकता है ।
आगे बढ़ें! अपनी परियोजना के साथ खेलते हैं और मज़े करते हैं। आप इसे अब एक नए स्तर पर ले जा सकते हैं। दोनों ट्यूटोरियल के साथ संयुक्त रूप से हमारे पास दुनिया से कहीं भी अपने स्मार्ट फोन से किसी भी हार्डवेयर को नियंत्रित करने की शक्ति है और संदेश, ऑडियो, छवि और यहां तक कि दस्तावेज़ के रूप में हमारे रास्पबेरी पाई से भी इनपुट / परिणाम मिलते हैं। यदि आप एलईडी को रिले और एसी उपकरणों के साथ बदलते हैं, तो यह स्मार्ट फोन नियंत्रित होम ऑटोमेशन हो सकता है। तो, अपनी रचनात्मकता का उपयोग करें और अपनी खुद की शांत परियोजनाओं का निर्माण करें…
आशा है कि आपको परियोजना पसंद आई होगी और कुछ इसी तरह के निर्माण का आनंद लिया होगा। मुझे बताएं कि क्या आपको टिप्पणी अनुभाग के माध्यम से कोई समस्या है और मुझे आपकी मदद करने में खुशी होगी। अपने शांत विचार मेरे साथ साझा करें और हमें बताएं कि हम क्या बना सकते हैं।