Ứng dụng: Phát hiện chuyển động của vật thể, người, Tự động bật đèn khi có người.
Cảm biến chuyển động PIR là lý tưởng để phát hiện chuyển động. Pir là viết tắt của từ Hồng ngoại thụ động. Về cơ bản, cảm biến chuyển động Pir đo ánh sáng hồng ngoại từ các vật thể phát ra. Vì vậy, nó có thể phát hiện chuyển động dựa trên những thay đổi của ánh sáng hồng ngoại trong Môi trường. Đó là lý tưởng để phát hiện nếu một người di chuyển vào hoặc ra khỏi phạm vi cảm biến.
Cảm biến trong hình trên có hai chiết áp tích hợp để điều chỉnh độ trễ thời gian (chiết áp ở bên trái) và độ nhạy (chiết áp ở bên phải).
Ví dụ Phát hiện chuyển động với cảm biến chuyển động PIR
Sơ đồ mạch
Nối chân
/*
Arduino with PIR motion sensor
For complete project details, visit: http://RandomNerdTutorials.com/pirsensor
Modified by Rui Santos based on PIR sensor by Limor Fried
*/
int led = 13; // Chân led mặc định trên arduino
int sensor = 2; // chân nối cảm biến
int state = LOW; // mặc định, chưa phát hiện chuyển động, trạng thái được set sáng HIGH và LOW để đảm báo sự kiện phát hiện chuyển động và hết chuyển động chỉ được thực hiện 1 lần.
int val = 0; // biến chứa giá trị cảm biến
void setup() {
pinMode(led, OUTPUT); // initalize LED as an output
pinMode(sensor, INPUT); // initialize sensor as an input
Serial.begin(9600); // initialize serial
}
void loop(){
val = digitalRead(sensor); // đọc cảm biến
if (val == HIGH) { // Kiểm tra nếu cảm biến ở trạng thái HIGH
digitalWrite(led, HIGH); // bật LED sáng
delay(100); // chờ 100 milliseconds
if (state == LOW) {
Serial.println("Phat hien chuyen dong!");
state = HIGH; // Cập nhật lại trạng thái
}
}
else {
digitalWrite(led, LOW); // tắt Led
delay(200); // chờ 200 milliseconds
if (state == HIGH){
Serial.println("Chuyển động đã dừng!");
state = LOW; // cập nhập trạng thái LOW
}
}
}