मेरे ब्लॉग में आपका स्वागत है! आज मैं आपको दिखाने जा रहा हूँ कि अपने माइक्रोकंट्रोलर के साथ कुछ सामान्य उपकरणों को कैसे इंटरफ़ेस करें। हम इस ट्यूटोरियल में एक सेंसर, एक एलसीडी, एक एलईडी और एक रिले का उपयोग करेंगे। आएँ शुरू करें!
1. Input output interfacing of sensor:
एक सेंसर एक उपकरण है जो तापमान, दबाव, प्रकाश, ध्वनि इत्यादि जैसी भौतिक घटनाओं का पता लगाता है और मापता है। इनपुट/आउटपुट इंटरफ़ेस सेंसर का वह हिस्सा है जो इसे अन्य उपकरणों या प्रणालियों से जोड़ता है, जैसे कंप्यूटर, नियंत्रक, प्रदर्शित करता है, आदि। इनपुट/आउटपुट इंटरफ़ेस सेंसर को कमांड प्राप्त करने और डेटा भेजने की अनुमति देता है।
सेंसर की प्रकृति और उद्देश्य के आधार पर सेंसर के लिए विभिन्न प्रकार के इनपुट/आउटपुट इंटरफेस होते हैं। कुछ सामान्य प्रकार हैं:
- एनालॉग इंटरफ़ेस: इस प्रकार का इंटरफ़ेस सेंसर डेटा का प्रतिनिधित्व (represent) करने के लिए वोल्टेज या करंट जैसे निरंतर संकेतों का उपयोग करता है। उदाहरण के लिए, एक थर्मोकपल सेंसर एक वोल्टेज उत्पन्न करने के लिए एक एनालॉग इंटरफ़ेस का उपयोग करता है जो उस तापमान के अनुपात में होता है जिसे वह मापता है। एनालॉग इंटरफेस सरल और सस्ते हैं, लेकिन वे शोर और हस्तक्षेप (Interference) से ग्रस्त (obsessed) हो सकते हैं।
- डिजिटल इंटरफ़ेस: इस प्रकार का इंटरफ़ेस सेंसर डेटा का प्रतिनिधित्व (represent) करने के लिए असतत संकेतों का उपयोग करता है, जैसे बाइनरी कोड या पल्स। उदाहरण के लिए, एक डिजिटल थर्मामीटर बिट्स की एक श्रृंखला भेजने के लिए एक डिजिटल इंटरफ़ेस का उपयोग करता है जो तापमान मान को एन्कोड करता है। डिजिटल इंटरफेस एनालॉग इंटरफेस की तुलना में अधिक सटीक और विश्वसनीय हैं, लेकिन उन्हें अधिक जटिल और महंगी सर्किट्री की आवश्यकता हो सकती है।
- वायरलेस इंटरफ़ेस: इस प्रकार का इंटरफ़ेस विद्युत चुम्बकीय तरंगों का उपयोग करता है, जैसे कि रेडियो या इन्फ्रारेड, बिना तारों के सेंसर डेटा संचारित करने के लिए। उदाहरण के लिए, एक वायरलेस मोशन सेंसर गति का पता लगाने पर सिग्नल भेजने के लिए वायरलेस इंटरफ़ेस का उपयोग करता है। वायरलेस इंटरफेस सुविधाजनक और लचीले होते हैं, लेकिन उनके पास सीमित सीमा और बैटरी जीवन हो सकता है।
- नेटवर्क इंटरफ़ेस: इस प्रकार का इंटरफ़ेस सेंसर को उपकरणों या सिस्टम के नेटवर्क से जोड़ने के लिए ईथरनेट या वाई-फाई जैसे संचार प्रोटोकॉल का उपयोग करता है। उदाहरण के लिए, एक नेटवर्क कैमरा इंटरनेट पर वीडियो स्ट्रीम करने के लिए नेटवर्क इंटरफ़ेस का उपयोग करता है। नेटवर्क इंटरफेस शक्तिशाली और बहुमुखी हैं, लेकिन उन्हें अधिक सुरक्षा और अनुकूलता उपायों की आवश्यकता हो सकती है।
2. Input Output interfacing of Seven segment display:
सेवन सेगमेंट डिस्प्ले के इनपुट आउटपुट इंटरफेसिंग के बारे में मेरे ब्लॉग पोस्ट में आपका स्वागत है! इस पोस्ट में, मैं आपको दिखाऊंगा कि Arduino or 8051 माइक्रोकंट्रोलर के साथ संख्याओं और वर्णों को प्रदर्शित करने के लिए 7-सेगमेंट डिस्प्ले का उपयोग कैसे करें।
7-सेगमेंट डिस्प्ले एक ऐसा उपकरण है जिसमें आयताकार आकार में व्यवस्थित सात एलईडी होते हैं। प्रत्येक एलईडी को एक खंड कहा जाता है, और विभिन्न खंडों को चालू या बंद करके, हम प्रदर्शन पर विभिन्न पैटर्न बना सकते A। उदाहरण के लिए, संख्या 0 प्रदर्शित करने के लिए, हमें मध्य वाले (g) को छोड़कर सभी खंडों को चालू करने की आवश्यकता है।

7-सेगमेंट डिस्प्ले दो प्रकार के होते हैं: कॉमन एनोड और कॉमन कैथोड। एक सामान्य एनोड डिस्प्ले में, एल ई डी के सभी एनोड (पॉजिटिव टर्मिनल) एक साथ जुड़े होते हैं, और हमें डिस्प्ले चालू करने के लिए उन्हें एक उच्च वोल्टेज (आमतौर पर 5V) से कनेक्ट करने की आवश्यकता होती है। एक सामान्य कैथोड डिस्प्ले में, एल ई डी के सभी कैथोड (नकारात्मक टर्मिनल) एक साथ जुड़े होते हैं, और हमें डिस्प्ले चालू करने के लिए उन्हें कम वोल्टेज (आमतौर पर ग्राउंड) से कनेक्ट करने की आवश्यकता होती है। हम जिस प्रकार के डिस्प्ले का उपयोग करते हैं, वह प्रभावित करेगा कि हम इसे Arduino or 8051 के साथ कैसे इंटरफ़ेस करते हैं।
Arduino or 8051 के साथ 7-सेगमेंट डिस्प्ले को इंटरफ़ेस करने के लिए, हमें Arduino or 8051 से सात आउटपुट पिन चाहिए, प्रत्येक सेगमेंट के लिए एक। हमें करंट को सीमित करने और एल ई डी को जलने से बचाने के लिए प्रत्येक खंड के लिए एक अवरोधक की भी आवश्यकता होती है। रोकनेवाला का मान एलईडी के प्रकार और रंग पर निर्भर करता है, लेकिन एक सामान्य मान 220 ओम है। हमें 7-सेगमेंट डिस्प्ले के पिनआउट को भी जानने की जरूरत है, जो हमें बताता है कि कौन सा पिन किस सेगमेंट से मेल खाता है। निर्माता के आधार पर पिनआउट भिन्न हो सकता है, इसलिए हमेशा वायरिंग करने से पहले डेटाशीट की जांच करें।
निम्न आरेख (Diagram) दिखाता है कि एक सामान्य एनोड 7-सेगमेंट डिस्प्ले को 8051 microcontroller से कैसे जोड़ा जाए:

3. Input Output interfacing of LCD:
एलसीडी के इनपुट आउटपुट इंटरफेसिंग पर एक और रोमांचक ट्यूटोरियल में आपका स्वागत है! इस ट्यूटोरियल में, आप सीखेंगे कि एलसीडी (लिक्विड क्रिस्टल डिस्प्ले) को माइक्रोकंट्रोलर से कैसे जोड़ा जाए और उस पर कुछ टेक्स्ट कैसे प्रदर्शित किया जाए। एलसीडी का व्यापक रूप से विभिन्न अनुप्रयोगों जैसे कैलकुलेटर, घड़ियां, मॉनिटर आदि में उपयोग किया जाता है। वे उपयोग करने में आसान होते हैं और अल्फ़ान्यूमेरिक वर्ण, प्रतीक और यहां तक कि कस्टम ग्राफिक्स प्रदर्शित कर सकते हैं।
एक माइक्रोकंट्रोलर के साथ एलसीडी को इंटरफेस करने के लिए, आपको एलसीडी के मूल कार्य सिद्धांत को समझने की आवश्यकता है। एक LCD में कांच की दो परतें होती हैं जिनके बीच लिक्विड क्रिस्टल सैंडविच (sandwiched) होते हैं। लिक्विड क्रिस्टल को अलग-अलग दिशाओं में उनके चारों ओर विद्युत क्षेत्र लगाकर संरेखित (align) किया जा सकता है। यह उनके माध्यम से गुजरने वाले प्रकाश की मात्रा को बदलता है और स्क्रीन पर पिक्सेल (pixels ) बनाता है।
एलसीडी दो प्रकार के होते हैं: समानांतर और सीरियल। समानांतर एलसीडी में कई डेटा पिन होते हैं जो समानांतर में डेटा भेज या प्राप्त कर सकते हैं। सीरियल एलसीडी में कम डेटा पिन होते हैं और डेटा ट्रांसफर करने के लिए SPI या I2C जैसे सीरियल कम्युनिकेशन प्रोटोकॉल का उपयोग करते हैं। सीरियल एलसीडी अधिक कॉम्पैक्ट होते हैं और कम वायरिंग की आवश्यकता होती है, लेकिन वे समानांतर एलसीडी की तुलना में धीमी होती हैं।
इस ट्यूटोरियल में, हम एक 16×2 समानांतर एलसीडी का उपयोग करेंगे जिसमें 16 कॉलम और वर्णों (characters) की 2 पंक्तियाँ हैं। इसमें 16 पिन होते हैं जिन्हें तीन समूहों में विभाजित किया जाता है: पावर पिन, कंट्रोल पिन और डेटा पिन। पावर पिन VCC (5V), GND (0V), और VEE (कंट्रास्ट एडजस्टमेंट) हैं। नियंत्रण पिन RS (रजिस्टर सेलेक्ट), RW (रीड/राइट), और E (सक्षम) हैं। डेटा पिन D0-D7 (डेटा बस) हैं।
RS पिन यह निर्धारित करता है कि LCD को भेजा गया डेटा कमांड है या कैरेक्टर। आरडब्ल्यू (RW) पिन निर्धारित करता है कि एलसीडी रीड या राइट मोड में है या नहीं। डेटा ट्रांसफर को सक्षम या अक्षम (enable or disable) करने के लिए ई पिन का उपयोग किया जाता है। D0-D7 पिन का उपयोग एलसीडी को या उससे 8-बिट डेटा भेजने या प्राप्त करने के लिए किया जाता है।
एलसीडी को एक माइक्रोकंट्रोलर से कनेक्ट करने के लिए, आपको पावर पिन को उपयुक्त वोल्टेज स्रोतों से कनेक्ट करना होगा। डिस्प्ले के कंट्रास्ट को एडजस्ट करने के लिए आपको एक पोटेंशियोमीटर को VEE पिन से कनेक्ट करना होगा। फिर, आपको नियंत्रण पिन और डेटा पिन को माइक्रोकंट्रोलर के कुछ डिजिटल आउटपुट पिन से कनेक्ट करना होगा। जब तक वे कोड से मेल खाते हैं तब तक आप किसी भी डिजिटल आउटपुट पिन का उपयोग कर सकते हैं।
एलसीडी पर कुछ पाठ प्रदर्शित करने के लिए, आपको इन चरणों का पालन करने की आवश्यकता है:(To display some text on the LCD, you need to follow these steps:)
1. मोड, कर्सर और डिस्प्ले विकल्पों को सेट करने के लिए कुछ कमांड भेजकर एलसीडी को इनिशियलाइज़ करें।
2. RS पिन को हाई पर सेट करें और उस कैरेक्टर का ASCII कोड भेजें जिसे आप प्रदर्शित करना चाहते हैं।
3. डेटा ट्रांसफर को सक्षम करने के लिए ई पिन को लो से हाई और फिर वापस लो पर टॉगल करें। 4. प्रत्येक वर्ण जिसे आप प्रदर्शित करना चाहते हैं, के लिए चरण 2 और 3 को दोहराएं।
5. RS पिन को LOW पर सेट करके कमांड भेजकर कर्सर को नई स्थिति में ले जाएं।
एक एलसीडी को एक माइक्रोकंट्रोलर के साथ सफलतापूर्वक जोड़ा है और उस पर कुछ पाठ प्रदर्शित किया है।

एक एलईडी (प्रकाश उत्सर्जक डायोड) [(light-emitting diode)]एक प्रकार का इलेक्ट्रॉनिक घटक है जो विद्युत प्रवाह के गुजरने पर प्रकाश का उत्सर्जन करता है। एल ई डी विभिन्न रंगों, आकृतियों (shape) और आकारों में आते हैं, और वे व्यापक रूप से विभिन्न अनुप्रयोगों जैसे संकेतक, डिस्प्ले, प्रकाश व्यवस्था और अधिक में उपयोग किए जाते हैं।
एक इनपुट आउटपुट डिवाइस एक हार्डवेयर घटक है जो कंप्यूटर को बाहरी दुनिया के साथ संवाद(world) करने की अनुमति देता है। उदाहरण के लिए, एक कीबोर्ड एक इनपुट डिवाइस है जो आपको कंप्यूटर में डेटा दर्ज करने देता है, और एक मॉनिटर एक आउटपुट डिवाइस है जो आपको स्क्रीन पर डेटा दिखाता है।

एक इनपुट आउटपुट डिवाइस के साथ एक एलईडी को जोड़ने के लिए, हमें तारों और एक प्रतिरोधक का उपयोग करके उन्हें जोड़ने की आवश्यकता है। रोकनेवाला का उपयोग एलईडी के माध्यम से प्रवाहित होने वाली धारा को सीमित करने और इसे जलने से रोकने के लिए किया जाता है। इनपुट आउटपुट डिवाइस एलईडी को चालू या बंद करने के लिए सिग्नल भेजकर नियंत्रित कर सकता है।
कई प्रकार के इनपुट आउटपुट डिवाइस हैं जिनका उपयोग आप इस प्रोजेक्ट के लिए कर सकते हैं, जैसे कि Arduino, Raspberry Pi, micro:bit और बहुत कुछ। इस ब्लॉग पोस्ट में, मैं एक उदाहरण के रूप में Arduino Uno का उपयोग करने जा रहा हूँ। आप किसी भी अन्य इनपुट आउटपुट डिवाइस के साथ अनुसरण कर सकते हैं जो आपके पास है, जब तक आप जानते हैं कि इसे कैसे प्रोग्राम करना है और इसे एलईडी से कनेक्ट करना है।
यहाँ एक Arduino Uno के साथ एक LED को इंटरफ़ेस करने के चरण दिए गए हैं:
2. घटकों को कनेक्ट करें। USB केबल के एक सिरे को Arduino में और दूसरे सिरे को अपने कंप्यूटर में प्लग करें। एलईडी को ब्रेडबोर्ड पर रखें और जम्पर वायर का उपयोग करके Arduino के 13 को पिन करने के लिए उसके एक पैर (लंबे वाले) को कनेक्ट करें। दूसरे जम्पर तार का उपयोग करके दूसरे पैर (छोटा वाला) को रोकनेवाला के एक छोर से कनेक्ट करें। एक अन्य जम्पर तार का उपयोग करके रोकनेवाला के दूसरे छोर को Arduino के ग्राउंड (GND) पिन से कनेक्ट करें।
3. कोड लिखें। अपने कंप्यूटर पर Arduino IDE (एकीकृत विकास वातावरण) (integrated development environment) खोलें और एक नया स्केच बनाएं। निम्नलिखित कोड को स्केच में कॉपी और पेस्ट करें:
// define pin number for LED
#define LED_PIN 13
// setup function runs once when Arduino starts
void setup() {
// set LED_PIN as output
pinMode(LED_PIN, OUTPUT);
}
// loop function runs repeatedly after setup
void loop() {
// turn LED on by setting LED_PIN high
digitalWrite(LED_PIN, HIGH);
// wait for one second
delay(1000);
// turn LED off by setting LED_PIN low
digitalWrite(LED_PIN, LOW);
// wait for one second
delay(1000);
}
4. कोड अपलोड करें। Arduino IDE पर अपलोड बटन पर क्लिक करें और अपने Arduino बोर्ड पर कोड अपलोड होने की प्रतीक्षा करें। आपको आईडीई विंडो के निचले भाग में “हो गया अपलोडिंग” कहने वाला एक संदेश देखना चाहिए।
5. सर्किट का परीक्षण करें। आपको अपने एलईडी को हर सेकंड ब्लिंक करते और बंद करते हुए देखना चाहिए।
5. Input Output interfacing of Relay:
मैं आपको एक इनपुट आउटपुट डिवाइस के साथ रिले को इंटरफ़ेस करने का तरीका दिखाने जा रहा हूँ।
रिले एक प्रकार का स्विच है जिसे विद्युत संकेत द्वारा नियंत्रित किया जा सकता है। इसका उपयोग उन उपकरणों को चालू और बंद करने के लिए किया जा सकता है जिनके लिए उच्च वोल्टेज या करंट की आवश्यकता होती है, जैसे कि मोटर, लाइट या सोलनॉइड। एक इनपुट आउटपुट डिवाइस के साथ रिले को इंटरफ़ेस करने के लिए, आपको रिले के कॉइल टर्मिनलों को डिवाइस के आउटपुट पिन और रिले के लोड टर्मिनलों को पावर स्रोत और उस डिवाइस से कनेक्ट करने की आवश्यकता होती है जिसे आप नियंत्रित करना चाहते हैं। रिले स्विच होने पर इनपुट आउटपुट डिवाइस को वोल्टेज स्पाइक्स से बचाने के लिए आपको कॉइल टर्मिनलों पर डायोड की भी आवश्यकता होती है। यहाँ एक सरल सर्किट आरेख है जो इसे दिखाता है:
रिले को नियंत्रित करने के लिए, आपको केवल इनपुट आउटपुट डिवाइस के आउटपुट पिन पर एक उच्च या निम्न सिग्नल भेजने की आवश्यकता होती है। जब सिग्नल अधिक होता है, तो रिले बंद हो जाएगा और करंट को लोड के माध्यम से प्रवाहित होने देगा। जब सिग्नल कम होता है, तो रिले खुल जाएगा और वर्तमान प्रवाह को रोक देगा। आप किसी भी प्रोग्रामिंग लैंग्वेज या सॉफ्टवेयर का उपयोग कर सकते हैं जो सिग्नल भेजने के लिए इनपुट आउटपुट डिवाइस के साथ संचार कर सकता है। उदाहरण के लिए, आप Arduino IDE, Python या LabVIEW का उपयोग कर सकते हैं।
इस ब्लॉग पोस्ट के लिए बस इतना ही! मुझे आशा है कि आपने रिले के इनपुट आउटपुट इंटरफेसिंग के बारे में कुछ नया और उपयोगी सीखा है। यदि आपके कोई प्रश्न या टिप्पणी हैं, तो कृपया उन्हें नीचे छोड़ दें। पढ़ने और सुखद प्रयोग के लिए धन्यवाद!