[아두이노 강의] #10 아두이노 온습도센서를 사용법, 온습도 센서읽기 :: 잡다한 프로그래밍
반응형

1. 온습도 센서란?

  • 온도와 습도를 동시에 측정이 가능한 센서
  • Arduino Plaground에서 라이브러리 제공
  • 온도와 습도를 동시에 측정하는 것은 아니고 서로 배타적으로 측정값을 읽어옴

온습도 센서


2. 온습도 센서 실습하기

온습도 센서를 통해 온습도를 읽어오는 실습을 진행한다. 사전 준비물은 다음과 같다.

사전 준비물

 

준비를 마쳤다면 DHT11 온습도 라이브러리를 다운로드한다

http://playground.arduino.cc/main/DHT11Lib 링크를 통해 라이브러리를 다운로드한다

다운로드 1
다운로드2
다운로드3

다운을 완료하였다면 다음과 같이 라이브러리를 추가한다

1. C:/Program Files (x86)/Arduino/libraries/DHT11 폴더를 생성
2. 다운로드한 dht11.h, dht11.cpp 파일 새로 생성한 폴더로 복사
3. 아두이노 개발환경에서 새로 설치한 라이브러리를 인식시키기 위해서는 아두이노 개발환경
   프로그램을 종료하고 다시 시작함

라이브러리 추가

 

추가를 완료하였다면 다음과 같이 코드를 작성한다.

#include <dht11.h>
#define DHT11PIN 2
dht11 DHT11;
void setup()
{
	Serial.begin(9600);
}
void loop()
{
	Serial.println("\n");
	int chk = DHT11.read(DHT11PIN);
	Serial.print("Read sensor: ");
	switch (chk)
	{
		case DHTLIB_OK: Serial.println(“OK”);
			break;
		case DHTLIB_ERROR_CHECKSUM:
			Serial.println(“Checksum error”);
			break;
		case DHTLIB_ERROR_TIMEOUT:
			Serial.println(“Time out error”);
			break;
		default: Serial.println("Unknown error");
			break;
	}
	
    Serial.print("Humidity (%): ");
	Serial.println((float)DHT11.humidity, 2);
	Serial.print("Temperature (°C): ");
	Serial.println((float)DHT11.temperature, 2);
	delay(2000);
}

 

코드 작성을 완료하였다면 다음과 같은 결과를 확인할 수 있다.

결과

반응형

+ Recent posts