Sensore DHT11 Temperatura-Umidità ultimo aggiornamento 4 settembre 2016 |
|
|
Caratteristica & applicazione:
|
Caratteristiche |
Il sensore
DHT11 è un sensore di
temperatura e umidità con uscita dei dati in formato digitale.
Il sensore utilizza una tecnica
digitale esclusiva che unita alla tecnologia di rilevamento dell'umidità, ne
garantisce l'affidabilità e la stabilità.
I suoi elementi sensibili sono connessi con un processore 8-bit single-chip.
Ogni sensore di questo modello è compensato in temperatura e calibrato in
un'apposita camera di calibrazione che determina in modo preciso il valore di calibrazione
il cui coefficiente viene salvato all'interno della
memoria OTP.
Le sue piccole dimensioni e suo basso consumo unite alla lunga distanza di trasmissione (20 m)
permettono al sensore DHT11
di essere adatto per molti tipi di applicazioni. Il package
con quattro pin in linea ne rendono facile la connessione.
Specifiche tecniche
Modello |
DHT11 |
Alimentazione |
3-5.5V DC |
Segnale di uscita |
digitale del segnale tramite single-bus |
Elemento sensibile |
Resistenza in Polimero |
Campo di misura umidità |
20-90% di umidità relativa, temperatura di 0-50 gradi Celsius |
Precisione |
umidità + -4% RH (Max + -5% di umidità relativa) |
Risoluzione o la sensibilità |
umidità 1% di umidità relativa, temperatura 0.1 Celsius |
Ripetibilità umidità |
+ -1% di umidità relativa temperatura +-1Celsius |
Umidità isteresi |
+ -1% RH |
Stabilità a lungo termine |
+ -0.5% UR / anno |
Tempo di rilevazione |
medio: 2s |
Dimensioni |
12 * 15,5 * 5,5 millimetri |
Immagini tratte da http://www.radiolocman.com/shem/schematics.html?di=112850
Vista frontale | Vista laterale | Vista posteriore |
- Pin e
alimentazione
La tensione di alimentazione deve essere compresa tra 3-5.5V DC. Quando l'alimentazione viene
fornita al sensore, non inviare alcuna istruzione al sensore per almeno un
secondo per permettere al sensore di stabilizzarsi.
Un condensatore da 100nF può essere inserito tra tra VDD e GND per il
filtraggio dell'alimentazione
- Comunicazione e segnale
Dati single-bus viene utilizzato per la comunicazione tra MCU e di DHT11.
Descrizione |
Condizione |
Min |
Tipico |
Max |
Unità |
Alimentazione |
DC |
3 |
5 |
5,5 |
V |
Alimentazione di corrente |
di misura |
0,5 |
|
2,5 |
mA |
Stand-by |
100 |
Null |
150 |
|
uA |
|
Media |
0.2 |
Null |
1 |
mA |
Per utilizzare il sensore questo può essere collegato ad un Arduino UNO, mentre la lettura potrà essere mostrata attraverso un display LCD 16x2 connesso alla scheda Arduino tramite una scheda che permette un collegamento seriale, per esempio il modulo SparkFun
I componenti utilizzati sono
Arduino UNO | Modulo display SparkFun | Resistenza 4.7K |
Sensore DHT11 o modulo KY015 | Breadboard | Jumper Wires |
Per il collegamento si farà riferimento agli schemi sotto riportati
Utilizzo del modulo
KY-015
Temperature and humidity sensor module
Per la prova, dopo aver realizzato i vari collegamenti si dovrà caricare il programma all'interno della memoria di Arduino, il programma utilizza varie librerie che sono:
I dati di umidità e temperatura sono mostrati sul display LCD.
Libreria DHT11 |
Libreria SerLCD |
/*#################################################################### FILE: dht11_esempio_lcd.ino VERSION: 2.0 Descrizione: Programma di prova per sensore digitale di umidità e temperatura tipo DHT11, il programma legge le informazioni attraverso la linea DATA e scrive i valori su display LCD Collegamenti BOARD -> ARDUINO +5V -> 5V GND -> GND DATA -> 2 LCD -> 5 Ultima modifica il 1/10/2014 Applicazione realizzata da Adriano Gandolfo Sito https://www.adrirobot.it Blog http://it.emcelettronica.com/author/adrirobot Pagina Facebook https://www.facebook.com/Adrirobot-318949048122955 Istagram https://www.instagram.com/adrirobot/ This example code is in the public domain. #######################################################################*/ #include <dht11.h> #include <SoftwareSerial.h> #include <SerLCD.h> dht11 DHT11; SoftwareSerial NSS(0, 5); SerLCD lcd(NSS); #define DHT11PIN 2 //Pin a cui è collegato il sensore void setup() { NSS.begin(9600); lcd.begin(); lcd.setBacklight(255); lcd.clear(); lcd.setPosition(1, 0); lcd.print("Temperat.[C]: "); lcd.setPosition(2, 0); lcd.print("Umidita' [%]: "); delay(1000); // Pausa di stabilizzazione sensore } void loop() { uint8_t chk = DHT11.read(DHT11PIN); //Valori su display 16X2 lcd.setPosition(1, 13); lcd.print(DHT11.temperature, DEC); lcd.setPosition(2, 13); lcd.print(DHT11.humidity, DEC); delay(2000); //Intervallo di misura } |
Esempio lettura con programma esempio libreria
Elenco revisioni | |
02/10/2016 | Aggiornato programma |
02/05/2014 | Inserito test con Arduino |
01/08/2013 | Emissione preliminare |