Arduino के साथ शुरुआत करना: एक शुरुआती गाइड

Arduino के साथ शुरुआत करना: एक शुरुआती गाइड

Arduino एक ओपन-सोर्स इलेक्ट्रॉनिक्स प्रोटोटाइप प्लेटफॉर्म है, और यह दुनिया में सबसे लोकप्रिय में से एक है - रास्पबेरी पाई के संभावित अपवाद के साथ। 3 मिलियन से अधिक यूनिट्स (और थर्ड पार्टी क्लोन डिवाइस के रूप में कई और अधिक) की बिक्री के बाद: क्या यह इतना अच्छा बनाता है, और आप एक के साथ क्या कर सकते हैं?





Arduino क्या है?

Arduino उपयोग में आसान, लचीले, हार्डवेयर और सॉफ़्टवेयर पर आधारित है। यह कलाकारों, डिजाइनरों, इंजीनियरों, शौकियों और प्रोग्राम करने योग्य इलेक्ट्रॉनिक्स में थोड़ी सी रुचि रखने वाले किसी भी व्यक्ति के लिए बनाया गया है।





Arduino विभिन्न बटनों, घटकों और सेंसर से डेटा पढ़कर पर्यावरण को महसूस करता है। वे एल ई डी को नियंत्रित करके पर्यावरण को प्रभावित कर सकते हैं, मोटर्स , सर्वो, रिले, और भी बहुत कुछ।





Arduino प्रोजेक्ट स्टैंड-अलोन हो सकते हैं, या वे कंप्यूटर पर चलने वाले सॉफ़्टवेयर के साथ संचार कर सकते हैं ( प्रसंस्करण इसके लिए सबसे लोकप्रिय सॉफ्टवेयर है)। वे अन्य Arduinos, Raspberry Pis, NodeMCU, या लगभग किसी भी चीज़ से बात कर सकते हैं। सुनिश्चित करें कि आपने इन माइक्रोकंट्रोलर के बीच अंतर की पूरी तरह से तुलना करने के लिए $ 5 माइक्रोकंट्रोलर की हमारी तुलना को पढ़ा है।

आप पूछ रहे होंगे, Arduino क्यों चुनें? Arduino वास्तव में एक प्रोग्राम योग्य इलेक्ट्रॉनिक्स प्रोजेक्ट बनाने की प्रक्रिया को सरल करता है, जिससे यह शुरुआती लोगों के लिए एक बेहतरीन प्लेटफॉर्म बन जाता है। आप बिना किसी पिछले इलेक्ट्रॉनिक अनुभव के आसानी से उस पर काम करना शुरू कर सकते हैं। हजारों ट्यूटोरियल उपलब्ध हैं, और ये कठिनाई में हैं, इसलिए मूल बातें सीखने के बाद आप एक चुनौती के बारे में सुनिश्चित हो सकते हैं।



Arduino की सादगी के अलावा, यह सस्ता, क्रॉस-प्लेटफ़ॉर्म और ओपन सोर्स भी है। Arduino Uno (सबसे लोकप्रिय मॉडल) Atmel के ATMEGA 16U2 माइक्रोकंट्रोलर पर आधारित है। कई अलग-अलग मॉडल का उत्पादन किया जाता है, जो आकार, शक्ति और विशिष्टताओं में भिन्न होते हैं, इसलिए सभी अंतरों के लिए हमारे खरीद गाइड पर एक नज़र डालें।

बोर्डों के लिए योजनाएं ए . के तहत प्रकाशित की जाती हैं क्रिएटिव कॉमन्स लाइसेंस, इसलिए अनुभवी शौक़ीन और अन्य निर्माता Arduino का अपना संस्करण बनाने के लिए स्वतंत्र हैं, संभावित रूप से इसका विस्तार कर रहे हैं और इसे सुधार रहे हैं (या इसे पूरी तरह से कॉपी कर रहे हैं, जिससे कम लागत वाले Arduino बोर्डों का प्रसार हो रहा है जो आज हम पाते हैं)।





आप एक Arduino के साथ क्या कर सकते हैं?

एक Arduino कई चौंका देने वाली चीजें कर सकता है। वे अधिकांश 3D प्रिंटर के लिए पसंद का दिमाग हैं। उनकी कम लागत और उपयोग में आसानी का मतलब है कि हजारों निर्माताओं, डिजाइनरों, हैकर्स और रचनाकारों ने अद्भुत परियोजनाएं बनाई हैं। यहाँ MakeUseOf में हमने कुछ Arduino प्रोजेक्ट्स बनाए हैं:

एक Arduino के अंदर क्या है?

हालांकि कई अलग-अलग प्रकार के Arduino बोर्ड उपलब्ध हैं, यह मैनुअल निम्नलिखित पर केंद्रित है Arduino uno आदर्श। यह आसपास का सबसे लोकप्रिय Arduino बोर्ड है। तो यह बात क्या टिकती है? यहाँ विनिर्देश हैं:





  • प्रोसेसर: 16 मेगाहर्ट्ज एटीमेगा16यू2
  • फ्लैश मेमोरी: 32 केबी
  • टक्कर मारना: 2KB
  • ऑपरेटिंग वोल्टेज: 5वी
  • इनपुट वोल्टेज: 7-12 वी
  • एनालॉग इनपुट की संख्या: 6
  • डिजिटल I/O की संख्या: १४ (उनमें से ६ पल्स चौड़ाई मॉडुलन -- पीडब्लूएम )

आपके डेस्कटॉप कंप्यूटर की तुलना में चश्मा बकवास लग सकता है, लेकिन याद रखें कि Arduino एक एम्बेडेड डिवाइस है, जिसमें आपके डेस्कटॉप की तुलना में बहुत कम जानकारी संसाधित होती है। यह अधिकांश इलेक्ट्रॉनिक्स परियोजनाओं के लिए सक्षम से अधिक है।

Arduino की एक और अद्भुत विशेषता 'शील्ड्स', या ऐड-ऑन बोर्ड कहलाने वाले का उपयोग करने की क्षमता है। हालांकि इस मैनुअल में शील्ड्स को शामिल नहीं किया जाएगा, वे आपके Arduino की सुविधाओं और कार्यक्षमता को बढ़ाने के लिए वास्तव में एक साफ-सुथरा तरीका हैं।

इस गाइड के लिए आपको क्या चाहिए

नीचे आपको उन घटकों की खरीदारी सूची मिलेगी जिनकी आपको इस शुरुआती मार्गदर्शिका के लिए आवश्यकता होगी। ये सभी घटक कुल के अंतर्गत आने चाहिए। यह लिस्टिंग आपको बुनियादी इलेक्ट्रॉनिक्स की अच्छी समझ देने के लिए पर्याप्त होनी चाहिए और इस या किसी अन्य Arduino गाइड का उपयोग करके कुछ बहुत अच्छे प्रोजेक्ट बनाने के लिए पर्याप्त घटक होने चाहिए। यदि आप प्रत्येक घटक का चयन नहीं करना चाहते हैं, तो आप इसके बजाय एक स्टार्टर किट खरीदने पर विचार कर सकते हैं।

यदि आप एक विशिष्ट प्रतिरोधक मान प्राप्त नहीं कर सकते हैं, तो जितना संभव हो उतना करीब कुछ आमतौर पर ठीक काम करेगा।

विद्युत घटक अवलोकन

आइए देखें कि ये सभी घटक वास्तव में क्या हैं, वे क्या करते हैं, और वे कैसे दिखते हैं।

ब्रेड बोर्ड

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

जल्दी से सर्किट बनाने के लिए ब्रेडबोर्ड उत्कृष्ट हैं। वे एक बड़े सर्किट के लिए बहुत गन्दा हो सकते हैं, और सस्ता मॉडल कुख्यात अविश्वसनीय हो सकते हैं, इसलिए अच्छे पर थोड़ा और पैसा खर्च करना उचित है।

एल ई डी

एलईडी का मतलब है प्रकाश उत्सर्जक डायोड . वे बहुत सस्ते प्रकाश स्रोत हैं, और बहुत उज्ज्वल हो सकते हैं - खासकर जब एक साथ समूहीकृत किया जाता है। वे विभिन्न रंगों में खरीदे जा सकते हैं, विशेष रूप से गर्म नहीं होते हैं, और लंबे समय तक चलते हैं। आपके टेलीविज़न, कार के डैशबोर्ड, या आपके Philips Hue बल्ब में LED हो सकते हैं।

आपके Arduino माइक्रोकंट्रोलर में पिन 13 पर एक अंतर्निहित एलईडी भी है जिसका उपयोग अक्सर किसी क्रिया या घटना को इंगित करने के लिए या केवल परीक्षण के लिए किया जाता है।

फोटो प्रतिरोधी

एक फोटो रोकनेवाला ( पी हॉटोसेल या प्रकाश आश्रित प्रतिरोधी ) आपके Arduino को प्रकाश में परिवर्तन को मापने की अनुमति देता है। उदाहरण के लिए, आप इसका उपयोग अपने कंप्यूटर को दिन के उजाले में चालू करने के लिए कर सकते हैं।

स्पर्श स्विच

Android के लिए सबसे अच्छा एचडी लाइव वॉलपेपर

एक स्पर्श स्विच मूल रूप से एक बटन है। इसे दबाने से सर्किट पूरा हो जाएगा, और (आमतौर पर) 0V से +5V में बदल जाएगा। Arduinos इस परिवर्तन का पता लगा सकता है, और उसके अनुसार प्रतिक्रिया कर सकता है। ये अक्सर होते हैं क्षणिक - इसका मतलब है कि वे केवल 'दबाए' जाते हैं जब आपकी उंगली उन्हें नीचे रखती है। एक बार जब आप जाने देते हैं, तो वे वापस अपनी डिफ़ॉल्ट स्थिति ('अन-प्रेस्ड', या ऑफ) पर वापस आ जाएंगे।

पीजो स्पीकर

पीजो स्पीकर एक छोटा सा स्पीकर होता है जो विद्युत संकेतों से ध्वनि उत्पन्न करता है। वे अक्सर कठोर और तीखे होते हैं, और वास्तविक वक्ता की तरह कुछ भी नहीं बोलते हैं। उस ने कहा, वे बहुत सस्ते हैं, और प्रोग्राम करने में आसान हैं। हमारा बज़ वायर गेम खेलने के लिए एक का उपयोग करता है मोंटी पायथन 'फ्लाइंग सर्कस' थीम गीत .

अवरोध

एक रोकनेवाला बिजली के प्रवाह को सीमित करता है। वे बहुत सस्ते घटक हैं, और शौकिया और पेशेवर इलेक्ट्रॉनिक सर्किट के समान हैं। घटकों को अतिभारित होने से बचाने के लिए उन्हें लगभग हमेशा आवश्यक होता है। यदि Arduino +5V सीधे जमीन से जुड़ता है, तो शॉर्ट सर्किट को रोकने के लिए भी उनकी आवश्यकता होती है। संक्षेप में: बहुत आसान और बिल्कुल आवश्यक।

जम्पर तार

आपके ब्रेडबोर्ड पर घटकों के बीच अस्थायी कनेक्शन बनाने के लिए जम्पर तारों का उपयोग किया जाता है।

अपना Arduino सेट करना

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

विंडोज़ पर Arduino सॉफ़्टवेयर पैकेज स्थापित करना

के लिए सिर Arduino वेबसाइट और अपने विंडोज के संस्करण के लिए उपयुक्त Arduino सॉफ़्टवेयर का एक संस्करण डाउनलोड करें। एक बार डाउनलोड हो जाने के बाद, Arduino को स्थापित करने के लिए निर्देशों का पालन करें एकीकृत विकास पर्यावरण (यहां)।

इंस्टॉल में ड्राइवर शामिल हैं, इसलिए सिद्धांत रूप में, आपको सीधे जाने के लिए अच्छा होना चाहिए। यदि वह किसी कारण से विफल हो जाता है, तो ड्राइवरों को मैन्युअल रूप से स्थापित करने के लिए इन चरणों का प्रयास करें:

  • अपने बोर्ड में प्लग इन करें और विंडोज़ के लिए इसकी ड्राइवर स्थापना प्रक्रिया शुरू करने की प्रतीक्षा करें। कुछ क्षणों के बाद, यह प्रक्रिया अपने सर्वोत्तम प्रयासों के बावजूद विफल हो जाएगी।
  • पर क्लिक करें शुरुआत की सूची > कंट्रोल पैनल .
  • पर जाए सिस्टम और सुरक्षा > प्रणाली . सिस्टम विंडो खुलने के बाद, खोलें डिवाइस मैनेजर .
  • अंतर्गत बंदरगाहों (COM और LPT), आपको एक खुला पोर्ट दिखना चाहिए जिसका नाम है अरुडिनो यूएनओ (COMxx) .
  • राइट क्लिक करें अरुडिनो यूएनओ (COMxx) > ड्राइवर सॉफ्टवेयर अपडेट करें .
  • चुनना ड्राइवर सॉफ़्टवेयर के लिए मेरा कंप्यूटर ब्राउज़ करें .
  • नेविगेट करें और Uno की ड्राइवर फ़ाइल चुनें, जिसका नाम है ArduinoUNO.inf , में स्थित ड्राइवरों Arduino सॉफ़्टवेयर डाउनलोड का फ़ोल्डर।

विंडोज वहां से ड्राइवर इंस्टॉलेशन को पूरा करेगा।

मैक ओएस पर Arduino सॉफ़्टवेयर पैकेज स्थापित करना

मैक के लिए Arduino सॉफ़्टवेयर डाउनलोड करें Arduino वेबसाइट . की सामग्री निकालें ज़िप फ़ाइल करें और ऐप चलाएं। आप इसे अपने एप्लिकेशन फ़ोल्डर में कॉपी कर सकते हैं, लेकिन यह आपके से ठीक चलेगा डेस्कटॉप या डाउनलोड फ़ोल्डर्स आपको Arduino UNO के लिए कोई अतिरिक्त ड्राइवर स्थापित करने की आवश्यकता नहीं है।

पैकेज उबंटू/लिनक्स पर Arduino सॉफ़्टवेयर स्थापित करना

इंस्टॉल gcc-avr तथा avr-libc :

sudo apt-get install gcc-avr avr-libc

यदि आपके पास पहले से openjdk-6-jre नहीं है, तो उसे भी स्थापित और कॉन्फ़िगर करें:

sudo apt-get install openjdk-6-jre
sudo update-alternatives --config java

सही का चयन करें जेआरई यदि आपके पास एक से अधिक स्थापित हैं।

के पास जाओ Arduino वेबसाइट और Linux के लिए Arduino सॉफ़्टवेयर डाउनलोड करें। आप ऐसा कर सकते हैं फैला हुआ और इसे निम्न आदेश के साथ चलाएं:

tar xzvf arduino-x.x.x-linux64.tgz
cd arduino-1.0.1
./arduino

आप चाहे जो भी OS चला रहे हों, ऊपर दिए गए निर्देश मान लेते हैं कि आपके पास एक मूल, ब्रांडेड Arduino Uno बोर्ड है। यदि आपने एक क्लोन खरीदा है, तो USB पर बोर्ड की पहचान होने से पहले आपको लगभग निश्चित रूप से तीसरे पक्ष के ड्राइवरों की आवश्यकता होगी।

Arduino सॉफ़्टवेयर चलाना

अब जब सॉफ्टवेयर इंस्टॉल हो गया है और आपका Arduino सेट हो गया है, तो सत्यापित करें कि सब कुछ काम कर रहा है। ऐसा करने का सबसे आसान तरीका 'ब्लिंक' नमूना एप्लिकेशन का उपयोग करना है।

Arduino एप्लिकेशन को डबल-क्लिक करके Arduino सॉफ़्टवेयर खोलें ( लिनक्स पर ./arduino ) सुनिश्चित करें कि बोर्ड आपके कंप्यूटर से जुड़ा है, और फिर खोलें एलईडी ब्लिंक उदाहरण स्केच: फ़ाइल > उदाहरण > 1. मूल बातें > झपकी . आपको आवेदन के लिए खुला कोड देखना चाहिए:

इस कोड को अपने Arduino पर अपलोड करने के लिए, में प्रविष्टि का चयन करें उपकरण > तख़्ता मेनू जो आपके मॉडल से मेल खाता है -- Arduino uno इस मामले में।

से अपने बोर्ड के सीरियल डिवाइस का चयन करें उपकरण > सीरियल पोर्ट मेन्यू। विंडोज़ पर, यह होने की संभावना है COM3 या ऊँचा। मैक या लिनक्स पर इसके साथ कुछ होना चाहिए /dev/tty.usbmodem इस में।

अंत में, क्लिक करें डालना आपके परिवेश के ऊपर बाईं ओर स्थित बटन। कुछ सेकंड प्रतीक्षा करें, और आपको देखना चाहिए आरएक्स तथा टेक्सास Arduino चमकती पर एलईडी। अगर अपलोड सफल होता है, तो स्टेटस बार में 'हो गया अपलोडिंग' संदेश दिखाई देगा।

अपलोड समाप्त होने के कुछ सेकंड बाद, आपको यह देखना चाहिए पिन 13 बोर्ड पर लगी एलईडी झपकने लगती है। बधाई हो! आपने अपना Arduino ऊपर और चल रहा है।

स्टार्टर प्रोजेक्ट्स

अब जब आप मूल बातें जानते हैं, तो आइए कुछ शुरुआती परियोजनाओं को देखें।

आपने पहले ऑन-बोर्ड एलईडी को ब्लिंक करने के लिए Arduino नमूना कोड का उपयोग किया था। यह प्रोजेक्ट ब्रेडबोर्ड का उपयोग करके बाहरी एलईडी को फ्लैश करेगा। यहाँ सर्किट है:

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

यहां वह कोड है जिसकी आपको आवश्यकता है:

void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the pin as an output
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(7, HIGH); // turn LED on
delay(1000); // wait 1 second
digitalWrite(7, LOW); // turn LED off
delay(1000); // wait one second
}

यह कोड कई काम करता है:

व्यर्थ व्यवस्था(): यह हर बार शुरू होने पर एक बार Arduino द्वारा चलाया जाता है। यह वह जगह है जहां आप चर और कुछ भी कॉन्फ़िगर कर सकते हैं जो आपके Arduino को चलाने की आवश्यकता है।

पिनमोड (7, आउटपुट): यह Arduino को इस पिन को आउटपुट के रूप में उपयोग करने के लिए कहता है, इस लाइन के बिना, Arduino को यह नहीं पता होगा कि प्रत्येक पिन के साथ क्या करना है। इसे प्रति पिन केवल एक बार कॉन्फ़िगर करने की आवश्यकता है, और आपको केवल उन पिनों को कॉन्फ़िगर करने की आवश्यकता है जिनका आप उपयोग करना चाहते हैं।

शून्य लूप (): इस लूप के अंदर कोई भी कोड बार-बार चलाया जाता है, जब तक कि Arduino बंद नहीं हो जाता। यह बड़ी परियोजनाओं को और अधिक जटिल बना सकता है, लेकिन यह साधारण परियोजनाओं के लिए आश्चर्यजनक रूप से अच्छी तरह से काम करता है।

digitalWrite(7, उच्च): इसका उपयोग पिन सेट करने के लिए किया जाता है उच्च या कम - पर या बंद . लाइट स्विच की तरह, जब पिन हाई होगा, एलईडी चालू रहेगी। जब पिन कम होगा, तो एलईडी बंद हो जाएगी। कोष्ठक के अंदर, आपको इसके लिए कुछ अतिरिक्त जानकारी निर्दिष्ट करने की आवश्यकता है ताकि यह सही ढंग से काम कर सके। अतिरिक्त जानकारी को पैरामीटर या तर्क के रूप में जाना जाता है।

पहला (7) पिन नंबर है। उदाहरण के लिए, यदि आपने अपने एलईडी को एक अलग पिन से जोड़ा है, तो आप इसे सात से दूसरी संख्या में बदल देंगे। दूसरा पैरामीटर होना चाहिए उच्च या कम , जो निर्दिष्ट करता है कि एलईडी को चालू या बंद किया जाना चाहिए।

देरी (1000): Arduino को मिलीसेकंड में निर्दिष्ट समय की प्रतीक्षा करने के लिए कहता है। 1000 मिलीसेकंड एक सेकंड के बराबर है, इसलिए यह Arduino को एक सेकंड के लिए प्रतीक्षा करने के लिए मजबूर करेगा।

एक बार एलईडी को एक सेकंड के लिए चालू करने के बाद, Arduino फिर उसी कोड को चलाता है, केवल यह एलईडी को बंद करने के लिए आगे बढ़ता है और एक सेकंड प्रतीक्षा करता है। एक बार जब यह प्रक्रिया समाप्त हो जाती है, तो लूप फिर से शुरू हो जाता है, और एलईडी एक बार फिर चालू हो जाती है।

चुनौती: एलईडी को चालू और बंद करने के बीच के समय की देरी को समायोजित करने का प्रयास करें। आप क्या देखते हैं? यदि आप विलंब को बहुत छोटी संख्या जैसे एक या दो पर सेट करते हैं तो क्या होगा? क्या आप ब्लिंक करने के लिए कोड और सर्किट को संशोधित कर सकते हैं दो एलईडी?

एक बटन जोड़ना

अब जब आपके पास एक एलईडी काम कर रही है, तो चलिए अपने सर्किट में एक बटन जोड़ते हैं:

बटन को कनेक्ट करें ताकि ब्रेडबोर्ड के बीच में चैनल को पुल किया जा सके। कनेक्ट करें ठीक तरह से ऊपर पैर करने के लिए पिन 4 . कनेक्ट करें नीचे दाएं पैर से ए १०k ओम रोकनेवाला और फिर to ज़मीन . कनेक्ट करें तली छोड़ें पैर करने के लिए 5वी .

आप सोच रहे होंगे कि एक साधारण बटन को रेसिस्टर की आवश्यकता क्यों होती है। यह दो उद्देश्यों की पूर्ति करता है। यह है एक नीचे खींचना रोकनेवाला - यह पिन को जमीन से जोड़ता है। यह सुनिश्चित करता है कि कोई नकली मूल्यों का पता नहीं चला है, और Arduino . को रोकता है विचारधारा जब आपने नहीं किया तो आपने बटन दबाया। इस रोकनेवाला का दूसरा उद्देश्य करंट लिमिटर के रूप में है। इसके बिना, 5V सीधे जमीन में चला जाएगा, the जादू का धुआँ जारी किया जाएगा, और आपका Arduino मर जाएगा। इसे शॉर्ट सर्किट के रूप में जाना जाता है, इसलिए रोकनेवाला का उपयोग ऐसा होने से रोकता है।

जब बटन दबाया नहीं जाता है, तो Arduino जमीन का पता लगाता है ( पिन 4 > अवरोध > ज़मीन ) जब आप बटन दबाते हैं, तो 5V जमीन से जुड़ा होता है। Arduino पिन 4 इस परिवर्तन का पता लगा सकता है, क्योंकि पिन 4 अब जमीन से 5V में बदल गया है;

यहाँ कोड है:

boolean buttonOn = false; // store the button state
void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the LED as an output
pinMode(4, INPUT); // configure the button as an input
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(4)) {
delay(25);
if(digitalRead(4)) {
// if button was pressed (and was not a spurious signal)
if(buttonOn)
// toggle button state
buttonOn = false;
else
buttonOn = true;
delay(500); // wait 0.5s -- don't run the code multiple times
}
}
if(buttonOn)
digitalWrite(7, LOW); // turn LED off
else
digitalWrite(7, HIGH); // turn LED on
}

यह कोड आपके द्वारा पिछले भाग में सीखी गई बातों पर आधारित है। आपके द्वारा उपयोग किया गया हार्डवेयर बटन है a क्षणिक कार्य। इसका मतलब है कि यह तभी काम करेगा जब आप इसे दबाए रखेंगे। विकल्प है a latching कार्य। यह आपके लाइट या सॉकेट स्विच की तरह है, चालू करने के लिए एक बार दबाएं, बंद करने के लिए फिर से दबाएं। सौभाग्य से, कोड में एक लैचिंग व्यवहार लागू किया जा सकता है। यहाँ अतिरिक्त कोड क्या करता है:

बूलियन बटनऑन = झूठा: इस वेरिएबल का उपयोग बटन की स्थिति - ON या OFF, High या LOW को स्टोर करने के लिए किया जाता है। इसे असत्य का डिफ़ॉल्ट मान दिया गया है।

पिनमोड (4, इनपुट): एलईडी के लिए उपयोग किए जाने वाले कोड की तरह, यह लाइन Arduino को बताती है कि आपने एक इनपुट (अपना बटन) को पिन 4 से जोड़ा है।

अगर (डिजिटल रीड (4)): इसी प्रकार डिजिटलराइट () , डिजिटलरीड () पिन की स्थिति को पढ़ने के लिए प्रयोग किया जाता है। आपको इसे एक पिन नंबर (आपके बटन के लिए 4) प्रदान करना होगा।

एक बार जब आप बटन दबाते हैं, तो Arduino 25ms प्रतीक्षा करता है और बटन को फिर से जांचता है। यह एक के रूप में जाना जाता है सॉफ्टवेयर बहस . यह सुनिश्चित करता है कि Arduino जो सोचता है वह एक बटन प्रेस था, सचमुच एक बटन प्रेस था, और शोर नहीं। आपको ऐसा करने की आवश्यकता नहीं है, और ज्यादातर मामलों में इसके बिना चीजें ठीक काम करेंगी। यह एक सर्वोत्तम अभ्यास से अधिक है।

यदि Arduino निश्चित है कि आपने वास्तव में बटन दबाया है, तो यह के मान को बदल देता है बटनऑन चर। यह राज्य को टॉगल करता है:

बटनऑन सत्य है: असत्य पर सेट करें।

बटनऑन गलत है: सत्य पर सेट करें।

अंत में, एलईडी में संग्रहीत राज्य के अनुसार बंद कर दिया जाता है बटनऑन .

प्रकाश संवेदक

आइए एक उन्नत परियोजना पर चलते हैं। यह परियोजना a . का उपयोग करेगी प्रकाश आश्रित प्रतिरोधी (एलडीआर) उपलब्ध प्रकाश की मात्रा को मापने के लिए। Arduino तब आपके कंप्यूटर को वर्तमान प्रकाश स्तर के बारे में उपयोगी संदेश बताएगा।

सिम को कैसे ठीक करें प्रावधान नहीं मिमी#2

यहाँ सर्किट है:

चूंकि एलडीआर एक प्रकार के अवरोधक हैं, इससे कोई फर्क नहीं पड़ता कि उन्हें किस तरह से रखा गया है - उनके पास ध्रुवीयता नहीं है। जुडिये 5वी एलडीआर के एक तरफ। दूसरी तरफ से कनेक्ट करें ज़मीन द्वारा 1k ओम रोकनेवाला इस तरफ से भी कनेक्ट करें एनालॉग इनपुट 0 .

यह रोकनेवाला पिछले प्रोजेक्ट्स की तरह ही एक पुलडाउन रेसिस्टर का काम करता है। एक एनालॉग पिन की आवश्यकता होती है, क्योंकि एलडीआर एनालॉग डिवाइस होते हैं, और इन पिनों में एनालॉग हार्डवेयर को सटीक रूप से पढ़ने के लिए विशेष सर्किटरी होती है।

यहाँ कोड है:

int light = 0; // store the current light value
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); //configure serial to talk to computer
}
void loop() {
// put your main code here, to run repeatedly:
light = analogRead(A0); // read and save value from LDR

//tell computer the light level
if(light <100) {
Serial.println('It is quite light!');
}
else if(light > 100 && light <400) {
Serial.println('It is average light!');
}
else {
Serial.println('It is pretty dark!');
}
delay(500); // don't spam the computer!
}

यह कोड कुछ नई चीजें करता है:

सीरियल.बेगिन (9600): यह Arduino को बताता है कि आप 9600 की दर से धारावाहिक पर संवाद करना चाहते हैं। Arduino इसके लिए आवश्यक सब कुछ तैयार करेगा। दर उतनी महत्वपूर्ण नहीं है, लेकिन आपके Arduino और कंप्यूटर दोनों को एक ही उपयोग करने की आवश्यकता है।

एनालॉग रीड (A0): इसका उपयोग LDR से आने वाले मान को पढ़ने के लिए किया जाता है। कम मान का अर्थ है कि अधिक प्रकाश उपलब्ध है।

सीरियल.प्रिंट्लन (): इसका उपयोग सीरियल इंटरफ़ेस में टेक्स्ट लिखने के लिए किया जाता है।

सामान्य अगर स्टेटमेंट उपलब्ध लाइट के आधार पर आपके कंप्यूटर पर अलग-अलग स्ट्रिंग्स (टेक्स्ट) भेजता है।

इस कोड को अपलोड करें और USB केबल को कनेक्ट रखें (इसी तरह Arduino संचार करेगा, और बिजली कहाँ से आती है)। सीरियल मॉनिटर खोलें ( ठीक तरह से ऊपर > सीरियल मॉनिटर ), आपको अपने संदेशों को हर 0.5 सेकंड में आते देखना चाहिए।

आप क्या देखते हैं? यदि आप LDR को ढक देते हैं या उस पर तेज रोशनी डालते हैं तो क्या होता है? क्या आप सीरियल पर LDR के मान को प्रिंट करने के लिए कोड को संशोधित कर सकते हैं?

कुछ धमाल करें

यह प्रोजेक्ट ध्वनि बनाने के लिए पीजो स्पीकर का उपयोग करता है। यहाँ सर्किट है:

कुछ परिचित नोटिस? यह सर्किट लगभग बिल्कुल LED प्रोजेक्ट जैसा ही है। पीजोस बहुत ही सरल घटक होते हैं - विद्युत संकेत दिए जाने पर वे ध्वनि उत्पन्न करते हैं। कनेक्ट करें सकारात्मक डिजिटल करने के लिए पैर पिन 9 द्वारा २२० ओम रोकनेवाला कनेक्ट करें नकारात्मक पैर करने के लिए ज़मीन .

यहाँ कोड है, यह इस परियोजना के लिए बहुत आसान है:

void setup() {
// put your setup code here, to run once:
pinMode(9, OUTPUT); // configure piezo as output
}
void loop() {
// put your main code here, to run repeatedly:
tone(9, 1000); // make piezo buzz
delay(1000); // wait 1s
noTone(9); // stop sound
delay(1000); // wait 1s
}

यहां केवल कुछ नई कोड विशेषताएं हैं:

टोन (9, 1000): यह पीजो को ध्वनि उत्पन्न करता है। इसमें दो तर्क लगते हैं। पहला उपयोग करने के लिए पिन है, और दूसरा स्वर की आवृत्ति है।

नोटोन (9): यह दिए गए पिन पर कोई ध्वनि उत्पन्न करना बंद कर देता है।

भिन्न आवृत्ति उत्पन्न करने के लिए इस कोड को बदलने का प्रयास करें। विलंब को 1ms में बदलें -- आप क्या देखते हैं?

यहाँ से कहाँ जाएं

जैसा कि आप देख सकते हैं, Arduino इलेक्ट्रॉनिक्स और सॉफ्टवेयर में आने का एक आसान तरीका है। यह शुरुआती लोगों के लिए सबसे अच्छे माइक्रोकंट्रोलर में से एक है। उम्मीद है कि आपने देखा होगा कि Arduino के साथ सरल इलेक्ट्रॉनिक प्रोजेक्ट बनाना आसान है। बुनियादी परियोजनाओं को समझने के बाद आप और अधिक जटिल परियोजनाओं का निर्माण कर सकते हैं:

  • क्रिसमस लाइट आभूषण बनाएं
  • आपके प्रोजेक्ट को सुपरपावर करने के लिए Arduino Shields
  • Arduino के साथ अपना खुद का पोंग गेम बनाएं
  • अपने Arduino को इंटरनेट से कनेक्ट करें
  • अपने Arduino के साथ एक होम ऑटोमेशन सिस्टम बनाएं

आपके पास क्या Arduino है? क्या कोई मज़ेदार प्रोजेक्ट हैं जिन्हें आप बनाना पसंद करते हैं? अधिक जानकारी के लिए, VS कोड और PlatformIO के साथ अपने Arduino कोडिंग को बेहतर बनाने के तरीके पर एक नज़र डालें।

साझा करना साझा करना कलरव ईमेल 15 विंडोज़ कमांड प्रॉम्प्ट (सीएमडी) कमांड जो आपको अवश्य जानना चाहिए

कमांड प्रॉम्प्ट अभी भी एक शक्तिशाली विंडोज टूल है। यहां सबसे उपयोगी सीएमडी कमांड हैं जिन्हें हर विंडोज उपयोगकर्ता को जानना आवश्यक है।

आगे पढ़िए
संबंधित विषय
  • DIY
  • अरुडिनो
  • इलेक्ट्रानिक्स
लेखक के बारे में जो कोबर्न(136 लेख प्रकाशित)

जो ब्रिटेन के लिंकन विश्वविद्यालय से कंप्यूटर विज्ञान में स्नातक हैं। वह एक पेशेवर सॉफ्टवेयर डेवलपर है, और जब वह ड्रोन नहीं उड़ा रहा है या संगीत नहीं लिख रहा है, तो उसे अक्सर तस्वीरें लेते या वीडियो बनाते हुए पाया जा सकता है।

जो कोबर्न . की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें
श्रेणी Diy