venerdì 17 luglio 2015

DHT11 e LCD1602 con Arduino UNO R3

Ciao e ben ritrovato sul Blog ... Aspettando il Bus !
Devo confessarvi che sotto la pensilina fa molto caldo. La curiosità mi ha spinto a misurare la temperatura e mi sono detto: basta un display 16x2 o 20x4, il sensore di temperatura DHT11 e il nostro Arduino UNO R3.
Ne approfitto per rispondere anche ad un giovane lettore del blog, che voleva informazioni dettagliate su come unire il sensore col display. Anche questa volta vi propongo una piccola guida, ed ecco il lavoro finito :

LCD1602 e DHT11 con Arduino Uno R3 per misurare temperatura e umidità - di Paolo Luongo
LCD1602 e DHT11 con Arduino Uno R3 per misurare temperatura e umidità - di Paolo Luongo

Come prima cosa conviene prendere lo sketch di HelloWord della libreria LiquidCrystal presente nell' IDE di Arduino. Dal menu File -> Esempi -> LiquidCrystal -> HelloWord.
Nello sketch sono indicati i collegamenti da fare per far funzionare il modulo LCD con Arduino UNO R3.
C'è anche l'utile articolo guida sul sito di Arduino e lo schema dei collegamenti sulla breadboard.

Io ho preferito collegare il modulo LCD, in modo stabile, su una basetta millefori su cui ho fatto lo stesso circuito ma in modo meno... precario.

Aspettando il bus... modulo LCD1602 - foto di Paolo Luongo
Aspettando il bus... modulo LCD1602 - foto di Paolo Luongo
Dopo aver caricato e provato il corretto funzionamento dello sketch di HelloWord vediamo come collegare il DHT11.
Dobbiamo cercare i PIN di Arduino UNO R3 che sono ancora liberi: io ho scelto il PIN 7.

Collegamenti fra LCD e Arduino Uno R3 - foto di Paolo Luongo
Collegamenti fra LCD e Arduino Uno R3 - foto di Paolo Luongo
Nella foto precedente si notano i vari fili colorati, ma non c'è ancora il collegamento al modulo DHT11 al PIN 7 di Arduino Uno R3.
A questo punto conviene installare, se non è stato già fatto, la libreria per utilizzare il DHT11.

Dobbiamo collegare le alimentazioni fra i vari moduli e conviene utilizzare una piccola breadboard.
Si tratta di unine i fili della Vcc (+5 Volt) e quelli relativi alla GND.
Mi raccomando, fate attenzione: i positivi fra di loro e i negativi fra di loro. 
In caso di errori si può danneggiare, su Arduino UNO R3, il regolatore a 5 Volt.
Comunque i collegamenti sono semplici, basta un po' di attenzione.
Un consiglio: prima di alimentare il circuito, fate una pausa di 5 minuti e poi ricontrollate tutto !

Collegamenti fra Arduino UNO R3, DHT11 e breadboard - foto di Paolo Luongo
Collegamenti fra Arduino UNO R3, DHT11 e breadboard - foto di Paolo Luongo
Si ma tutto lavoro questo per fare cosa?
Semplice, basta guardare il video che ho caricato sul canale Youtube:


Avendo due display LCD uno da 16 colonne e 2 righe (LCD1602) e un'altro da 20 colonne e 4 righe.
Ho fatto due sketch diversi per i due tipi di LCD: basta che siano dei modelli hd44780 compatibili.
Iniziamo con lo sketch per il display LCD1602.

Retro del display LCD 1602 - foto di Paolo Luongo
Retro del display LCD 1602 - foto di Paolo Luongo

Nel caso si dovesse interrompere il collegamento dal sensore DHT11 avremo un messaggio di errore:

Il sensore DHT11 non risponde correttamente - foto di Paolo Luongo
Il sensore DHT11 non risponde correttamente - foto di Paolo Luongo
Meglio controllare il collegamento col PIN 7 di Arduino.

Se invece abbiamo il display da 20 colonne e 4 righe, ecco lo sketch per il display 20x4.

Retro del diaplay LCD 20x4 - foto di Paolo Luongo
Retro del display LCD 20x4 - foto di Paolo Luongo
 Se tutto funziona, avremo il messaggio di benvenuto e i valori di temperatura e umidità:

Display LCD 20x4 - foto di Paolo Luongo
Display LCD 20x4 - foto di Paolo Luongo
Mi auguro che da voi faccia meno caldo.  :-)

Messaggio di errore sul sensore DHT11 - foto di Paolo Luongo
Messaggio di errore sul sensore DHT11 - foto di Paolo Luongo
Se il vostro display LCD funziona con lo sketch di HelloWord, funzionerà altrettanto bene con questo termometro.

Cosa aggiungere? Solo di fare un poco di attenzione nei collegamenti e avrete anche voi il termometro targato... Aspettando il Bus !

Buon lavoro !

Se ti è piaciuto l'articolo clicca sul +1 e passa parola :-)

Ciao
Paolo :-)

Vedi altri articoli sul blog




Nessun commento: