2 circuite simple de măsurare a temperaturii Arduino explorate

Încercați Instrumentul Nostru Pentru Eliminarea Problemelor





În acest articol, vom construi câteva circuite ușoare de măsurare a temperaturii Arduino, care pot fi utilizate și ca LED circuit termometru de cameră .

Circuitul este conceput pentru a afișa citirile în LED-uri punctate / bare. Acest proiect poate fi implementat pentru aplicații în care temperatura ambiantă joacă un rol crucial sau ar putea fi construit la fel ca un alt proiect distractiv pentru casa ta.



1) Folosind DTH11 ca senzor de temperatură

Inima și creierul primului proiect al contorului de temperatură sunt senzorul DTH11 și respectiv Arduino. Vom extrage doar datele de temperatură din senzor.

Arduino va deduce datele și va reîmprospăta temperatura afișată la fiecare câteva secunde.



Vom lua 12 rezoluții de senzor de temperatura , cu alte cuvinte, vom lua intervalul de temperatură în care temperatura ambiantă variază de obicei.

Dacă doriți să adăugați mai multe rezoluții / LED-uri, veți avea nevoie de arduino mega pentru a profita de întregul spectru de temperatură al senzorului cu program modificat.

DTH11 ca senzor de temperatură

Aspectul ilustrat mai sus poate fi adoptat pentru a căuta cel mai bine configurarea dvs.

Utilizatorul trebuie doar să introducă temperatura minimă a camerei. Poate fi o valoare aproximativă, care poate fi modificată ulterior după finalizarea configurării hardware complete.

Dacă intervalul de temperatură depășește valoarea prag introdusă de utilizator, nu va aprinde niciun LED și dacă temperatura depășește intervalul maxim (minim + 11), toate LED-urile ar străluci.

Dacă există probleme de conectivitate a senzorilor, toate LED-urile vor clipi simultan în fiecare secundă.

Design-ul:

Cablarea circuitului contorului de temperatură LED Arduino este foarte simplă, o serie de LED-uri conectate la pinii GPIO variind de la 2 la 13 cu rezistențe de limitare a curentului, iar senzorul DHT11 este conectat la pinii I / O analogici, care este programat pentru a oferi sursa de alimentare senzorului. precum și citirea datelor.

Circuit termometru cu cameră LED

Astfel, configurarea circuitului termometrului cu LED-uri este completă și gata de încărcare a codului. Este întotdeauna recomandat să testați circuitul pe placa de pâine înainte de a-l face permanent.

Sfat: Utilizați LED-uri de culori diferite pentru a indica diferite intervale de temperatură. Puteți utiliza LED-uri albastre pentru intervalul de temperatură mai scăzut, verde sau galben pentru intervalul mediu de temperatură și LED-uri roșii pentru temperatură mai mare. Acest lucru va face mai atractiv.

Prototipul autorului:

prototip de lucru al circuitului termometru cu cameră LED

NOTĂ: Următorul program este compatibil numai cu senzorul DHT11.

Înainte de a continua, asigurați-vă că descărcați fișierul bibliotecii de pe următorul link:

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

Codul programului:

//-------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------//

NOTA 1:

În program:

int temp = 25 // setează temperatura.
Înlocuiți „25” cu temperatura ambiantă minimă pe care ați întâlnit-o în trecut cu alte termometre sau preziceți o valoare aproximativă.
NOTĂ 2: Vă rugăm să verificați citirile de temperatură de pe monitorul serial și configurarea LED-ului.

2) Contor de temperatură Arduino folosind DS18B20

În acest al doilea design, învățăm un alt senzor de temperatură Arduino simplu, dar extrem de precis, cu circuit indicator, utilizând un modul avansat de citire a afișajului LCD digital.

modul digital de citire a afișajului LCD.

De fapt, nu există nimic prea explicabil în această configurație, deoarece totul este bazat pe module și necesită pur și simplu conectarea sau conectarea reciprocă prin mufele și conectorii de sex masculin oferite.

Hardware necesar

Patru materiale de bază sunt necesare pentru construirea acestui circuit precis al contorului de temperatură LCD Arduino, care poate fi studiat după cum este prezentat la:

1) Un consiliu UN Arduino

2) A Modul LCD compatibil

3) Un cip analogic de senzor de temperatură, cum ar fi un DS18B20 sau propriul nostru LM35 IC .

Specificații termometru digital DS18B20

DS18B20 termometru digital asigură specificațiile de temperatură de la 9 biți la 12 biți Celsius și are o caracteristică de alarmă cu elemente de activare mai mari și mai mici programabile pentru consumatori nevolatile. DS18B20 comunică printr-o singură magistrală Wire care, prin descriere, solicită o singură linie de date (și masă) pentru conectarea cu un microprocesor principal.

Acesta include un interval de temperatură de lucru de la -55 ° C la + 125 ° C, care este precis la ± 0,5 ° C peste sortimentul de la -10 ° C la + 85 ° C.

Odată cu aceasta, DS18B20 este capabil să dobândească energie direct de pe linia de date („puterea parazitului”), eliminând necesitatea unei
rel = ' nofollow 'sursa de alimentare exterioară.

Fiecare DS18B20 poartă un cod serial distinct pe 64 de biți, permițând mai multor DS18B20 să funcționeze pe același autobuz cu 1 fir. În consecință, este ușor de utilizat și simplu un singur microprocesor pentru a gestiona încărcăturile asociate cu DS18B20s lansate într-o locație răspândită.

Programele care pot profita cu ușurință de acest atribut implică configurații ecologice HVAC, dispozitive de supraveghere a temperaturii în unități, aparate sau instrumente și sisteme de supraveghere și reglare a proceselor.

Detalii Pinout

Specificații termometru digital DS18B20

4) Un adaptor de 9V, 1 amp CA la DC

Acum este vorba doar de apăsarea conectorilor între ei, de a face un pic de setare prin butoanele LCD și veți avea la dispoziție un contor LCD digital complet și precis de temperatură.

Puteți măsura temperatura camerei cu acest set sau puteți fixa senzorul în mod corespunzător cu orice dispozitiv emitent de căldură care trebuie monitorizat, cum ar fi un motor de automobile, o cameră de incubator de ouă, un gheizer sau pur și simplu pentru a verifica disiparea căldurii de pe un dispozitiv de amplificare a puterii.

Cum să conectați contorul de temperatură Arduino

Următoarea figură arată conexiunea configurată, unde placa Arduino se află în partea de jos, cu monitorul LCD conectat deasupra și senzorul de temperatură conectat la placa LCD.

Dar înainte de a implementa configurarea de mai sus, va trebui să programați placa Arduino cu următorul exemplu de cod.

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




Precedent: Activarea / dezactivarea a două încărcări alternative cu IC 555 Următorul: Circuitul comutatorului de releu SPDT folosind Triac