아두이노에 부착할 수 있는 온도.습도 센서는 수없이 많으나, 가격도 저렴하고 온도와 습도를 동시에 측정할 수 있는 DHT11 센서를 일반적으로 많이 사용한다.

 

DHT11 센서는 VCC(+) 단자와 - 단자에 3.3~5V전압을 가해주면 좌측 S 단자를 통해 온도와 습도 측정값을  Digital 값으로 전송해 주는 방식이다. 사용범위는 온도 0 ~ 50도C, 습도 20~90% 이고  오차범위는 온도 2도, 습도 5%라고 하는데 실제 사용해 보면 온도는 비교적 잘 맞지만 습도는 좀 부정확한 느낌이다.    

 

조금 더 정확하고 조금 더 비싼 비슷한 온습도 센서는 DHT22 모델이 있는데 사용범위는 온도 -40 ~ 80도C, 습도 0~1000% 이고  오차범위는 온도 0.5도, 습도 2% 라고 한다.

 

 

 

아두이노와의 연결

 

위 그림과 같이 - 단자를 아두이노 GND에, +단자를 아두이노 5V에, 그리고 S(신호) 단자를 아누이노 6번핀에 연결해 본다.

 

 

라이브러리 설치

 

- IDE 스케치 메뉴 -> 라이브러리 포함하기 -> 라이브러리관리하기 화면에서"DHT" 를 검색하여 설치한다.

 
- 만약 ”Adafruit_Sensor.h: No such file or directory” 에러가 발생하면 다음 사이트에서 zip파일 다운로드 받아 [스케치] -> [라이브러리포함하기]->[.zip라이브러리추가]메뉴에서 설치한다. 


       https://github.com/adafruit/Adafruit_Sensor

 

 

예제프로그램

 

 

 1 line : DHT.h 해더파일 include
 2 line : 센서타입을 지정 ( DHT22 센서를 사용할 때에는 DHT22를 지정)
 3 line : 센서가 연결된 핀번호( 본 예제에서는 6번핀을 사용)를 지정
10 line :센서 초기화    
14~15lie : 센서값이 필요할 때 eadTemperature() 함수로 온도를, readHumidity() 함수로 습도값을 integer로 읽어 낼 수 있다.

 

+ Recent posts