IR 센서와 온도 센서를 사용한 환경 모니터링 시스템을 만들어보겠습니다. 각 파트별로 설명하겠습니다.
1. 이론 소개:
- 이 프로젝트는 주변 환경의 온도와 인체 움직임을 감지하여 환경 상태를 모니터링하는 시스템을 구축합니다.
- IR 센서는 인체 움직임을 감지하고, 온도 센서는 주변 온도를 측정합니다.
2. 준비물:
- 아두이노 보드 (예: Arduino Uno 또는 Arduino Nano)
- IR 센서 모듈 (적외선 센서)
- 온도 센서 (예: DHT11 또는 DHT22)
- LCD 디스플레이 (옵션)
- 브레드보드 및 연결 선
- 9V 배터리 또는 배터리 팩
3. 비슷한 모델:
- IR 센서 및 온도 센서 모델은 다양한 브랜드와 유형이 있으며 대부분 호환됩니다.
4. 추천 보드 및 간단한 설명:
- Arduino Uno 또는 Arduino Nano: 입출력 핀을 쉽게 활용할 수 있는 아두이노 보드를 추천합니다.
5. 회로 구성 (글로 설명):
- IR 센서의 출력 핀을 아두이노의 디지털 핀 (예: D2)에 연결합니다.
- 온도 센서는 아두이노의 디지털 핀 (예: D4)에 연결합니다.
- LCD 디스플레이를 사용할 경우 해당 핀도 연결합니다.
- 모든 구성 요소는 브레드보드를 통해 연결합니다.
6. 코딩 내용 (주석 포함):
#include <IRremote.h>
#include <DHT.h>
#include <LiquidCrystal.h>
// IR 센서 핀 설정
#define IR_SENSOR_PIN 2
// 온도 센서 핀 설정
#define DHT_SENSOR_PIN 4
#define DHT_SENSOR_TYPE DHT22 // DHT11 또는 DHT22 중 선택
// LCD 핀 설정 (옵션)
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // RS, E, D4, D5, D6, D7
// IR 리모컨 객체 생성
IRrecv irrecv(IR_SENSOR_PIN);
decode_results results;
// 온도 센서 객체 생성
DHT dht(DHT_SENSOR_PIN, DHT_SENSOR_TYPE);
void setup() {
// 시리얼 통신 시작
Serial.begin(9600);
// IR 리모컨 초기화
irrecv.enableIRIn();
// 온도 센서 초기화
dht.begin();
// LCD 초기화 (옵션)
lcd.begin(16, 2);
lcd.print("IR & Temp Sensor");
}
void loop() {
// IR 센서 값 읽기
if (irrecv.decode(&results)) {
// 인체 움직임 감지 시 동작 수행
Serial.println("Motion Detected!");
// 여기서 필요한 동작을 수행하세요.
irrecv.resume(); // 다음 신호 대기
}
// 온도 센서로 온도 및 습도 측정
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
// 결과를 시리얼 모니터에 출력
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %");
// LCD에 온도 및 습도 표시 (옵션)
lcd.setCursor(0, 1);
lcd.print("Temp: ");
lcd.print(temperature);
lcd.print(" C ");
lcd.setCursor(0, 0);
lcd.print("Humidity: ");
lcd.print(humidity);
lcd.print(" % ");
delay(1000); // 1초마다 센서 읽기
}
7. 코딩 내용 설명:
- 이 코드는 IR 센서와 온도 센서를 사용하여 인체 움직임과 주변 온도를 모니터링합니다.
- IR 센서로 인체 움직임을 감지하면 "Motion Detected!" 메시지를 출력합니다.
- 온도 센서로 주변 온도와 습도를 측정하고 시리얼 모니터 및 LCD에 표시합니다.
8. 코드 업로드 및 테스트:
- 아두이노 보드에 코드를 업로드하고 IR 센서의 동작과 온도 센서의 측정 값을 확인합니다.
9. 응용 업그레이드:
- 추가적인 센서를 사용하여 더 다양한 환경 데이터를 수집하고 모니터링할 수 있습니다.
- IR 센서로부터 받은 신호에 따라 특정 동작을 수행하도록 확장할 수 있습니다.
10. 전문 용어 및 설명:
- IR 센서 (Infrared Sensor): 적외선을 사용하여 물체나 인체의 움직임을 감지하는 센서입니다.
- 온도 센서 (Temperature Sensor): 주변 온도를 측정하는 센서로, DHT11 또는 DHT22와 같은 모델이 있습니다.
- LCD (Liquid Crystal Display): 액정 디스플레이로, 텍스트 및 그래픽을 표시하는 데 사용됩니다.
- 디지털 핀 (Digital Pin): 아두이노 보드에서 디지털 신호를 입력 및 출력하는 핀입니다.
11. 기타:
- 이 프로젝트를 확장하려면 다른 센서를 추가하거나 외부 기기와 통신할 수 있는 무선 모듈을 포함할 수 있습니다.
'아두이노' 카테고리의 다른 글
IR 센서와 습도 센서를 활용한 습도 모니터링 시스템 (0) | 2023.12.02 |
---|---|
IR 센서와 가스 센서를 결합한 가스 누출 감지 장치 (0) | 2023.12.02 |
IR 센서와 조도 센서를 결합한 어두운 곳에서 LED 켜기 (0) | 2023.12.02 |
IR 센서와 초음파 센서를 사용한 장애물 회피 로봇 (0) | 2023.12.02 |
온도 센서와 가변 저항기를 사용한 LED 밝기와 색상 제어 (0) | 2023.12.02 |