ईन्जिनियर्स ESP8266 NodeMCU विकास बोर्ड
इन्टरनेट अफ थिंग्स (IoT) टेक्नोलोजीको संसारमा एक प्रचलन क्षेत्र भएको छ। यसले हाम्रो काम गर्ने तरिका परिवर्तन गरेको छ। भौतिक वस्तुहरू र डिजिटल संसार पहिले भन्दा बढि जोडिएको छ। यसलाई ध्यानमा राख्दै, Espressif Systems (Shanghai-based Semiconductor Company) ले एउटा मनमोहक, बाइट साइजको वाइफाइ-सक्षम माइक्रोकन्ट्रोलर - ESP8266, अविश्वसनीय मूल्यमा जारी गरेको छ! $3 भन्दा कममा, यसले विश्वको जुनसुकै ठाउँबाट चीजहरू निगरानी र नियन्त्रण गर्न सक्छ - कुनै पनि IoT परियोजनाको लागि उपयुक्त।
विकास बोर्डले Tensilica Xtensa® 12-bit LX8266 RISC माइक्रोप्रोसेसर भएको ESP32 चिप भएको ESP-106E मोड्युललाई सुसज्जित गर्दछ जुन 80 देखि 160 MHz समायोज्य घडी फ्रिक्वेन्सीमा सञ्चालन हुन्छ र RTOS लाई समर्थन गर्दछ।
ESP-12E चिप
- Tensilica Xtensa® 32-bit LX106
- 80 देखि 160 MHz घडी आवृत्ति।
- 128kB आन्तरिक RAM
- 4MB बाह्य फ्ल्यास
- 802.11b/g/n Wi-Fi ट्रान्सीभर
त्यहाँ 128 KB RAM र 4MB फ्ल्यास मेमोरी (कार्यक्रम र डेटा भण्डारणको लागि) पनि छ जुन ठूला स्ट्रिङहरूसँग सामना गर्न पर्याप्त छ। web पृष्ठहरू, JSON/XML डाटा, र सबै चीजहरू जुन हामीले आजकल IoT उपकरणहरूमा फ्याँक्छौं। ESP8266 ले 802.11b/g/n HT40 Wi-Fi ट्रान्सीभरलाई एकीकृत गर्दछ, त्यसैले यसले वाइफाइ नेटवर्कमा जडान गर्न र इन्टरनेटसँग अन्तर्क्रिया मात्र गर्न सक्दैन, तर यसले अन्य यन्त्रहरूलाई सीधा जडान गर्न अनुमति दिँदै आफ्नै नेटवर्क पनि सेट गर्न सक्छ। यो। यसले ESP8266 NodeMCU लाई अझ बहुमुखी बनाउँछ।
पावर आवश्यकता
सञ्चालन भोल्युमको रूपमाtagESP8266 को e दायरा 3V देखि 3.6V सम्म छ, बोर्ड LDO भोल्युमको साथ आउँछ।tagई नियामकले भोल्युम राख्नtage 3.3V मा स्थिर। यसले भरपर्दो रूपमा 600mA सम्म आपूर्ति गर्न सक्छ, जुन ESP8266 RF प्रसारणको क्रममा 80mA जति तान्दा पर्याप्त भन्दा बढी हुनुपर्छ। नियामकको आउटपुट पनि बोर्डको एक छेउमा तोडिएको छ र 3V3 को रूपमा लेबल गरिएको छ। यो पिन बाह्य कम्पोनेन्टहरूमा पावर आपूर्ति गर्न प्रयोग गर्न सकिन्छ।
पावर आवश्यकता
- परिचालन भोल्युमtage: 2.5V देखि 3.6V
- अन-बोर्ड 3.3V 600mA नियामक
- 80mA सञ्चालन वर्तमान
- निद्रा मोडको समयमा 20 μA
ESP8266 NodeMCU लाई पावर अन-बोर्ड माइक्रोबी USB कनेक्टर मार्फत आपूर्ति गरिन्छ। वैकल्पिक रूपमा, यदि तपाइँसँग विनियमित 5V भोल्युम छtagई स्रोत, VIN पिन प्रत्यक्ष रूपमा ESP8266 र यसको बाह्य उपकरणहरू आपूर्ति गर्न प्रयोग गर्न सकिन्छ।
चेतावनी: ESP8266 लाई 3.3V बिजुली आपूर्ति र सञ्चारको लागि 3.3V तर्क स्तरहरू आवश्यक पर्दछ। GPIO पिनहरू 5V-सहिष्णु छैनन्! यदि तपाइँ 5V (वा उच्च) कम्पोनेन्टहरूसँग बोर्ड इन्टरफेस गर्न चाहनुहुन्छ भने, तपाइँले केहि स्तर परिवर्तन गर्न आवश्यक छ।
परिधीय र I/O
ESP8266 NodeMCU सँग कुल 17 GPIO पिनहरू विकास बोर्डको दुबै छेउमा पिन हेडरहरूमा तोडिएका छन्। यी पिनहरू सबै प्रकारका परिधीय कर्तव्यहरूमा तोक्न सकिन्छ, जसमा:
- ADC च्यानल - एक 10-बिट ADC च्यानल।
- UART इन्टरफेस - UART इन्टरफेस क्रमशः कोड लोड गर्न प्रयोग गरिन्छ।
- PWM आउटपुटहरू - LEDs वा नियन्त्रण गर्ने मोटरहरूको लागि PWM पिनहरू।
- SPI, I2C र I2S इन्टरफेस - SPI र I2C इन्टरफेस सबै प्रकारका सेन्सर र बाह्य उपकरणहरू हुक गर्न।
- I2S इन्टरफेस - यदि तपाईं आफ्नो परियोजनामा ध्वनि थप्न चाहनुहुन्छ भने I2S इन्टरफेस।
मल्टिप्लेक्स I/Os
- 1 ADC च्यानलहरू
- २ UART इन्टरफेसहरू
- 4 PWM आउटपुटहरू
- SPI, I2C र I2S इन्टरफेस
ESP8266 को पिन मल्टिप्लेक्सिङ सुविधाको लागि धन्यवाद (एकल GPIO पिनमा बहु परिधीय मल्टिप्लेक्स)। यसको मतलब एकल GPIO पिनले PWM/UART/SPI को रूपमा काम गर्न सक्छ।
अन-बोर्ड स्विच र एलईडी सूचक
ESP8266 NodeMCU मा दुई बटनहरू छन्। माथिको बायाँ कुनामा अवस्थित RST को रूपमा चिन्ह लगाइएको एउटा रिसेट बटन हो, ESP8266 चिप रिसेट गर्न प्रयोग गरिन्छ। तल बायाँ कुनामा रहेको अर्को FLASH बटन फर्मवेयर अपग्रेड गर्दा प्रयोग गरिएको डाउनलोड बटन हो।
स्विच र संकेतकहरू
- RST - ESP8266 चिप रिसेट गर्नुहोस्
- FLASH - नयाँ कार्यक्रमहरू डाउनलोड गर्नुहोस्
- नीलो एलईडी - प्रयोगकर्ता प्रोग्रामेबल
बोर्डमा एक LED सूचक पनि छ जुन प्रयोगकर्ता प्रोग्रामयोग्य छ र बोर्डको D0 पिनसँग जोडिएको छ।
सिरियल संचार
बोर्डले सिलिकन ल्याबहरूबाट CP2102 USB-to-UART ब्रिज कन्ट्रोलर समावेश गर्दछ, जसले USB सिग्नललाई क्रमिकमा रूपान्तरण गर्छ र तपाइँको कम्प्युटरलाई ESP8266 चिपसँग प्रोग्राम गर्न र सञ्चार गर्न अनुमति दिन्छ।
सिरियल संचार
- CP2102 USB-to-UART कनवर्टर
- 4.5 Mbps संचार गति
- प्रवाह नियन्त्रण समर्थन
यदि तपाइँसँग तपाइँको PC मा CP2102 ड्राइभरको पुरानो संस्करण स्थापित छ भने, हामी अहिले अपग्रेड गर्न सिफारिस गर्दछौं।
CP2102 ड्राइभर अपग्रेड गर्न लिङ्क - https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU पिनआउट
ESP8266 NodeMCU सँग कुल 30 पिनहरू छन् जसले यसलाई बाहिरी संसारमा इन्टरफेस गर्दछ। जडानहरू निम्नानुसार छन्:
सरलताको खातिर, हामी समान प्रकार्यहरूसँग पिनहरूको समूह बनाउनेछौं।
पावर पिनहरू त्यहाँ चार पावर पिनहरू छन्। एक VIN पिन र तीन 3.3V पिन। VIN पिन ESP8266 र यसको बाह्य उपकरणहरू सिधै आपूर्ति गर्न प्रयोग गर्न सकिन्छ, यदि तपाईंसँग 5V भोल्युम छ भने।tagई स्रोत। 3.3V पिनहरू अन-बोर्ड भोल्युमको आउटपुट हुन्tage नियामक। यी पिनहरू बाह्य घटकहरूलाई शक्ति आपूर्ति गर्न प्रयोग गर्न सकिन्छ।
GND ESP8266 NodeMCU विकास बोर्डको ग्राउन्ड पिन हो। I2C पिनहरू तपाईंको परियोजनामा सबै प्रकारका I2C सेन्सर र बाह्य उपकरणहरू हुक गर्न प्रयोग गरिन्छ। दुबै I2C मास्टर र I2C स्लेभ समर्थित छन्। I2C इन्टरफेस कार्यक्षमता प्रोग्रामेटिक रूपमा महसुस गर्न सकिन्छ, र घडीको आवृत्ति अधिकतममा 100 kHz हो। यो ध्यान दिनुपर्छ कि I2C घडी फ्रिक्वेन्सी दास उपकरणको सबैभन्दा ढिलो घडी आवृत्ति भन्दा उच्च हुनुपर्छ।
GPIO पिनहरू ESP8266 NodeMCU सँग 17 GPIO पिनहरू छन् जसलाई I2C, I2S, UART, PWM, IR रिमोट कन्ट्रोल, LED लाइट र बटन प्रोग्रामेटिक रूपमा विभिन्न प्रकार्यहरूमा तोक्न सकिन्छ। प्रत्येक डिजिटल सक्षम GPIO लाई आन्तरिक पुल-अप वा पुल-डाउनमा कन्फिगर गर्न सकिन्छ, वा उच्च प्रतिबाधामा सेट गर्न सकिन्छ। इनपुटको रूपमा कन्फिगर गर्दा, यसलाई किनारा-ट्रिगर वा स्तर-ट्रिगरमा सीपीयू अवरोधहरू उत्पन्न गर्न सेट गर्न सकिन्छ।
ADC च्यानल NodeMCU 10-bit परिशुद्धता SAR ADC संग इम्बेड गरिएको छ। दुई प्रकार्यहरू ADC अर्थात् प्रयोग गरेर लागू गर्न सकिन्छ। परीक्षण पावर आपूर्ति भोल्युमtagVDD3P3 पिन र परीक्षण इनपुट भोल्युम को etagTOUT pin को e। तर, एकै समयमा कार्यान्वयन हुन सक्दैन ।
UART पिनहरू ESP8266 NodeMCU सँग २ UART इन्टरफेसहरू छन्, जस्तै UART2 र UART0, जसले एसिन्क्रोनस कम्युनिकेसन (RS1 र RS232) प्रदान गर्दछ, र 485 Mbps सम्म सञ्चार गर्न सक्छ। UART4.5 (TXD0, RXD0, RST0 र CTS0 पिनहरू) संचारको लागि प्रयोग गर्न सकिन्छ। यसले तरल पदार्थ नियन्त्रणलाई समर्थन गर्दछ। यद्यपि, UART0 (TXD1 पिन) ले डाटा ट्रान्समिट सिग्नल मात्र दिन्छ, त्यसैले यो सामान्यतया लग प्रिन्ट गर्न प्रयोग गरिन्छ।
SPI पिनहरू ESP8266 ले दास र मास्टर मोडहरूमा दुई SPI (SPI र HSPI) सुविधा दिन्छ। यी SPI ले निम्न सामान्य-उद्देश्य SPI सुविधाहरूलाई पनि समर्थन गर्दछ:
- SPI ढाँचा स्थानान्तरणको 4 समय मोडहरू
- 80 MHz सम्म र 80 MHz को विभाजित घडीहरू
- 64-बाइट FIFO सम्म
SDIO पिनहरू ESP8266 ले सुरक्षित डिजिटल इनपुट/आउटपुट इन्टरफेस (SDIO) सुविधा दिन्छ जुन SD कार्डहरू प्रत्यक्ष इन्टरफेस गर्न प्रयोग गरिन्छ। 4-bit 25 MHz SDIO v1.1 र 4-bit 50 MHz SDIO v2.0 समर्थित छन्।
PWM पिनहरू बोर्डमा पल्स विड्थ मोड्युलेसन (PWM) को 4 च्यानलहरू छन्। PWM आउटपुट प्रोग्रामेटिक रूपमा लागू गर्न सकिन्छ र डिजिटल मोटरहरू र LEDs चलाउनको लागि प्रयोग गर्न सकिन्छ। PWM फ्रिक्वेन्सी दायरा 1000 μs देखि 10000 μs, अर्थात्, 100 Hz र 1 kHz को बीचमा समायोज्य छ।
पिन नियन्त्रण ESP8266 नियन्त्रण गर्न प्रयोग गरिन्छ। यी पिनहरूमा चिप सक्षम पिन (EN), रिसेट पिन (RST) र WAKE pin समावेश छ।
- EN पिन - ESP8266 चिप सक्षम हुन्छ जब EN पिन उच्च तानिन्छ। कम तान्दा चिपले न्यूनतम शक्तिमा काम गर्छ।
- RST पिन - RST पिन ESP8266 चिप रिसेट गर्न प्रयोग गरिन्छ।
- WAKE pin - गहिरो निद्राबाट चिपलाई जगाउनको लागि वेक पिन प्रयोग गरिन्छ।
ESP8266 विकास प्लेटफर्महरू
अब, चाखलाग्दो सामानहरूमा जाऔं! त्यहाँ विभिन्न विकास प्लेटफर्महरू छन् जुन ESP8266 कार्यक्रम गर्न सुसज्जित हुन सक्छ। तपाईं Espruino - JavaScript SDK र फर्मवेयर नजिकबाट Node.js को अनुकरण गर्न सक्नुहुन्छ, वा Mongoose OS प्रयोग गर्न सक्नुहुन्छ - IoT यन्त्रहरूका लागि अपरेटिङ सिस्टम (Espressif Systems र Google Cloud IoT द्वारा सिफारिस गरिएको प्लेटफर्म) वा Espressif द्वारा प्रदान गरिएको सफ्टवेयर विकास किट (SDK) प्रयोग गर्नुहोस्। वा WiKiPedia मा सूचीबद्ध प्लेटफर्महरू मध्ये एक। सौभाग्यवश, अचम्मको ESP8266 समुदायले IDE चयनलाई Arduino एड-अन सिर्जना गरेर एक कदम अगाडि बढायो। यदि तपाइँ भर्खरै ESP8266 प्रोग्रामिङ सुरु गर्दै हुनुहुन्छ भने, यो वातावरण हो जुन हामीले सुरु गर्न सिफारिस गर्छौं, र हामीले यस ट्यूटोरियलमा कागजात गर्नेछौं।
Arduino को लागि यो ESP8266 add-on Ivan Grokhotkov र ESP8266 समुदायको बाँकी रहेको अद्भुत काममा आधारित छ। थप जानकारीको लागि ESP8266 Arduino GitHub भण्डार जाँच गर्नुहोस्।
Windows OS मा ESP8266 कोर स्थापना गर्दै
ESP8266 Arduino कोर स्थापना गर्न अगाडि बढौं। पहिलो कुरा तपाईको PC मा नवीनतम Arduino IDE (Arduino 1.6.4 वा उच्च) स्थापना भएको छ। यदि यो छैन भने, हामी अहिले अपग्रेड गर्न सिफारिस गर्छौं।
Arduino IDE को लागी लिङ्क - https://www.arduino.cc/en/software
सुरु गर्नको लागि, हामीले बोर्ड प्रबन्धकलाई अनुकूलनसँग अद्यावधिक गर्न आवश्यक छ URL। Arduino IDE खोल्नुहोस् र जानुहोस् File > प्राथमिकताहरू। त्यसपछि, तल प्रतिलिपि गर्नुहोस् URL अतिरिक्त बोर्ड प्रबन्धक मा URLसञ्झ्यालको तल अवस्थित पाठ बाकस: http://arduino.esp8266.com/stable/package_esp8266com_index.json
ठीक थिच्नुहोस्। त्यसपछि Tools > Boards > Boards Manager मा गएर बोर्ड प्रबन्धकमा नेभिगेट गर्नुहोस्। त्यहाँ मानक Arduino बोर्डहरू बाहेक केही नयाँ प्रविष्टिहरू हुनुपर्छ। esp8266 टाइप गरेर आफ्नो खोज फिल्टर गर्नुहोस्। त्यो प्रविष्टिमा क्लिक गर्नुहोस् र स्थापना चयन गर्नुहोस्।
ESP8266 को लागि बोर्ड परिभाषाहरू र उपकरणहरूमा gcc, g++, र अन्य उचित रूपमा ठूला, कम्पाइल गरिएको बाइनरीहरूको पूर्ण नयाँ सेट समावेश छ, त्यसैले यसलाई डाउनलोड गर्न र स्थापना गर्न केही मिनेट लाग्न सक्छ (संग्रहित file ~110MB) छ। एक पटक स्थापना पूरा भएपछि, प्रविष्टिको छेउमा एउटा सानो स्थापित पाठ देखा पर्नेछ। तपाईं अब बोर्ड प्रबन्धक बन्द गर्न सक्नुहुन्छ
Arduino पूर्वample: झिम्काउनु
ESP8266 Arduino core र NodeMCU ठीकसँग सेटअप गरिएको छ भनी सुनिश्चित गर्न, हामी सबैको सरल स्केच अपलोड गर्नेछौं - The Blink! हामी यस परीक्षणको लागि अन-बोर्ड एलईडी प्रयोग गर्नेछौं। यस ट्यूटोरियलमा पहिले उल्लेख गरिए अनुसार, बोर्डको D0 पिन अन-बोर्ड ब्लू एलईडीमा जडान गरिएको छ र प्रयोगकर्ता प्रोग्रामयोग्य छ। उत्तम! हामीले स्केच अपलोड गर्न र LED सँग खेल्नु अघि, हामीले Arduino IDE मा बोर्ड ठीकसँग चयन गरिएको छ भनी सुनिश्चित गर्न आवश्यक छ। Arduino IDE खोल्नुहोस् र आफ्नो Arduino IDE > Tools > Board menu अन्तर्गत NodeMCU 0.9 (ESP-12 Module) विकल्प चयन गर्नुहोस्।
अब, माइक्रो-बी USB केबल मार्फत आफ्नो कम्प्युटरमा आफ्नो ESP8266 NodeMCU प्लग गर्नुहोस्। एक पटक बोर्ड प्लग इन भएपछि, यसलाई एक अद्वितीय COM पोर्ट तोक्नुपर्छ। विन्डोज मेसिनहरूमा, यो COM# जस्तै हुनेछ, र Mac/Linux कम्प्युटरहरूमा यो /dev/tty.usbserial-XXXXXX को रूपमा आउनेछ। Arduino IDE > उपकरण > पोर्ट मेनु अन्तर्गत यो सिरियल पोर्ट चयन गर्नुहोस्। साथै अपलोड गति चयन गर्नुहोस्: 115200
चेतावनी: बोर्ड चयन गर्न, COM पोर्ट छनौट गर्न र अपलोड गति चयन गर्न थप ध्यान दिन आवश्यक छ। तपाईंले नयाँ स्केचहरू अपलोड गर्दा espcomm_upload_mem त्रुटि प्राप्त गर्न सक्नुहुन्छ, यदि त्यसो गर्न असफल भयो भने।
एकपटक तपाईंले गरिसकेपछि, पूर्व प्रयास गर्नुहोस्ampतल स्केच।
शून्य सेटअप()
{pinMode(D0, OUTPUT);}void loop()
{digitalWrite(D0, HIGH);
ढिलाइ (500);
digitalWrite (D0, LOW);
ढिलाइ (500);
कोड अपलोड भएपछि, LED झिम्काउन सुरु हुनेछ। स्केच चलाउन सुरु गर्नको लागि तपाईंले आफ्नो ESP8266 प्राप्त गर्न RST बटन ट्याप गर्नुपर्ने हुन सक्छ।
कागजातहरू / स्रोतहरू
![]() |
ईन्जिनियर्स ESP8266 NodeMCU विकास बोर्ड [pdf] निर्देशनहरू ESP8266 NodeMCU विकास बोर्ड, ESP8266, NodeMCU विकास बोर्ड |