2 개의 간단한 Arduino 온도 측정기 회로 탐색

문제를 제거하기 위해 도구를 사용해보십시오





이 기사에서는 LED로도 사용할 수있는 두 가지 간단한 Arduino 온도 측정기 회로를 구성 할 것입니다. 실내 온도계 회로 .

이 회로는 점선 / 막대 LED에 판독 값을 표시하도록 설계되었습니다. 이 프로젝트는 주변 온도가 중요한 역할을하는 애플리케이션을 위해 구현하거나 가정을위한 또 다른 재미있는 프로젝트로 구축 할 수 있습니다.



1) 온도 센서로 DTH11 사용

첫 번째 온도 측정기 프로젝트의 심장과 뇌는 각각 DTH11 센서와 Arduino입니다. 센서에서 온도 데이터 만 추출 할 것입니다.

arduino는 데이터를 추론하고 몇 초마다 표시된 온도를 새로 고칩니다.



우리는 온도 센서 즉, 주변 온도가 일반적으로 변하는 온도 범위를 취합니다.

더 많은 해상도 / LED를 추가하려면 수정 된 프로그램으로 센서의 전체 온도 스펙트럼을 활용하려면 arduino mega가 필요합니다.

온도 센서로서의 DTH11

위에 설명 된 레이아웃은 사용자의 설정에 가장 잘 어울리도록 채택 될 수 있습니다.

사용자는 방의 최소 온도 범위를 입력하기 만하면됩니다. 대략적인 값일 수 있으며 전체 하드웨어 설정이 완료되면 나중에 변경할 수 있습니다.

온도 범위가 사용자가 입력 한 임계 값 아래로 내려 가면 LED가 켜지지 않으며 온도가 최대 범위 (최소 + 11)를 초과하면 모든 LED가 켜집니다.

센서 연결 문제가있는 경우 모든 LED가 1 초마다 동시에 깜박입니다.

디자인 :

Arduino LED 온도 측정기 회로 배선은 매우 간단하며 전류 제한 저항이있는 2 ~ 13 범위의 GPIO 핀에 연결된 일련의 LED, DHT11 센서는 센서에 전원을 공급하도록 프로그래밍 된 아날로그 I / O 핀에 연결됩니다. 데이터를 읽습니다.

LED 실내 온도계 회로

따라서 LED 온도계 회로 설정이 완료되고 코드를 업로드 할 준비가되었습니다. 영구적으로 만들기 전에 항상 브레드 보드에서 회로를 테스트하는 것이 좋습니다.

팁 : 다른 온도 범위를 표시하려면 다른 색상 LED를 사용하십시오. 낮은 온도 범위에는 파란색 LED, 중간 온도 범위에는 녹색 또는 노란색, 높은 온도 범위에는 빨간색 LED를 사용할 수 있습니다. 이것은 더 매력적으로 만들 것입니다.

저자의 프로토 타입 :

LED 실내 온도계 회로의 작동 프로토 타입

참고 : 다음 프로그램은 DHT11 센서와 만 호환됩니다.

계속하기 전에 다음 링크에서 라이브러리 파일을 다운로드하십시오.

https://arduino-info.wikispaces.com/file/detail/DHT-lib.zip

프로그램 코드 :

//-------Program developed by R.Girish------//
#include
int a=2
int b=3
int c=4
int d=5
int e=6
int f=7
int g=8
int h=9
int i=10
int j=11
int k=12
int l=13
int p=A0
int data=A1
int n=A2
int ack
dht DHT
int temp=25 // set temperature range.
void setup()
{
Serial.begin(9600) // may be removed after testing.
pinMode(a,OUTPUT)
pinMode(b,OUTPUT)
pinMode(c,OUTPUT)
pinMode(d,OUTPUT)
pinMode(e,OUTPUT)
pinMode(f,OUTPUT)
pinMode(g,OUTPUT)
pinMode(h,OUTPUT)
pinMode(i,OUTPUT)
pinMode(j,OUTPUT)
pinMode(k,OUTPUT)
pinMode(l,OUTPUT)
pinMode(p,OUTPUT)
pinMode(n,OUTPUT)
digitalWrite(p,HIGH)
digitalWrite(n,LOW)
}
void loop()
{
// may be removed after testing.
Serial.print('Temperature(°C) = ')
Serial.println(DHT.temperature)
Serial.print('Humidity(%) = ')
Serial.println(DHT.humidity)
Serial.print(' ')
//till here
ack=0
int chk = DHT.read11(data)
switch (chk)
{
case DHTLIB_ERROR_CONNECT:
ack=1
break
}
if (ack==0)
{
if(DHT.temperature>=temp)digitalWrite(a,HIGH)
if(DHT.temperature>=temp+1)digitalWrite(b,HIGH)
if(DHT.temperature>=temp+2)digitalWrite(c,HIGH)
if(DHT.temperature>=temp+3)digitalWrite(d,HIGH)
if(DHT.temperature>=temp+4)digitalWrite(e,HIGH)
if(DHT.temperature>=temp+5)digitalWrite(f,HIGH)
if(DHT.temperature>=temp+6)digitalWrite(g,HIGH)
if(DHT.temperature>=temp+7)digitalWrite(h,HIGH)
if(DHT.temperature>=temp+8)digitalWrite(i,HIGH)
if(DHT.temperature>=temp+9)digitalWrite(j,HIGH)
if(DHT.temperature>=temp+10)digitalWrite(k,HIGH)
if(DHT.temperature>=temp+11)digitalWrite(l,HIGH)
delay(2000)
goto refresh
}
if (ack==1)
{
// This may be removed after testing.
Serial.print('NO DATA')
Serial.print(' ')
// till here
delay(500)
digitalWrite(a,1)
digitalWrite(b,1)
digitalWrite(c,1)
digitalWrite(d,1)
digitalWrite(e,1)
digitalWrite(f,1)
digitalWrite(g,1)
digitalWrite(h,1)
digitalWrite(i,1)
digitalWrite(j,1)
digitalWrite(k,1)
digitalWrite(l,1)
refresh:
delay(500)
digitalWrite(a,0)
digitalWrite(b,0)
digitalWrite(c,0)
digitalWrite(d,0)
digitalWrite(e,0)
digitalWrite(f,0)
digitalWrite(g,0)
digitalWrite(h,0)
digitalWrite(i,0)
digitalWrite(j,0)
digitalWrite(k,0)
digitalWrite(l,0)
}
}
//-------Program developed by R.Girish------//

참고 1 :

프로그램에서 :

int temp = 25 // 온도 범위를 설정합니다.
'25'를 다른 온도계로 과거에 만난 최소 주변 온도로 바꾸거나 대략적인 값을 예측하십시오.
참고 2 : 직렬 모니터 및 LED 설정에서 온도 판독 값을 확인하십시오.

2) DS18B20을 사용한 Arduino 온도 측정기

이 두 번째 디자인에서는 고급 디지털 LCD 디스플레이 판독 모듈을 사용하여 표시기 회로가있는 간단하지만 매우 정확한 Arduino 온도 센서를 배웁니다.

디지털 LCD 디스플레이 판독 모듈.

모든 것이 모듈 기반이고 제공된 수컷 암 소켓 및 커넥터를 통해 서로 연결하거나 연결해야하기 때문에 실제로이 구성에서 너무 설명 할 수있는 것은 없습니다.

필요한 하드웨어

이 정확한 Arduino LCD 온도 측정기 회로를 구성하려면 네 가지 기본 재료가 필요하며 다음과 같이 연구 할 수 있습니다.

1) Arduino UNO 보드

2) A 호환 가능한 LCD 모듈

3) DS18B20 또는 당사 자체와 같은 아날로그 온도 센서 칩 LM35 IC .

DS18B20 디지털 온도계 사양

DS18B20 디지털 온도계 9 비트 ~ 12 비트 섭씨 온도 사양을 보장하고 비 휘발성 소비자 프로그래밍 가능 높고 낮은 활성화 요소와 함께 알람 기능을 제공합니다. DS18B20은 설명에 따라 메인 마이크로 프로세서와의 연결을 위해 단일 데이터 라인 (및 접지)을 요구하는 단일 와이어 버스를 통해 통신합니다.

작동 온도 범위는 -55 ° C ~ + 125 ° C이며, -10 ° C ~ + 85 ° C 범위에서 ± 0.5 ° C까지 정확합니다.

이와 함께 DS18B20은 데이터 라인 ( '기생충 전력')에서 직접 전력을 획득 할 수 있으므로
rel = ' nofollow '외부 전원 공급 장치.

각각의 DS18B20에는 고유 한 64 비트 직렬 코드가있어 여러 DS18B20이 동일한 1 Wire 버스에서 작동 할 수 있습니다. 따라서 사용자 친화적이고 복잡하지 않은 단일 마이크로 프로세서로 광범위한 위치에서 실행되는 DS18B20과 관련된 부하를 관리 할 수 ​​있습니다.

이 속성을 쉽게 활용할 수있는 프로그램에는 HVAC 생태 구성, 시설 내부 온도 감시 장치, 장치 또는 도구, 프로세스 감독 및 규제 시스템이 포함됩니다.

핀아웃 세부 정보

DS18B20 디지털 온도계 사양

4) 9V, 1A AC-DC 어댑터 장치

이제 커넥터를 서로 밀고 LCD 푸시 버튼을 통해 약간의 설정을 수행하면 원하는대로 완벽하고 정확한 디지털 LCD 온도 측정기를 얻을 수 있습니다.

이 설정으로 실내 온도를 측정하거나 자동차 엔진, 계란 인큐베이터 챔버, 간헐천과 같이 모니터링해야하는 열 방출 장치로 센서를 적절하게 고정하거나 단순히 전력 증폭기 장치의 열 손실을 확인할 수 있습니다.

Arduino 온도 측정기 연결 방법

다음 그림은 Arduino 보드가 하단에 있고 LCD 모니터가 꽂혀 있고 온도 센서가 LCD 보드에 연결된 연결 설정을 보여줍니다.

그러나 위의 설정을 구현하기 전에 다음 샘플 코드를 사용하여 Arduino 보드를 프로그래밍해야합니다.

예의 : dfrobot.com/wiki/index.php?title=LCD_KeyPad_Shield_For_Arduino_SKU:_DFR0009




이전 : IC 555를 사용하여 두 개의 대체 부하 켜기 / 끄기 다음 : Triac을 사용하는 SPDT 릴레이 스위치 회로