Cách sử dụng Mô-đun LED RGB HW-478 và KY-009 với Arduino Nano

Cach Su Dung Mo Dun Led Rgb Hw 478 Va Ky 009 Voi Arduino Nano



Arduino Nano có chip ATmega328 trên bo mạch có thể xử lý mã Arduino. Arduino Nano có một số chân GPIO sử dụng để chúng ta có thể giao tiếp với các cảm biến khác nhau bao gồm cả đèn LED RGB. Bằng cách gửi tín hiệu PWM đến chân LED RGB, chúng ta có thể tạo ra một số màu khác nhau. Bài viết này sẽ đề cập đến việc tích hợp LED RGB với bo mạch Arduino Nano.

Giới thiệu về LED RGB

Đèn LED RGB là loại đèn LED có khả năng phát ra ánh sáng với nhiều màu sắc khác nhau bằng cách trộn cường độ của các bước sóng màu đỏ, lục và lam. Có thể sử dụng tín hiệu PWM (Điều chế độ rộng xung) để tạo nhiều màu bằng cách điều chỉnh chu kỳ hoạt động của tín hiệu PWM được tạo cho ba màu cơ bản.

Mô-đun LED RGB

Các mô-đun LED RGB khác nhau có sẵn như HW-478, KY-016 và KY-009. chúng tôi sẽ sử dụng HW-478 Mô-đun RGB. Nguyên tắc làm việc của tất cả các mô-đun này là như nhau.









HW-478 RGB mô-đun có đặc điểm kỹ thuật sau:



thông số kỹ thuật Giá trị
điện áp hoạt động tối đa 5V
Màu đỏ 1.8V – 2.4V
Màu xanh lá 2.8V – 3.6V
Màu xanh da trời 2.8V – 3.6V
chuyển tiếp hiện tại 20mA – 30mA
Nhiệt độ hoạt động -25°C đến 85°C [-13°F – 185°F]
Kích thước bảng 18,5mm x 15mm [0,728in x 0,591in]

Sơ đồ chân đèn LED RGB HW-478

Sau đây là 4 chân trong mô-đun RGB:





Hoạt động của đèn LED RGB

Đèn LED RGB là loại đèn LED có thể phát ra ba màu ánh sáng khác nhau: đỏ, lục và lam. Nguyên lý hoạt động của đèn LED RGB với Arduino liên quan đến việc sử dụng điều chế độ rộng xung (PWM) để kiểm soát cường độ của từng màu.



Bằng cách điều chỉnh chu kỳ hoạt động của tín hiệu PWM, Arduino có thể thay đổi cường độ dòng điện chạy qua mỗi đèn LED, khiến đèn LED phát ra màu ánh sáng khác nhau. Ví dụ: nếu chu kỳ hoạt động của đèn LED màu đỏ được đặt thành giá trị cao, thì đèn LED sẽ phát ra ánh sáng màu đỏ tươi. Nếu chu kỳ hoạt động của đèn LED màu lục được đặt thành giá trị thấp, thì đèn LED sẽ phát ra ánh sáng màu lục mờ. Bằng cách kết hợp cường độ của ba màu, Arduino có thể tạo ra nhiều loại màu khác nhau.

Giá trị chu kỳ nhiệm vụ Arduino PWM thay đổi trong khoảng từ 0 đến 255. Bằng cách gán giá trị PWM cho bất kỳ màu nào, chúng ta có thể đặt nó ở chế độ sáng hoàn toàn hoặc tắt hoàn toàn. 0 tương ứng với đèn LED tắt và 255 tương ứng với độ sáng đầy đủ.

Cách hiển thị nhiều màu trong đèn LED RGB

Để hiển thị nhiều màu, chúng ta phải xác định các giá trị PWM cho ba màu cơ bản (RGB). Để hiển thị bất kỳ màu nào trước tiên chúng ta phải tìm mã màu. Sau đây là danh sách mã màu của một số màu chính:

Để tìm mã màu, người ta có thể sử dụng Bộ chọn màu của Google . Sử dụng công cụ này, chúng ta cũng có thể nhận được giá trị HEX RGB cho màu tương ứng.

Bây giờ chúng ta sẽ chuyển sang giao diện của đèn LED RGB với Arduino Nano.

Kết nối LED RGB với Arduino Nano

Để giao tiếp mô-đun LED RGB với Arduino Nano, cần có các thành phần sau:

  • Arduino nano
  • Điện trở 3×220 Ohm (Ω)
  • Mô-đun LED RGB HW-478
  • dây nhảy
  • bánh mì
  • IDE Arduino

sơ đồ
Hình ảnh đã cho đại diện cho sơ đồ của Arduino Nano với đèn LED RGB.

Phần cứng
Phần cứng sau đây được thiết kế trên breadboard. Một điện trở được kết nối với mỗi chân để bảo vệ mạch LED.

Mã số
Mở môi trường tích hợp Arduino và tải mã đã cho lên bảng Arduino Nano:

int ghim xanh = 2 , ghim đỏ = 3 , bluePin = 4 ; /* Chân LED RGB được xác định */
thiết lập vô hiệu ( ) {
 pinMode ( ghim đỏ, ĐẦU RA ) ; /* Ghim màu đỏ được xác định BẰNG đầu ra */
 pinMode ( greenPin, OUTPUT ) ; /* Ghim màu xanh lá cây được xác định BẰNG đầu ra */
 pinMode ( bluePin, ĐẦU RA ) ; /* Ghim màu xanh được xác định BẰNG đầu ra */
}
vòng lặp trống ( ) {
RGB_output ( 255 , 0 , 0 ) ; // Đặt màu RGB thành Đỏ
trì hoãn ( 1000 ) ;
RGB_output ( 0 , 255 , 0 ) ; // Đặt màu RGB thành vôi
trì hoãn ( 1000 ) ;
RGB_output ( 0 , 0 , 255 ) ; // Đặt màu RGB thành màu xanh lam
trì hoãn ( 1000 ) ;
RGB_output ( 255 , 255 , 255 ) ; // Đặt màu RGB thành màu trắng
trì hoãn ( 1000 ) ;
RGB_output ( 128 , 0 , 0 ) ; // Đặt màu RGB thành màu hạt dẻ
trì hoãn ( 1000 ) ;
RGB_output ( 0 , 128 , 0 ) ; // Đặt màu RGB thành màu xanh lục
trì hoãn ( 1000 ) ;
RGB_output ( 128 , 128 , 0 ) ; // Đặt màu RGB thành ô liu
trì hoãn ( 1000 ) ;
RGB_output ( 0 , 0 , 0 ) ; // Đặt màu RGB thành màu đen
trì hoãn ( 1000 ) ;
}
vô hiệu RGB_output ( int redLight, int greenLight, int blueLight )
{
tương tựViết ( ghim đỏ, đèn đỏ ) ; // viết giá trị tương tự sang RGB
tương tựViết ( greenPin, greenLight ) ;
tương tựViết ( bluePin, blueLight ) ;
}

Các chân RGB đầu tiên được khởi tạo để gửi tín hiệu PWM. Chân kỹ thuật số 2 được khởi tạo cho màu xanh lá cây và tương tự D2 và D3 được khởi tạo cho màu đỏ và xanh dương.

Trong phần vòng lặp của mã, các màu khác nhau được xác định bằng giá trị HEX RGB của chúng. Mỗi giá trị này mô tả một tín hiệu PWM.

tiếp theo trong vô hiệu RGB_output() chúng tôi đã chuyển 3 số nguyên đặt các màu khác nhau trên đèn RGB. Ví dụ: đối với màu trắng, chúng tôi phải vượt qua 255 trong mỗi ba tham số. Mỗi màu cơ bản đỏ, xanh lam và xanh lục sẽ sáng đến giá trị đầy đủ của nó, kết quả là cho chúng ta màu trắng ở đầu ra.

đầu ra
Sau khi tải lên mã, chúng ta sẽ thấy các màu khác nhau trên đèn LED RGB. Hình ảnh dưới đây cho chúng ta thấy màu ĐỎ.

Hình ảnh này đại diện cho màu xanh lục.

Chúng tôi đã giao tiếp mô-đun LED RGB với Arduino Nano.

Phần kết luận

Arduino Nano là một bo mạch nhỏ gọn có thể được tích hợp với các cảm biến khác nhau. Ở đây, chúng tôi đã sử dụng đèn LED RGB với Arduino Nano và lập trình nó để hiển thị nhiều màu bằng tín hiệu PWM từ chân kỹ thuật số Arduino Nano. Để biết thêm mô tả về bài viết đọc RGB.