Page 64 - Microcontrolere - Indrumator de laborator
P. 64
umiditatea relativă este raportul dintre cantitatea de vapori de apă prezentă în aer și
cantitatea de vapori de apă pe care aerul ar putea-o conține la o anumită temperatură.
Formula de calcul a umidității relative este:
Unde RH înseamnă – Umiditatea relativă,
ρw înseamnă – densitatea vaporilor de apă la o anumită temperatură, și
ρs înseamnă – densitatea vaporilor de apă la saturație la temperatura respectivă.
Umiditatea relativă se exprimă în procente. 0% RH înseamnă că aerul este
complet uscat, iar la 100% RH are loc condensarea.
DHT11 utilizează un protocol cu un singur fir pentru a comunica cu Arduino și
alte MCU. Senzorul acționează ca un sclav față de un controler gazdă. Acesta va
trimite date digitale către controlerul gazdă atunci când este solicitat.
Comunicarea dintre controlerul gazdă și DHT11 poate fi împărțită în patru
etape.
Semnalul de solicitare: Pentru a obține datele privind umiditatea și temperatura,
gazda trebuie să trimită un semnal de solicitare pentru acestea. Linia de date este apoi
trasă pe HIGH în mod implicit datorită rezistenței de tragere. Semnalul de solicitare
este un LOW logic timp de 18 milisecunde, urmat de o tranziție de la Low la High.
Apoi, intrarea/ieșirea gazdă trebuie să fie setată în starea de intrare pentru a
obține semnalul de răspuns.
Răspunsul: După ce primește un semnal de solicitare de la gazdă, DHT11
trimite un semnal de răspuns pentru a indica faptul că este gata să transmită datele
senzorului. Impulsul de răspuns este un LOW logic de 80 de microsecunde urmat de
un HIGH logic de 80 de microsecunde.
Datele: După trimiterea impulsului de răspuns, DHT11 începe să transmită
datele senzorului care conțin valorile umidității, temperaturii și un octet de control.
Dimensiunea pachetului de date este de 40 de biți sau 5 octeți.
Primii doi octeți conțin valorile umidității relative. Primul octet conține datele
întregi de umiditate, iar al doilea octet conține datele zecimale de umiditate.
Următorii doi octeți (al treilea și al patrulea) conțin datele de temperatură. Al
treilea octet conține partea întreagă, iar al patrulea octet conține partea fracționară a
temperaturii.
Ultimul octet este octetul de control. Acest octet este utilizat pentru a verifica
dacă datele primite sunt corecte sau nu. Dacă suma binară a valorilor umidității și
temperaturii (suma primilor patru octeți) este egală cu octetul de control, atunci datele
primite sunt corecte[6].
61