সুচিপত্র:

ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে ইন্টারনেট নিয়ন্ত্রিত LED: 10 টি ধাপ
ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে ইন্টারনেট নিয়ন্ত্রিত LED: 10 টি ধাপ

ভিডিও: ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে ইন্টারনেট নিয়ন্ত্রিত LED: 10 টি ধাপ

ভিডিও: ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে ইন্টারনেট নিয়ন্ত্রিত LED: 10 টি ধাপ
ভিডিও: দূরবর্তীভাবে আপনার বাড়ির শক্তি খরচ নিরীক্ষণ | PZEM-004T | RemoteXY IoT ক্লাউড 2024, নভেম্বর
Anonim
ইন্টারনেট নিয়ন্ত্রিত LED ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে
ইন্টারনেট নিয়ন্ত্রিত LED ESP32 ভিত্তিক ওয়েব সার্ভার ব্যবহার করে

প্রজেক্ট সারসংক্ষেপ

এই উদাহরণে, আমরা LED অবস্থা নিয়ন্ত্রণের জন্য কিভাবে ESP32- ভিত্তিক ওয়েব সার্ভার তৈরি করতে হয় তা বের করব, যা বিশ্বের যে কোন জায়গা থেকে অ্যাক্সেসযোগ্য। এই প্রকল্পের জন্য আপনার একটি ম্যাক কম্পিউটারের প্রয়োজন হবে, কিন্তু আপনি রাস্পবেরী পাই এর মত একটি সস্তা এবং কম ক্ষমতার কম্পিউটারেও এই সফটওয়্যারটি চালাতে পারেন।

Arduino IDE দিয়ে ESP32 এর প্রস্তুতি

Arduino IDE এবং Arduino প্রোগ্রামিং ভাষা ব্যবহার করে ESP32 প্রোগ্রাম শুরু করার জন্য, আপনার একটি বিশেষ অ্যাড-অন প্রয়োজন হবে। নীচের লিঙ্কটি দ্বারা ম্যাক ওএসে ESP32 এর জন্য Arduino IDE কিভাবে প্রস্তুত করবেন সে সম্পর্কে পড়ুন।

সরবরাহ

এই টিউটোরিয়ালের জন্য আপনার নিম্নলিখিত আইটেমগুলির প্রয়োজন হবে:

  • ESP32 উন্নয়ন বোর্ড 5mm
  • LEDResistor 220ohm
  • I2C মডিউল সহ 16x2 LCD ডিসপ্লে
  • ব্রেডবোর্ড
  • জাম্পার তার
  • মাইক্রো ইউএসবি কেবল

ধাপ 1: সার্কিট নির্মাণ

সার্কিট নির্মাণ
সার্কিট নির্মাণ

নিচের নিচের স্কিম্যাটিক ডায়াগ্রামে দেখানো সংযোগগুলি সম্পাদন করুন।

ESP32 এবং GNDto ব্রেডবোর্ডে 3V3 সাপ্লাই ভোল্টেজ আউটপুট সংযোগ করে শুরু করুন। ডিজিটাল আউটপুট পিন হিসেবে GPIO পিন 23 ব্যবহার করে ESP32 এর সাথে রোধের মাধ্যমে LED সংযোগ করুন। এর পরে, 16x2 এলসিডি ডিসপ্লের এসডিএ পিনকে জিপিআইও পিন 21 এবং এসসিএল জিপিআইও পিন 22 এর সাথে সংযুক্ত করুন।

ধাপ 2: SPIFFS ফাইল সিস্টেমের দ্রুত ওভারভিউ

SPIFFS মানে "সিরিয়াল পেরিফেরাল ইন্টারফেস ফ্ল্যাশ ফাইল সিস্টেম", অর্থাৎ ফ্ল্যাশ মেমরির জন্য ফাইল সিস্টেম যা SPI এর মাধ্যমে ডেটা স্থানান্তর করে। তদনুসারে, এসপিআইএফএফএস হল একটি সরলীকৃত ফাইল সিস্টেম যা মাইক্রোকন্ট্রোলারদের জন্য ফ্ল্যাশ চিপ দিয়ে তৈরি করা হয়েছে যা এসপিআই বাসের মাধ্যমে ডেটা প্রেরণ করে (যেমন ইএসপি 32 ফ্ল্যাশ মেমরি)।

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-master ফোল্ডারটি পাওয়া উচিত।
  • এটির নাম পরিবর্তন করে "ESPAsyncWebServer" করুন।

AsyncTCP লাইব্রেরি ইনস্টল করুন

  • লাইব্রেরির জিপ আর্কাইভ ডাউনলোড করতে এখানে ক্লিক করুন।
  • এই আর্কাইভটি আনজিপ করুন। আপনার AsyncTCP- মাস্টার ফোল্ডারটি পাওয়া উচিত।
  • এর নাম পরিবর্তন করে “AsyncTCP” করুন।

ESPAsyncWebServer এবং AsyncTCP ফোল্ডারগুলিকে লাইব্রেরি ফোল্ডারে সরান, যা ডকুমেন্টস ডিরেক্টরিতে অবস্থিত।

অবশেষে, Arduino IDE পুনরায় চালু করুন।

ধাপ 5: নিম্নলিখিত বিষয়বস্তু দিয়ে একটি Index.html এবং Style.css ফাইল তৈরি করুন

টগল বোতামের জন্য HTML/CSS টেমপ্লেট নিম্নলিখিত উৎস থেকে নেওয়া হয়েছে।

ধাপ 6: Arduino কোড

মূলত, কোডটি Arduino কোডের উপর ভিত্তি করে তৈরি করা হয়েছিল যা SPSPFS ব্যবহার করে ESP32 ওয়েব সার্ভার থেকে নেওয়া হয়েছিল এবং Arduino IDE তে ESP32 দিয়ে I2C LCD কিভাবে ব্যবহার করবেন।

ধাপ 7: SPIFFS লোডার ব্যবহার করে Arduino কোড এবং ফাইল আপলোড করুন

  • Arduino কোডের স্কেচ ফোল্ডারটি খুলুন।
  • এই ফোল্ডারের ভিতরে, "ডেটা" নামে একটি নতুন ফোল্ডার তৈরি করুন।
  • ডাটা ফোল্ডারের ভিতরে, আপনাকে index.html এবং style.css লাগাতে হবে।
  • Arduino কোড আপলোড করুন
  • তারপর, ফাইলগুলি আপলোড করার জন্য, সরঞ্জাম> ESP32 স্কেচ ডেটা আপলোডে Arduino IDE- এ ক্লিক করুন

ধাপ 8: ESP32 ওয়েব সার্ভার আইপি ঠিকানা নির্ধারণ করুন

ESP32 ওয়েব সার্ভার আইপি ঠিকানা নির্ধারণ করুন
ESP32 ওয়েব সার্ভার আইপি ঠিকানা নির্ধারণ করুন

এটি দুটি উপায়ে পাওয়া যাবে।

  • Arduino IDE তে সিরিয়াল মনিটর (সরঞ্জাম> সিরিয়াল মনিটর)
  • এলসিডি ডিসপ্লেতে

ধাপ 9: স্থানীয় ওয়েব সার্ভার পরীক্ষা করা

স্থানীয় ওয়েব সার্ভার পরীক্ষা করা হচ্ছে
স্থানীয় ওয়েব সার্ভার পরীক্ষা করা হচ্ছে

এরপরে, আপনার পছন্দের একটি ওয়েব ব্রাউজার খুলুন এবং ঠিকানা বারে নিম্নলিখিত আইপি ঠিকানাটি আটকান। আপনি নীচের স্ক্রিনশট অনুরূপ একটি আউটপুট পেতে হবে।

ধাপ 10: Ngrok ব্যবহার করে বিশ্বের যেকোনো স্থান থেকে একটি স্থানীয় ওয়েব সার্ভারে অ্যাক্সেস

Ngrok ব্যবহার করে বিশ্বের যেকোনো স্থান থেকে স্থানীয় ওয়েব সার্ভারে প্রবেশ
Ngrok ব্যবহার করে বিশ্বের যেকোনো স্থান থেকে স্থানীয় ওয়েব সার্ভারে প্রবেশ

এনগ্রোক একটি প্ল্যাটফর্ম যা আপনাকে একটি ওয়েব সার্ভারে রিমোট অ্যাক্সেস বা বাইরের ইন্টারনেট থেকে আপনার পিসিতে চলমান অন্য কোনও পরিষেবা সংগঠিত করতে দেয়। এনগ্রোকের শুরুতে তৈরি সুরক্ষিত টানেলের মাধ্যমে অ্যাক্সেস সংগঠিত করা হয়।

  • এই লিঙ্কটি অনুসরণ করুন এবং সাইন আপ করুন।
  • একটি অ্যাকাউন্ট তৈরি করার পরে, লগ ইন করুন এবং "অথ" ট্যাবে যান। "আপনার টানেল Authtoken" ক্ষেত্র থেকে লাইনটি অনুলিপি করুন।
  • নেভিগেশন বারে "ডাউনলোড" ট্যাবে ক্লিক করুন আপনার OS এর সাথে মেলে এমন ngrok সংস্করণটি নির্বাচন করুন এবং ডাউনলোড করুন।
  • ডাউনলোড করা ফোল্ডারটি আনজিপ করুন এবং কমান্ড লাইন চালান।
  • নিম্নলিখিত কমান্ডটি প্রবেশ করে আপনার অ্যাকাউন্ট সংযুক্ত করুন

./ngrok authtoken

পোর্ট 80 এ একটি HTTP টানেল শুরু করুন

./ngrok http Your_IP_Address: 80

যদি সবকিছু সঠিকভাবে করা হয়, তাহলে টানেলের অবস্থা "অনলাইন" এ পরিবর্তিত হওয়া উচিত এবং "ফরওয়ার্ডিং" কলামে একটি পুনirectনির্দেশ লিঙ্ক উপস্থিত হওয়া উচিত।

প্রস্তাবিত: