본문 바로가기

개발자/Arduino

고정밀 온도 습도 센서 DHT21 AM2301 Digital Temperature Humidity Sensor

반응형

 

 

Nano 33 IoT 에서 테스트 

고정밀 온도 습도 센서 DHT21 AM2301 Digital Temperature Humidity Sensor 

 

DHT11보다 정밀한 DHT21 온도, 습도 측정센서입니다. 디지털핀 1개와 전원핀(VCC, GND) 2개를 연결하여 사용할 수 있습니다. 

 

아래 특징과 사양을 적었습니다. 상세한 내용은 데이터북을 참고하세요

AM2301.pdf
0.56MB

 

특징 (Features) :

  • AM2301 (DHT21) 온습도센서
  • 정전식 습도 센서고, 온도를 측정하기 위해서는 써미스터를 사용하며 데이타 핀으로 센싱 값을 출력
  • 센서 데이터는 매 2초 단위로 리프레쉬(2초 기다렸다가 데이터 읽어야 함)
  • 3핀 (전원2, 디지털통신1)
  • 고정밀 온도센서

사양 (Specification) :

  • 작동온도 : 3.3~5.2VDC
  • 측정습도 : 0~100% 상대습도(RH)
  • 측정온도 : -40~80℃
  • 정밀도 : ±3%RH , ±0.5℃
  • Dimension: 59 * 27 * 13mm
  • 3.5~5.5V Input
  • 1~1.5mA measuring current
  • Humidity from 0-100% RH
  • -40 - 80 degrees C temperature range
  • +-3% RH accuracy
  • +-0.5 degrees C
  • Model: AM2301

센서 외관 모양은 아래 이미지를 참고하세요.

 

DHT21 AM2301 Digital Temperature Humidity Sensor

 

DHT21 AM2301 Digital Temperature Humidity Sensor

핀 맵을 아래에 표시합니다.

 

DHT21 AM2301 Digital Temperature Humidity Sensor 핀 맵

 

우선 dht22 센서를 사용하기 위해 SimpleDHT 라이브러리를 설치합니다. 메뉴에서 스케치 > 라이브러리 포함하기 > 라이브러리 관리로 가서 

 

 

아래와 같은 검색 창에 simpledht로 검색하여 라이브러리를 설치합니다.

 

 

Nano 33 IoT 보드에 아래 소스코드를 컴파일하고 업로드 한다.

 

#include <SimpleDHT.h>

// for DHT22, 
//      VCC: 5V or 3V
//      GND: GND
//      DATA: 2
int pinDHT22 = 2;
SimpleDHT22 dht22(pinDHT22);

void setup() {
  Serial.begin(115200);
}

void loop() {
  // start working...
  Serial.println("=================================");
  Serial.println("Sample DHT22...");
  
  // read without samples.
  // @remark We use read2 to get a float data, such as 10.1*C
  //    if user doesn't care about the accurate data, use read to get a byte data, such as 10*C.
  float temperature = 0;
  float humidity = 0;
  int err = SimpleDHTErrSuccess;
  if ((err = dht22.read2(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
    Serial.print("Read DHT22 failed, err="); Serial.println(err);delay(2000);
    return;
  }
  
  Serial.print("Sample OK: ");
  Serial.print((float)temperature); Serial.print(" *C, ");
  Serial.print((float)humidity); Serial.println(" RH%");
  
  // DHT22 sampling rate is 0.5HZ.
  delay(2000);
}

 

테스트 결과 화면은 아래와 같다. 

 

 

 

참고

 

첨부한 AM2301 데이터북 파일

다른 Digital relative humidity & temperature sensor AM2302/DHT22 데이터북 

Digital+humidity+and+temperature+sensor+AM2302.pdf
0.40MB

DHT11과 DHT22 센서 비교 영어

DHT11과 DHT22 센서 비교 한글

SimpleDHT 라이브러리 깃허브 참고자료

Smart Garden System with Arduino Nano IoT 

 

 

반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^