본문 바로가기

메이커 자료

아두이노로 우리집 온습도 만들기

 

아두이노로 온습도기 만들기 예제입니다.

본 교안은 아래의 온습도 모듈로 만들어진 교안입니다.

smartstore.naver.com/makeitnow/products/4328640904

 

우리집 DIY 온습도계 (아두이노 나노 / DHT11 / LCD모니터 I2C) : Make it Now

[Make it Now] 메이커 제품을 만날 수 있는 마켓입니다.

smartstore.naver.com

 

○ 사용 준비물

온습도계를 만들이 위해서 필요한 것들은 우선, 아래와 같습니다.

 1) 아두이노 나노 & 케이블
 2) 브레드보드
 3) LCD I2C 모듈
 4) 온습도계 (DHT 11모듈)
 5) 점퍼케이블
 6) 외부 케이스

 

 

○ DHT11 온습도 모듈 다뤄보기

 

1. 온습도 모듈에 대한 이해

온 습도 모듈은 말그대로 온도와 습도를 측정할 수 있는 모듈 입니다. 저희가 이번에 사용한 온습도 센서는 다양한 센서중에 DHT11이라는 모듈을 사용해 보았습니다. 

정밀도가 완전 정밀한 것은 아니지만, 그래도 나름 정확하게 온도와 습도를 측정할 수 있는 모듈입니다.

작동 원리는
 * 두 전극은 서로 연결이 되어 있지 않지만 공기 중의 수분을 통해 아주 미세하게 나며 전류가 흐름. 이에 따라서 공기 중의 습도가 오르면 전류는 더 많이 흐르게 되는데 이를 통해 변화된 저항 값으로 습도를 측정 할 수 있게 되는 원리 입니다.

 

2. 온습도 모듈 사용하기

  1) 우선 온습도 모듈 사용을 위해서는 아두이노 라이브러리를 설치 해주셔야 됩니다.
     설치 방법은 아래 사진을 참조해주세요!

 

  2) 회로도

   -> 회로는 아래와 같이 연결해주세요.

 

 

  3) 이제 아래와 같은 코드로 테스트를 해볼 수 있습니다.

#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);

void setup() {

  Serial.begin(9600);
  dht.begin();

}

void loop() {

  delay(2000);
  float h = dht.readHumidity();	// float는 실수값
  float t = dht.readTemperature();
  Serial.print("Humidity : ");
  Serial.println(h);
  Serial.print("Temperature : ");
  Serial.println(t);
}

 

○ LCD 모듈 다뤄보기

 

1. LCD 모듈에 대한 이해

 LCD란?

액정 (Liquid Crystal)이란 액체처럼 유체의 성질을 가지면서 고체처럼 광학적 성질을 가지는 물질. 
 액정은 고체표면에 액정이 특정 방향으로 정렬할 수 도 있어,  전기적 신호를 가해 원하는 방향으로 배열하여 빛을 투과시키거나 차단시킬 수 있습니다.

모양은 아래와 같이 되어 있으며,

가로로 16, 세로로 2줄 총 32가지의 문자를 나타낼 수 있습니다.

 

2. LCD 모듈 다운로드

우선 아래의 사이트에서 LCD 라이브러리를 다운받아주세요.

https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library

 

fdebrabander/Arduino-LiquidCrystal-I2C-library

Library for the LiquidCrystal LCD display connected to an Arduino board. - fdebrabander/Arduino-LiquidCrystal-I2C-library

github.com

 

Clone or download 를 누르시고, ZIP파일로 저장하시면 됩니다.

 

3. 라이브러리 추가하기

 다운받은 라이브러리를 추가하기 위해서는 라이브러리포함하기에서 ZIP라이브러리 추가에서
다운받으신 ZIP 라이브러리를 그대로 추가해주시면 됩니다.

(!중요 : ZIP 파일을 해제하시면 안됩니다.)

 

 

 


최종 조립

조립해봅시다.


 

1. 회로도

 - 회로 구성은 아래와 같이 해주시면 됩니다.

 

 

2. 코드

#include <DHT.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>	// 라이브러리 추가

#define DHTPIN 2
#define DHTTYPE DHT11
LiquidCrystal_I2C lcd(0x27, 16, 2);
DHT dht(DHTPIN,DHTTYPE);

void setup() {
  lcd.begin();
  dht.begin();
  lcd.backlight();
  lcd.print("Hello");
  delay(3000);
  lcd.noBacklight();
  delay(2000);
  lcd.clear();
  lcd.backlight();
}

void loop() {
  delay(1000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();

  lcd.setCursor(0,0);
  lcd.print("Humi: ");
  lcd.print(h);
  lcd.print("%");

  lcd.setCursor(0,1);
  lcd.print("Temp: ");
  lcd.print(t);
  lcd.print("C");
}

 

 

3. 제작 방법

Step 1. 아두이노 나노 조립하기.

- 아두이노 나노를 브레드보드에 조립하실때는 위치를 잘 확인하셔서 조립하셔야 합니다.

 

브레드보드의  의 튀어나온 부분을 확인하고

나노 전원 핀() 의 위치를 잘 확인하셔서 방향을 정합니다.

브레드보드의 가장 첫번째 칸()부터 나노를 조립합니다.

(브레드보드 보다 나노가 더 튀어나가는 것이 맞습니다.)  

 

 

Step 2. LCD와 온습도센서에 핀 조립하기.

- 각각의 핀에 함께 동봉된 커넥터핀을 연결하여 위 회로도에 맞게 선을 연결하여 줍니다.

(각 커넥터의 색상을 잘 기억하여 잘못 연결하는 일이 없도록 주의합니다.)

 

Step 3. 온습도계 조립하기.

- 3D프린터로 출력된 온습도계 케이스에 잘 맞춰서 조립해 줍니다.

 

브레드보드 바닥의 스티커를 제거한 후

아두이노 나노의 전원선 입구() 를 확인하고,

LCD모니터의 위아래()를 확인하고,

온습도센서 측정부()를 잘 확인하여

각각의 위치에 맞게 조립합니다.

 

Step 4. 커버를 덮어주면 완성!!

- 동봉된 커버를 슬라이드 하여 밀어 넣어주면 완성!!

사업자 정보 표시
메이크잇나우 | 김건욱 | (우 : 13487) 경기도 성남시 분당구 대왕판교로645번길 12 (경기창조경제혁신센터) 9층 | 사업자 등록번호 : 646-35-00394 | TEL : 070-8887-0703 | Mail : kgu0724@makeitnow.kr | 통신판매신고번호 : 2018-성남분당-0517호 | 사이버몰의 이용약관 바로가기