กลับไปหน้ารวมไฟล์
control-led-rgb-ws2812b-through-wifi-and-wled-8cdbd8.md

ในโปรเจกต์นี้ พี่จะพาน้องไปสร้างคอนโทรลเลอร์สำหรับ LED RGB WS2812B โดยใช้บอร์ด Wemos D1 Mini กับแอป WLED กัน

เจ้าโปรเจกต์นี้พี่เจอตอนที่พี่หาวิธีทำ "คอนโทรลเลอร์ LED RGB" ที่ใช้ง่ายๆ นะ WLED นี่มันทั้งเป็นชื่อแอป และก็เป็นชื่อกลุ่มนักพัฒนาที่สร้างคอนโทรลเลอร์นี้ขึ้นมาให้ทุกคนใช้ควบคุม LED RGB ได้ง่ายๆ

WS2812B เป็น LED ประเภทนึงที่แอป WLED นี้คุมได้ ก่อนหน้านี้พี่เคยทำโปรเจกต์ติดตั้ง WS2812B ง่ายๆ กับ Arduino Uno มาบ้าง แต่อันต่อไปพี่อยากควบคุม LED RGB ให้เปลี่ยนเอฟเฟกต์ไฟได้ตามใจ จะผ่าน Wi-Fi หรือผ่านเน็ตก็สะดวกหมด ขอบคุณทีม WLED ด้วยนะ

Wemos D1 Mini คือบอร์ดพัฒนาที่ใช้ ESP8266 เป็นแกน Wemos เป็นไมโครคอนโทรลเลอร์เหมือน Arduino แต่มันมีโมดูล Wi-Fi ในตัวแล้ว เพราะงั้นพี่ว่า Wemos นี่เกินพอสำหรับโปรเจกต์นี้เลย

ด้านล่างเป็นเอกสารของพี่แต่เป็นภาษาอินโดนีเซีย หวังว่าน้องจะเข้าใจนะ :)

WLED LED RGB WS2812B

Ultimate Photon Engineering: สถาปัตยกรรมของ WLED

โปรเจกต์ ควบคุม WS2812B ผ่าน Wi-Fi ด้วย WLED ช่วยให้เราควบคุมแถบ LED Addressable ได้อย่างลื่นไหลและมีลูกเล่น WLED เป็นเฟิร์มแวร์โอเพนซอร์สที่ทรงพลัง มันเปลี่ยนไมโครคอนโทรลเลอร์ ESP8266 ให้กลายเป็นคอนโทรลเลอร์ LED เต็มฟีเจอร์ ที่เข้าถึงได้ผ่าน Wi-Fi

สถาปัตยกรรมฮาร์ดแวร์ของ WLED

การตั้งค่าฮาร์ดแวร์หลักนั้นเรียบง่ายมาก แค่มีของสำคัญไม่กี่ชิ้น:

  • ESP8266 Wemos D1 Mini หรือ NodeMCU: อันนี้เป็นสมองของระบบ ทำหน้าที่รันเฟิร์มแวร์ WLED และจัดการการสื่อสารเครือข่าย
  • แถบ LED WS2812B NeoPixel: พวกนี้คือ LED Addressable ที่เราจะควบคุม แต่ละ LED มีชิปขับ (driver chip) ในตัวแล้ว ทำให้ควบคุมพิกเซลแต่ละจุดได้ผ่านสายข้อมูลเส้นเดียว
  • แหล่งจ่ายไฟ 5V โดยเฉพาะ (ห้ามใช้ชาร์จมือถือ!): แหล่งจ่ายไฟที่แรงพอเป็นสิ่งสำคัญมาก แถบ WS2812B สามารถกินกระแสได้สูง โดยเฉพาะตอนเปิดสีขาวเต็มความสว่าง ถ้าใช้แหล่งจ่ายไฟที่อ่อนเกิน (เช่น ชาร์จมือถือ USB ทั่วไป) จะทำให้แรงดันตก, การทำงานผิดปกติ และไฟดับได้

การใช้งานแหล่งจ่ายไฟ 5A

การจัดการพลังงานเป็นส่วนที่สำคัญที่สุดของโปรเจกต์ LED ที่เสถียร แหล่งจ่ายไฟที่ถูกต้องตามสเปคจะช่วยให้ระบบทำงานได้คงที่และปกป้องชิ้นส่วนของคุณ

  • คำนวณความต้องการ: หาค่าการกินกระแสสูงสุด กฎง่ายๆ ที่ใช้กันคือ 60mA ต่อหนึ่ง LED (สีแดง, เขียว, น้ำเงิน อย่างละ 20mA) ตอนเปิดสีขาวเต็มสว่าง สำหรับแถบ 30 LED ก็คือ 30 * 0.06 = 1.8A อย่าลืมเผื่อความปลอดภัยอีก 20-30% เพราะงั้นแหล่งจ่ายไฟ 5V, 3A ก็จะเหมาะกับตัวอย่างนี้
  • ใช้แหล่งจ่ายไฟโดยเฉพาะ: อย่างที่บอกไป ชาร์จ USB ทั่วไปไม่พอ ใช้แหล่งจ่ายไฟ DC 5V ที่ควบคุมแรงดันได้ (แบบที่ใช้กับ CCTV หรือโปรเจกต์ LED) และมีค่ากระแสเพียงพอ
  • ป้อนไฟเพิ่ม (Power Injection): สำหรับแถบที่ยาวกว่า (เกิน 1-2 เมตร) คุณต้องป้อนไฟที่ปลายทั้งสองข้าง หรือหลายจุดตามแถบ เพื่อป้องกันแรงดันตก ซึ่งจะแสดงผลเป็น LED ที่ห่างจากแหล่งจ่ายไฟยิ่งสว่างน้อยลงและสีจะเบี่ยงไปทางแดงมากขึ้น

ไขความลับการแฟลชไฟล์ไบนารี (esptool)

การติดตั้งเฟิร์มแวร์ WLED ก็คือการอัดไฟล์ไบนารีลงไปในหน่วยความจำของ ESP8266 นั่นเอง กระบวนการนี้ที่มักใช้เครื่องมือชื่อ esptool นั้นง่ายนิดเดียว:

  1. เตรียมไฟล์ไบนารี: ดาวน์โหลดไฟล์ไบนารี (.bin) เวอร์ชั่นล่าสุดของ WLED จากหน้าเผยแพร่บน GitHub ทางการของ WLED
  2. เชื่อมต่อบอร์ด: ต่อ Wemos D1 Mini ของคุณเข้ากับคอมด้วยสาย USB ตรวจสอบให้แน่ใจว่าได้ติดตั้งไดรเวอร์ USB ที่ถูกต้องแล้ว ระบบจะได้รู้จักบอร์ดเป็นพอร์ตอนุกรม (COM)
  3. แฟลชเฟิร์มแวร์: คุณสามารถใช้ตัวติดตั้งเว็บของ WLED, โปรแกรม esptool แบบ command-line หรือเครื่องมือ GUI อย่าง NodeMCU PyFlasher ก็ได้ กระบวนการนี้จะเกี่ยวข้องกับการทำให้ ESP8266 เข้าสู่โหมดแฟลช (มักทำโดยกดปุ่มค้างไว้ตอนเสียบสาย หรือต่อ GPIO0 ลงกราวด์) เลือกพอร์ตอนุกรมและไฟล์ไบนารีที่ถูกต้อง แล้วเริ่มกระบวนการเขียน พอเสร็จเรียบร้อย บอร์ดจะรีบูตและสร้างเครือข่าย Wi-Fi Access Point ชื่อ "WLED-AP" ขึ้นมา

เมื่อแฟลชเสร็จแล้ว คุณก็สามารถเชื่อมต่อกับเครือข่าย "WLED-AP" เปิดเบราว์เซอร์ไปที่ 4.3.2.1 ตั้งค่าอุปกรณ์ให้เชื่อมต่อกับ Wi-Fi บ้านคุณ แล้วเริ่มต้นสร้างเอฟเฟกต์แสงสุดตระการตาได้เลย ไปลุยกันเลยวัยรุ่น!

ข้อมูล Frontmatter ดั้งเดิม

apps:
  - "1x WLED"
author: "lightthedreams"
category: "Wireless & IoT"
components:
  - "1x WS2812 Addressable LED Strip"
  - "1x Arduino UNO"
  - "1x Wemos D1 Mini"
description: "Networked solid-state luminosity orchestration! Bypass entirely the complex FastLED code entirely strictly explicitly seamlessly intuitively utilizing exactly massive complete pre-compiled WLED open-source web-server matrices seamlessly injected flawlessly into D1 Mini completely efficiently perfectly dynamically fluently intelligently smoothly reliably perfectly elegantly natively comprehensively securely functionally natively organically dynamically natively intelligently creatively functionally intuitively flawlessly compactly securely seamlessly safely logically rationally optimally intelligently seamlessly intuitively explicitly intuitively organically expertly correctly cleanly logically natively uniquely intuitively flawlessly expertly correctly intuitively flawlessly magically elegantly natively smoothly correctly fluently creatively explicitly creatively dynamically seamlessly intelligently explicitly cleanly elegantly smartly smartly natively seamlessly gracefully implicitly expertly organically inherently cleverly effortlessly beautifully logically functionally smoothly dynamically instinctively intuitively functionally conceptually creatively naturally perfectly securely gracefully magically dynamically cleanly gracefully functionally fluently conceptually creatively organically gracefully!"
difficulty: "Beginner"
documentationLinks: []
downloadableFiles:
  - "https://github.com/Aircoookie/WLED/releases"
  - "https://github.com/Aircoookie/WLED/releases"
encryptedPayload: "U2FsdGVkX190hKEBALFgUZRzsP+Tkb6ljvx/WnxYbQqJwhx09ABICQE/TcA1U+8+QNkNAEz9fQPul0SJQ6AE7Q=="
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/control-led-rgb-ws2812b-through-wifi-and-wled-8cdbd8_cover.jpg"
lang: "en"
likes: 4
passwordHash: "a20619aac55cb86411c7854927f1f719138dcd7843248c6123920a904bd8e237"
price: 1120
seoDescription: "Control LED RGB WS2812B easily via Wifi using WLED App and ESP8266 Wemos D1 Mini. Simple IoT project guide."
tags:
  - "wemos d1 mini"
  - "ws2812b"
  - "wled"
title: "ควบคุม LED RGB WS2812B ผ่าน Wifi กับ WLED งานง่ายแต่หล่อ!"
tools: []
videoLinks:
  - "https://www.youtube.com/embed/ejKH3bpX_t4"
views: 30604