কোড অনুসন্ধান

ESP32 টিউটোরিয়াল ৫/৫৫ - LED ফেড, একটি LED-এর উজ্জ্বলতা নিয়ন্ত্রণ - ESP32 IoT লার্নিং কিট

ESP32 টিউটোরিয়াল ৫/৫৫ - LED ফেড, একটি LED-এর উজ্জ্বলতা নিয়ন্ত্রণ - ESP32 IoT লার্নিং কিট

এই টিউটোরিয়ালটি দেখায় কিভাবে একটি ESP32 মাইক্রোকন্ট্রোলার ব্যবহার করে একটি LED-এর উজ্জ্বলতা নিয়ন্ত্রণ করা যায়, বিশেষ করে SunFounder ESP32 IoT লার্নিং কিট (ভিডিওতে 00:04-এ)। এই প্রকল্পটি পালস উইডথ মডুলেশন (PWM) এবং আলোর উৎসের তীব্রতা নিয়ন্ত্রণে এর প্রয়োগ সম্পর্কে জানতে আগ্রহী শিক্ষানবিশদের জন্য আদর্শ। ESP32-এর অন্তর্নির্মিত PWM ক্ষমতা মসৃণ, সুনির্দিষ্ট নিয়ন্ত্রণের অনুমতি দেয়, যা সৃজনশীল প্রকল্পগুলির জন্য সম্ভাবনার একটি জগৎ খুলে দেয়।

ব্যবহারিক প্রয়োগ:

  • সামঞ্জস্যযোগ্য উজ্জ্বলতা সহ পরিবেষ্টিত আলো ব্যবস্থা তৈরি করা।
  • ধীরে ধীরে ম্লান হওয়া একটি সাধারণ নাইটলাইট তৈরি করা।
  • বিভিন্ন অবস্থার জন্য একটি গতিশীল নির্দেশক আলো তৈরি করা (যেমন, কম ব্যাটারি, নেটওয়ার্ক সংযোগ)।
  • জটিল ইন্টারেক্টিভ ইনস্টলেশন তৈরি করতে অন্যান্য সেন্সর এবং অ্যাকচুয়েটরের সাথে একীভূত করা।

হার্ডওয়্যার/উপাদান

প্রকল্পটি SunFounder ESP32 স্টার্টার কিট (ভিডিওতে 00:12-এ) ব্যবহার করে, যার মধ্যে একটি ESP32 মাইক্রোকন্ট্রোলার, একটি এক্সটেনশন বোর্ড, বিভিন্ন উপাদান এবং একটি 18650 লিথিয়াম ব্যাটারি অন্তর্ভুক্ত রয়েছে। আপনার একটি LED এবং একটি 220-ওহম রোধকও প্রয়োজন হবে (ভিডিওতে 04:32-এ)।

ওয়্যারিং গাইড

ভিডিওতে ওয়্যারিং ডায়াগ্রাম (ভিডিওতে 01:46 এবং 04:18-এ) এবং টাইমস্ট্যাম্প 04:40-এ বিস্তারিত ব্যাখ্যা দেখুন। ওয়্যারিংয়ে LED-এর অ্যানোডকে রোধকের সাথে, রোধককে ESP32-এর GPIO 26 পিনের সাথে এবং LED-এর ক্যাথোডকে গ্রাউন্ডের সাথে সংযুক্ত করা জড়িত।

LED_সহ_রোধক


220 ওহম রোধকের সাথে সিরিজে LED।  নীচে ব্রেডবোর্ডে ওয়্যারিং দেওয়া হল। 

LED_ফেড_ESP32

কোড ব্যাখ্যা

Arduino কোডটি LED-এর উজ্জ্বলতা নিয়ন্ত্রণ করতে পালস উইডথ মডুলেশন (PWM) ব্যবহার করে। মূল কনফিগারযোগ্য অংশগুলি হল:

  • ledPin: LED-এর সাথে সংযুক্ত GPIO পিন সংজ্ঞায়িত করে (ভিডিওতে 09:41-এ, 26 সেট করা আছে)। আপনি যদি একটি ভিন্ন পিন ব্যবহার করেন তবে এটি পরিবর্তন করুন।
  • fadeAmount: LED-এর উজ্জ্বলতা পরিবর্তনের হার নিয়ন্ত্রণ করে (ভিডিওতে 10:06-এ)। একটি উচ্চ মান দ্রুত ম্লান হওয়ার ফলাফল দেয়। উজ্জ্বলতা সর্বনিম্ন (0) বা সর্বোচ্চ (255) মানে পৌঁছালে কোডটি স্বয়ংক্রিয়ভাবে দিক বিপরীত করে (ভিডিওতে 11:44-এ)।

const int ledPin = 26;  // LED-এর জন্য GPIO পিন
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttachPin(ledPin, 0); // PWM চ্যানেলে পিন সংযুক্ত করুন
}

void loop() {
  ledcWrite(ledPin, brightness); 
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50); 
}

লাইভ প্রকল্প/প্রদর্শন

ভিডিওটি ম্লান হওয়া LED-কে কাজ করতে দেখায় (ভিডিওতে 14:51-এ)। প্রশিক্ষক দেখান কিভাবে ম্লান হওয়ার গতি নিয়ন্ত্রণ করতে fadeAmount ভেরিয়েবল সামঞ্জস্য করা যায় (ভিডিওতে 15:16 এবং 15:51-এ)। ESP32-তে কোড আপলোড করার প্রক্রিয়াও দেখানো হয়েছে (ভিডিওতে 14:20-এ)।

অধ্যায়

  • [00:00] ভূমিকা এবং প্রকল্পের ওভারভিউ
  • [00:12] ESP32 স্টার্টার কিট ওভারভিউ
  • [01:46] ওয়্যারিং ডায়াগ্রাম এবং ব্যাখ্যা
  • [02:03] ডিজিটাল সিগন্যাল এবং PWM
  • [04:18] LED ওয়্যারিং
  • [06:33] কোড ব্যাখ্যা: ফাংশন
  • [09:11] কোড ব্যাখ্যা: LED ম্লান করা
  • [13:33] কোড আপলোড করা
  • [14:51] লাইভ প্রদর্শন এবং সমন্বয়

ছবি

LED_fade_ESP32
LED_fade_ESP32
LED_with_Resistor
LED_with_Resistor
791-ESP32 Tutorial 5/55 - LED Fade, control brightness of an LED in Arduino
ভাষা: C++
const int ledPin = 26;  // The GPIO pin for the LED
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttach(ledPin, 5000, 8);  // Attach the LED pin
}

void loop() {
  ledcWrite(ledPin, brightness);  // Write the new brightness value to the PWM pin
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50);  // Wait for 50 milliseconds
}

সম্পদ ও রেফারেন্সসমূহ

এখনো কোনো সম্পদ নেই।

ফাইলসমূহ📁

কোনো ফাইল উপলব্ধ নেই।