온습도센서 DHT11
-온도,습도값을 측정할 수 있는 센서는 수없이 많으나 본  프로젝트에서는 다음과  같은 아두이노용 DHT11센서를 사용한다.


-DHT11 센서는 VCC(+) 단자와 - 단자에 3.3~5V전압을 가해주면  좌측 S 단자를 통해 온도와 습도 측정값을  Digital 값으로 전송해 준다.

 

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

 

아두이노와 연결
 DHT11 센서로 측정된 온도,습도값을 LCD Display장치에 표시하기 위해서  다음과 같이 연결한다.  

 

테스트프로그램

  1. #include <Wire.h>   
  2. #include <LiquidCrystal_I2C.h>  
  3. LiquidCrystal_I2C lcd(0x3F,16,2);    
  4. #include "DHT.h"  
  5. #define DHTTYPE DHT11      
  6. #define DHTPIN 3   
  7. DHT dht(DHTPIN, DHTTYPE);  
  8. int temp;  
  9. int humid;  
  10. void setup()  
  11. {  
  12.   dht.begin();  
  13.   lcd.init();     // initialize the lcd   
  14.   lcd.backlight();  
  15. }  
  16. void loop()  
  17. {  
  18.   temp  = dht.readTemperature();  
  19.   humid = dht.readHumidity();  
  20.   lcd.clear();  
  21.   lcd.print("Temperature:");  
  22.   lcd.setCursor(12,0) ;  
  23.   lcd.print(temp);  
  24.   lcd.setCursor(14,0) ;  
  25.   lcd.print("C");  
  26.   lcd.setCursor(0,1) ;  
  27.   lcd.print("Humidity:");  
  28.   lcd.setCursor(12,1) ;  
  29.   lcd.print(humid);  
  30.   lcd.setCursor(14,1) ;  
  31.   lcd.print("%");  
  32.   delay(1000);  
  33. }  


4~7 line: 디지털 3번 핀을 통해 연결된 DHT11센서 장치를 dht라는 이름으로 선언
12 line : dht  장치 초기화하여 시작  
18~19 line :  온도와 습도값을 받아 temp, humid라는 변수에 보관 
21~25 line : lcd 장치에 온도값 Display  
26~31 line : lcd 장치에 습도값 Display  

+ Recent posts