16. Cảm biến ánh sáng

Cảm biến ánh sáng là thiết bị giúp nhận biết và phát hiện cường độ ánh sáng của môi trường xung quanh. Cảm biến này thích hợp để làm các ứng dụng cơ bản về nhận biết ánh sáng, biết được trời sáng hay trời tối và nhiều ứng dụng thú vị khác.
1. Mua sản phẩm

2. Thông số kỹ thuật
Thông số kỹ thuật
Điện áp hoạt động: 3.3V
Dòng cung cấp: 0.5-3mA
Điện trở quang: GL5528
Điện trở khi có ánh sáng: 20KΩ
Điện trở khi không có ánh sáng: 1MΩ
Thời gian phản hồi: 20-30 secs
Bước sóng tối đa: 540 nm
Pinout của cảm biến
Cảm biến ánh sáng có 4 chân, và mỗi chân có chức năng như sau:
STT |
Chân |
Chức năng |
---|---|---|
1 |
GND |
Nối đất |
2 |
VCC |
Cấp nguồn (3.3V) |
3 |
NC |
Không sử dụng |
4 |
SIG |
Tín hiệu ngõ ra của cảm biến |
3. Kết nối
Bước 1: Chuẩn bị các thiết bị như sau:
![]() |
![]() |
![]() |
---|---|---|
Máy tính lập trình Yolo:Bit |
Mạch mở rộng cho Yolo:Bit |
Cảm biến ánh sáng (kèm dây Grove) |
Bước 2: Cắm Yolo:Bit vào mạch mở rộng
Bước 3: Sử dụng dây Grove cắm vào cảm biến
Bước 4: Kết nối cảm biến với P0 trên mạch mở rộng.

Đây cũng là một cảm biến có giá trị trả về là analog, do đó bạn có thể kết nối với các chân P0, P1, P2 trên mạch mở rộng
4. Hướng dẫn lập trình với OhStem App
Bước 1: Tải thư viện AIOT KIT, xem hướng dẫn tải thư viện tại đây
Bước 2: Gửi chương trình sau xuống Yolo:Bit

Note
Giải thích chương trình:
Ở trong vòng lặp lại mãi, chúng ta sẽ khai báo một hàm điều kiện:
Nếu giá trị đọc được thấp hơn 50 (trời tối), sẽ đổi màu đèn led trên Yolo:Bit thành màu vàng
Ngược lại, khi trời sáng, đổi tất cả màu đèn thành màu đen (nghĩa là đèn LED sẽ tắt)
Chương trình trên sẽ được lặp đi lặp lại liên tục.
5. Hướng dẫn lập trình Arduino
Mở phần mềm Arduino IDE. Xem hướng dẫn lập trình với Arduino tại đây.
Copy đoạn code sau, click vào nút
Verify
để kiểm tra lỗi chương trình. Sau khi biên dịch không báo lỗi, bạn có thể nạp đoạn code vào board.
#include "YoloBit.h"
YoloBit yolobit;
int sensorPin = P0_ADC;
int sensorValue = 0;
void setup() {
Serial.begin(115200);
}
void loop() {
// đọc giá trị cảm biến
sensorValue = analogRead(sensorPin);
Serial.println(sensorValue);
delay(200);
}
Note
Giải thích chương trình: Sau khi nạp chương trình và mở cửa sổ Serial, bạn sẽ thấy giá trị đọc được từ cảm biến được in ra. Bạn hãy thử lấy tay che cảm biến để thấy được sự thay đổi.