RPI.GPIO पायथन लाइब्रेरी रास्पबेरी पाई के GPIO पिन की प्रोग्रामिंग के लिए मानक है, लेकिन GPIO जीरो यकीनन बेहतर है।

क्यों GPIO शून्य रास्पबेरी पाई परियोजनाओं के लिए RPi.GPIO से बेहतर है

विज्ञापन रास्पबेरी पाई सीखने के लिए एकदम सही कंप्यूटर है। लिनक्स-आधारित रास्पियन ओएस में पायथन बनाया गया है, जो इसे शुरुआती कोडरों के लिए एक महान पहली प्रणाली बनाता है। इसके जनरल पर्पस इनपुट / आउटपुट (GPIO) पिन, नवोदित निर्माताओं के लिए DIY इलेक्ट्रॉनिक्स परियोजनाओं के साथ प्रयोग करना आसान बनाते हैं। यह विशेष रूप से आसान है जब आप कोड लाइब्रेरी का उपयोग करते हैं जो इन पिनों को नियंत्रित करते हैं, और लोकप्रिय RPi.GPIO पायथन लाइब्रेरी ऐसी लाइब्रेरी का एक उत्कृष्ट उदाहरण है। लेकिन क्या यह शुरुआती लोगों के लिए सबसे अच्छा रास्ता है? जैसे-जैसे हम जांच करेंगे, हमारे साथ जुड़ते जाएं। GPIO शून्य क्या है?

विज्ञापन

रास्पबेरी पाई सीखने के लिए एकदम सही कंप्यूटर है। लिनक्स-आधारित रास्पियन ओएस में पायथन बनाया गया है, जो इसे शुरुआती कोडरों के लिए एक महान पहली प्रणाली बनाता है। इसके जनरल पर्पस इनपुट / आउटपुट (GPIO) पिन, नवोदित निर्माताओं के लिए DIY इलेक्ट्रॉनिक्स परियोजनाओं के साथ प्रयोग करना आसान बनाते हैं।

यह विशेष रूप से आसान है जब आप कोड लाइब्रेरी का उपयोग करते हैं जो इन पिनों को नियंत्रित करते हैं, और लोकप्रिय RPi.GPIO पायथन लाइब्रेरी ऐसी लाइब्रेरी का एक उत्कृष्ट उदाहरण है। लेकिन क्या यह शुरुआती लोगों के लिए सबसे अच्छा रास्ता है? जैसे-जैसे हम जांच करेंगे, हमारे साथ जुड़ते जाएं।

GPIO शून्य क्या है?

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

सरल नामकरण प्रथाओं और वर्णनात्मक कार्यों को मिलाकर, GPIO शून्य समझने के लिए शुरुआती के लिए अधिक सुलभ है। RPI.GPIO लाइब्रेरी के अनुभवी उपयोगकर्ता भी इसे पसंद कर सकते हैं - और यह समझने के लिए कि, आरपीआई.जीपीओ की जीपीआई जीरो से तुलना कैसे की जाती है, इस पर एक नज़र डालते हैं।

आरपीआई.जीपीआईओ के साथ क्या गलत है?

कुछ भी तो नहीं। कुछ भी नहीं। आरपी.जीपीआईओ को 2012 की शुरुआत में डेवलपर बेन क्रॉस्टन द्वारा जारी किया गया था। यह उपयोगकर्ताओं को कोड से GPIO पिन को नियंत्रित करने की अनुमति देने वाला एक मजबूत पुस्तकालय है। यह लगभग हर शुरुआती परियोजना में है। 11 सर्वश्रेष्ठ शुरुआती के लिए रास्पबेरी पाई परियोजनाएं। शुरुआती के लिए 11 सर्वश्रेष्ठ रास्पबेरी पाई परियोजनाएं। शुरुआती के लिए ये रास्पबेरी पाई परियोजनाएं किसी भी रास्पबेरी पाई मॉडल की क्षमताओं के साथ शुरू करने के लिए महान हैं। और पढ़ें हमने कवर किया

इसके व्यापक उपयोग के बावजूद, RPi.GPIO को कभी भी अंतिम उपयोगकर्ताओं के लिए डिज़ाइन नहीं किया गया था। यह आरपीआई.जीपीआईओ के अच्छे डिजाइन के लिए एक वसीयतनामा है जो इतने सारे शुरुआती लोग इसका इस्तेमाल करते हैं।

GPIO शून्य के बारे में क्या अच्छा है?

जब आप पायथन कोड सीख रहे हैं, तो आप सीखते हैं कि इसे पढ़ना आसान है और जितना संभव हो उतना छोटा होना चाहिए। GPIO शून्य का उद्देश्य दोनों बिंदुओं को कवर करना है। RPi.GPIO के शीर्ष पर फ्रंट-फ्रंट भाषा आवरण के रूप में निर्मित, यह GPIO सेटअप और उपयोग को सरल करता है।

निम्नलिखित उदाहरण पर विचार करें, एक एलईडी चालू करना और चालू करना:

RPi.GPIO लाइब्रेरी का उपयोग करके आउटपुट सेट और एलईडी करने के लिए कोड

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

RPi.GPIO लाइब्रेरी आयातित है, और एलईडी के लिए एक पिन घोषित किया गया है। पिन लेआउट प्रकार की स्थापना की गई है (बीसीएम और बोर्ड मोड हमारे GPIO गाइड में बताए गए हैं। रास्पबेरी पाई GPIO पिन के बारे में आपको जो कुछ भी जानना है वह सब कुछ आपको रास्पबेरी पाई GPIO पिन के बारे में जानना आवश्यक है। रास्पबेरी पाई एक शानदार छोटा कंप्यूटर है, लेकिन क्या करते हैं GPIO (सामान्य प्रयोजन इनपुट / आउटपुट) पिंस वास्तव में करते हैं? संक्षेप में, वे DIY इलेक्ट्रॉनिक टिंकरिंग और आविष्कार की पूरी दुनिया को खोलते हैं। और पढ़ें), और पिन को आउटपुट के रूप में सेट किया गया है। फिर, पिन चालू होता है।

यह दृष्टिकोण समझ में आता है, लेकिन इसे करने का GPIO शून्य तरीका बहुत सरल है:

GPIO जीरो के साथ एक एलईडी की स्थापना

GPIO जीरो में एलईडी के लिए एक मॉड्यूल है, जिसे शुरू में आयात किया जाता है। इसका मतलब है कि आप पिन नंबर की घोषणा कर सकते हैं, और led.on () विधि को कॉल कर सकते हैं।

क्यों GPIO शून्य का दृष्टिकोण बेहतर है?

इस कार्य पद्धति के आरपीआई.जीपीआईओ में सुधार के कुछ कारण हैं।

सबसे पहले, यह "पढ़ने में आसान, जितना संभव हो उतना छोटा" आवश्यकता को पूरा करता है। हालांकि RPI.GPIO सेटअप स्टेटमेंट समझने में आसान हैं, लेकिन वे आवश्यक नहीं हैं। एक एलईडी हमेशा एक आउटपुट होगा, इसलिए GPIO जीरो पर्दे के पीछे पिन सेट करता है। परिणाम स्थापित करने के लिए कोड की सिर्फ तीन लाइनें हैं, फिर एक एलईडी प्रकाश।

आप देख सकते हैं कि GPIO जीरो उदाहरण में कोई बोर्ड मोड सेटअप नहीं है। पुस्तकालय केवल पिन के लिए ब्रॉडकॉम (बीसीएम) नंबरिंग का उपयोग करता है। लाइब्रेरी डिजाइनर बेन न्यूटॉल बताते हैं कि 2015 के रास्पिप्यूरी साक्षात्कार में क्यों:

“बोर्ड नंबरिंग अधिक सरल लग सकता है, लेकिन मैं कहूंगा कि यह नए उपयोगकर्ताओं को लगता है कि सभी पिन सामान्य उद्देश्य हैं - और वे नहीं हैं। 11 से पिन करने के लिए एक एलईडी कनेक्ट करें, पिन 1, 2, 3 और 4 से कुछ और क्यों न जुड़ें? खैर 1 3V3 है। 2 और 4 5 वी हैं। पिन के उद्देश्य क्या खतरनाक हो सकते हैं, इसके बारे में जागरूकता की कमी है। ”

इस तरह रखो, यह बीसीएम संख्या का उपयोग करने के लिए पूर्ण समझ में आता है। यह देखते हुए कि यह रास्पबेरी पाई प्रलेखन में GPIO शून्य मानक होगा, यह सीखने लायक है!

क्या GPIO जीरो वास्तव में बेहतर है?

जबकि यह सतह पर अधिक सीधा लगता है, क्या नए पुस्तकालय में कोई समस्या है? किसी भी नए कोडिंग पुस्तकालय के साथ, यह राय का विषय है। एक तरफ, सेटअप कोड को हटाना शुरुआती और अनुभवी कोडर के लिए समान है। लेखन कोड अधिक सरल और तेज है।

दूसरी ओर, यह जानना कि वास्तव में क्या चल रहा है, सीखना महत्वपूर्ण है। GPIO शून्य दस्तावेज़ से एक बटन सेट करने का उदाहरण लें:

GPIO शून्य बटन उदाहरण कोड

बटन मॉड्यूल पुश बटन के लिए सेटअप को सरल करता है। यह जानता है कि बटन इनपुट हैं, इसलिए सेटअप के लिए घोषित पिन नंबर का उपयोग करता है। एक बटन प्रेस के लिए जाँच करना भी आसान है। बटन प्रेस का पता लगाने के लिए .is_pressed

हमने रास्पबेरी पाई बटन ट्यूटोरियल 2 में इस सटीक कार्यक्षमता का उपयोग किया। अपने रास्पबेरी पाई प्रोजेक्ट के लिए बटन जोड़ने के 2 तरीके अपने रास्पबेरी पाई प्रोजेक्ट में एक बटन जोड़ने के तरीके आप अपने रास्पबेरी पाई बटन को कैसे कनेक्ट करते हैं? यहां शुरू करने के दो तरीके हैं, पायथन और एक एलईडी का उपयोग करके दिखाया गया है। और पढ़ें, जो पुस्तकालयों में अंतर के साथ खुद को परिचित करने का एक शानदार तरीका है।

RPi.GPIO लाइब्रेरी के उपयोगकर्ता देखेंगे कि पाई के आंतरिक पुल-अप / पुल-डाउन प्रतिरोधों को कोड में सेट नहीं किया गया है। यह एक दिलचस्प सवाल उठाता है। क्या शुरुआती लोगों को पुल-अप / डाउन प्रतिरोधों के बारे में जानना आवश्यक है? फिर, बेन न्यूटॉल के पास इस सवाल का जवाब है:

"आप तर्क दे सकते हैं कि पुल अप और पुल डाउन के बारे में जानना अच्छा है, और आप सही होंगे- लेकिन मुझे उस दिन क्यों सिखाना है? […] यदि आप इलेक्ट्रॉनिक्स को और अधिक गहराई से पढ़ाना चाहते हैं तो बहुत कुछ है इसके लिए गुंजाइश है- लेकिन यह अनिवार्य नहीं होना चाहिए अगर आप अभी शुरू कर रहे हैं। "

कुल मिलाकर, GPIO शून्य का सरल दृष्टिकोण शुरुआती और दिग्गजों के लिए समान रूप से एक अच्छी बात है। इसके अलावा, RPi.GPIO कहीं नहीं जा रहा है। यदि आवश्यक हो तो वापस स्विच करने के लिए यह हमेशा रहेगा।

क्या पायथन एकमात्र विकल्प है?

पायथन वह भाषा है जिसे पाई के लिए जाना जाता है, लेकिन यह एकमात्र विकल्प नहीं है। यदि आप पहले से ही सी भाषा में प्रोग्रामिंग से परिचित हैं, तो वायरिंग पाई ने आपको कवर किया है।

वैकल्पिक रूप से, यदि आप पहले से ही जावास्क्रिप्ट में प्रोग्राम करते हैं, तो Node.js को आसानी से पाई पर स्थापित किया जा सकता है। GPIO एक्सेस rpi-gpio npm लाइब्रेरी के माध्यम से उपलब्ध है। रूबी ऑन रेल्स रास्पबेरी पाई पर भी स्थापित किया जा सकता है, हालांकि पाई रेल सीखने का सबसे अच्छा तरीका नहीं हो सकता है!

इन सभी विकल्पों में, बहु-भाषा पुस्तकालयों के साथ-साथ उत्कृष्ट पिगियो जैसे पुस्तकालय को भ्रमित करना चुन सकते हैं। यह वह जगह है जहाँ GPIO शून्य एक्सेल: शुरुआती के लिए सोच रहा था कि कैसे और कहाँ से शुरू करें।

यदि आप एक ऐसे बिंदु पर हैं जहाँ आपको किसी ऐसी चीज की आवश्यकता है जो वह प्रदान नहीं करती है, तो आप अपनी गति से इन अन्य पुस्तकालयों में गोता लगाने के लिए तैयार होंगे।

GPIO जीरो के साथ खुद को शुरू करना

GPIO शून्य, Pi के लिए और अच्छे कारण के साथ स्पलैश बनाने के लिए सबसे नई लाइब्रेरी है। अधिकांश उपयोगकर्ताओं के लिए, यह GPIO पिन को पढ़ने के लिए सरल और लिखने में तेज बनाता है।

शिक्षा में रास्पबेरी पाई के उपयोग को देखते हुए, जो कुछ भी सीखने को अधिक स्वाभाविक बनाता है वह एक अच्छी बात है। जबकि RPi.GPIO अब तक परफेक्ट है, GPIO जीरो एक अच्छा विचार लेता है और इसे और बेहतर बनाता है।

GPIO शून्य के साथ आरंभ करने का एक शानदार तरीका म्यूजिकल डोर सेंसर जैसी एक शुरुआती परियोजना को लेना है जब आप रास्पबेरी पाई के साथ कमरे में प्रवेश करते हैं तो अपना स्वयं का थीम ट्यून खेलते हैं जब आप रास्पबेरी पाई के साथ कमरे में प्रवेश करते हैं तो आप कभी भी चाहते हैं। एक व्यक्तिगत स्वागत के लिए घर आने के लिए? इस सरल रास्पबेरी पाई परियोजना में, हम एक दरवाजा खोलने के लिए एक धुन को ट्रिगर करने के लिए एक ईख स्विच का उपयोग करेंगे। अधिक पढ़ें और इसे नए पुस्तकालय में पोर्ट करें।

GPIO, पायथन, रास्पबेरी पाई: के बारे में अधिक जानकारी प्राप्त करें।