विषयसूची:

ESP32 का परिचय: 10 कदम
ESP32 का परिचय: 10 कदम

वीडियो: ESP32 का परिचय: 10 कदम

वीडियो: ESP32 का परिचय: 10 कदम
वीडियो: ESP32CAM Tutorial: GPIO, Programming, and Video Stream Demo [in Hindi] 2024, जुलाई
Anonim
Image
Image
प्रमुख विशेषताऐं
प्रमुख विशेषताऐं

इस लेख में हम ESP32 के बारे में बात करने जा रहे हैं, जिसे मैं ESP8266 का बड़ा भाई मानता हूँ। मुझे यह माइक्रोकंट्रोलर वास्तव में पसंद है क्योंकि इसमें वाईफाई है। बस इसलिए आपके पास एक विचार है, ESP के अस्तित्व में आने से पहले, यदि आपको WiFi के लिए Arduino की आवश्यकता है, तो आपको Wifi अडैप्टर खरीदने के लिए $200 और $300 के बीच खर्च करना होगा। नेटवर्क केबल के लिए एडॉप्टर इतना महंगा नहीं है, लेकिन वाईफाई के लिए यह हमेशा से रहा है और अभी भी महंगा है। लेकिन सौभाग्य से, एस्प्रेसिफ सिस्टम्स ने ईएसपी लॉन्च किया है और हमारे जीवन को हल कर रहा है।

मुझे इस प्रारूप के साथ ESP32 पसंद है जिसमें USB पोर्ट है। इस NodeMCU योजना में हेरफेर करना आसान है क्योंकि इसमें किसी इलेक्ट्रॉनिक्स की आवश्यकता नहीं है। बस केबल प्लग इन करें, डिवाइस को पावर दें और इसे प्रोग्राम करें। यह बिल्कुल Arduino की तरह काम करता है।

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

चरण 1: मुख्य विशेषताएं

अंतर्निहित वाईफाई के साथ चिप: मानक 802.11 बी / जी / एन, 2.4 से 2.5GHz की सीमा में काम कर रहा है

संचालन के तरीके: क्लाइंट, एक्सेस प्वाइंट, स्टेशन + एक्सेस प्वाइंट

डुअल कोर माइक्रोप्रोसेसर Tensilica Xtensa 32-बिट LX6

समायोज्य घड़ी 80MHz से 240MHz तक

ऑपरेटिंग वोल्टेज: 3.3 वीडीसी

इसमें 512KB का SRAM है

सुविधाएँ 448KB ROM

इसमें 32Mb (4 मेगाबाइट) की बाहरी फ्लैश मेमोरी है।

प्रति पिन अधिकतम धारा 12mA है (6mA का उपयोग करने की अनुशंसा की जाती है)

इसमें 36 GPIO हैं

PWM / I2C और SPI कार्यों के साथ GPIO

इसमें ब्लूटूथ वी4.2 बीआर/ईडीआर और बीएलई (ब्लूटूथ लो एनर्जी) है।

चरण 2: ESP32, ESP8266 और Arduino R3 के बीच तुलना

ESP32, ESP8266 और Arduino R3 के बीच तुलना
ESP32, ESP8266 और Arduino R3 के बीच तुलना

चरण 3: ESP32 के प्रकार

ESP32 के प्रकार
ESP32 के प्रकार

ESP32 बहुत सारे भाई-बहनों के साथ पैदा हुआ था। आज मैं बाईं ओर से पहले एस्प्रेसिफ का उपयोग कर रहा हूं, लेकिन कई ब्रांड और प्रकार हैं, जिनमें ओलेड डिस्प्ले बिल्ट-इन भी शामिल है। हालाँकि, अंतर सभी समान चिप हैं: Tensilica LX6, 2 Core।

चरण 4: वाईफाई NodeMCU-32S ESP-WROOM-32

वाईफाई NodeMCU-32S ESP-WROOM-32
वाईफाई NodeMCU-32S ESP-WROOM-32

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

चरण 5: Arduino IDE (Windows) को कॉन्फ़िगर करना

Arduino IDE (Windows) को कॉन्फ़िगर करना
Arduino IDE (Windows) को कॉन्फ़िगर करना
Arduino IDE (Windows) को कॉन्फ़िगर करना
Arduino IDE (Windows) को कॉन्फ़िगर करना

यहाँ Arduino IDE को कॉन्फ़िगर करने का तरीका बताया गया है ताकि हम ESP32 के लिए संकलन कर सकें:

1. लिंक के माध्यम से फ़ाइलें डाउनलोड करें:

2. फ़ाइल को अनज़िप करें और सामग्री को निम्न पथ पर कॉपी करें:

सी: / उपयोगकर्ता / [Your_USER_NAME] / दस्तावेज़ / Arduino / हार्डवेयर / एस्प्रेसिफ़ / esp32

नोट: यदि कोई निर्देशिका "एस्प्रेसिफ़" और "एस्प 32" नहीं है, तो उन्हें सामान्य रूप से बनाएं।

3. निर्देशिका खोलें

सी: / उपयोगकर्ता / [Your_USER_NAME] / दस्तावेज़ / Arduino / हार्डवेयर / एस्प्रेसिफ़ / esp32 / उपकरण

फ़ाइल "get.exe" चलाएँ।

4. "get.exe" समाप्त होने के बाद, ESP32 प्लग करें, ड्राइवरों के स्थापित होने की प्रतीक्षा करें (या मैन्युअल रूप से इंस्टॉल करें)।

तैयार है, अब बस "टूल्स >> बोर्ड" में ESP32 बोर्ड चुनें और अपना कोड संकलित करें।

चरण 6: वाईफाई स्कैन

यहां एक उदाहरण दिया गया है कि कैसे ESP-32 के पास उपलब्ध वाईफाई नेटवर्क की तलाश की जाए, साथ ही उनमें से प्रत्येक की सिग्नल स्ट्रेंथ भी। प्रत्येक स्कैन के साथ, हम यह भी पता लगाएंगे कि किस नेटवर्क में सबसे अच्छी सिग्नल शक्ति है।

चरण 7: कोड

आइए सबसे पहले लाइब्रेरी "वाईफाई.एच" को शामिल करें, हमें अपने डिवाइस के नेटवर्क कार्ड के साथ काम करने की अनुमति देना आवश्यक होगा।

#शामिल "वाईफाई.एच"

यहां दो चर हैं जिनका उपयोग नेटवर्क के SSID (नाम) और सिग्नल की शक्ति को संग्रहीत करने के लिए किया जाएगा।

स्ट्रिंग नेटवर्कएसएसआईडी = "";इंट स्ट्रेंथसिग्नल = -9999;

चरण 8: सेटअप

सेटअप () फ़ंक्शन में, हम अपने डिवाइस के वाईफाई व्यवहार मोड को परिभाषित करेंगे। इस मामले में, चूंकि लक्ष्य उपलब्ध नेटवर्क की खोज करना है, हम अपने डिवाइस को "स्टेशन" के रूप में काम करने के लिए कॉन्फ़िगर करेंगे।

शून्य सेटअप () {// सीरियल मॉनिटर सीरियल में लॉग इन करने के लिए सीरियल को इनिशियलाइज़ करें। शुरू करें (११५२००);

// वाईफाई के संचालन के मोड को स्टेशन वाईफाई के रूप में कॉन्फ़िगर करना।

// एक्सेस प्वाइंट से डिस्कनेक्ट करें यदि यह पहले से ही वाईफाई से जुड़ा है। डिस्कनेक्ट (); देरी (100);

// Serial.println ("सेटअप किया गया");}

चरण 9: लूप

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

शून्य लूप () {// Serial.println ("स्कैन प्रारंभ"); // उपलब्ध नेटवर्क की स्कैनिंग करता है

int n = WiFi.scanNetworks ();

Serial.println ("स्कैन किया गया");

// जांचें कि क्या आपको कोई नेटवर्क मिला है if (n == 0) { Serial.println ("कोई नेटवर्क नहीं मिला"); } और { नेटवर्कएसएसआईडी = ""; स्ट्रेंथसिग्नल = -9999; सीरियल.प्रिंट (एन); Serial.println ("नेटवर्क मिला\n"); के लिए (int i = 0; i < n; ++i) {// सीरियल मॉनिटर पर प्रिंट करें प्रत्येक नेटवर्क को मिला सीरियल.प्रिंट ("एसएसआईडी:"); Serial.println (वाईफाई.एसएसआईडी (i)); // नेटवर्क का नाम (एसएसआईडी) सीरियल.प्रिंट ("सिग्नल:"); सीरियल.प्रिंट (वाईफाई। आरएसएसआई (i)); // सिग्नल की ताकत सीरियल.प्रिंट ("\ t / tCHANNEL:"); सीरियल.प्रिंट ((इंट) वाईफाई.चैनल (i)); सीरियल.प्रिंट ("\ t / tMAC:"); सीरियल.प्रिंट (वाईफाई। बीएसएसआईडीस्ट्र (i)); सीरियल.प्रिंट्लन ("\ n / n"); if(abs(WiFi. RSSI(i)) <abs(strengthSignal)) { powerSignal = WiFi. RSSI(i); नेटवर्कएसएसआईडी = वाईफाई.एसएसआईडी(i); सीरियल.प्रिंट ("सर्वश्रेष्ठ सिग्नल के साथ नेटवर्क मिला: ("); सीरियल.प्रिंट (नेटवर्कएसएसआईडी); सीरियल.प्रिंट (") - सिग्नल: ("); सीरियल.प्रिंट (स्ट्रेंथ सिग्नल); सीरियल.प्रिंट्लन (")"); } देरी(10); } } सीरियल.प्रिंट्लन ("\ n ----------------------------------------------------- -------------------------------------------\एन");

// एक नया स्कैन विलंब (5000) करने के लिए 5 सेकंड का अंतराल; }

"अगर (abs (WiFi. RSSI (i))"

ध्यान दें कि उपरोक्त कथन में हम एब्स () का उपयोग करते हैं, यह फ़ंक्शन संख्या का निरपेक्ष मान (अर्थात ऋणात्मक नहीं) लेता है। हमारे मामले में हमने तुलना में सबसे छोटे मूल्यों को खोजने के लिए ऐसा किया, क्योंकि सिग्नल की तीव्रता को एक नकारात्मक संख्या के रूप में दिया जाता है और शून्य के करीब बेहतर सिग्नल होता है।

चरण 10: फ़ाइलें

मेरी सभी फाइलें यहां डाउनलोड करें: www.fernandok.com

सिफारिश की: