ESP32 Dải LED
Trong hướng dẫn này, chúng ta sẽ học cách lập trình ESP32 để điều khiển dải LED phát sáng.
Phần Cứng Cần Thiết
| 1 | × | mô-đun phát triển ESP-WROOM-32 | ||
| 1 | × | Alternatively, ESP32 Uno-form board | ||
| 1 | × | Alternatively, ESP32 S3 Uno-form board | ||
| 1 | × | Cáp USB Type-C | ||
| 1 | × | Relay | ||
| 1 | × | Dải LED 1 màu 12V | ||
| 1 | × | Dải LED RGB 12V | ||
| 1 | × | Adapter nguồn 12V | ||
| 1 | × | Jack nguồn DC | ||
| 1 | × | Dây jumper | ||
| 1 | × | (Thay thế) Dải LED 1 màu 24V | ||
| 1 | × | (Thay thế) Dải LED RGB 24V | ||
| 1 | × | (Thay thế) Adapter nguồn 24V | ||
| 1 | × | (Tùy chọn) Adapter nguồn 5V cho ESP32 | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Breakout Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP32 |
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Dải LED
Dải LED, còn được gọi là LED tape hoặc LED ribbon, là một bo mạch mềm với các LED được gắn trên bề mặt để phát sáng. Những dải LED này rất linh hoạt và thường được sử dụng cho ánh sáng trang trí trong nhiều ứng dụng khác nhau. Dải LED có nhiều màu sắc khác nhau và thường được sử dụng để tạo ánh sáng xung quanh, ánh sáng nhấn mạnh hoặc hiệu ứng ánh sáng trang trí.
Dải LED có hai loại chính:
- Dải LED có thể điều khiển từng LED (Addressable LED Strips): Ở loại này, màu sắc và độ sáng của từng LED riêng lẻ trên dải có thể được điều khiển độc lập. Khả năng này là do mỗi LED được gán một địa chỉ cụ thể.
- Dải LED không thể điều khiển từng LED (Non-Addressable LED Strips): Ngược lại, dải LED không thể điều khiển từng LED cho phép điều khiển màu sắc và độ sáng, nhưng việc điều khiển này áp dụng đồng nhất cho tất cả các LED trên dải.
Hướng dẫn này sẽ tập trung vào Dải LED Không Thể Điều Khiển Từng LED. Đối với Dải LED Có Thể Điều Khiển Từng LED, vui lòng tham khảo các hướng dẫn sau:
- Hướng dẫn ESP32 - NeoPixel LED Strip
- Hướng dẫn ESP32 - Dải LED WS2812B
- Hướng dẫn ESP32 - DotStar LED Strip
Sơ Đồ Chân Dải LED Không Thể Điều Khiển Từng LED
Dải LED Không Thể Điều Khiển Từng LED có hai loại chính:
- Dải LED 1 màu không thể điều khiển từng LED: Chỉ có một màu được xác định bởi nhà sản xuất.
- Dải LED RGB không thể điều khiển từng LED: có thể tạo ra mọi màu sắc
Dải LED 1 Màu Không Thể Điều Khiển Từng LED thường có hai chân:
- Chân 12V/24V: cần được kết nối với chân dương của nguồn điện DC 12V hoặc 24V
- Chân GND: cần được kết nối với chân âm của nguồn điện DC 12V hoặc 24V
Dải LED RGB Không Thể Điều Khiển Từng LED thường có bốn chân:
- Chân 12V/24V: cần được kết nối với chân dương của nguồn điện DC 12V hoặc 24V
- Chân R: Chân này được sử dụng để điều khiển màu đỏ. Kết nối chân này với chân âm của nguồn điện sẽ kích hoạt màu đỏ
- Chân G: Chân này được sử dụng để điều khiển màu xanh lá. Kết nối chân này với chân âm của nguồn điện sẽ kích hoạt màu xanh lá
- Chân B: Chân này được sử dụng để điều khiển màu xanh dương. Kết nối chân này với chân âm của nguồn điện sẽ kích hoạt màu xanh dương

Chúng ta sẽ học cách điều khiển cả hai loại bằng ESP32 từng cái một.
Cách Điều Khiển Dải LED 1 Màu Không Thể Điều Khiển Từng LED
Nếu dải LED 12V được cấp nguồn bởi nguồn điện 12V, nó sẽ phát sáng. Để điều khiển dải LED 12V, chúng ta cần sử dụng relay ở giữa ESP32 và dải LED 12V. ESP32 có thể điều khiển dải LED 12V thông qua relay. Chưa quen với relay, bao gồm sơ đồ chân, chức năng và lập trình? hãy tìm hiểu về relay trong ESP32 - Relay
Sơ Đồ Kết Nối
Sơ Đồ Kết Nối giữa ESP32 và Dải LED 1 Màu Không Thể Điều Khiển Từng LED

This image is created using Fritzing. Click to enlarge image
Nếu bạn chưa rõ cách cấp nguồn cho ESP32 và các linh kiện khác, xem: Cách Cung Cấp Nguồn Điện Cho ESP32.
Sơ Đồ Kết Nối giữa ESP32 và Dải LED RGB Không Thể Điều Khiển Từng LED

This image is created using Fritzing. Click to enlarge image
Code ESP32
Code ESP32 cho việc điều khiển Dải LED 1 Màu Không Thể Điều Khiển Từng LED
Code dưới đây sẽ liên tục bật dải LED trong 5 giây và tắt trong 5 giây,
Code ESP32 cho việc điều khiển Dải LED RGB Không Thể Điều Khiển Từng LED
Code dưới đây sẽ liên tục điều khiển màu sắc của dải LED RGB (đỏ, xanh lá, xanh dương, vàng, magenta, cyan và trắng)
Các Bước Nhanh
- Nếu đây là lần đầu bạn sử dụng ESP32, hãy xem ESP32 - Cài Đặt Phần Mềm.
- Thực hiện kết nối như hình trên.
- Kết nối bo mạch ESP32 với PC qua cáp micro USB
- Mở Arduino IDE trên PC của bạn.
- Chọn đúng bo mạch ESP32 (ví dụ: ESP32 Dev Module) và cổng COM.
- Kết nối ESP32 với PC qua cáp USB
- Mở Arduino IDE, chọn đúng bo mạch và cổng
- Copy code trên và mở bằng Arduino IDE
- Nhấp nút Upload trên Arduino IDE để tải code lên ESP32
- Kiểm tra trạng thái của dải LED
Giải Thích Code
Đọc giải thích từng dòng trong các dòng comment của code!
Xin lưu ý rằng, để điều khiển độ sáng và các màu sắc khác của dải LED không thể điều khiển từng LED, chúng ta cần sử dụng driver L298N thay vì relay
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.