- रास्पबेरी पाई के साथ 16x2 एलसीडी कनेक्ट करना:
- ब्लूटूथ संचार के लिए आवश्यक संकुल स्थापित करना:
- ब्लूटूथ पर रास्पबेरी पाई के साथ युग्मन उपकरण:
- सर्किट आरेख:
- Android ऐप BlueTerm का उपयोग करते हुए एलसीडी पर वॉयस टाइपिंग:
आपको वॉयस टाइपिंग से परिचित होना चाहिए, जो आमतौर पर कंप्यूटर और मोबाइल फोन में उपयोग किया जाता है, जहां आप इसे बोलकर किसी भी शब्द को टाइप कर सकते हैं। वॉयस टाइपिंग विकलांग व्यक्ति या जो कोई भी व्यक्ति तेजी से टाइप करना चाहता है, उसके लिए बहुत उपयोगी है। इसलिए आज हम 16x2 एलसीडी डिस्प्ले पर समान लागू कर रहे हैं, जहां एलसीडी पर ध्वनि पाठ प्रदर्शित किया जाएगा । यहां हमने 16x2 एलसीडी का उपयोग किया है, लेकिन यह सेटअप किसी भी संदेश को प्रसारित करने के लिए बड़े डिस्प्ले के साथ कई स्थानों पर स्थापित किया जा सकता है, जैसे हवाई अड्डों, मॉल, कार्यालयों आदि पर।
इस परियोजना में हम एंड्रॉइड ऐप (ब्लूटर्म) के माध्यम से Google वॉइस कीबोर्ड का उपयोग करके इनपुट आवाज़ प्रदान करेंगे और रास्पबेरी पाई का उपयोग करके 16x2 एलसीडी पर टेक्स्ट प्रिंट करेंगे । यहां हम वायरलेस ब्लूटूथ माध्यम का उपयोग करके 16x2 एलसीडी पर टेक्स्ट टाइप करेंगे और रास्पबेरी पाई के साथ यूएसबी ब्लूटूथ डोंगल का उपयोग करेंगे। तो मूल रूप से हमें रास्पबेरी पाई के साथ 16x2 एलसीडी इंटरफ़ेस की आवश्यकता है और मोबाइल फोन द्वारा भेजे गए डेटा को प्राप्त करने के लिए रास्पबेरी पाई में ब्लूटूथ सेटअप करें। हमने पहले से ही रास्पबेरी पाई के साथ एलसीडी को इंटरफेर किया और रास्पबेरी पाई के साथ ब्लूटूथ पर एक ट्यूटोरियल लिखा, आप उन्हें जांच सकते हैं।
रास्पबेरी पाई के साथ 16x2 एलसीडी कनेक्ट करना:
इससे पहले कि हम ब्लूटूथ सेटअप के साथ आगे बढ़ें, पहले हम रास्पबेरी पाई के साथ 16x2 एलसीडी इंटरफेस करेंगे । यहाँ इस परियोजना में हमने रास्पबेरी पाई के साथ 16x2 एलसीडी को बदलने के लिए एक बाहरी प्रवेश पुस्तकालय का उपयोग किया है, जिसके उपयोग से आपको एलसीडी ड्राइव करने के लिए कोड की कई पंक्तियों को लिखने की आवश्यकता नहीं है और आप सीधे एलसीडी पर सिर्फ एक लाइन का उपयोग करके प्रिंट कर सकते हैं कोड। हालाँकि यह लाइब्रेरी Adafruit द्वारा बनाई गई है लेकिन इसका उपयोग किसी भी LCD मॉड्यूल के लिए किया जा सकता है जिसमें HD44780 कंट्रोलर है। अगर आप किसी बाहरी लाइब्रेरी का उपयोग किए बिना एलसीडी कनेक्ट करना चाहते हैं तो आप हमारे पिछले ट्यूटोरियल्स को एलसीडी को 8-बिट मोड में और एलसीडी को 4-बिट मोड में इंटरफेस करने के लिए चेक कर सकते हैं।
Adafruit Library का उपयोग करने के लिए, हमें पहले इसे नीचे दिए गए आदेशों का उपयोग करके इंस्टॉल करना होगा । पहला कमांड आपके रास्पबेरी पाई पर चार्लसीडी रिपॉजिटरी (Adafruit द्वारा) को क्लोन करेगा, दूसरा कमांड आपको उस डाउनलोड की गई डायरेक्टरी के अंदर ले जाएगा और अंत में हमें लाइब्रेरी को स्थापित करने के लिए, Adafruit_Python -CharLCD डायरेक्टरी के अंदर, setup.py स्क्रिप्ट को निष्पादित करने की आवश्यकता है।
git क्लोन क्लोन
अब 16x2 एलसीडी के लिए पुस्तकालय स्थापित किया गया है और आप नीचे दिए गए लाइन का उपयोग करके अपने अजगर कार्यक्रम में सिर्फ इस पुस्तकालय को आयात करके अपने कार्यों का उपयोग कर सकते हैं:
एलसीडी के रूप में Adafruit_CharLCD आयात करें
'उदाहरण' फ़ोल्डर के अंदर कुछ उदाहरण स्क्रिप्ट हैं जो लाइब्रेरी फ़ोल्डर (Adafruit_Python_CharthCD) में मौजूद हैं। आप char_lcd.py उदाहरण स्क्रिप्ट चलाकर सेटअप का परीक्षण कर सकते हैं । लेकिन इससे पहले, आपको एलसीडी पिन को रास्पबेरी पाई से कनेक्ट करने की आवश्यकता है जैसा कि अगले भाग में सर्किट आरेख में नीचे दिया गया है।
आप रास्पबेरी पाई के कुछ अन्य GPIO पिन के साथ एलसीडी को भी कनेक्ट कर सकते हैं, आपको केवल नीचे दिए गए अपने अजगर कार्यक्रम में सही इंटरफेसिंग पिन का उल्लेख करने की आवश्यकता है। रास्पबेरी पाई GPIO पिन के बारे में अधिक जानें यहाँ।
# रास्पबेरी पाई पिन सेटअप lcd_rs = 18 lcd_en = 23 lcd_d4 = 24 lcd_d5 = 16 lcd_d6 = 20 lcd_d7 = 21 lcd_back7 = 2
अब आप सीधे एलसीडी को नियंत्रित करने के लिए Adafruit Library द्वारा प्रदान किए गए कार्यों का उपयोग कर सकते हैं । कुछ कार्य नीचे दिए गए हैं; आप उदाहरण स्क्रिप्ट में और अधिक जानकारी प्राप्त कर सकते हैं:
- lcd.message (संदेश) = एलसीडी पर पाठ मुद्रित करने के लिए।
- lcd.clear () = एलसीडी को साफ़ करने के लिए।
- lcd.set_cursor (col, row) = कर्सर को कॉलम और रो पर किसी भी स्थिति में ले जाएं।
- lcd.blink (True) = कर्सर को ब्लिंक करने के लिए (सही या गलत)
- lcd.move_left () = कर्सर को बाईं ओर एक स्थिति में ले जाने के लिए।
- lcd.move_right () = कर्सर को एक स्थान पर दाईं ओर ले जाने के लिए।
अब हम अपने रास्पबेरी पाई को ब्लूटूथ का उपयोग करके एंड्रॉइड स्मार्ट फोन से जोड़ेंगे।
ब्लूटूथ संचार के लिए आवश्यक संकुल स्थापित करना:
यहां हम रास्पबेरी 2 पाई मॉडल बी का उपयोग कर रहे हैं जिसमें ब्लूटूथ इनबिल्ट नहीं है, इसलिए हम रास्पबेरी पाई में ब्लूटूथ संचार स्थापित करने के लिए एक साधारण यूएसबी ब्लूटूथ डोंगल का उपयोग कर रहे हैं । आपके पास रास्पबेरी पाई के साथ एक रास्पियन जेसी स्थापित मेमोरी कार्ड होना चाहिए। रास्पबियन ओएस को स्थापित करने के लिए इस लेख को देखें और रास्पबेरी पाई के साथ शुरुआत करें। तो अब हमें सबसे पहले नीचे दिए गए आदेशों का उपयोग करके रास्पियन को अपडेट करना होगा:
sudo apt-get update sudo apt-get उन्नयन
फिर हमें कुछ ब्लूटूथ से संबंधित पैकेजों को स्थापित करने की आवश्यकता है:
sudo apt-get install ब्लूटूथ ब्लूटूथ ब्लूज़
फिर रास्पबेरी पाई को रिबूट करें:
सूद रिबूट
ब्लूज़ एक ओपन सोर्स प्रोजेक्ट और आधिकारिक लिनक्स ब्लूटूथ प्रोटोकॉल स्टैक है। यह सभी कोर ब्लूटूथ प्रोटोकॉल का समर्थन करता है और अब आधिकारिक लिनक्स कर्नेल का हिस्सा बन गया है।
ब्लूमैन ब्लूटूथ डिवाइस को प्रबंधित और नियंत्रित करने के लिए डेस्कटॉप इंटरफ़ेस प्रदान करता है।
अंत में हमें ब्लूटूथ संचार के लिए अजगर लाइब्रेरी की आवश्यकता है ताकि हम पायथन भाषा का उपयोग करके RFCOMM के माध्यम से डेटा भेज और प्राप्त कर सकें:
sudo apt-get install अजगर-ब्लूटूथ
रास्पबेरी पाई के लिए GPIO समर्थन लाइब्रेरी भी स्थापित करें:
sudo apt-get Install python-rpi.gpio
अब हम रास्पबेरी पाई में ब्लूटूथ संचार के लिए आवश्यक पैकेज स्थापित करने के साथ किया जाता है।
ब्लूटूथ पर रास्पबेरी पाई के साथ युग्मन उपकरण:
रास्पबेरी पाई के साथ, मोबाइल फोन की तरह, ब्लूटूथ डिवाइस को बाँधना बहुत आसान है। यहाँ हमने अपना Android Smart Phone रास्पबेरी पाई के साथ जोड़ा है । हमने पहले Pi में BlueZ स्थापित किया है, जो हमारे ब्लूटूथ डिवाइस को प्रबंधित करने के लिए " bluetoothctl " नामक एक कमांड लाइन उपयोगिता प्रदान करता है। लेकिन इससे पहले, अपने USB ब्लूटूथ डोंगल को रास्पबेरी पाई के साथ कनेक्ट करें और जाँच करें कि यह पता लगाया गया है या नहीं, नीचे दिए गए कमांड का उपयोग करके:
lsusb
अब नीचे दिए गए आदेश द्वारा bluetoothctl उपयोगिता खोलें:
सुडो ब्लूटूथ
आप ' हेल्प' लिखकर bluetoothctl यूटिलिटी के सभी कमांड चेक कर सकते हैं । अभी के लिए हमें दिए गए क्रम में नीचे कमांड दर्ज करने की आवश्यकता है:
# पावर ऑन # एजेंट ऑन # सर्चेबल ऑन # पेराईबल ऑन # स्कैन
अंतिम कमांड " स्कैन ऑन " के बाद, आपको सूची में अपना ब्लूटूथ डिवाइस (मोबाइल फोन) दिखाई देगा। सुनिश्चित करें कि आपका मोबाइल ब्लूटूथ चालू है और पास के उपकरणों द्वारा दिखाई दे रहा है। फिर आप डिवाइस के मैक पते को कॉपी करें और दिए गए कमांड का उपयोग करके इसे जोड़े:
जोड़ा
फिर आपको अपने टर्मिनल कंसोल में पासकोड या पिन के लिए संकेत दिया जाएगा और फिर वहां पासकोड टाइप करें और एंटर दबाएं। जब संकेत दिया जाए तो अपने मोबाइल फोन में उसी पासकोड को टाइप करें और अब आपको रास्पबेरी पाई के साथ सफलतापूर्वक जोड़ा जाएगा। हमने इस पूरी प्रक्रिया को ब्लूटूथ के साथ GPIO को नियंत्रित करने के अपने पिछले ट्यूटोरियल में भी समझाया है।
सर्किट आरेख:
Android ऐप BlueTerm का उपयोग करते हुए एलसीडी पर वॉयस टाइपिंग:
अब मोबाइल फोन को पार करने के बाद, हमें एक ब्लूटूथ सीरियल एडेप्टर का उपयोग करके रास्पबेरी पाई के साथ संचार के लिए एक एंड्रॉइड ऐप इंस्टॉल करना होगा । RFCOMM / SPP प्रोटोकॉल ब्लूटूथ पर धारावाहिक संचार का अनुकरण करता है, इसलिए हमने यहां BlueTerm ऐप स्थापित किया है जो इस प्रोटोकॉल का समर्थन करता है।
आप किसी अन्य ब्लूटूथ टर्मिनल ऐप का भी उपयोग कर सकते हैं जो RFCOMM सॉकेट के माध्यम से संचार का समर्थन करता है।
अब BlueTerm App को डाउनलोड और इंस्टॉल करने के बाद, टर्मिनल से नीचे दिए गए पायथन प्रोग्राम को चलाएं और उसी समय BlueTerm App से युग्मित रास्पबेरी डिवाइस को कनेक्ट करें । सफल कनेक्शन के बाद आप कनेक्टेड दिखाई देंगे : App के ऊपरी दाएं कोने पर raspberrypi जैसा कि नीचे दिखाया गया है। अब Google Voice टाइपिंग कीबोर्ड का चयन करें और बोलना शुरू करें, यह एलसीडी दिखाई देगा।
इस परियोजना के लिए पायथन कार्यक्रम नीचे दिया गया है और इसे आसानी से समझा जा सकता है। मुख्य विशिष्ट भाग ब्लूटूथ प्रोग्रामिंग से संबंधित है जिसे हमने पहले समझाया है; इस लेख के प्रोग्रामिंग अनुभाग की जाँच करें।
हम रास्पबेरी GPIO पिन को नियंत्रित करने के लिए वॉयस का उपयोग करके इस परियोजना को आगे बढ़ा सकते हैं या बड़े संदेशों को प्रदर्शित करने के लिए बड़े एलसीडी / टीएफटी डिस्प्ले का उपयोग कर सकते हैं। इसके अलावा हमारे पिछले रास्पबेरी पाई प्रोजेक्ट्स और ट्यूटोरियल की जांच करें।