Raspberry Pi LED RGB
Hướng dẫn này sẽ chỉ bạn cách sử dụng Raspberry Pi để điều khiển LED RGB. Cụ thể, chúng ta sẽ học:
- Cách hoạt động của LED RGB.
- Cách kết nối LED RGB với Raspberry Pi.
- Cách lập trình Raspberry Pi để điều khiển màu sắc của LED RGB.
Linh Kiện Cần Thiết
| 1 | × | Raspberry Pi 5 | ||
| 1 | × | LED RGB | ||
| 3 | × | điện trở 220 ohm | ||
| 1 | × | (Thay thế) Module LED RGB | ||
| 1 | × | breadboard (bo mạch thí nghiệm) | ||
| 1 | × | Dây nối jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Raspberry Pi | ||
| 1 | × | (Khuyến nghị) Raspberry Pi Prototyping Base Plate & Breadboard Kit | ||
| 1 | × | (Khuyến nghị) HDMI Touch Screen Monitor for Raspberry Pi |
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về LED RGB
LED RGB có khả năng tạo ra bất kỳ màu nào bằng cách kết hợp ba màu cơ bản: đỏ (red), xanh lá (green) và xanh dương (blue). Nó được tạo thành từ ba LED riêng biệt (đỏ, xanh lá và xanh dương) nhưng tất cả được đặt trong một vỏ bọc duy nhất.
Sơ Đồ Chân LED RGB
LED RGB có bốn chân:
- Chân Common (Cathode-) phải được kết nối với GND (0V)
- Chân R (red - đỏ) để điều khiển màu đỏ
- Chân G (green - xanh lá) để điều khiển màu xanh lá
- Chân B (blue - xanh dương) để điều khiển màu xanh dương

Nếu chúng ta muốn kết nối LED RGB với Raspberry Pi, chúng ta phải sử dụng điện trở hạn dòng. Việc đấu nối có thể hơi phức tạp, nhưng đừng lo lắng. Chúng ta có thể sử dụng module LED RGB này, đã có điện trở tích hợp sẵn.
Module LED RGB cũng có bốn chân:
- Chân Common (Cathode-): cần được kết nối với GND (0V)
- Chân R (red - đỏ): dùng để điều khiển màu đỏ
- Chân G (green - xanh lá): dùng để điều khiển màu xanh lá
- Chân B (blue - xanh dương): dùng để điều khiển màu xanh dương

※ Lưu ý:
Loại chân common của LED RGB có thể khác nhau; có thể là cathode hoặc anode. Hướng dẫn này sẽ sử dụng chân common cathode.
Cách Hoạt Động
Trong vật lý, ba giá trị màu - Red (R - Đỏ), Green (G - Xanh lá) và Blue (B - Xanh dương) - được kết hợp để tạo thành một màu sắc. Mỗi giá trị này có phạm vi từ 0 đến 255. Sự kết hợp của ba giá trị này tạo ra tổng cộng 256 x 256 x 256 màu sắc.
Chúng ta có thể làm cho LED RGB hiển thị bất kỳ màu nào mong muốn bằng cách lập trình Raspberry Pi tạo ra tín hiệu PWM (với duty cycle từ 0 đến 255) đến các chân R, G và B. Duty cycle của tín hiệu PWM gửi đến các chân R, G và B tỉ lệ thuận với các giá trị màu Red (R), Green (G) và Blue (B) tương ứng.
Sơ Đồ Đấu Nối
- Sơ đồ đấu nối giữa Raspberry Pi và LED RGB

This image is created using Fritzing. Click to enlarge image
- Sơ đồ đấu nối giữa Raspberry Pi và module LED RGB

This image is created using Fritzing. Click to enlarge image
Cách Điều Khiển LED RGB
Hãy học cách điều khiển LED RGB hiển thị bất kỳ màu nào, ví dụ màu #00979D từng bước:
- Đầu tiên, xác định màu bạn muốn hiển thị và lấy mã màu của nó. Mẹo:
- Bạn có thể sử dụng bộ chọn màu để chọn mã màu bạn muốn
- Nếu bạn muốn sử dụng màu từ một hình ảnh, bạn có thể sử dụng công cụ trực tuyến Colors From Image
- Sau đó, chuyển đổi mã màu sang giá trị R, G, B bằng cách sử dụng công cụ từ w3school. Hãy ghi chú lại các giá trị này. Trong trường hợp này: R = 0, G = 151, B = 157

- Chỉ định các chân Raspberry Pi được kết nối với các chân R, G và B. Ví dụ:
- Đặt các chân Raspberry Pi ở chế độ output:
- Thiết lập các chân Raspberry Pi để xuất tín hiệu PWM với tần số 1000Hz:
- Điều khiển LED để phát sáng màu #00979D, tương ứng với R = 0, G = 151, B = 157.
Raspberry Pi - Code Ví Dụ LED RGB
Code Raspberry Pi dưới đây thay đổi màu của LED theo trình tự các màu sau:
- #00C9CC (Red = 0, Green = 201, Blue = 204)
- #F7788A (Red = 247, Green = 120, Blue = 138)
- #34A853 (Red = 52, Green = 168, Blue = 83)
Khi sử dụng nhiều màu, chúng ta có thể rút gọn code Raspberry Pi bằng cách tạo một hàm:
Kiến Thức Bổ Sung
Đối với LED RGB với chân common Anode, bạn cần:
- Kết nối chân common với 3.3V của Raspberry Pi.
- Sử dụng hàm analogWrite() và đặt các giá trị R, G và B lần lượt là 255 - R, 255 - G và 255 - B.
Dải LED RGB được tạo thành từ một chuỗi các LED RGB được kết nối với nhau. Dải LED có thể được chia thành loại có địa chỉ và không có địa chỉ. Chúng tôi sẽ tạo hướng dẫn cho từng loại dải LED.
※ Lưu ý:
Không sử dụng một điện trở duy nhất ở chân common của LED RGB thay vì ba điện trở ở các chân khác.
Đúng là ba LED trong một gói RGB được kết nối song song. Về lý thuyết, việc sử dụng một điện trở duy nhất ở chân common là được. Tuy nhiên, trong thực tế, điều này không được khuyến khích. Điều này là do các LED thực tế không có cùng đặc tính. Ba LED trong gói RGB KHÔNG giống hệt nhau ⇒ Điện trở của các LED khác nhau ⇒ Dòng điện không được phân phối đều cho mỗi LED ⇒ Độ sáng không đồng đều và điều này có thể dẫn đến việc phá hủy một LED, và cuối cùng là các LED khác.