آموزش ESP32آموزش اینترنت اشیاپروژه های Esp

کنترل LED آدرس پذیر WS2812B با برد ESP32

چه آن‌ها را با نام LEDهای RGB قابل آدرس‌دهی، WS2812B یا NeoPixel بشناسید، نمی‌توان انکار کرد که این LEDها به‌طور شگفت‌انگیزی محبوب هستند و در هر پروژه نوری و درخشان، حضورشان ضروری است.

نوشتن کد برای کنترل LEDهای قابل آدرس‌دهی کار سختی نیست، اما اگر فقط بخواهید نورپردازی محیطی زیبایی برای اتاق نشیمن یا محل کارتان بسازید و آن را با گوشی هوشمندتان کنترل کنید، بهترین گزینه بدون شک WLED است — اپلیکیشنی رایگان، متن‌باز و پر از امکانات که کنترل کامل طیف وسیعی از LEDهای RGB را در اختیار شما قرار می‌دهد.

اپلیکیشن WLED کنترل LEDهای قابل آدرس‌دهی را بسیار ساده‌تر، راحت‌تر و از همه مهم‌تر لذت‌بخش‌تر می‌کند. این برنامه واقعاً جذابه و ارزش امتحان کردنش رو داره.

در این آموزش یاد می‌گیریم چطور WLED را روی برد ESP32 نصب کنیم و با استفاده از آن یک رشته LED قابل آدرس‌دهی را کنترل کنیم.

مراحل نصب WLED روی برد ESP32

نصب فریمور سفارشی WLED روی برد ESP32 فوق‌العاده ساده است. کافی است برد را وصل کنید، چند دکمه را فشار دهید و بقیه کار را به نصب‌کننده بسپارید.

  1. برد ESP32 را با استفاده از کابل USB به کامپیوتر وصل کنید. دقت کنید کابلی که استفاده می‌کنید از انتقال داده (Data Transfer) پشتیبانی کند.
  2. مرورگر وب را باز کنید و وارد آدرس install.wled.me شوید. این لینک شما را به صفحه نصب WLED هدایت می‌کند.مرورگری استفاده کنید که از قابلیت Web Serial پشتیبانی کند. مرورگرهای دسکتاپ مثل Google Chrome، Microsoft Edge یا Opera قابل استفاده هستند، اما Safari، Firefox یا مرورگرهای موبایل پشتیبانی نمی‌شوند.مراحل نصب WLED روی برد ESP32
  3. روی دکمه Install کلیک کنید.
  4. پورت COM متصل به برد ESP32 را انتخاب کرده و روی Connect بزنید. WLED از رابط Web Serial API برای باز کردن پورت‌های سریال سیستم شما استفاده می‌کند.
    اگر پورت شناسایی نشد، ممکن است نیاز باشد درایور USB-to-Serial را به‌روزرسانی کنید یا کابل شما از انتقال داده پشتیبانی نکند.نصب پلاگین WLED
  5. روی گزینه Install WLED کلیک کنید تا فرآیند نصب آغاز شود.
  6. روی دکمه نصب کلیک کنیددر مرحله بعد، نصب را تأیید کنید تا فریمور روی برد فلش شود. توجه داشته باشید با انجام این کار، تمام داده‌های موجود در دستگاه پاک می‌شوند.تایید نصب WLED
    در بعضی از مدل‌های ESP32 لازم است قبل از زدن دکمه نهایی نصب، دکمه BOOT را فشار دهید.
  7. حالا فرآیند نصب آغاز می‌شود. بعد از اتصال موفق، می‌توانید دکمه BOOT را رها کنید. نصب معمولاً چند دقیقه طول می‌کشد.فرآیند نصب WLED ESP32
  8. پس از پایان نصب، روی Next کلیک کنید.
  9. اطلاعات شبکه Wi-Fi خود را وارد کرده و روی Connect بزنید تا برد ESP32 به شبکه شما متصل شود.وارد کردن اطلاعات وای فایتوجه کنید که شبکه باید روی باند 2.4 گیگاهرتز باشد، چون ESP32 از شبکه‌های 5 گیگاهرتز پشتیبانی نمی‌کند.
  10. وقتی پیام Device connected to the network! نمایش داده شد، روی Visit Device کلیک کنید تا وارد رابط کاربری WLED شوید.
  11. روی دکمه Next کلیک کنیدآدرس (URL) نمایش داده‌شده را یادداشت کنید، چون برای دسترسی مجدد به رابط وب WLED به آن نیاز خواهید داشت.

آشنایی سریع با رابط کاربری WLED

آشنایی سریع با رابط کاربری WLED

تنظیمات رنگ های ال ای دی در WLED

رابط کاربری WLED در ظاهر ساده است، اما در نگاه اول ممکن است کمی پیچیده به نظر برسد. به طور کلی، رابط WLED از پنج بخش اصلی تشکیل شده است.

1. بخش تنظیمات (Configuration)

در این قسمت دکمه‌های مختلفی وجود دارد:

  • Power: برای روشن یا خاموش کردن LEDها
  • Timer: جهت زمان‌بندی روشن و خاموش شدن چراغ‌ها در طول روز
  • Sync: برای همگام‌سازی چند دستگاه WLED در یک شبکه
  • Peek: پیش‌نمایش انیمیشن‌های فعلی نورها
  • Config: برای تنظیم تعداد LEDها و پورت GPIO
  • Brightness: نوار تنظیم شدت نور کلی

2. انتخاب رنگ (Color Picker)

در این بخش می‌توانید رنگ LEDها را تغییر دهید، چه در حالت ثابت و چه در حالت انیمیشن. با اسکرول کردن پایین‌تر، به مجموعه‌ای از پالت‌های رنگی متنوع برای استفاده در افکت‌ها دسترسی خواهید داشت.

3. افکت‌ها و انیمیشن‌ها (Effects / Animation)

در این قسمت مجموعه‌ای از افکت‌ها و انیمیشن‌های آماده برای نورهایتان وجود دارد. هر افکت طرح رنگی مخصوص به خود را دارد، اما به‌راحتی می‌توانید آن را از طریق بخش انتخاب رنگ شخصی‌سازی کنید.

4. بخش تقسیم‌بندی (Segment)

اگر از یک آرایه بزرگ یا ماتریس LED استفاده می‌کنید، می‌توانید آن را به چند بخش مستقل تقسیم کنید و برای هر بخش رنگ، انیمیشن یا الگوی متفاوتی تعیین نمایید.

5. پیش‌تنظیم‌ها (Presets)

در این قسمت می‌توانید پروفایل‌های نوری اختصاصی ایجاد کنید و حتی یک لیست پخش (Playlist) بسازید تا بین افکت‌های مختلف به‌صورت خودکار جابه‌جا شود.

تنظیمات WLED

تغییر آدرس URL

بعد از انجام تنظیمات اولیه، بهتر است وارد بخش Wi-Fi Setup شوید و آدرس دستگاه را به نامی قابل‌حفظ تغییر دهید تا بتوانید راحت‌تر دوباره به رابط کاربری WLED دسترسی داشته باشید.

  1. روی گزینه Config کلیک کنید.تنظیمات WLED
  2. گزینه Wi-Fi Setup را انتخاب کنید.تنظیمات وای فای
  3. در قسمت mDNS address، آدرسی دلخواه وارد کنید. برای مثال، من آدرس http://mylights.local/ را انتخاب کردم تا در آینده با تایپ آن در مرورگر به نورهایم دسترسی داشته باشم.آدرس کنترل ال ای دی ها
  4. به بالای صفحه یا پایین آن بروید و روی Save & Connect کلیک کنید.ذخیره و اتصال به وای فای
  5. پیام ‘WiFi settings saved.’ نمایش داده می‌شود.ذخیره شدن اطلاعات وای فای
  6. اکنون می‌توانید به آدرس جدید متصل شوید.آدرس جدید کنترل رنگ ال ای دی های آدرس پذیر

تنظیم LEDها در WLED

  1. روی گزینه Config کلیک کرده و سپس LED Preferences را انتخاب کنید.تنظیم LEDها در WLED
  2. در بخش Hardware Setup نوع نوار LED خود را مشخص کنید.تعیین نوع ال ای دی
  3. مقدار Length را مطابق با تعداد LEDهای خود تنظیم کنید. برای مثال، اگر 12 LED دارید، عدد را روی 12 قرار دهید.تعیین طول ال ای دی
  4. شماره پین GPIO را یادداشت کنید. این پین برای ارسال داده به LEDها استفاده می‌شود. به طور پیش‌فرض، GPIO16 فعال است.تنظیم پایه GPIO
  5. به انتهای صفحه بروید و روی Save کلیک کنید.ذخیره پیکربندی تنظیمات
  6. سپس روی Back بزنید تا به صفحه اصلی بازگردید.

اتصال LED آدرس پذیر WS2812x به برد ESP32

بعد از اینکه تنظیمات WLED را انجام دادید، کابل USB را از برد ESP32 جدا کنید. حالا وقت آن است که نوار LED قابل آدرس‌دهی را به برد متصل کنیم.

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

اتصالات این بخش بسیار ساده است. فقط سه سیم برای اتصال نیاز دارید: دو سیم برای برق و یک سیم برای انتقال داده.

  • سیم قرمز (+5V/VCC) نوار LED را به پین VIN روی برد ESP32 وصل کنید.
  • سیم سفید یا زرد (GND) را به پین GND برد متصل کنید.
  • در نهایت سیم سبز (DIN) نوار LED را از طریق یک مقاومت 330 اهمی به پین GPIO16 (RX2) وصل کنید. این مقاومت برای محافظت از پایه داده ضروری است. مقاومت بین 220 تا 470 اهم نیز مناسب است، فقط سعی کنید آن را تا حد ممکن نزدیک به ورودی نوار LED قرار دهید.

اگر از تعداد کمی LED استفاده می‌کنید، می‌توانید برد ESP32 را با کابل USB به کامپیوتر وصل کرده و برق نوار را مستقیماً از طریق برد تأمین کنید.

اتصال LED آدرس پذیر WS2812x به برد ESP32

اما اگر پروژه شما شامل تعداد زیادی LED است، برق USB کافی نخواهد بود. در این حالت باید از منبع تغذیه خارجی 5 ولت برای تأمین انرژی نوار استفاده کنید.

اتصال LED WS2812x به برد ESP32 با منبع تغذیه خارجی

به خاطر داشته باشید که هر LED RGB در حداکثر روشنایی حدود 60 میلی‌آمپر (20 میلی‌آمپر برای هر کانال رنگ) مصرف می‌کند. یعنی برای هر 30 LED، نوار شما می‌تواند تا 1.8 آمپر جریان بکشد.

بعد از اتمام سیم‌کشی، LEDها باید روشن شده و نوری ملایم با رنگ زرد از خود منتشر کنند. اگر اینطور نشد، اتصالات را دوباره بررسی کنید.

از این مرحله به بعد، همه تنظیمات از طریق اپلیکیشن WLED انجام می‌شود.

استفاده از اپلیکیشن موبایل WLED

  1. اپلیکیشن WLED را از Google Play Store یا Apple App Store روی گوشی یا تبلت خود نصب کنید.استفاده از اپلیکیشن موبایل WLED
  2. برنامه را باز کرده و روی آیکون + در گوشه بالا سمت راست بزنید تا صفحه جستجوی دستگاه‌ها باز شود.استفاده از اپلیکیشن موبایل WLED
  3. روی گزینه Discover Lights بزنید تا برنامه شبکه Wi-Fi شما را برای پیدا کردن تمام دستگاه‌های WLED اسکن کند.استفاده از اپلیکیشن موبایل WLED
  4. وقتی پیام Found WLED! ظاهر شد، روی آیکون تیک در گوشه بالا کلیک کنید تا به صفحه اصلی بازگردید. در این صفحه لیستی از تمام دستگاه‌های WLED متصل به شبکه نمایش داده می‌شود.تنظیم نور LED با ESP32
  5. روی دستگاه تازه شناسایی‌شده بزنید تا پنل کنترل آن باز شود.
  6. تنظیم نور LED با ESP32با استفاده از دایره رنگ (Color Wheel) رنگ دلخواه خود را انتخاب کنید. و تمام! حالا نوار LED شما به‌صورت بی‌سیم و از راه دور قابل کنترل است.
  7. تنظیم نور LED با ESP32 اگر رنگ LEDها با رنگ انتخابی در اپلیکیشن مطابقت ندارد، به مسیر Config > LED Preferences بروید و در بخش Hardware Setup گزینه Color Order را تغییر دهید تا هماهنگ شود.
  8. تنظیم نور LED با ESP32اگر چند دستگاه WLED دارید، می‌توانید برای تشخیص راحت‌تر نام هر دستگاه را تغییر دهید. برای این کار وارد Config > User Interface شوید، نام دلخواه خود را بنویسید و روی Save بزنید.تغییر افکت‌ها در WLED

تغییر افکت‌ها در WLED

اپلیکیشن WLED بیش از 180 افکت نوری مختلف ارائه می‌دهد — و اینجاست که بخش هیجان‌انگیز ماجرا شروع می‌شود.

  1. وارد تب Effects شوید و یک افکت انتخاب کنید. LEDها بلافاصله واکنش نشان می‌دهند و تغییر را نمایش می‌دهند.تغییر افکت‌ها در WLED
  2. می‌توانید سرعت و شدت افکت را تنظیم کنید. هرچه نوار لغزنده (Slider) را بیشتر به جلو ببرید، افکت سریع‌تر و پرانرژی‌تر می‌شود.تغییر افکت‌ها در WLED
  3. هر افکت دارای طرح رنگی مخصوص به خود است، اما می‌توانید آن را از طریق بخش Color Picker تغییر دهید. با این کار، نوع انیمیشن حفظ می‌شود اما رنگ‌ها عوض می‌شوند.تغییر افکت‌ها در WLED

نکات و توصیه‌ها برای استفاده از WLED با ESP32

هنگام طراحی سیستم نورپردازی با استفاده از ESP32، رعایت چند نکته می‌تواند عملکرد پروژه را بهینه‌تر کند:

  • برد ESP32 می‌تواند هم‌زمان تا 10 نوار LED را کنترل کند.
  • بیشتر انواع نوارها هنوز به‌طور کامل تست نشده‌اند، اما نوارهای WS281x، SK6812 RGBW و PWM White کاملاً سازگار هستند.
  • بلافاصله پس از نصب WLED، وارد تنظیمات LED شوید و نوع نوار، شماره پین‌ها، طول و ترتیب رنگ‌ها را مشخص کنید.
  • با انتخاب منبع تغذیه مناسب و غیرفعال کردن گزینه Brightness Limiter در تنظیمات WLED، می‌توانید نرخ فریم (Framerate) را به‌طور قابل‌توجهی افزایش دهید.
  • هیچ محدودیتی برای انتخاب پین‌ها وجود ندارد — می‌توانید از هر پین آزاد روی ESP32 استفاده کنید.
  • عملکرد سیستم به تعداد LEDهایی که توسط ESP32 کنترل می‌شوند و تعداد خروجی‌های فعال بستگی دارد.

پیشنهادات عملکرد بر اساس تعداد LEDها

سطح عملکرد تعداد LED در هر خروجی (Pin) تعداد خروجی‌ها مجموع LEDها
عالی (Excellent) 512 4 2048
بهینه (Optimal) 800 4 3200
خوب (Good) 1000 4 4000
مرزی (Marginal) 1000 5 5000
مرزی (Marginal) 800 6 4800

برد ESP32 قادر است حدود 65,000 تا 85,000 LED در ثانیه را پردازش کند. به‌طور تقریبی:

  • 1000 LED با حدود 70 فریم بر ثانیه (fps)
  • 2000 LED با حدود 35 فریم بر ثانیه (fps)
  • 4000 LED با حدود 18 فریم بر ثانیه (fps)
5 (1 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *