Sommario:
- Passaggio 1: guarda il video
- Passaggio 2: parti necessarie
- Passaggio 3: progettazione schematica
- Passaggio 4: progettazione PCB
- Passaggio 5: fabbricare il PCB
- Passaggio 6: assemblaggio
- Passaggio 7: codice
Video: Sensore di temperatura e umidità Arduino: 7 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Di ThundertronicsSegui di più dell'autore:
In questo tutorial, spiegherò la realizzazione di un sensore di temperatura e umidità utilizzando la mini scheda Arduino pro con sensore DHT11 (o DHT22).
Passaggio 1: guarda il video
È importante vedere il video prima di passare al passaggio successivo. Il video spiega tutto e mostra come si fa. Tuttavia, in questo post, scriverò più dati tecnici e dettagli.
www.youtube.com/watch?v=56LKl7Xd770
Passaggio 2: parti necessarie
Le parti necessarie per questo progetto sono:
1- Mini scheda Arduino pro (o qualsiasi Arduino).
2- Sensore di temperatura e umidità DHT11 (o DHT22).
3- Display LCD 16x2.
4- Un allegato a tua scelta, preferibilmente uguale a quello utilizzato nel video.
5-Potenziometro 10K.
6- Morsetti a vite.
7- Resistori di diverso valore.
Batteria 8-9V.
mentre gli strumenti necessari sono:
1- trapano a mano come un Dremil.
2- punte diverse per il trapano, poiché utilizzeremo punte per levigare e punte da taglio.
3- aiutando le mani.
inoltre, i soliti strumenti elettronici come il multimetro e così via.
Passaggio 3: progettazione schematica
In questo progetto, ho scelto di realizzare un PCB invece di cablarlo da solo. Quindi ho usato lo strumento online EasyEDA per il lavoro che è stata una bella esperienza.
Questa è la pagina del progetto sul sito easyEDA:
La spiegazione dello schema è la seguente:
1- Ho usato un adattatore ICSP a 6 pin per programmare Arduino pro mini poiché non ne viene fornito uno a bordo. è J2 allo schema.
2- R2 è 100 Ohm e imposta la luminosità del display LCD. Fondamentalmente, potresti mettere più resistenza di 100R se vuoi che la retroilluminazione LCD sia più debole. O meglio ancora, fai in modo che un potenziometro agisca come una resistenza in serie variabile.
3- JP1 è solo un connettore che ha un bell'ingombro sul PCB. Non ho mai messo un vero terminale ma invece ho saldato i fili. Fai come vuoi.
4- U2 sono i terminali di collegamento della batteria. Qui, preferisco dei bei terminali a vite per ottenere una connessione stabile. Potresti saldare i fili, ma assicurati di mettere abbastanza saldatura per rendere la connessione abbastanza solida da resistere a qualsiasi scossa.
5- LCD1 è il componente LCD in easyEDA. Ha la connessione di base ad Arduino pro mini. Assicurati che i pin qui siano identici a quelli del software.
6- RV1 è un potenziometro da 10K per impostare il contrasto LCD. Dovrebbe essere usato solo una volta ed è la prima volta che accendi il display LCD.
Passaggio 4: progettazione PCB
Dopo aver terminato la progettazione schematica e aver capito cosa significa tutto, ora è il momento di creare un PCB per questo.
Dovresti premere "Converti in PCB" in EasyEDA per creare il PCB nell'editor PCB. Quindi, inizia a posizionare le parti e ad eseguire il routing come al solito. Suggerisco di non usare mai l'auto-router però.
Ho usato molti vias per spostarmi dal livello superiore a quello inferiore poiché lo spazio è così piccolo.
Passaggio 5: fabbricare il PCB
Ora, il design del PCB è finito. Abbiamo controllato tutto e nessun problema riscontrato. Dobbiamo inviare i file di progettazione (i gerber) alla società di fabbricazione di PCB di nostra scelta in modo che possa farlo per noi.
La mia azienda preferita è JLCPCB. Sono i migliori per tali progetti e prototipazione e offrono solo 2 $ di prezzo per 10 pezzi interi del tuo design!
Quindi, ora facciamo clic su (….) e scegliamo JLCPCB. Siamo indirizzati al sito Web JLCPCB poiché sono partner di EasyEDA. Ora compila tutto e fai l'ordine. Ora aspetta solo che arrivino i PCB.
Vale la pena ricordare che JLCPCB non solo ha EasyEDA associato a loro, ma ha anche un grande negozio di componenti! Il vantaggio qui è ottenere sia l'ordine PCB che l'ordine dei componenti spediti insieme! Sì, non è necessario attendere l'arrivo di 2 pacchi separatamente, ma vengono invece combinati in un unico pacco. Consiglio vivamente di utilizzare questo.
Passaggio 6: assemblaggio
Abbiamo solo i PCB con tutto ora. È tempo di assemblare tutto insieme.
Innanzitutto, dobbiamo saldare l'elettronica secondo lo schema. È un compito facile per questo progetto.
Dopo aver terminato la saldatura, ora tagliare i fori necessari nell'involucro di plastica, quindi fissare il PCB con altri componenti bene all'interno utilizzando una pistola per colla a caldo.
Ora dovresti usare il potenziometro per regolare il contrasto del display LCD, mentre scegliendo la valvola di resistenza necessaria per la luminosità, ho scelto 100R.
Passaggio 7: codice
Il codice per questo progetto è allegato a questo passaggio e la spiegazione è la seguente:
// includi il codice della libreria:#include #include "DHT.h" // imposta il Pin DHT #define DHTPIN 2
Includere le librerie necessarie e definire il pin 2 di Arduino pro mini come pin dati per il sensore. Assicurati di installare queste librerie se non le hai.
// inizializza la libreria con i numeri dei pin di interfaccia LiquidCrystal lcd(9, 8, 7, 6, 5, 4); #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE);
Ora inizializza la libreria LCD con questi pin secondo lo schema stesso. Usa anche la libreria DHT e scegli DHT11 come sensore da usare, quindi se hai DHT22 dovresti cambiarlo.
L'ultima riga dice che abbiamo il sensore DHT11 e il suo pin dati è sul pin "DHTPIN", che è il pin 2 come lo abbiamo definito in precedenza.
void setup() { // imposta il numero di colonne e righe del display LCD: lcd.begin(16, 2); dht.begin(); lcd.setCursor(0, 0); lcd.print("Temperatura e"); lcd.setCursor(0, 1); lcd.print("sensore di umidità"); ritardo (3000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("THUNDERTRONICS"); lcd.setCursor(0, 1); lcd.print("Hossam Moghrabi"); ritardo (3000); }
Ora è il momento della configurazione! ed ecco cosa sta succedendo:
LCD è di tipo 16 per 2.
Avvia il comando DHT per ottenere i valori.
Stampare "Sensore di temperatura e umidità" sulle 2 righe.
Ritardo 3 secondi.
Display chiaro
Stampa "THUNDERTRONICS" sulla prima riga, quindi stampa "Hossam Moghrabi" sulla 2a riga.
Ritardo 3 secondi.
^L'ho fatto come schermata di benvenuto che dura circa 6 secondi circa prima che vengano visualizzati i valori.
void loop() { // leggi l'umidità int h = dht.readHumidity(); //legge la temperatura in c int t = dht.readTemperature(); if (isnan(h) || isnan(t)) { lcd.print("ERRORE"); Restituzione; }
Ora siamo all'interno del nostro ciclo eterno che continuerà a ripetersi.
Memorizza le letture di umidità all'interno della variabile "h" e le letture di temperatura all'interno della variabile "t".
Successivamente, abbiamo un'istruzione if. Questo è fondamentalmente restituisce un messaggio di errore quando c'è un errore. Lascialo senza cambiarlo.
Ora abbiamo tutti i valori di cui abbiamo bisogno.
lcd.setCursor(0, 0); lcd.print("Temp. = "); lcd.print(t); lcd.print(" "); lcd.print((carattere)223); lcd.print("C"); lcd.setCursor(0, 1); lcd.print("Umidità = "); lcd.print(h); lcd.print ("%"); // lcd.print("Hossam Moghrabi"); ritardo (2000);
Infine, mostriamo questi valori sul display LCD. Puoi cambiarlo nel modo desiderato perché sta semplicemente stampando i valori all'interno delle variabili "h" e "t". Mettere un ritardo di 2 secondi è un po' facoltativo, ma non trarrai molto beneficio dal farlo più velocemente poiché il sensore stesso non è così veloce e anche se lo è, i valori fisici non cambiano mai così velocemente. Quindi 2 secondi sono molto molto veloci per il lavoro!
Questo è tutto!
Consigliato:
Automatizzare una serra con LoRa! (Parte 1) -- Sensori (temperatura, umidità, umidità del suolo): 5 passaggi
Automatizzare una serra con LoRa! (Parte 1) || Sensori (temperatura, umidità, umidità del suolo): in questo progetto ti mostrerò come ho automatizzato una serra. Ciò significa che ti mostrerò come ho costruito la serra e come ho collegato l'elettronica di alimentazione e automazione. Inoltre ti mostrerò come programmare una scheda Arduino che utilizza L
Sensore di temperatura e umidità ad energia solare Arduino come sensore Oregon da 433 mhz: 6 passaggi
Sensore di temperatura e umidità ad energia solare Arduino come sensore Oregon da 433 mhz: questa è la costruzione di un sensore di temperatura e umidità ad energia solare. Il sensore emula un sensore Oregon da 433 mhz ed è visibile nel gateway Telldus Net. Cosa ti serve: 1 x "10 LED Sensore di movimento a energia solare" da Ebay. Assicurati che dica batteria a 3,7 V
ESP8266 NodeMCU Access Point (AP) per server Web con sensore di temperatura DT11 e stampa di temperatura e umidità nel browser: 5 passaggi
ESP8266 NodeMCU Access Point (AP) per server Web con sensore di temperatura DT11 e temperatura e umidità di stampa nel browser: ciao ragazzi nella maggior parte dei progetti utilizziamo ESP8266 e nella maggior parte dei progetti utilizziamo ESP8266 come server Web in modo da poter accedere ai dati su qualsiasi dispositivo tramite wifi accedendo al server Web ospitato da ESP8266 ma l'unico problema è che abbiamo bisogno di un router funzionante per
Come utilizzare il sensore di temperatura DHT11 con Arduino e stampare la temperatura di calore e umidità: 5 passaggi
Come utilizzare il sensore di temperatura DHT11 con Arduino e stampare la temperatura Calore e umidità: il sensore DHT11 viene utilizzato per misurare la temperatura e l'umidità. Sono appassionati di elettronica molto popolari. Il sensore di umidità e temperatura DHT11 rende davvero facile aggiungere dati di umidità e temperatura ai tuoi progetti di elettronica fai-da-te. È per
Monitor di umidità wireless (ESP8266 + sensore di umidità): 5 passaggi
Wireless Moisture Monitor (ESP8266 + Moisture Sensor): compro il prezzemolo in vaso e la maggior parte del giorno il terreno era asciutto. Quindi decido di realizzare questo progetto, sul rilevamento dell'umidità del terreno in vaso con prezzemolo, per verificare, quando ho bisogno di versare il terreno con acqua. Penso che questo sensore (sensore di umidità capacitivo v1.2) sia buono perché