इंजीनियर

इंजीनियर्स ESP8266 NodeMCU विकास बोर्ड

इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड

इंटरनेट ऑफ थिंग्स (IoT) तकनीक की दुनिया में एक ट्रेंडिंग क्षेत्र रहा है। इसने हमारे काम करने के तरीके को बदल दिया है। भौतिक वस्तुएं और डिजिटल दुनिया अब पहले से कहीं ज़्यादा जुड़ी हुई हैं। इसे ध्यान में रखते हुए, एस्प्रेसिफ़ सिस्टम्स (शंघाई स्थित सेमीकंडक्टर कंपनी) ने एक आकर्षक, छोटे आकार का WiFi-सक्षम माइक्रोकंट्रोलर - ESP8266, अविश्वसनीय कीमत पर जारी किया है! $3 से कम कीमत पर, यह दुनिया में कहीं से भी चीजों की निगरानी और नियंत्रण कर सकता है - लगभग किसी भी IoT प्रोजेक्ट के लिए एकदम सही।

विकास बोर्ड ESP-12E मॉड्यूल से सुसज्जित है, जिसमें ESP8266 चिप है, जिसमें Tensilica Xtensa® 32-बिट LX106 RISC माइक्रोप्रोसेसर है, जो 80 से 160 मेगाहर्ट्ज समायोज्य क्लॉक आवृत्ति पर संचालित होता है और RTOS का समर्थन करता है।

ईएसपी-12ई चिप

  • टेन्सिलिका एक्सटेंसा® 32-बिट LX106
  • 80 से 160 मेगाहर्ट्ज घड़ी आवृत्ति.
  • 128kB आंतरिक रैम
  • 4MB बाह्य फ़्लैश
  • 802.11b/g/n वाई-फाई ट्रांसीवरइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-1

इसमें 128 KB रैम और 4MB फ्लैश मेमोरी (प्रोग्राम और डेटा भंडारण के लिए) भी है, जो बड़ी स्ट्रिंग्स को संभालने के लिए पर्याप्त है। web पेज, JSON/XML डेटा, और वह सब कुछ जो हम आजकल IoT डिवाइस पर डालते हैं। ESP8266 802.11b/g/n HT40 वाई-फाई ट्रांसीवर को एकीकृत करता है, इसलिए यह न केवल वाई-फाई नेटवर्क से जुड़ सकता है और इंटरनेट के साथ बातचीत कर सकता है, बल्कि यह अपना खुद का नेटवर्क भी स्थापित कर सकता है, जिससे अन्य डिवाइस सीधे इससे जुड़ सकते हैं। यह ESP8266 NodeMCU को और भी अधिक बहुमुखी बनाता है।

बिजली की आवश्यकता

ऑपरेटिंग वॉल्यूम के रूप मेंtagESP8266 की रेंज 3V से 3.6V है, बोर्ड LDO वॉल्यूम के साथ आता हैtagई नियामक वॉल्यूम रखने के लिएtag3.3V पर स्थिर है। यह 600mA तक की आपूर्ति कर सकता है, जो कि पर्याप्त से अधिक होना चाहिए जब ESP8266 RF ट्रांसमिशन के दौरान 80mA तक खींचता है। नियामक का आउटपुट भी बोर्ड के एक तरफ से टूट गया है और 3V3 के रूप में लेबल किया गया है। इस पिन का उपयोग बाहरी घटकों को बिजली की आपूर्ति के लिए किया जा सकता है।

बिजली की आवश्यकता

  • ऑपरेटिंग वॉल्यूमtagई: 2.5V से 3.6V
  • ऑन-बोर्ड 3.3V 600mA रेगुलेटर
  • 80mA ऑपरेटिंग करंट
  • स्लीप मोड के दौरान 20 μAइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-2

ESP8266 NodeMCU को पावर ऑन-बोर्ड MicroB USB कनेक्टर के माध्यम से दी जाती है। वैकल्पिक रूप से, यदि आपके पास विनियमित 5V वॉल्यूम हैtagई स्रोत पर, VIN पिन का उपयोग सीधे ESP8266 और इसके बाह्य उपकरणों को आपूर्ति करने के लिए किया जा सकता है।

चेतावनी: ESP8266 को संचार के लिए 3.3V पावर सप्लाई और 3.3V लॉजिक लेवल की आवश्यकता होती है। GPIO पिन 5V-सहिष्णु नहीं हैं! यदि आप बोर्ड को 5V (या उच्चतर) घटकों के साथ इंटरफेस करना चाहते हैं, तो आपको कुछ लेवल शिफ्टिंग करने की आवश्यकता होगी।

बाह्य उपकरण और I/O

ESP8266 NodeMCU में कुल 17 GPIO पिन हैं जो डेवलपमेंट बोर्ड के दोनों तरफ पिन हेडर में विभाजित हैं। इन पिन को सभी प्रकार के परिधीय कार्यों के लिए असाइन किया जा सकता है, जिनमें शामिल हैं:

  • एडीसी चैनल - एक 10-बिट एडीसी चैनल.
  • UART इंटरफ़ेस - UART इंटरफ़ेस का उपयोग कोड को क्रमिक रूप से लोड करने के लिए किया जाता है।
  • पीडब्लूएम आउटपुट - एलईडी को मंद करने या मोटरों को नियंत्रित करने के लिए पीडब्लूएम पिन।
  • एसपीआई, आई2सी और आई2एस इंटरफेस - सभी प्रकार के सेंसरों और बाह्य उपकरणों को जोड़ने के लिए एसपीआई और आई2सी इंटरफेस।
  • I2S इंटरफ़ेस - यदि आप अपने प्रोजेक्ट में ध्वनि जोड़ना चाहते हैं तो I2S इंटरफ़ेस।

मल्टीप्लेक्स I/Os

  • 1 एडीसी चैनल
  • 2 UART इंटरफेस
  • 4 पीडब्लूएम आउटपुट
  • एसपीआई, I2C और I2S इंटरफ़ेसइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-3

ESP8266 की पिन मल्टीप्लेक्सिंग सुविधा (एकल GPIO पिन पर कई परिधीय मल्टीप्लेक्स) के लिए धन्यवाद। इसका मतलब है कि एक एकल GPIO पिन PWM/UART/SPI के रूप में कार्य कर सकता है।

ऑन-बोर्ड स्विच और एलईडी संकेतक

ESP8266 NodeMCU में दो बटन हैं। ऊपरी बाएँ कोने पर स्थित RST के रूप में चिह्नित एक बटन रीसेट बटन है, जिसका उपयोग निश्चित रूप से ESP8266 चिप को रीसेट करने के लिए किया जाता है। निचले बाएँ कोने पर दूसरा फ़्लैश बटन फ़र्मवेयर को अपग्रेड करते समय उपयोग किया जाने वाला डाउनलोड बटन है।

स्विच और संकेतक

  • RST – ESP8266 चिप को रीसेट करें
  • फ्लैश - नए प्रोग्राम डाउनलोड करें
  • नीली एलईडी – उपयोगकर्ता प्रोग्रामयोग्यइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-4

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

धारावाहिक संचार

बोर्ड में सिलिकॉन लैब्स का CP2102 USB-to-UART ब्रिज कंट्रोलर शामिल है, जो USB सिग्नल को सीरियल में परिवर्तित करता है और आपके कंप्यूटर को ESP8266 चिप के साथ प्रोग्राम और संचार करने की अनुमति देता है।

धारावाहिक संचार

  • CP2102 USB-टू-UART कनवर्टर
  • 4.5 एमबीपीएस संचार गति
  • प्रवाह नियंत्रण समर्थनइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-5

यदि आपके पीसी पर CP2102 ड्राइवर का पुराना संस्करण स्थापित है, तो हम इसे अभी अपग्रेड करने की अनुशंसा करते हैं।
CP2102 ड्राइवर को अपग्रेड करने के लिए लिंक – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

ESP8266 नोडएमसीयू पिनआउट

ESP8266 NodeMCU में कुल 30 पिन हैं जो इसे बाहरी दुनिया से जोड़ते हैं। कनेक्शन इस प्रकार हैं:इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-6

सरलता के लिए, हम समान कार्यक्षमता वाले पिनों के समूह बनाएंगे।

पावर पिन चार पावर पिन हैं, यानी एक VIN पिन और तीन 3.3V पिन। VIN पिन का उपयोग सीधे ESP8266 और उसके बाह्य उपकरणों को आपूर्ति करने के लिए किया जा सकता है, यदि आपके पास विनियमित 5V वॉल्यूम हैtagई स्रोत। 3.3V पिन ऑन-बोर्ड वॉल्यूम का आउटपुट हैंtagई नियामक। इन पिनों का उपयोग बाहरी घटकों को बिजली की आपूर्ति के लिए किया जा सकता है।

GND ESP8266 NodeMCU डेवलपमेंट बोर्ड का ग्राउंड पिन है। I2C पिन का उपयोग आपके प्रोजेक्ट में सभी प्रकार के I2C सेंसर और बाह्य उपकरणों को जोड़ने के लिए किया जाता है। I2C मास्टर और I2C स्लेव दोनों समर्थित हैं। I2C इंटरफ़ेस कार्यक्षमता को प्रोग्रामेटिक रूप से महसूस किया जा सकता है, और क्लॉक फ़्रीक्वेंसी अधिकतम 100 kHz है। यह ध्यान दिया जाना चाहिए कि I2C क्लॉक फ़्रीक्वेंसी स्लेव डिवाइस की सबसे धीमी क्लॉक फ़्रीक्वेंसी से अधिक होनी चाहिए।

जीपीआईओ पिन ESP8266 NodeMCU में 17 GPIO पिन हैं जिन्हें I2C, I2S, UART, PWM, IR रिमोट कंट्रोल, LED लाइट और बटन जैसे विभिन्न कार्यों के लिए प्रोग्रामेटिक रूप से असाइन किया जा सकता है। प्रत्येक डिजिटल सक्षम GPIO को आंतरिक पुल-अप या पुल-डाउन के लिए कॉन्फ़िगर किया जा सकता है, या उच्च प्रतिबाधा पर सेट किया जा सकता है। जब इसे इनपुट के रूप में कॉन्फ़िगर किया जाता है, तो इसे CPU इंटरप्ट उत्पन्न करने के लिए एज-ट्रिगर या लेवल-ट्रिगर पर भी सेट किया जा सकता है।

एडीसी चैनल NodeMCU में 10-बिट प्रेसिजन SAR ADC लगा हुआ है। ADC का उपयोग करके दो कार्यों को क्रियान्वित किया जा सकता है। पावर सप्लाई वॉल्यूम का परीक्षण करनाtagVDD3P3 पिन का ई और परीक्षण इनपुट वॉल्यूमtagTOUT पिन का ई। हालाँकि, उन्हें एक ही समय में लागू नहीं किया जा सकता है।

UART पिन ESP8266 NodeMCU में 2 UART इंटरफ़ेस हैं, यानी UART0 और UART1, जो एसिंक्रोनस संचार (RS232 और RS485) प्रदान करते हैं, और 4.5 एमबीपीएस तक संचार कर सकते हैं। संचार के लिए UART0 (TXD0, RXD0, RST0 और CTS0 पिन) का उपयोग किया जा सकता है। यह द्रव नियंत्रण का समर्थन करता है। हालाँकि, UART1 (TXD1 पिन) में केवल डेटा ट्रांसमिट सिग्नल होता है, इसलिए इसका उपयोग आमतौर पर लॉग प्रिंट करने के लिए किया जाता है।

एसपीआई पिन ESP8266 में स्लेव और मास्टर मोड में दो SPI (SPI और HSPI) हैं। ये SPI निम्नलिखित सामान्य-उद्देश्य SPI सुविधाओं का भी समर्थन करते हैं:

  • एसपीआई प्रारूप स्थानांतरण के 4 समय मोड
  • 80 मेगाहर्ट्ज तक और 80 मेगाहर्ट्ज की विभाजित घड़ियां
  • 64-बाइट FIFO तक

एसडीआईओ पिन ESP8266 में सुरक्षित डिजिटल इनपुट/आउटपुट इंटरफ़ेस (SDIO) की सुविधा है, जिसका उपयोग SD कार्ड को सीधे इंटरफ़ेस करने के लिए किया जाता है। 4-बिट 25 MHz SDIO v1.1 और 4-बिट 50 MHz SDIO v2.0 समर्थित हैं।

पीडब्लूएम पिन बोर्ड में पल्स चौड़ाई मॉड्यूलेशन (PWM) के 4 चैनल हैं। PWM आउटपुट को प्रोग्रामेटिक रूप से लागू किया जा सकता है और डिजिटल मोटर्स और LED को चलाने के लिए इस्तेमाल किया जा सकता है। PWM आवृत्ति रेंज 1000 μs से 10000 μs तक समायोज्य है, यानी 100 Hz और 1 kHz के बीच।

पिन नियंत्रित करें ESP8266 को नियंत्रित करने के लिए उपयोग किया जाता है। इन पिनों में चिप सक्षम पिन (EN), रीसेट पिन (RST) और WAKE पिन शामिल हैं।

  • EN पिन - ESP8266 चिप तब सक्षम होती है जब EN पिन को HIGH पर खींचा जाता है। जब इसे LOW पर खींचा जाता है तो चिप न्यूनतम शक्ति पर काम करती है।
  • आरएसटी पिन - आरएसटी पिन का उपयोग ESP8266 चिप को रीसेट करने के लिए किया जाता है।
  • वेक पिन - वेक पिन का उपयोग चिप को गहरी नींद से जगाने के लिए किया जाता है।

ESP8266 विकास प्लेटफ़ॉर्म

अब, चलिए दिलचस्प चीजों पर चलते हैं! ESP8266 को प्रोग्राम करने के लिए कई तरह के डेवलपमेंट प्लेटफ़ॉर्म उपलब्ध हैं। आप Espruino - JavaScript SDK और Node.js का बारीकी से अनुकरण करने वाले फ़र्मवेयर का उपयोग कर सकते हैं, या Mongoose OS - IoT डिवाइस के लिए एक ऑपरेटिंग सिस्टम (Espressif Systems और Google Cloud IoT द्वारा अनुशंसित प्लेटफ़ॉर्म) का उपयोग कर सकते हैं या Espressif द्वारा प्रदान किए गए सॉफ़्टवेयर डेवलपमेंट किट (SDK) या WiKiPedia पर सूचीबद्ध प्लेटफ़ॉर्म में से किसी एक का उपयोग कर सकते हैं। सौभाग्य से, अद्भुत ESP8266 समुदाय ने Arduino ऐड-ऑन बनाकर IDE चयन को एक कदम आगे बढ़ाया है। यदि आप अभी ESP8266 प्रोग्रामिंग शुरू कर रहे हैं, तो यह वह वातावरण है जिससे हम शुरुआत करने की सलाह देते हैं, और जिसे हम इस ट्यूटोरियल में दस्तावेज़ित करेंगे।
Arduino के लिए यह ESP8266 ऐड-ऑन इवान ग्रोखोटकोव और ESP8266 समुदाय के बाकी लोगों के अद्भुत काम पर आधारित है। अधिक जानकारी के लिए ESP8266 Arduino GitHub रिपॉजिटरी देखें।

विंडोज ओएस पर ESP8266 कोर स्थापित करना

आइए ESP8266 Arduino कोर को इंस्टॉल करना शुरू करें। सबसे पहले अपने पीसी पर नवीनतम Arduino IDE (Arduino 1.6.4 या उच्चतर) इंस्टॉल करें। अगर आपके पास यह नहीं है, तो हम अभी अपग्रेड करने की सलाह देते हैं।
Arduino IDE के लिए लिंक – https://www.arduino.cc/en/software
आरंभ करने के लिए, हमें बोर्ड प्रबंधक को कस्टम के साथ अपडेट करना होगा URLArduino IDE खोलें और पर जाएँ File > प्राथमिकताएँ। फिर, नीचे कॉपी करें URL अतिरिक्त बोर्ड प्रबंधक में URLविंडो के नीचे स्थित टेक्स्ट बॉक्स पर क्लिक करें: http://arduino.esp8266.com/stable/package_esp8266com_index.jsonइंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-7

ओके दबाएं। फिर टूल्स > बोर्ड्स > बोर्ड्स मैनेजर पर जाकर बोर्ड मैनेजर पर जाएँ। मानक Arduino बोर्ड के अलावा कुछ नई प्रविष्टियाँ भी होनी चाहिए। esp8266 टाइप करके अपनी खोज को फ़िल्टर करें। उस प्रविष्टि पर क्लिक करें और इंस्टॉल चुनें।इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-8

ESP8266 के लिए बोर्ड परिभाषाओं और उपकरणों में gcc, g++, और अन्य उचित रूप से बड़े, संकलित बाइनरी का एक नया सेट शामिल है, इसलिए इसे डाउनलोड और इंस्टॉल करने में कुछ मिनट लग सकते हैं (संग्रहीत file ~110MB है)। एक बार इंस्टॉलेशन पूरा हो जाने पर, एंट्री के बगल में एक छोटा INSTALLED टेक्स्ट दिखाई देगा। अब आप बोर्ड मैनेजर को बंद कर सकते हैं

Arduino एक्सampले: पलक

यह सुनिश्चित करने के लिए कि ESP8266 Arduino कोर और NodeMCU ठीक से सेट अप हैं, हम सभी में से सबसे सरल स्केच अपलोड करेंगे - द ब्लिंक! हम इस परीक्षण के लिए ऑन-बोर्ड LED का उपयोग करेंगे। जैसा कि इस ट्यूटोरियल में पहले बताया गया है, बोर्ड का D0 पिन ऑन-बोर्ड ब्लू LED से जुड़ा हुआ है और उपयोगकर्ता प्रोग्राम करने योग्य है। बढ़िया! स्केच अपलोड करने और LED के साथ खेलने से पहले, हमें यह सुनिश्चित करने की आवश्यकता है कि Arduino IDE में बोर्ड ठीक से चुना गया है। Arduino IDE खोलें और अपने Arduino IDE > Tools > Board मेनू के अंतर्गत NodeMCU 0.9 (ESP-12 Module) विकल्प चुनें।इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-9

अब, अपने ESP8266 NodeMCU को माइक्रो-बी USB केबल के ज़रिए अपने कंप्यूटर में प्लग करें। बोर्ड के प्लग इन हो जाने के बाद, इसे एक अद्वितीय COM पोर्ट असाइन किया जाना चाहिए। विंडोज मशीनों पर, यह COM# जैसा कुछ होगा, और मैक/लिनक्स कंप्यूटर पर यह /dev/tty.usbserial-XXXXXX के रूप में आएगा। Arduino IDE > Tools > Port मेनू के अंतर्गत इस सीरियल पोर्ट का चयन करें। अपलोड स्पीड भी चुनें: 115200इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-10

चेतावनी: बोर्ड का चयन करने, COM पोर्ट चुनने और अपलोड स्पीड का चयन करने पर अधिक ध्यान देने की आवश्यकता है। यदि आप ऐसा करने में विफल रहते हैं, तो आपको नए स्केच अपलोड करते समय espcomm_upload_mem त्रुटि मिल सकती है।

एक बार जब आपका काम हो जाए, तो पूर्व प्रयास करेंampनीचे दिए गए स्केच.

शून्य सेटअप()
{पिनमोड(D0, आउटपुट);}void लूप()
{डिजिटलराइट(D0, हाई);
देरी(500);
डिजिटलवाइट(D0, कम);
देरी(500);
कोड अपलोड होने के बाद, LED चमकने लगेगी। अपने ESP8266 को स्केच चलाने के लिए आपको RST बटन पर टैप करना पड़ सकता है।इंजीनियर्स-नोडएमसीयू-डेवलपमेंट-बोर्ड-11

दस्तावेज़ / संसाधन

इंजीनियर्स ESP8266 NodeMCU विकास बोर्ड [पीडीएफ] निर्देश
ESP8266 NodeMCU विकास बोर्ड, ESP8266, NodeMCU विकास बोर्ड

संदर्भ

एक टिप्पणी छोड़ें

आपकी ईमेल आईडी प्रकाशित नहीं की जाएगी। आवश्यक फ़ील्ड चिह्नित हैं *