DHT11 온도 습도 센서 테스트
페이지 정보
작성자
본문
1. DHT11 온도 습도 센서
DHT11은 상대 습도와 온도를 측정해 주는 센서로 장시간 사용해도 변화율이 낮은 제품입니다. 온도는 2 °C, 습도는 ± 5% 정도의 오차범위를 갖습니다. 자세한 성능은 아래와 같습니다.
동작전압: +5 V
온도 범위 :0-50 °C ± 2 °C
습도 범위 :20-90% RH ± 5%
2. 연결방법
DHT11 Pin 1 (Vss) --> Arduino +5V
DHT11 Pin 2 (Signal) --> Arduino Pin 2
DHT11 Pin 2 (Signal) --> Arduino +5V via Resistor 4.7K
DHT11 Pin 3 --> N/C
DHT11 Pin 4 (GND) --> Arduino Ground
Pin 2 를 아두이노 디지털 핀과 전원 두 갈래로 연결하고 저항(5K)을 달아줍니다. Pin 3 은 사용하지 않습니다.
3. 코드 (스케치)
DHT11 라이브러리를 사용하지 않는 소스가 제대로 동작하질 않아서 DHT11 라이브러리를 사용했습니다. 라이브러리를 소스 아래 링크에서 다운로드 받아서 설치하세요. (아두이노 설치 폴더 / libraries 폴더에 복사)
#include int pin=2; // 연결한 아두이노 디지털 핀 번호 DHT11 dht11(pin); void setup() { Serial.begin(9600); } void loop() { int err; float temp, humi; if((err=dht11.read(humi, temp))==0) { Serial.print("temperature:"); Serial.print(temp); Serial.print(" humidity:"); Serial.print(humi); Serial.println(); } else { Serial.println(); Serial.print("Error No :"); Serial.print(err); Serial.println(); } delay(DHT11_RETRY_DELAY); //delay for reread }
배선만 정확하다면 에러없이 Serial Monitor 창에 온도와 습도가 표시될 것입니다. 사용된 DHT11 라이브러리는 아래 링크에서 받으세요.
DHT11 아두이노용 라이브러리 2.05 KB
댓글목록
하드카피님의 댓글

DHTxx 시리즈 모듈들은 여러가지 이름들이 있는데.. 아래 표를 참고하세요.
DHT11 = RHT01 = ...
DHT21 = RHT02= AM2301 = HM2301
DHT22 = RHT03= AM2302
DHT33 = RHT04 = AM2303
DHT44 = RHT05
하드카피님의 댓글

라이브러리 없이 소스에서 직접 값을 읽어오는 방법도 있습니다. 아래 링크를 참고하세요.
http://cafe.naver.com/arduinoshield/20
최고관리자님의 댓글

스케치의 마지막 코드
delay(DHT11_RETRY_DELAY);
이 부분을 아래와 같이 변경해주세요.
delay(2000);