본문으로 이동

아두이노:온습도센서: 두 판 사이의 차이

학교의 모든 지식. SMwiki
새 문서: {{아두이노}} == 온도와 습도를 측정하기 위한 센서 == <br /> =사용법= ==연결== {| class="wikitable" !종류 !설명 !연결예시 |- |DHT11 | |[https://cafe.nave...
 
잔글 연결
 
(같은 사용자의 중간 판 9개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{아두이노}}
{{아두이노}}


== 온도와 습도를 측정하기 위한 센서 ==
== 개요 ==
<br />
온도와 습도를 측정하기 위한 센서
 
=== 구입 시 유의사항 ===
 
* 정품과 클론 가격 차이가 큰데... 제대로 된 실험을 하려면 비싸더라도 정품을 쓰는 게...(클론은 보정이나 테스트를 안하고 파는 듯;;)
 
=사용법=
=사용법=
==연결==
==연결==
11번째 줄: 16번째 줄:
|-
|-
|DHT11
|DHT11
|
|많이들 쓰는 건데... 온도 분해능이 1도라 권장하진 못하겠다.
 
* 온도 사양: 분해능  1℃ / 정확도 ±2℃ / 측정 범위 0~50℃
* 습도 사양: 분해능 1%RH / 정확도 ±5%RH(0~50℃) / 측정범위 20~90% RH (25℃)
핀이 4개인데, 실제론 3개만 쓰인다.(아마 설계 후 결국 폐기되었거나, 다른 공정을 그대로 사용하느라 4핀이 된듯)
|[https://cafe.naver.com/mechawiki/40 링크]
|[https://cafe.naver.com/mechawiki/40 링크]
|-
|-
|
|DHT22
|DHT11보다 2배는 비싸지만 이걸 권장하고 싶다.(흰색이며 DHT11보다 조금 큼.)
핀이 4개인데, 실제론 3개만 쓰인다.(아마 설계 후 결국 폐기되었거나, 다른 공정을 그대로 사용하느라 4핀이 된듯)
 
* 정확성: ±2%RH, ±0.5℃
* 측정 범위: 0~99.9%RH, -40~80℃
* 반복 정밀도: ±0.1%RH, ±0.1℃
|https://www.mfgrobots.com/article/uploadfiles/202207/2022073015534633.jpg
 
* 핀이 3개인 센서는 폴업저항이 달려 나온 것이라 별다른 조치가 필요 없지만,
* 핀이 4개인 센서는 오리지널로, 풀업저항(Data로 들어가는 신호를 정확하게 1로 유지해주기 위해. 없으면 floating으로 )이 필요.
|-
|BME280
|
|
|
|
|-
|-
|
|SHT31
|
|가성비 좋은 정밀센서.
|
|
|}
|}
==코드==
==코드==
코드는 위 링크 참고하자.


=== DHT11 ===
위 연결 페이지 참고.
=== DHT22 ===
DHT sensor library를 설치한 후 작동된다. DHT sensor library 1.4.6 에서 작동 확인함.<syntaxhighlight lang="c++" line="1">#include "DHT.h"
#define DHTPIN 2      // DHT 센서의 데이터 핀을 연결한 아두이노 핀 번호
#define DHTTYPE DHT22  // DHT22 센서를 사용
DHT dht(DHTPIN, DHTTYPE);
void setup() {
  Serial.begin(9600);
  dht.begin();
}
void loop() {
  delay(2000);  // 센서 읽기 간격을 2초로 설정
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);  // 화씨 온도 읽기
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("센서에서 데이터를 읽을 수 없습니다!");
    return;
  }
  Serial.print("습도: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("온도: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.println(" *F");
}</syntaxhighlight>
==해볼 만한 과제==
==해볼 만한 과제==
 
싱기버스에 관련 모델들이 많이 있긴 하다. https://www.thingiverse.com/search?q=DHT22&page=1
*과학적 원리에 대해 조사 발표.
*과학적 원리에 대해 조사 발표.
*위 코드를 해석, 발표.
*위 코드를 해석, 발표.
*이것으로 할 수 있는 활동은 어떤 것들이 있을까?
*이것으로 할 수 있는 활동은 어떤 것들이 있을까?

2026년 1월 12일 (월) 08:54 기준 최신판

아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노

  1. 아두이노:개요
  2. 아두이노:하드웨어
    1. 아두이노:우노보드
    2. 아두이노:ESP32
  3. 아두이노:코드
    1. 아두이노:컴퓨터에서 보드로
    2. 아두이노:안드로이드에서 보드로
    3. 아두이노:기초 문법
    4. 아두이노:라이브러리
  4. 아두이노:핀 사용
    1. 아두이노:전원공급
  5. 아두이노:시리얼 통신
    1. 아두이노:엑셀기록
    2. 아두이노:파이썬과 통신
  6. 아두이노:편의함수
  7. 센서 사용
    1. 아두이노:모션센서(미완)
    2. 아두이노:온습도센서
    3. 아두이노:조도센서(미완)
    4. 아두이노:인체감지센서(미완)
    5. 아두이노:pH미터 만들기(Gravity 아날로그 pH센서)
  8. 아두이노:LCD 사용
  9. 아두이노:스위치 사용
  10. 아두이노:릴레이
  11. 통신 관련, 정보 교환
    1. 아두이노:WIFI
    2. 아두이노:블루투스(외장모듈)
    3. 아두이노:IR 송수신
    4. 아두이노:2.4GHz 송수신
    5. 아두이노:RFID
  12. 아두이노:해결되지 않은 다양한 의문들
  13. 수업용 간단 실습
    1. 아두이노:LED
    2. 아두이노:초음파센서
    3. 아두이노:전압계 만들기
    4. 아두이노:저항계 만들기
  14. 아두이노 모터 출력
    1. 아두이노:서보 모터
    2. 아두이노:DC 모터
    3. 아두이노:BLDC 모터
  15. 미완문서
    1. 아두이노:스테핑 모터(미완)
  16. 분류:아두이노 프로젝트

온도와 습도를 측정하기 위한 센서

구입 시 유의사항

[편집 | 원본 편집]
  • 정품과 클론 가격 차이가 큰데... 제대로 된 실험을 하려면 비싸더라도 정품을 쓰는 게...(클론은 보정이나 테스트를 안하고 파는 듯;;)

사용법

[편집 | 원본 편집]
종류 설명 연결예시
DHT11 많이들 쓰는 건데... 온도 분해능이 1도라 권장하진 못하겠다.
  • 온도 사양: 분해능  1℃ / 정확도 ±2℃ / 측정 범위 0~50℃
  • 습도 사양: 분해능 1%RH / 정확도 ±5%RH(0~50℃) / 측정범위 20~90% RH (25℃)

핀이 4개인데, 실제론 3개만 쓰인다.(아마 설계 후 결국 폐기되었거나, 다른 공정을 그대로 사용하느라 4핀이 된듯)

링크
DHT22 DHT11보다 2배는 비싸지만 이걸 권장하고 싶다.(흰색이며 DHT11보다 조금 큼.)

핀이 4개인데, 실제론 3개만 쓰인다.(아마 설계 후 결국 폐기되었거나, 다른 공정을 그대로 사용하느라 4핀이 된듯)

  • 정확성: ±2%RH, ±0.5℃
  • 측정 범위: 0~99.9%RH, -40~80℃
  • 반복 정밀도: ±0.1%RH, ±0.1℃
2022073015534633.jpg
  • 핀이 3개인 센서는 폴업저항이 달려 나온 것이라 별다른 조치가 필요 없지만,
  • 핀이 4개인 센서는 오리지널로, 풀업저항(Data로 들어가는 신호를 정확하게 1로 유지해주기 위해. 없으면 floating으로 )이 필요.
BME280
SHT31 가성비 좋은 정밀센서.

위 연결 페이지 참고.

DHT sensor library를 설치한 후 작동된다. DHT sensor library 1.4.6 에서 작동 확인함.

#include "DHT.h"

#define DHTPIN 2       // DHT 센서의 데이터 핀을 연결한 아두이노 핀 번호
#define DHTTYPE DHT22  // DHT22 센서를 사용

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin();
}

void loop() {
  delay(2000);  // 센서 읽기 간격을 2초로 설정

  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);  // 화씨 온도 읽기

  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("센서에서 데이터를 읽을 수 없습니다!");
    return;
  }

  Serial.print("습도: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("온도: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.println(" *F");
}

해볼 만한 과제

[편집 | 원본 편집]

싱기버스에 관련 모델들이 많이 있긴 하다. https://www.thingiverse.com/search?q=DHT22&page=1

  • 과학적 원리에 대해 조사 발표.
  • 위 코드를 해석, 발표.
  • 이것으로 할 수 있는 활동은 어떤 것들이 있을까?