Lập trình giao tiếp cảm biến LDR với board mạch Arduino

Đây là bài 14/17 bài của series môn học Lập trình Arduino cơ bản

1. Đặc điểm của cảm biến LDR

Cảm biến LDR (Light Dependent Resistor) là một cảm biến ánh sáng dựa trên điện trở. Cảm biến LDR còn gọi là quang trở.

Cảm biến LDR

Cảm biến LDR nhận điện áp 5V để hoạt động. Tín hiệu ánh sáng được lấy ra từ LDR nằm trong khoảng 0-1023. Tín hiệu này là tín hiệu analog nên phải kết nối LDR với chân analog của Arduino (A0 – A5).

2. Thiết kế mạch giao tiếp với cảm biến LDR

Mạch giao tiếp LDR với Arduino gồm 1 board Arduino, 1 cảm biến LDR và 1 điện trở 10kΩ. Để hoạt động, cảm biến LDR phải được cấp nguồn ở 1 chân (LDR không phân biệt chân dương và chân âm). Chân còn lại nối với một chân analog của Arduino và có 1 điện trở 10kΩ nối vào chân này.

Sơ đồ mạch giao tiếp LDR với Arduino

Có thể sử dụng mạch giao tiếp giả lập trên Proteus.

Sơ đồ mạch Proteus giao tiếp LDR với Arduino

3. Chương trình bật tắt đèn tự động với cảm biến LDR

Sử dụng hàm analogRead() để lấy giá trị ánh sáng từ cảm biến LDR. Giá trị này nằm trong khoảng 0 – 1023. Dựa vào giá trị này mà điểu khiển đèn sáng tắt theo yêu cầu.

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int ldr = A0;//chân analog kết nối LDR
int led = 9;
void setup() {
  lcd.begin(16, 2);
  pinMode(ldr, INPUT);
  pinMode(led, OUTPUT);
}

void loop() {
  int ldrValue = analogRead(ldr);//lấy giá trị độ sáng từ 0 đến 1023
  lcd.setCursor(0, 0);
  lcd.print("LDR VALUE:");
  lcd.print(ldrValue);
  if(ldrValue <= 200){
    digitalWrite(led, HIGH);
  }else{
    digitalWrite(led, LOW);
  }
}
Kết quả

4. Bài tập

Bài tập 1: Thiết kế mạch gồm 1 Arduino kết nối với 1 LDR, 1 LCD. Cứ 1s thì sẽ in giá trị ánh sáng lên LCD 1 lần.

Bài tập 2: Thiết kế mạch quản lý đèn ở nhà, trời tối thì tự động bật đèn, trời sáng thì tự động tắt đèn (sinh viên dùng đèn led).

Bài tập 3: Thiết kế mạch gồm 1 Arduino, 1 LDR, 1 button điều khiển bật tắt cảm biến. Nếu công tác mở và cảm biến ánh sáng yếu thì mở đèn, ánh sáng mạnh thì tắt đèn. Nếu công tắc tắt thì đèn luôn mở.

5/5 - (1 bình chọn)
Bài trước và bài sau trong môn học<< Lập trình giao tiếp cảm biến LM35 với board mạch ArduinoLập trình giao tiếp cảm biến DHT với board mạch Arduino >>
Chia sẻ trên mạng xã hội:

Tác giả Vinh Lê

Vinh Lê hiện đang là biên tập viên tại Góc Học IT.

Bài viết của Vinh Lê

Trả lời

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.