विषयसूची:

ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी: 10 कदम
ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी: 10 कदम

वीडियो: ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी: 10 कदम

वीडियो: ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी: 10 कदम
वीडियो: How to make wireless notice board using p10 board and node MCU ESP 8266 2024, जुलाई
Anonim
ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी
ESP32 आधारित वेब सर्वर का उपयोग करके इंटरनेट नियंत्रित एलईडी

परियोजना अवलोकन

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

Arduino IDE के साथ ESP32 की तैयारी

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

आपूर्ति

इस ट्यूटोरियल के लिए आपको निम्नलिखित मदों की आवश्यकता होगी:

  • ESP32 विकास बोर्ड5mm
  • एलईडीरेसिस्टर 220ohm
  • I2C मॉड्यूल के साथ 16x2 एलसीडी डिस्प्ले
  • ब्रेड बोर्ड
  • जम्पर तार
  • माइक्रो यूएसबी केबल

चरण 1: सर्किट का निर्माण

सर्किट का निर्माण
सर्किट का निर्माण

नीचे दिए गए योजनाबद्ध आरेख में दिखाए अनुसार कनेक्शन करें।

ESP32 और GND पर 3V3 आपूर्ति वोल्टेज आउटपुट को ब्रेडबोर्ड से कनेक्ट करके प्रारंभ करें। डिजिटल आउटपुट पिन के रूप में GPIO पिन 23 का उपयोग करके एलईडी को रोकनेवाला के माध्यम से ESP32 से कनेक्ट करें। उसके बाद, 16x2 LCD डिस्प्ले के SDA पिन को GPIO पिन 21 और SCL को GPIO पिन 22 से कनेक्ट करें।

चरण 2: SPIFFS फाइल सिस्टम का त्वरित अवलोकन

SPIFFS का अर्थ है "सीरियल पेरिफेरल इंटरफेस फ्लैश फाइल सिस्टम", यानी फ्लैश मेमोरी के लिए फाइल सिस्टम जो SPI के माध्यम से डेटा ट्रांसफर करता है। तदनुसार, SPIFFS फ्लैश चिप्स के साथ माइक्रोकंट्रोलर के लिए डिज़ाइन किया गया एक सरलीकृत फ़ाइल सिस्टम है जो SPI बस (जैसे ESP32 फ्लैश मेमोरी) के माध्यम से डेटा संचारित करता है।

निम्नलिखित स्थितियों में SPIFFS ESP32 के साथ उपयोग के लिए सबसे उपयोगी है:

  • सेटिंग संग्रहीत करने के लिए फ़ाइलें बनाना
  • स्थायी डेटा भंडारण।
  • थोड़ी मात्रा में डेटा संग्रहीत करने के लिए फ़ाइलें बनाना (इसके लिए माइक्रोएसडी कार्ड का उपयोग करने के बजाय)।
  • वेब सर्वर बनाने के लिए HTML और CSS फाइलों को स्टोर करना।

चरण 3: मैक ओएस पर SPIFFS बूटलोडर की स्थापना

मैक ओएस पर SPIFFS बूटलोडर की स्थापना
मैक ओएस पर SPIFFS बूटलोडर की स्थापना

आप Arduino IDE पर प्लगइन का उपयोग करके सीधे ESP32 फ़ाइल सिस्टम में संग्रहीत फ़ाइलों में डेटा बना सकते हैं, सहेज सकते हैं और लिख सकते हैं।

सबसे पहले, सुनिश्चित करें कि आपके पास Arduino IDE का नवीनतम संस्करण स्थापित है, और फिर निम्न कार्य करें:

  • निम्न लिंक खोलें और संग्रह "ESP32FS-1.0.zip" डाउनलोड करें
  • Arduino IDE निर्देशिका पर जाएं, जो दस्तावेज़ फ़ोल्डर पर स्थित है।
  • एक उपकरण फ़ोल्डर बनाएँ, यदि वह मौजूद नहीं है। टूल्स डायरेक्टरी के अंदर एक और फोल्डर ESP32FS बनाएं। ESP32FS के अंदर एक और बनाएं, जिसे टूल कहा जाता है।
  • चरण 1 में डाउनलोड किए गए ज़िप संग्रह को टूल फ़ोल्डर में अनज़िप करें।
  • अपने Arduino IDE को पुनरारंभ करें।
  • यह जांचने के लिए कि प्लग-इन सफलतापूर्वक स्थापित किया गया था, Arduino IDE खोलें और "टूल्स" पर क्लिक करें और जांचें कि क्या इस मेनू में कोई आइटम "ESP32 स्केच डेटा अपलोड" है।

चरण 4: पुस्तकालय स्थापित करना

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

ESPAsyncWebServer लाइब्रेरी स्थापित करें

  • पुस्तकालय के ज़िप संग्रह को डाउनलोड करने के लिए यहां क्लिक करें।
  • इस संग्रह को अनज़िप करें। आपको ESPAsyncWebServer-मास्टर फ़ोल्डर मिलना चाहिए।
  • इसका नाम बदलकर "ESPAsyncWebServer" कर दें।

AsyncTCP लाइब्रेरी स्थापित करें

  • पुस्तकालय के ज़िप संग्रह को डाउनलोड करने के लिए यहां क्लिक करें।
  • इस संग्रह को अनज़िप करें। आपको AsyncTCP-मास्टर फ़ोल्डर मिलना चाहिए।
  • इसका नाम बदलकर "AsyncTCP" कर दें।

ESPAsyncWebServer और AsyncTCP फ़ोल्डर को लाइब्रेरी फ़ोल्डर में ले जाएँ, जो दस्तावेज़ निर्देशिका के अंदर स्थित है।

अंत में, Arduino IDE को पुनरारंभ करें।

चरण 5: निम्नलिखित सामग्री के साथ एक index.html और Style.css फ़ाइल बनाएँ:

टॉगल बटन के लिए HTML/CSS टेम्प्लेट निम्न स्रोत से लिया गया है।

चरण 6: Arduino कोड

मुख्य रूप से, कोड Arduino कोड पर आधारित था जिसे SPIFFS का उपयोग करके ESP32 वेब सर्वर से लिया गया था और Arduino IDE पर ESP32 के साथ I2C LCD का उपयोग कैसे करें।

चरण 7: SPIFFS लोडर का उपयोग करके Arduino कोड और फ़ाइलें अपलोड करें

  • Arduino कोड का स्केच फोल्डर खोलें।
  • इस फ़ोल्डर के अंदर, "डेटा" नामक एक नया फ़ोल्डर बनाएं।
  • डेटा फ़ोल्डर के अंदर, आपको index.html और style.css डालना होगा।
  • Arduino कोड अपलोड करें
  • फिर, फ़ाइलें अपलोड करने के लिए, टूल्स> ESP32 स्केच डेटा अपलोड पर Arduino IDE पर क्लिक करें

चरण 8: ESP32 वेब सर्वर IP पता निर्धारित करें

ESP32 वेब सर्वर IP पता निर्धारित करें
ESP32 वेब सर्वर IP पता निर्धारित करें

इसे दो तरह से पाया जा सकता है।

  • Arduino IDE पर सीरियल मॉनिटर (टूल्स> सीरियल मॉनिटर)
  • एलसीडी डिस्प्ले पर

चरण 9: स्थानीय वेब सर्वर का परीक्षण

स्थानीय वेब सर्वर का परीक्षण
स्थानीय वेब सर्वर का परीक्षण

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

चरण 10: Ngrok. का उपयोग करके दुनिया में कहीं से भी स्थानीय वेब सर्वर तक पहुंच

Ngrok. का उपयोग करके दुनिया में कहीं से भी स्थानीय वेब सर्वर तक पहुंच
Ngrok. का उपयोग करके दुनिया में कहीं से भी स्थानीय वेब सर्वर तक पहुंच

Ngrok एक ऐसा प्लेटफ़ॉर्म है जो आपको बाहरी इंटरनेट से आपके पीसी पर चल रहे वेब सर्वर या किसी अन्य सेवा के लिए रिमोट एक्सेस को व्यवस्थित करने की अनुमति देता है। एनग्रोक की शुरुआत में बनाई गई सुरक्षित सुरंग के माध्यम से प्रवेश का आयोजन किया जाता है।

  • इस लिंक का पालन करें और साइन अप करें।
  • अकाउंट बनाने के बाद लॉग इन करें और "Auth" टैब पर जाएं। "योर टनल ऑथटोकन" फ़ील्ड से लाइन को कॉपी करें।
  • नेविगेशन बार में "डाउनलोड" टैब पर क्लिक करें। अपने ओएस से मेल खाने वाले एनग्रोक के संस्करण का चयन करें और इसे डाउनलोड करें।
  • डाउनलोड किए गए फ़ोल्डर को अनज़िप करें और कमांड लाइन चलाएँ।
  • निम्न आदेश दर्ज करके अपना खाता कनेक्ट करें

./ngrok authtoken

पोर्ट 80. पर HTTP टनल शुरू करें

./ngrok http Your_IP_Address:80

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

सिफारिश की: