progetto sveglia biologica

premessa: durante il riposo notturno, si alternano cicli di sonno profondo in cui il corpo è completamente immobile con cicli di sonno più lieve in cui il corpo si muove leggermente.

sapendo che  il risveglio ideale dovrebbe avvenire nella fase di sonno leggero, per ottenere una sensazione di maggior riposatezza, abbiamo deciso di realizzare una sveglia in grado di risvegliarci nella fase di sonno lieve anticipando la sua messa in funzione di un tempo deciso dall’ utilizzatore.

struttura hardware  basata su shield e arduino UNO

in questo progetto abbiamo portato al limite la piedinatura di Arduino UNO riuscendo a lasciare liberi solo i due pin riservati al I/O seriale(digital 0,1).

funzione dei vari piedini:

A0 = accelerometro asse x

A1= accelerometro asse Y

A2= accelerometro asse Z

A3= tasti lcd (sotto la spiegazione)

A4, 5= RTC(shield real time clock)

D0= seriale usb

D1=seriale usb

D2=piccolo tastino esterno

D3=buzzer

D4, 5, 6, 7, 8, 9= LCD shield

D 10, 11, 12, 13 = SD shield

SDA, SLC= RTC

 

tutte le schede sono state disposte a cascata sopra Arduino lasciando isolato solo l’ accellerometro

RTC shield

questa scheda munita di temporizzatore e batteria a bottone permette di sgravare il processore dai calcoli di tempo e di avere sempre l ora in tempo reale.abbiamo rimosso il ponticello sul led per liberare un piedino di arduino in quanto al nostro progetto inutile

SD /micro SD shield

questa scheda è stata utilizzata per il salvataggio dei dati dell accelerometro relativi alla notte, cosi da poterli importare in exel in qualunque pc tramite la funzione macro. i dati vengono automaticamente ordinati secondo le righe colonne di exel permettendo una facile creazione di grafici per scopi vari. viene creato un file (denominato MINUTI,ORA,GIORNO,MESE) per ogni settaggio della sveglia biologica.

LCD shield

sicuramente utile al progetto serve a visualizzare a video le informazioni relative all orologio stato della sveglia e stato della sveglia biologica (due quadratini separati sulla destra del display). inoltre dispone di tre tasti da noi settati in configurazione analogica per usare un solo pin di Arduino restituivano valori diversi in base al tasto premuto, cosi facendo pero non è possibile registrare due pressioni contemporanee.

schema dei tasti:

sinistro:nella schermata orologio-> a un click entra nel set-up dell’ ora della sveglia classica,click successivo minuti della sveglia,click successivo esce.

centrale: click sveglia classica on/off

destro:click settaggio preavviso sveglia biologica, funzionamento medesimo alla sveglia classica

esterno: click bio sveglia on /off (quando la bio sveglia è attiva si attiva anche la registrazione su sd dei movimenti dell accelerometro)

per incrementare un valore nei vari menu premere il tasto destro per decrementare il tasto centrale

se si desidera cambiare l ora della sveglia bisogna tenere premuto 3/5 sec il tasto sinistro (regolazione medesima alla sveglia classica)

 

accelerometro:

noi abbiamo scelto un accelerometro abbastanza accurato settandolo nella modalità precisa(GSEL collegato a  GND)

schema dei suoi contatti diretti ad Arduino:

VCC= 3,3 V

GND=GND

x,y,z out = A0,1,2

SLEEP= 3,3V

ST= / (vuoto)

GSEL= GND

questa scheda restituisce valori da -1023 a 1023 per ogni asse sulle uscite analogiche dedicate.

il progetto nonostante abbia richiesto una progettazione macchinosa dal punto di vista della gestione dei pin una volta scomposto in moduli indipendenti (orologio,sveglia,registrazione accelerometro,biosveglia) è risultato fattibile.

 

 

 

Lascia un commento