Sommario:

Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico: 10 passaggi (con immagini)
Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico: 10 passaggi (con immagini)

Video: Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico: 10 passaggi (con immagini)

Video: Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico: 10 passaggi (con immagini)
Video: Ingoiare il latte del trallalero fa bene? #shorts 2024, Dicembre
Anonim
Image
Image
Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico
Giorno della settimana, calendario, ora, umidità/temperatura con risparmio energetico

La modalità di risparmio energetico qui è ciò che distingue questo Instructable da altri esempi che mostrano giorno della settimana, mese, giorno del mese, ora, umidità e temperatura. È questa capacità che consente a questo progetto di essere eseguito da una batteria, senza la necessità di una "verruca da parete".

Avevo pubblicato un precedente display LCD Instructable, umidità e temperatura con modalità di risparmio energetico: parti minime, divertente, veloce e molto economico, e alla fine di quello Instructable ho presentato un'immagine di una modifica opzionale. Tale modifica includeva anche il giorno della settimana, il calendario e l'ora visualizzati sullo stesso display. Ho ricevuto una serie di messaggi che richiedevano informazioni su quel display aumentato. Pertanto, sto pubblicando questo Instructable come modifica ed estensione di quello precedente.

Per evitare ai lettori il problema di dover trovare l'Instructable menzionato in precedenza, ho duplicato alcune delle informazioni presentate in quell'Instructable qui, e ovviamente sto includendo le informazioni aumentate per consentire anche al giorno della settimana, al calendario e all'ora di essere presentato in aggiunta all'umidità relativa e alla temperatura. Tuttavia, alcuni lettori potrebbero non aver bisogno del giorno della settimana, del calendario e dell'ora e necessitano solo dell'umidità e della temperatura visualizzate. Per quei lettori, il precedente Instructable funzionerà bene.

Come ho detto nel precedente Instructable, il mio studio non era sempre alla temperatura migliore, quindi ho deciso che sarebbe stato utile visualizzare la temperatura ambiente sulla mia scrivania. Il costo di un sensore che fornisse umidità, oltre alla temperatura, non era proibitivo; quindi un display di umidità è stato incluso in quel progetto.

Un requisito aggiuntivo è sorto poiché il mio coniuge mi chiedeva spesso il giorno della settimana e/o il giorno del mese, quindi ho deciso di includere anche questi nel display. Ho realizzato due copie del progetto mostrato qui. Uno per il mio studio e uno per la stanza della nostra casa dove si trova spesso mia moglie. Ho usato sia un (1) orologio in tempo reale (RTC) che (2) un sensore di umidità e temperatura.

Entrambi i sensori di umidità/temperatura DHT11 e DHT22 che ho considerato forniscono risultati di temperatura in gradi centigradi. Fortunatamente è una facile conversione in Fahrenheit (il formato utilizzato negli Stati Uniti, che è la mia posizione). Lo schizzo seguente fornisce un codice che può essere facilmente modificato per visualizzare la temperatura in gradi centigradi, se è quello che viene utilizzato dove ti trovi.

Ho preso in considerazione sia i sensori DHT22 che DTH11 e ho optato per il DHT22, anche se leggermente più costoso. Il DHT11 può essere spesso acquistato per meno di $ 2, mentre il DHT22 si trova spesso per meno di $ 5. Se acquistato direttamente dalla Cina, il costo può essere anche inferiore. Se avessi voluto solo visualizzare la temperatura, avrei potuto usare un sensore TMP36 invece del DHT22, e ho realizzato dei risparmi, e infatti è così che ho costruito un mio progetto fai-da-te ancora precedente. Tuttavia, ho deciso di includere la visualizzazione dell'umidità relativa tra gli altri elementi visualizzati in questo progetto.

Il DHT22 è leggermente più preciso del DHT11. Quindi, il costo leggermente più alto del DHT22 sembrava ragionevole. Entrambi i dispositivi DHT contengono sensori di umidità capacitivi. Questi sensori di umidità sono ampiamente utilizzati per progetti industriali e commerciali. Sebbene non siano estremamente precisi, sono in grado di funzionare a temperature relativamente elevate e hanno una ragionevole resistenza alle sostanze chimiche presenti nell'ambiente circostante. Misurano i cambiamenti in un dielettrico prodotti dall'umidità relativa dell'ambiente circostante. Fortunatamente, le variazioni di capacità sono essenzialmente lineari in relazione all'umidità. L'accuratezza relativa di questi sensori può essere facilmente rilevata posizionandone due uno accanto all'altro. Fatto questo si vedrà che per l'umidità relativa differiscono al massimo di 1 o 2 punti percentuali.

I sensori DHT11/22 possono essere facilmente sostituiti tra loro. A seconda dei vincoli di costo, se presenti, è possibile scegliere uno dei due sensori. Entrambi sono disponibili in pacchetti simili a 4 pin intercambiabili e, come vedremo a breve, saranno necessari solo 3 dei 4 pin su entrambi i pacchetti per costruire il display dell'umidità e della temperatura del desktop presentato qui. Sebbene siano necessari solo tre pin per l'uso, i quattro pin forniscono ulteriore stabilità quando questi sensori DHT vengono posizionati/montati su una breadboard.

In modo simile ho considerato sia gli RTC DS1307 che DS3231. Poiché la temperatura ambiente può influenzare il DS1307, ho optato per il DS3231. Sebbene il DS1307 possa essere utilizzato opzionalmente. In una serie di test che confrontano gli RTC in relazione alla deriva (cioè sbagliando l'ora), il DS3231 è risultato più preciso, ma la differenza nell'utilizzo di entrambi i sensori non è così grande.

Naturalmente, se puoi connetterti facilmente a Internet nel tuo progetto, puoi scaricare direttamente l'ora e quindi non hai bisogno di un orologio in tempo reale. Tuttavia, questo progetto presuppone che non sia disponibile una connessione Internet semplice ed è progettato per funzionare senza.

Se stai usando una "verruca da muro", il consumo di energia extra potrebbe non essere di importanza schiacciante. Tuttavia, se si alimenta il display da una batteria, il consumo energetico ridotto estenderà la durata della batteria. Pertanto, questo Instructable e lo schizzo sottostante forniscono un modo, utilizzando il pulsante "Sinistra" sullo schermo LCD, per attivare e disattivare la retroilluminazione per ridurre il consumo energetico.

Come si vedrà in questo Instructable, il progetto richiede relativamente pochi componenti poiché la maggior parte del "sollevamento pesante" viene eseguita dai sensori e dallo schizzo.

Preferisco utilizzare una piattaforma sperimentale per molti dei miei progetti, in particolare per quelli che finiranno come display, poiché questa piattaforma consente di gestire e visualizzare i progetti come una singola unità.

Passaggio 1: gli elementi richiesti

Gli elementi richiesti
Gli elementi richiesti

Gli elementi richiesti sono:

- Una piattaforma sperimentale, sebbene il progetto possa essere realizzato senza di essa, facilita la visualizzazione della costruzione finale.

- Una breadboard da 400 punti di fissaggio

- Uno schermo LCD con pulsanti

- Un sensore digitale di temperatura e umidità DHT22 (AOSONG AM2302).

- Un orologio in tempo reale, ho selezionato il DS3231 (tuttavia, un DS1307 funzionerà con il codice fornito qui, assicurati solo che i pin GND, VCC, SDA e SCL siano collegati in modo simile al DS3231. Cioè, il Il DS1307 può essere sostituito dal DS3231 semplicemente assicurandosi che i pin appropriati sul DS1307RTC corrispondano alle prese appropriate sulla breadboard, i cavi di collegamento Dupont non dovranno essere spostati.) La differenza principale tra questi due RTC è la loro precisione, poiché il DS1307 può essere influenzato dalla temperatura ambiente che può modificare la frequenza del suo oscillatore a bordo. Entrambi gli RTC utilizzano la connettività I2C.

- Testate femmina da saldare sullo schermo LCD. Ho usato intestazioni femmina a 5 e 6 pin (sebbene se selezioni lo scudo alternativo, mostrato anche qui, non saranno necessarie intestazioni). I pin dell'intestazione maschio possono essere sostituiti per le prese e, se utilizzati, sarà necessario modificare solo il genere di un lato di alcuni dei cavi di collegamento Dupont.

- Cavi di collegamento Dupont

- Un Arduino UNO R3 (al posto dell'UNO possono essere utilizzati altri Arduino, ma dovrebbero essere in grado di emettere e gestire 5v)

- Un cavo USB per caricare il tuo schizzo da un computer all'UNO

Un dispositivo come una "verruca da muro" o una batteria per alimentare l'UNO dopo che è stato programmato. Potresti avere molti degli articoli necessari sul tuo banco da lavoro, anche se potresti aver bisogno di acquistarne alcuni. Se hai i primi, puoi iniziare mentre aspetti gli altri. Tutti questi articoli sono prontamente disponibili online attraverso siti come Amazon.com, eBay.com, Banggood.com e molti altri

Passaggio 2: preparazione della piattaforma sperimentale

Preparazione della piattaforma sperimentale
Preparazione della piattaforma sperimentale
Preparazione della piattaforma sperimentale
Preparazione della piattaforma sperimentale
Preparazione della piattaforma sperimentale
Preparazione della piattaforma sperimentale

La piattaforma sperimentale viene fornita in un sacchetto di vinile contenente un foglio di plexiglas da 120 mm x 83 mm e un piccolo sacchetto di plastica contenente 5 viti, 5 distanziatori in plastica (distanziatori), 5 dadi e un foglio con quattro paraurti, piedini autoadesivi. Saranno necessari tutti e quattro i paraurti, così come quattro ciascuno degli altri elementi. C'è una vite extra, un distanziatore e un dado che non sono necessari. Tuttavia, la borsa non contiene istruzioni.

Inizialmente il sacchetto in vinile viene aperto per rimuovere il foglio di plexiglas e la piccola borsa. Il foglio di plexiglas è rivestito su entrambi i lati con carta per proteggerlo durante la movimentazione e il trasporto.

Il primo passo è staccare la carta su ciascun lato della piattaforma e rimuovere i due fogli. Una volta rimossa la carta da ogni lato, sono facilmente visibili i quattro fori per il montaggio dell'Arduino sulla piattaforma. È più semplice se dopo aver staccato la carta, il foglio acrilico deve essere posizionato con i quattro fori a destra e i fori più vicini tra loro e vicino a un bordo del pannello acrilico, verso di te (come si può vedere nell'immagine allegata).

Passaggio 3: montare Arduino UNO o Clone sulla piattaforma sperimentale

Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale
Montaggio di Arduino UNO o Clone sulla piattaforma sperimentale

La scheda Arduino UNO R3 ha quattro fori di montaggio. I distanziatori trasparenti sono posizionati tra il lato inferiore di un UNO R3 e il lato superiore del pannello acrilico. Lavorando sulla mia prima scheda sperimentale ho commesso l'errore di presumere che i distanziatori fossero rondelle che dovrebbero essere posizionate sotto la scheda in plexiglas per tenere in posizione i dadi - non dovrebbero. I distanziatori sono posizionati sotto la scheda Arduino UNO, attorno alle viti dopo che le viti sono passate attraverso i fori di montaggio di UNO. Dopo aver attraversato la lastra, le viti passano attraverso i distanziatori e poi attraverso i fori della lastra in plexiglas acrilico. Le viti sono terminate dai dadi racchiusi nella piccola confezione. Le viti e i dadi devono essere serrati per assicurare che Arduino non si muova durante l'uso.

Ho trovato più semplice iniziare con il foro più vicino al pulsante di ripristino (vedi foto) e procedere in senso orario attorno ad Arduino. L'UNO è fissato alla scheda, come ci si potrebbe aspettare, utilizzando una vite alla volta.

Avrai bisogno di un piccolo cacciavite a croce per girare le viti. Ho trovato che una presa per tenere i dadi era abbastanza utile, anche se non necessaria. Ho usato i driver realizzati da Wiha e disponibili su Amazon [un Wiha (261) PHO x 50 e un Wiha (265) 4.0 x 60]. Tuttavia, qualsiasi piccolo cacciavite a croce dovrebbe funzionare senza problemi e, come notato in precedenza, non è realmente necessario un cacciavite per dadi (sebbene renda il montaggio più rapido, facile e sicuro).

Passaggio 4: montaggio di una mezza misura, 400 punti di fissaggio, breadboard sulla piattaforma sperimentale

Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale
Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale
Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale
Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale
Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale
Montaggio di una taglierina di mezza misura, 400 punti di fissaggio, sulla piattaforma sperimentale

La parte inferiore della breadboard di mezza misura è ricoperta di carta premuta su un supporto adesivo. Rimuovere questa carta e premere la breadboard, con il supporto adesivo ora esposto, sulla piattaforma sperimentale. Dovresti provare a posizionare un lato della breadboard parallelo al lato di Arduino a cui è più vicino. Basta premere il lato autoadesivo della breadboard sulla tavola acrilica.

Quindi, capovolgi la piattaforma e monta i quattro piedini in plastica inclusi sui quattro angoli della parte inferiore della piattaforma.

Qualunque sia la piattaforma sperimentale che usi, quando hai finito dovresti avere sia l'Arduino UNO R3 che una breadboard di dimensioni ridotte montate su di essa, e quattro piedini sul lato inferiore per consentire di posizionare la piattaforma e la breadboard su qualsiasi superficie piana senza rovinare quella superficie, fornendo al contempo un fermo supporto all'assemblea

Passaggio 5: lo schermo LCD

Lo schermo LCD
Lo schermo LCD
Lo schermo LCD
Lo schermo LCD
Lo schermo LCD
Lo schermo LCD

Puoi usare uno scudo, come quello mostrato in precedenza con i pin già saldati. Tuttavia, tale schermatura ha pin anziché prese, quindi i cavi della breadboard Dupont devono essere scelti di conseguenza. In tal caso, è sufficiente montarlo sull'UNO. Durante il montaggio assicurarsi di montare lo schermo con l'orientamento corretto, con i piedini su ciascun lato dello schermo allineati con le prese sull'UNO.

Se usi uno shield, come quello che uso qui, senza pin già saldati in posizione. Mettere da parte i connettori femmina con 5 e 6 prese, rispettivamente, da saldare sullo schermo. Le prese di queste intestazioni dovrebbero trovarsi sul lato dei componenti dello scudo quando le si salda (vedi fotografie). Una volta saldati gli header, si può procedere in modo analogo a quello per uno shield acquistato con i pin già saldati. Ho scelto di utilizzare i cavi M-M Dupont rispetto ai cavi M-F, poiché generalmente preferisco i cavi M-M. Tuttavia, è possibile scegliere di utilizzare i pin sullo schermo LCD e non i connettori femmina, nel qual caso è sufficiente modificare il genere su un lato dei cavi di collegamento Dupont.

Qualunque sia lo scudo con cui scegli di iniziare, quando finisci dovresti avere uno scudo montato sopra un Arduino UNO. O lo scudo, quello con i pin pre-saldati o quello che hai saldato da solo con le intestazioni femminili (o le intestazioni maschili se lo desideri) utilizza un bel po' di pin digitali. I pin digitali da D0 a D3 e da D11 a D13 non vengono utilizzati dalla schermatura, ma non verranno utilizzati qui. La presa analogica A0 viene utilizzata dallo scudo per contenere i risultati delle pressioni dei pulsanti. Pertanto, i pin analogici da A1 a A5 sono liberi di utilizzare. In questo progetto, per lasciare completamente libero il display LCD, ho utilizzato solo le prese analogiche e non ho utilizzato ingressi digitali.

Ho trovato più semplice utilizzare una breadboard con intestazioni maschili per contenere le intestazioni femminili per la saldatura (vedi fotografie).

Il pin digitale 10 viene utilizzato per il display retroilluminato dell'LCD e lo useremo nel nostro schizzo per controllare l'alimentazione dell'LCD quando il display non è in uso. In particolare, utilizzeremo il pulsante "SINISTRA" sullo scudo per attivare e disattivare la retroilluminazione per risparmiare energia quando il display non è necessario.

Passaggio 6: utilizzo del sensore di umidità e temperatura DHT22

Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22
Utilizzo del sensore di umidità e temperatura DHT22

Inserire i quattro pin del DHT22 nella breadboard di dimensioni ridotte, montando così il sensore sulla breadboard.

Ho numerato i pin DHT22 da 1 a 4 come mostrato nella fotografia inclusa. L'alimentazione al sensore viene fornita tramite i pin 1 e 4. In particolare, il pin 1 fornisce l'alimentazione +5v e il pin 4 viene utilizzato per la messa a terra. Il pin 3 non viene utilizzato e il pin 2 viene utilizzato per fornire le informazioni necessarie per il nostro display.

Collegare i tre pin utilizzati sul DHT22, utilizzando le relative prese associate sulla breadboard, per connettersi allo shield e quindi all'Arduino UNO come segue:

1) Il pin 1 del sensore va alla presa di alimentazione 5v dello shield, 2) Il pin 4 del sensore va a uno dei connettori GND dello shield, 3) Il pin 2 del sensore, il pin di uscita dati, va alla presa analogica A1 (confronta questo con il mio precedente Instructable dove andava alla presa digitale 2 sullo scudo). Ho usato una presa analogica anziché digitale qui per lasciare lo schermo LCD completamente libero. È utile ricordare che tutti i pin analogici possono essere utilizzati anche come pin digitali. Anche se qui A0 è riservato ai pulsanti dello scudo.

Il sensore DHT22 può fornire informazioni aggiornate solo ogni 2 secondi. Quindi, se si collega il sensore più di una volta ogni due secondi, come può accadere qui, si possono ottenere risultati leggermente datati. Per le case e gli uffici questo non è un problema, soprattutto perché l'umidità relativa e la temperatura vengono visualizzate come numeri interi senza decimali.

Passaggio 7: aggiunta dell'orologio in tempo reale (RTC)

Aggiunta dell'orologio in tempo reale (RTC)
Aggiunta dell'orologio in tempo reale (RTC)
Aggiunta dell'orologio in tempo reale (RTC)
Aggiunta dell'orologio in tempo reale (RTC)
Aggiunta dell'orologio in tempo reale (RTC)
Aggiunta dell'orologio in tempo reale (RTC)

Ho usato il lato a sei pin del DS3231, anche se sono necessari solo quattro pin. Questo per fornire ancora più stabilità a questo RTC quando è collegato alla breadboard. Un'immagine allegata mostra la batteria CR2032 che deve essere collegata all'RTC DS3231 per consentirgli di conservare le informazioni anche quando è scollegata da un'altra fonte di alimentazione. Sia il DS1307 che il DS3231 accettano la stessa batteria a bottone CR2031.

Le connessioni per il DS3231 sono le seguenti:

- GND sul DS3231 a GND sullo schermo LCD

- VCC sul DS3231 a 5V sullo schermo LCD

- SDA sul DS3231 ad A4 sullo schermo LCD

- SCL sul DS3231 ad A5 sullo schermo LCD

Al termine, i cavi Dupont saranno collegati A1 (per il DHT22) e A4 e A5 per i pin SDA e SCL dell'RTC.

Ho anche incluso un'immagine del DS1307 opzionale che mostra i pin che dovrebbero essere collegati. Sebbene non si possa leggere dalla foto, il piccolo IC più vicino ai "buchi" non saldati è il DS1307Z cioè l'RTC. L'altro piccolo IC che si vede è una EEPROM che può essere utilizzata per l'archiviazione; non è usato nello schizzo qui sotto.

Entrambi gli RTC consumano pochissima energia, nell'intervallo dei nanoampere, quindi gli orologi in tempo reale manterranno le informazioni e non si esauriranno se vengono alimentati solo con batterie interne. Probabilmente è meglio cambiare la batteria a bottone ogni anno, anche se il consumo di corrente è così basso per entrambi gli RTC che potrebbero mantenere la carica per diversi anni.

Passaggio 8: lo schizzo

Questo sito rimuove i simboli di minore e maggiore di e il testo tra questi simboli. Quindi non mi sono stancato di includere lo schizzo nel testo qui. Per vedere lo schizzo come scritto, scaricare il file di testo allegato. I secondi non vengono mostrati nello schizzo, ma vengono inviati ai buffer nascosti sull'LCD 1602 appena oltre i buffer di visualizzazione. Pertanto, se si desidera visualizzare i secondi, è sufficiente scorrere continuamente il display a sinistra e poi a destra.

Nello sketch ho incluso un file header per il DS3231, e definisco un oggetto del tipo DS3231. Questo oggetto viene utilizzato nello schizzo per recuperare periodicamente il giorno della settimana, il mese, il giorno e le informazioni sull'ora richieste. Queste informazioni per giorno della settimana, mese e giorno del mese vengono assegnate alle variabili char, quindi i risultati memorizzati in queste variabili vengono stampati sul display LCD. L'ora viene stampata per intero, ma la porzione di tempo in secondi, come discusso in precedenza, viene inviata ai buffer di 24 caratteri non visualizzati sull'LCD 1602, appena oltre i caratteri visualizzati. Come notato sopra, vengono visualizzati solo le ore ei minuti e i secondi sono nascosti nella parte iniziale di questi 24 buffer di caratteri.

La retroilluminazione LCD può essere attivata quando necessario e disattivata in caso contrario. Poiché il display è ancora attivo anche con la retroilluminazione spenta, può essere letto con una luce forte anche se spento. Cioè, non è necessario che la retroilluminazione sia attiva per leggere le informazioni presentate sul display LCD, che continua ad aggiornarsi anche se disattivato.

Nello schizzo vedrai la linea:

RTC.adjust(DateTime(2016, 07, 31, 19, 20, 00));

Questo utilizza un oggetto del tipo RTC_DS1307 e ci consente di impostare facilmente la data e l'ora correnti. Immettere la data e l'ora appropriate su questa riga quando si esegue lo schizzo. Ho scoperto che l'inserimento di un minuto dopo l'ora corrente, mostrata sul mio computer, ha comportato un'approssimazione abbastanza vicina all'ora effettiva (l'IDE impiega un po' di tempo per elaborare lo schizzo e circa 10 secondi in più per l'esecuzione dello schizzo).

Passaggio 9: visualizzazione del progetto assemblato

Visualizzazione del progetto assemblato
Visualizzazione del progetto assemblato

Ho montato il mio progetto assemblato su un porta biglietti da visita (vedi foto). Il porta biglietti da visita era disponibile nella mia collezione di "cianfrusaglie". Dato che ho molti di questi supporti, ne ho usato uno qui. Tuttavia, il progetto assemblato potrebbe essere visualizzato altrettanto facilmente su un supporto per telefono cellulare, ecc. Dovrebbe funzionare anche qualsiasi supporto che porti il progetto assemblato da una posizione piatta a un angolo di 30-60 gradi.

Passaggio 10: dopo

Congratulazioni, se hai seguito i passaggi precedenti ora hai il tuo display che mostra il giorno della settimana, il calendario, l'ora, l'umidità relativa e la temperatura.

Se hai trovato questo Instructable di valore, e in particolare se hai suggerimenti per migliorare o aumentare la mia conoscenza in questo settore, sarei lieto di sentirti. Puoi contattarmi a [email protected]. (sostituisci la seconda "i" con una "e" per contattarmi.

Consigliato: