이번에는 아두이노와 PIR(Passive Infrared) 모션 센서를 사용하여 움직임을 감지하는 프로젝트를 만들어보겠습니다. 이 프로젝트를 통해 센서 데이터를 읽고 LED나 부저 등의 actuator를 제어하는 방법을 배울 수 있습니다.
아두이노와 PIR 모션 센서로 움직임 감지 프로젝트 만들기
글제목 입력??? 목차
위의 목차를 클릭하면 해당 글로 자동 이동 합니다.
사용센서
PIR 센서는 적외선 복사 에너지를 감지하여 움직임을 탐지하는 센서입니다. 모든 물체는 온도에 따라 적외선을 방출하는데, PIR 센서는 이 적외선 복사 에너지의 변화를 감지합니다. 따라서 PIR 센서는 움직이는 물체와 정지된 물체 사이의 적외선 복사 에너지 차이를 감지할 수 있습니다.
PIR 센서는 다음과 같은 장점이 있습니다:
- 저전력 소모
- 작은 크기와 가벼운 무게
- 비교적 저렴한 가격
- 간단한 회로 구성
하지만 다음과 같은 단점도 있습니다:
- 감지 거리가 제한적임 (일반적으로 5~10m 이내)
- 작은 움직임이나 천천히 움직이는 물체는 감지하기 어려움
- 직사광선이나 열원에 의해 오작동할 수 있음
회로 연결하기
저항은 220Ω으로 연결합니다.
LED는 13 pin, 모션센서는 2 pin으로 연결합니다.
코드 작성하기
int ledPin = 13; // LED 연결 핀
int inputPin = 2; // PIR 센서 신호 핀
int pirState = LOW; // PIR 센서 상태 저장 변수
void setup() {
pinMode(ledPin, OUTPUT); // LED 핀을 출력으로 설정
pinMode(inputPin, INPUT); // PIR 센서 핀을 입력으로 설정
Serial.begin(9600); // 시리얼 모니터 초기화
}
void loop() {
pirState = digitalRead(inputPin); // PIR 센서 상태 읽기
if (pirState == HIGH) { // 움직임 감지 시
digitalWrite(ledPin, HIGH); // LED 켜기
Serial.println("Motion detected!");
} else {
digitalWrite(ledPin, LOW); // LED 끄기
Serial.println("No motion");
}
}
관련작품
"Bloom" by teamLab
이 작품은 프로젝션 매핑을 사용한 작품입니다. 작품 설명에 보면 가만히 서있으면 동작된다는 말이 있습니다. 이런 경우에 이 센서를 사용하기도 합니다. 아파트 복도에 서면 불이 켜지는 것도 같은 센서를 사용하고 있습니다. 그래서 이렇게 사람이 와서 동작되어야 하는 경우 많이 사용하게 됩니다.
이 프로젝트를 통해 PIR 모션 센서의 동작 원리와 아두이노에서 센서 데이터를 읽는 방법을 배울 수 있습니다. 또한 LED 대신 부저나 다른 actuator를 연결하여 다양한 응용이 가능합니다. 다른 다양한 작품도 만들어 봅시다.
추천글
아두이노 프로그래밍으로 습도 센서 활용하기: 코딩으로 습도 측정
'튜토리얼 > 아두이노' 카테고리의 다른 글
아두이노로 서보모터 제어하기 (1) | 2024.05.10 |
---|---|
아두이노 초음파 센서 프로젝트 - 물체 거리 측정하기 (0) | 2024.05.09 |
아두이노 조도 센서 활용하기: 기초 (0) | 2024.04.15 |
아두이노 프로그래밍으로 습도 센서 활용하기: 코딩으로 습도 측정 (0) | 2024.04.08 |
아두이노 프로그래밍 온도 측정 배우기 (0) | 2024.04.08 |