DHT11은 온습도를 동시에 측정하는 기상관측용 센서이다. 여기서 습도라 함은 상태 습도를 의미한다. 기상 관측용이므로 DHT11은 온도 측정 범위가 0∼50 eh 까지이며 습도는 20∼80% 범위까지 측정이 가능하다.
아두이노 DHT11 온습도 센서를 사용하기 위해서는 반드시 사용자가 라이브러리를 설치하도록 하여야 한다. 사용자가 개별로 필요에 따라서 설치하는 라이브러리는 Arduino 디렉토리 설치 시에 생성되는 libraries 디렉토리에 경로를 설정하지말자.
그 대신에 사용자가 코딩한 응용 프로그램을 저장하기 위한 디렉토리를 아두이노 디렉토리 안에 만들고 여기서는 가칭 prog_ex 디렉토리를 만들고 아울러 새로운 라이브러리를 등록해야 할 경우 prog_ex 디렉토리 경로를 사용하는 것이 대단히 편리할 수 있다.
그 편리성은 주로 아두이노를 사용하는 컴퓨터를 이동할 때에 일어나다. 컴퓨터를 변경하게 되면 다시 아두이노를 설치하고 사용자의 응용코드들과 사용자가 설치 등록했던 라이브러리들을 함께 옮겨야 하므로 디렉토리 하나만 옮겨가면 그것으로 오케이다.
DHT11 온습도 센서를 사용하여 측정을 하기 위해서 Adafruit 사에서 제공하는 DHT11.h 라이브러리를 설치하는 방법을 알아보기로 한다.
아두이노 Adafruit DTH11 센서를 이용한 온습도 모니터링
DHT11.h 가 들어있는 라이브러리 zip 파일을 사용자 디렉토리에 다운받아서 그 안에서 압축을 풀도록 한다. 사용을 위해서는 아두이노 IDE 에 등록 작업을 수행해야 한다.
DHT11_library 디렉토리 내부에 DHT11.H 파일이 포함되어 있음을 확인하도록 한다. DHT.h는 C 언어 라이브러리이며 DHT.cpp 는 C++언어용 라이브러리임에 유의하자.
이 라이브러리를 아두이노 편집기에 등록하는 과정을 알아보자.
편집기에서 스케치 탭의 라이브러리 포함하기의 .ZIP 라이브러리 추가 명령을 선택한다. 디렉토리 찾기를 통해 DHT11_library를 찾아 선택하도록 한다.
DHT11 라이브러리 경로 설정이 완료되었으면 아두이노 편집기 스케치 탭이 라이브러리 포함하기 메뉴에서 DHT11 library 가 업데이트 되어 있음을 확인할 수 있다.
DHT11 온습도 센서 배선은 전원 즉 3V3 과 GND 및 온습도 데이터 센싱을 위한 디지털 핀 5번을 설정한다.
전원은 5V를 사용해도 무방하다.
DHT11_01
#include <DHT11.h> //라이브러리 부르기
int pin = 5; //DHT11 데이타 핀 아두이노 연결
DHT11 dht11(pin); // DHT11 클라스 명령
void setup() {
Serial.begin(115200); //통신속도 설정
}
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(15000); //15초마다 측정
}
'아두이노프로세싱 프로그래밍' 카테고리의 다른 글
ESP8266WiFi WiFiWebServer 아두이노 NodeMCU LED ON OFF 예제:I (0) | 2017.10.05 |
---|---|
프로 마이크로 보드에서 macro 명령을 사용한 파워 LED BLINKING (0) | 2017.09.28 |
눈에 초록색 LED 를 ON 한 지하 주차장의 길냥이 (0) | 2017.09.20 |
전기 상호 유도에 의한 인버터: 아두이노 듀티 입력과 트랜지스터(TR) 스위칭에 의한 DC 전압의 AC 변환 (0) | 2017.09.14 |
전기 상호 유도에 의한 DC 전압의 AC 변환과 인버터의 기초 원리 (0) | 2017.09.12 |