온도 센서를 사용하여 온도 값을 측정하고, 측정된 온도에 따라 LED의 색상을 변경하는 아두이노 프로젝트를 만들어보겠습니다. 이 프로젝트에서는 온도 값을 측정하고 색상을 표현하기 위해 RGB LED를 사용합니다.
1. 이론 소개:
- 이 프로젝트에서는 온도 센서를 사용하여 주변 온도를 측정하고, 측정된 온도에 따라 RGB LED의 색상을 변경합니다.
2. 준비물:
- 아두이노 보드 (예: Arduino Uno)
- 온도 센서 (예: DHT11 또는 DHT22)
- RGB LED
- 220옴 저항 (3개)
- 브레드보드
- 점퍼 와이어 (메스-메스 및 메스-피스)
- USB 케이블 (아두이노 보드와 컴퓨터 연결용)
3. 비슷한 모델:
- 다양한 종류의 온도 센서와 RGB LED를 사용할 수 있습니다.
4. 추천 보드 및 간단한 설명:
- Arduino Uno: 초보자 및 중급자에게 적합한 아두이노 보드로 다양한 라이브러리와 예제가 있습니다.
5. 회로 구성 (상세 설명):
- 회로를 구성하기 위해 다음 단계를 따르세요:
- 온도 센서를 브레드보드에 연결합니다. DHT11 또는 DHT22의 경우 3개의 핀 (VCC, 데이터, GND)이 있습니다.
- RGB LED를 브레드보드에 연결합니다. RGB LED에는 R (빨강), G (녹색), B (파랑) 핀이 있습니다. 각 핀에 220옴 저항을 연결하고 나머지 단자를 아두이노에 연결합니다.
- 온도 센서의 데이터 핀을 아두이노의 디지털 핀 2에 연결합니다.
- 이렇게 연결된 회로를 확인하고 전원을 공급하기 위해 아두이노와 컴퓨터를 연결하세요.
6. 코딩 내용 (주석 포함):
#include <Adafruit_Sensor.h>
#include <DHT.h>
#include <DHT_U.h>
#define DHTPIN 2 // 온도 센서 데이터 핀 (아두이노 핀 2번)
#define DHTTYPE DHT11 // 온도 센서 타입 (DHT11 또는 DHT22)
DHT_Unified dht(DHTPIN, DHTTYPE);
const int redPin = 9; // 빨강 LED 핀
const int greenPin = 10; // 녹색 LED 핀
const int bluePin = 11; // 파랑 LED 핀
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
dht.begin();
sensor_t sensor;
dht.temperature().getSensor(&sensor);
}
void loop() {
sensors_event_t event;
dht.temperature().getEvent(&event);
if (isnan(event.temperature)) {
Serial.println("Error reading temperature!");
} else {
float temperature = event.temperature;
// 온도에 따라 RGB LED 색상 변경
if (temperature < 20.0) { // 낮은 온도
setColor(0, 0, 255); // 파란색
} else if (temperature < 25.0) { // 중간 온도
setColor(0, 255, 0); // 녹색
} else { // 높은 온도
setColor(255, 0, 0); // 빨간색
}
delay(1000); // 1초에 한 번 측정
}
}
void setColor(int red, int green, int blue) {
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}
7. 코딩 내용 설명:
- 온도 센서로 주변 온도를 측정하고, 측정된 온도에 따라 RGB LED의 색상을 변경합니다.
8. 코드 업로드 및 테스트:
- 아두이노 보드를 컴퓨터에 연결하고 위의 코드를 아두이노 IDE에 복사하여 업로드합니다.
- 온도 센서를 불리는 높고 낮은 온도에 따라 RGB LED의 색상이 변경되는지 확인합니다.
9. 응용 업그레이드:
- 온도 범위와 해당하는 색상을 변경하거나, LED 대신 다른 출력 장치를 사용하여 환경 데이터를 시각화할 수 있습니다.
10. 전문 용어 설명:
- RGB LED: 빨강 (Red), 녹색 (Green), 파랑 (Blue) 세 가지 색상을 조합하여 다양한 색을 표현하는 LED입니다.
- 온도 센서 (Temperature Sensor): 주변 온도를 측정하는 센서로, DHT11 또는 DHT22와 같은 다양한 모델이 있습니다.
11. 기타: - 색상 변경 및 온도 범위는 프로젝트 요구 사항에 맞게 수정할 수 있습니다.
'아두이노' 카테고리의 다른 글
조도 센서와 가변 저항기를 사용한 밝기 조절 및 소리 제어 (1) | 2023.12.02 |
---|---|
초음파 센서와 LCD 화면으로 물체 감지 및 거리 표시 (1) | 2023.12.02 |
버튼과 가변 저항기로 서보 모터 각도 제어 (1) | 2023.12.02 |
조도 센서와 부저로 주변 밝기에 따른 음악 변경 (0) | 2023.12.01 |
초음파 센서와 가변 저항기를 사용하여 무선 랜턴 만들기 (0) | 2023.12.01 |