아두이노

[아두이노] 온도측정 센서 만들기(1) - 온도 측정하기

봉주니 2023. 2. 12. 23:46

아두이노로 실내 온도 측정 센서를 만들어보려고 합니다.

 

아무런 지식도 없이, 그냥 구글링을 하면서 만들어 나가 보겠습니다.

 

목표 : 실시간 온도,습도를 측정하여 WIFI를 통해 DB에 저장 후 그래프로 그려내기!!!

 

1. 디바이스 마트에서 구매하기

아두이노 종류가 너무 다양해서 그냥 적당한 가격대 들어봤을법한 이름으로 구매

 

<재료>

1. 아두이노 우노 R3 호환보드

  - 정품보다 가격이 저렴하다. 처음만들다가 쇼트내고 망가질까봐 호환보드로 구매

2. DHT11 온습도 센서모듈

  - 가격이 저렴하고, 별도의 저항이 필요없는 모듈이다.

3. 소켓 점퍼 케이블 40P (M/F) 20cm

  - 센서와 아두이노 연결을 위해 샀다.

4. 아두이노 아크릴 고정판

  - 아두이노 구매할 때 고정할 수 있는 판이 보여서 그냥 사봤다.

5. 브레드보드 

  - 일명 빵판, 아크릴 판에 붙여서 같이 쓸 수 있다.

6. ESP8266 와이파이 모듈

  - WIFI 연결을 위해 구매

 

아래의 사이트에서 회로 시뮬레이션이 가능하다.

https://www.tinkercad.com/dashboard

 

Tinkercad | From mind to design in minutes

Tinkercad is a free, easy-to-use app for 3D design, electronics, and coding.

www.tinkercad.com

아래와 같이 보드를 그리고, 실제로 코드 넣고 시뮬레이션도 가능하다.

내가 구매한 센서들이 다 있지는 않은 것 같다.

빨강 : 전원 VCC

노랑 : 접지 GND

보라 : DATA

DHT11 의 핀 구성은 아래와 같습니다.

 

Arduino IDE 를 다운받아 실행합니다.

아두이노와 연결된 포트를 선택해주고, 아래의 코드를 입력하고 compile을 해봅니다.

 

#include "DHT.h"  
#define DHTTYPE DHT11    
#define DHTPIN 4  
DHT dht(DHTPIN , DHTTYPE);  
float temp;  
float humid;  
  
void setup() {    
   Serial.begin(115200);  
   dht.begin();  
}  
  
void loop() {  
    temp  = dht.readTemperature();  
    humid = dht.readHumidity();  
    Serial.print("temp="); Serial.print(temp);  
    Serial.print(",humid="); Serial.println(humid);     
    delay(1000);  
}

 

주의사항

1) 포트를 선택하지 않는 경우, 포트를 찾을 수 없다고 합니다.

2) DHT.h 라이브러리를 찾지 못하는 경우, 라이브러리 매니저에서 DHT11를 검색 후 설치하면 해결!

 

시리얼 모니터를 통해 아래와 같이 센서 측정 결과를 볼 수 있었다.

설정한 통신속도도 맞춰줘야 정확한 결과가 보인다.

반응형