Giới Thiệu
Cảm biến ánh sáng sử dụng arduino : Trong hướng dẫn dành cho người mới bắt đầu này, bạn sẽ học cách xây dựng một mạch chiếu sáng tự động đơn giản bằng cách sử dụng Điện trở quang (LDR) và Arduino. Có rất nhiều ứng dụng của mạch này như,
- Bắt đèn trong nhà tự động bật khi trời tối và tắt khi ban ngày
- Đèn đường tự động đơn giản, v.v.
Nó cũng có thể được sử dụng cùng với các cảm biến khác để làm những việc khá thú vị.
Tôi cho rằng tại thời điểm này bạn biết rất ít về Arduino và vì vậy tôi đã cố gắng đơn giản hóa và giải thích mọi thứ để bạn có thể dễ dàng hiểu được.
Về cơ bản, LDR cảm nhận lượng ánh sáng xung quanh và thông báo cho Arduino. Arduino được lập trình để bật đèn LED khi trời tối và tắt đèn LED khi có đủ ánh sáng xung quanh.
Các Linh kiện được sử dụng
Để xây dựng mạch này, bạn sẽ cần các thành phần sau
- Arduino
- LDR
- Chiết áp 10k hoặc 50k
- Breadboard
- Đèn LED
- Điện trở 220 ohm
- Dây kết nối
Sơ đồ
Đây là sơ đồ của mạch
Hoạt động của Cảm biến ánh sáng sử dụng arduino
Điện trở của LDR thay đổi theo lượng ánh sáng chiếu vào nó. Điện trở tăng khi có ít ánh sáng xung quanh và giảm khi có ánh sáng chói. Trời càng tối, điện áp rơi trên LDR càng cao. Điện trở tối đa của mỗi LDR có thể khác nhau tùy thuộc vào loại LDR nhưng nó thường từ 1kΩ đến 10kΩ mặc dù nó có thể cao hơn.
Mạch hoạt động theo nguyên tắc khi một LDR và một điện trở được kết nối để tạo thành một bộ chia điện áp, điện áp rơi trên LDR tỷ lệ với điện trở của LDR tỷ lệ thuận với lượng ánh sáng chiếu vào nó.
Chiết áp và LDR tạo thành mạch Phân chia tiềm năng. Khi trời tối hơn, điện trở của LDR tăng và điện áp giảm trên nó tăng. Điện áp này được gửi đến Pin A0 của Arduino để chuyển đổi điện áp tương tự đo được thành một số trong khoảng từ 0 đến 1023. Tùy thuộc vào kết nối của bạn, điện áp giảm trên LDR càng cao, con số này càng gần với 1023.
Chiết áp dùng để điều chỉnh độ nhạy của toàn hệ thống.
Mạch Breadboard
Đây là thiết kế Fritzing của mạch. Nếu bạn đang xây dựng mạch trên một breadboard, bạn có thể xem trên Fritzing Design.
Code Cảm biến ánh sáng sử dụng arduino
Code Arduino được viết để bật đèn LED khi điện áp trên LDR vượt quá một giá trị ngưỡng nhất định. Tôi đã nhận xét từng dòng của mã để bạn hiểu rõ hơn về cách code hoạt động.
/ * Tự động chiếu sáng với LDR và Arduino int LDR = A5; // Nói với Arduino chúng ta sẽ kết nối LDR với Arduino Pin A5 int LED = 8; // Nói với Arduino chúng ta sẽ kết nối đèn LED với Arduino Pin 8 void setup () { pinMode (LDR, INPUT); // Chúng ta sẽ đọc điện áp (INPUTING) từ LDR pinMode (LED, OUTPUT); // Chúng ta sẽ gửi một điện áp (OUTPUTING) đến LED Serial.begin (9600); // Đặt spped mà Arduino giao tiếp với Serial Monitor (9600 có nghĩa là 9600 bit được truyền mỗi giây) } void loop () { lightLevel = analogRead (LDR); // Đọc giá trị đo được từ LDR Serial.println (lightLevel); // Hiển thị giá trị trong màn hình nối tiếp if (lightLevel> = 600) // Nếu giá trị đo được từ LDR lớn hơn hoặc bằng 600 { digitalWrite (LED, HIGH); // Bật đèn LED } else { digitalWrite (LED, LOW); // Tắt đèn LED } }