📘 CodingMarble Learn

ओपन-सोर्स हार्डवेयर प्रोजेक्ट: पिन, इनपुट-आउटपुट मॉड्यूल, संचार और कार्य-क्रम

ओपन-सोर्स हार्डवेयर बोर्ड पिनों वाला एक छोटा कंप्यूटर है। डिजिटल पिन ON/OFF (HIGH या LOW) पढ़ते या लिखते हैं। एनालॉग पिन बदलता स्तर संख्या में पढ़ते हैं, आम तौर पर 0 से 1023। पावर पिन 5 V, 3.3 V और ग्राउंड देते हैं। इनपुट मॉड्यूल (बटन, सेंसर) जानकारी अंदर भेजते हैं और आउटपुट मॉड्यूल (LED, बज़र, मोटर) काम करते हैं। बोर्ड TX और RX से सीरियल संचार करके कंप्यूटर या दूसरे बोर्ड से बात करता है। प्रोजेक्ट में setup एक बार चलता है, फिर लूप दोहराता है: पढ़ो, तय करो, करो और बताओ।

🎬 कदम-दर-कदम कहानी

  1. बोर्ड के किनारे पर पिन हैं। डिजिटल पिन ON/OFF, एनालॉग पिन स्तर पढ़ते हैं और पावर पिन 5 V व ग्राउंड देते हैं।
  2. इनपुट मॉड्यूल बोर्ड को बाहर की बात बताता है। बटन दबाओ: पिन 2 LOW से HIGH हो जाता है।
  3. आउटपुट मॉड्यूल बोर्ड का हुक्म मानता है। बोर्ड पिन 13 को HIGH करता है और LED जल जाती है।
  4. संचार: बोर्ड अपने TX तार से शब्द कंप्यूटर के RX तक भेजता है। संदेश स्क्रीन पर दिखता है।
  5. काम का क्रम: setup एक बार चलता है, फिर लूप बार-बार: पढ़ो, तय करो, करो, बताओ।
  6. खुद आज़माओ: बटन दबाओ और सेंसर व सीमा के स्लाइडर चलाओ। LED एक नियम से जलती है जिसे आप पढ़ सकते हो।

टिप: 3D दृश्य को घुमाने के लिए खींचें। ज़ूम के लिए दो उंगलियाँ इस्तेमाल करें।

🤔 आम शंकाएँ और उनके जवाब

डिजिटल और एनालॉग पिन में क्या अंतर है?

डिजिटल पिन सिर्फ़ HIGH या LOW जानता है। एनालॉग पिन स्तर नापकर 0 से 1023 की संख्या देता है। 3D में तीन रंगों वाले पिन समूह देखो।

बटन दबाने से पिन का मान क्यों बदलता है?

दबाने पर पिन सप्लाई से जुड़ जाता है, इसलिए वह HIGH पढ़ता है। न दबाओ तो LOW। बटन दबाकर पिन का पाठ्यांक देखो।

LED को सीधे पिन से क्यों नहीं जोड़ सकते?

ज़्यादा धारा से LED जल सकती है। श्रेणी में रोधक धारा सीमित करता है। चरण 2 का आउटपुट मॉड्यूल हमेशा रोधक के साथ आता है।

TX को RX से क्यों जोड़ते हैं, TX से क्यों नहीं?

एक उपकरण बोलता है और दूसरा सुनता है। बोलने वाले का TX सुनने वाले के RX तक पहुँचना चाहिए। चरण 3 में तार देखो।

setup() और loop() में क्या फ़र्क़ है?

setup() शुरू में एक बार पिन और सीरियल तैयार करता है। loop() बार-बार चलता है। बैंगनी छल्ला दोहराता लूप दिखाता है।

बटन और सेंसर मिलकर LED कैसे तय करते हैं?

रीडआउट का नियम कहता है: बटन दबा हो या सेंसर सीमा से ऊपर हो तो LED ON। दोनों बदलकर रीडआउट देखो।

ओपन-सोर्स हार्डवेयर क्या है?

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

माइक्रोकंट्रोलर बोर्ड एक चिप पर बना छोटा कंप्यूटर है, जिसमें बाहरी दुनिया जोड़ने के लिए पिन होते हैं।

पिन: डिजिटल, एनालॉग और पावर

पिन धातु का वह जोड़ है जिससे बोर्ड तार या मॉड्यूल से जुड़ता है।

setup में पिन को INPUT या OUTPUT तय किया जाता है। ग़लत दिशा आम ग़लती है।

इनपुट और आउटपुट मॉड्यूल

मॉड्यूल एक काम के लिए बना छोटा तैयार बोर्ड है।

कोड में पढ़ना-लिखना ऐसा दिखता है: digitalRead(2), analogRead(A0), digitalWrite(13, HIGH)। बटन को पुल-अप या पुल-डाउन रोधक चाहिए ताकि पिन HIGH और LOW के बीच न झूले। LED के साथ रोधक (जैसे 220 Ω) चाहिए ताकि ज़्यादा धारा से वह न जले।

बोर्ड और कंप्यूटर के बीच संचार

बोर्ड डेटा बिट के रूप में भेजते हैं। सीरियल संचार में बिट एक के बाद एक तार पर जाते हैं।

सीरियल प्रिंट (Serial.println) से प्रोग्राम की गड़बड़ी देखना भी सबसे आसान है।

प्रोजेक्ट का कार्य-क्रम: setup और loop

इन बोर्डों के ज़्यादातर प्रोग्राम में दो भाग होते हैं।

  1. setup() एक बार चलता है: पिन की दिशा तय करो, सीरियल शुरू करो।
  2. loop() बार-बार चलता है: इनपुट पढ़ो → तय करो → आउटपुट लिखो → प्रिंट करो।

अच्छा कार्य-क्रम: इनपुट-आउटपुट की सूची → सर्किट बनाओ → छोटा प्रोग्राम लिखो → एक-एक मॉड्यूल परखो → जोड़ो → पूरा प्रोजेक्ट परखो → जो किया उसे लिख लो।

खुद आज़माओ: बटन और रोशनी का नियम

3D में आख़िरी चरण पर जाओ। सीमा 600 रखो। सेंसर मान 300 से 800 तक खिसकाओ और देखो LED कब जलती है। अब अंदाज़ा लगाओ: सीमा 200 और सेंसर मान 300 हो तो LED ON होगी या OFF? जाँचो।

घर पर असली पुर्ज़ों से: बटन पिन 2 से और LED (220 Ω रोधक के साथ) पिन 13 से जोड़ो। loop() में लिखो if (digitalRead(2) == HIGH) digitalWrite(13, HIGH); else digitalWrite(13, LOW);।

मुख्य सूत्र और परिभाषाएँ

हल किए गए उदाहरण

1. एक बोर्ड 5 V पर एनालॉग पिन से सेंसर पढ़ता है। सेंसर 2.5 V देता है। 10-बिट analogRead क्या दिखाएगा?

मान = (2.5 ÷ 5) × 1023 ≈ 512।

2. एक LED को 20 mA चाहिए और वह 2 V गिराती है। सप्लाई 5 V है। कौन-सा रोधक चाहिए?

R = (5 − 2) ÷ 0.020 = 150 Ω। अगला मानक मान 180 Ω या 220 Ω लो।

3. एक सीरियल लिंक 9600 बॉड पर है और हर अक्षर में 10 बिट हैं (8 डेटा + स्टार्ट + स्टॉप)। लगभग कितने अक्षर प्रति सेकंड?

9600 ÷ 10 = 960 अक्षर प्रति सेकंड।

4. रात के लैंप का नियम लिखो: रोशनी सेंसर 300 से कम पढ़े तो LED जले।

if (analogRead(A0) < 300) digitalWrite(13, HIGH); else digitalWrite(13, LOW);

5. एक प्रोजेक्ट में 2 बटन, 1 सेंसर, 3 LED और 1 बज़र हैं। सेंसर एनालॉग हो तो कितने डिजिटल और एनालॉग पिन चाहिए?

डिजिटल: 2 + 3 + 1 = 6। एनालॉग: 1। कुल 7 पिन, साथ में पावर और ग्राउंड।

आम गलतियाँ

अभ्यास क्विज़

1. कौन-सा पिन सिर्फ़ HIGH या LOW देता है?
2. इनमें से कौन आउटपुट मॉड्यूल है?
3. बोर्ड A का TX किससे जुड़ना चाहिए?
4. प्रोग्राम का जो भाग हमेशा दोहराता है वह है:
5. 10-बिट एनालॉग पाठ्यांक किस सीमा में संख्याएँ देता है?

अभ्यास: खुद जवाब दो

अपना जवाब लिखो या चुनो, फिर जाँचें दबाओ। अटको तो संकेत देखो; जवाब देने के बाद पूरा हल दिखेगा।

अक्सर पूछे जाने वाले प्रश्न

ओपन-सोर्स हार्डवेयर क्या है?

ऐसा हार्डवेयर जिसकी डिज़ाइन फ़ाइलें (सर्किट और नक़्शा) खुलकर साझा होती हैं ताकि कोई भी उसे देखे, बनाए और सुधारे।

इनपुट और आउटपुट मॉड्यूल में क्या अंतर है?

इनपुट मॉड्यूल बोर्ड में जानकारी भेजता है (बटन, सेंसर)। आउटपुट मॉड्यूल दुनिया पर काम करता है (LED, बज़र, मोटर)।

सीरियल संचार क्या है?

तार पर बिट एक के बाद एक भेजना। बोर्ड TX, RX पिन और समान बॉड दर से कंप्यूटर या दूसरे बोर्ड से बात करते हैं।

यह कहाँ पढ़ाया जाता है

चीन高三Sel.6 Open-source hardware projects

पहले यह पढ़ें

आगे पढ़ें

इससे जुड़े पाठ

सभी कंप्यूटर विज्ञान पाठ