Arduino: Come costruire una clessidra digitali con LED

In questo progetto costruirai una clessidra digitale che accende un LED ogni dieci minuti. Saprai per quanto tempo stai lavorando sui tuoi progetti usando il timer incorporato di arduino.

Molto spesso quando accade un evento in uno specifico intervallo di tempo si utilizza la funzione delay(). Questa funzione è pratica ma è allo stesso tempo limitante. Quando Arduino chiama la funzione delay() blocca il suo stato corrente per la durata del ritardo. Significa che non ci sono altri ingressi o uscite quando è in attesa. I ritardi non sono molto utili per tenere traccia del tempo.

La funzione millis() aiuta a risolvere questi problemi. Tiene traccia del tempo in cui Arduino è in funzionante in millesimi di secondo.

Molto spesso dichiariamo le variabili come int. Un int è un numero a 16 bit, che contiene valori tra -32768 e 32767. Possono sembrare numeri grandi, ma Arduino conta 1000 volte al secondo con la funzione millis() e quindi esaurisci i numeri in poco tempo. Il tipo di dato long contiene un numero da 32 bit (tra -2147483648 e 2147483647). Dal momento che non è possibile tornare indietro per ottenere numeri negativi, la variabile per immagazzinare il tempo millis() è chiamata unsigned long. Quando un tipo di dato è chiamato unsigned contiene valori positivi. Un unsigend Long ti permette di contare da 0 a 4294967295. C’è abbastanza spazio per fa sì che la funzione millis() tenga traccia del tempo per almeno 50 giorni. Confrontando il valore attuale di millis(9 a un valore specifico puoi vedere se è passato o meno un certo periodo.

Quando capovolgi la clessidra, un interruttore di inclinazione cambierà il suo stato e prenderà il via un nuovo ciclo di accensione dei LED.

L’interruttore di inclinazione funzione come un normale interruttore nel senso che “apre o chiude” un circuito. Lo useremo come ingresso digitale.

Ciò che rende unico l’interruttore di inclinazione è che rileva l’orientamento. Normalmente ha una piccola cavità all’interno del corpo che contiene una sfera di metallo. Quando è inclinato in modo coretto, la sfera rotola su un lato della cavità e collega i due terminali che sono sulla breadboard chiudendo l’interruttore.

Componenti da utilizzare:

clessidra

Il diagramma elettronico:

clessidra

Il codice

Sei pronto a copiare e caricare il codice.

Conclusione

Una volta che hai programmato la scheda controlla l’ora su un orologio. Dopo che sono passati 10 minuti, il primo LED dovrebbe essersi acceso. Ogni 10 minuti si accenderà un altro LED. Alla fine di un’ora, tutte le 6 luci dovrebbero essere accese. Quando ribalti il circuito (la clessidra) e fai cambiare lo stato all’interruttore di inclinazione, le luci si spegneranno e il timer ripartirà.

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

Simone Candido è un ragazzo appassionato del mondo tech nella sua totalità. Simone ama immedesimarsi in nuove esperienze, la sua filosofia si basa sulla irrefrenabile voglia di ampliare a 360° le sue conoscenze abbracciando tutti i campi del sapere, in quanto ritiene che il sapere umano sia il connubio perfetto tra cultura umanistica e scientifica.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.