News Printer (parte 2)

Funzionamento:

L’ algoritmo da noi ideato apre una connessione ad un server e si collega a una determinata pagina specificata in formato XML.In questo caso viene aperta una connessione alla Homepage de “ilGiornale.it” (http://www.ilgiornale.it) e inizialmente vengono estratti i titoli delle varie notizie e visualizzati su monitor.
Tutto ciò è stato realizzato seguendo un esempio chiamato “Twitter client”,algoritmo che partendo da una determinata posizione estraeva l’ultimo tweet.
Una volta riusciti a visualizzare il tutto su monitor,operazione che ci ha tenuti impegnati per qualche giorno, abbiamo  reindirizzato  l’output (ovvero le nostre notizie) sulla matrice di LED.Anche per tale operazione abbiamo seguito come esempio l’algoritmo presente sul sito del Sig. Luca Dentella.
Qui di seguito è riportato l’indirizzo link della pagina contenente i vari passaggi per connettere ed utilizzare il display in 5 passaggi (http://www.lucadentella.it/category/ledmatrix_ht1632c/).
Mentre qui di seguito è riportato l’indirizzo link che riporta al codice da noi usato come guida (https://github.com/lucadentella/LedMatrix/blob/master/_4_Scroll/_4_Scroll.ino).
Questo algoritmo visualizza su display in modalità Scrolling (ovvero scorrimento) tutto ciò che viene scritto su monitor seriale e inviato al micro conduttore.
Ciò è possibile grazie ad una libreria chiamata “airponte.h”,qui di seguito l’indirizzo link dove trovare il codice riferente ad essa (https://github.com/lucadentella/LedMatrix/blob/master/_4_Scroll/aipointe.h).
La libreria contiene i caratteri ascii dal 33 al 127 compresi,codificati in sequenza binaria.

Successivamente abbiamo preso i due algoritmi e “fusi” in uno solo.

Per esigenze dell’azienda abbiamo dovuto interrompere il progetto,di seguito è riportato ciò che abbiamo fatto.
Stiamo programmando delle schede di controllo di stampanti 3D tramite un programmatore connesso con USB,

News Printer (Parte 1)

Salve a tutti,prima di tutto ci presentiamo.
Siamo Davide Anfuso e Simone Pozzi dell I.S.I.S Facchinetti di Castellanza (3 anno).
E’ la nostra prima esperienza di alternanza qui alla Futura Elettronica

Il nostro progetto parte dall’idea dei display che fanno scorrere le notizie,per esempio in stazione dove troviamo display che ci tengono sempre aggiornati sugli orari dei treni oppure i display delle borse,che ci comunicano le varie quotazioni di ogni borsa.Ecco,il nostro obbiettivo è realizzare un display che visualizzi le notizie dei principali quotidiani,siti shop ecc… sempre aggiornate.

Componenti utilizzate:

Scheda Arduino Uno      

 

Ethernet Shield

Ethernet Shield

Matrice di LED Rossi 32x8

Matrice di LED Rossi 32×8

Come base abbiamo usato una scheda Arduino uno connessa ad una Ethernet Shield. Alla scheda di rete è stata connessa una matrice 32 x 8 a LED Rossi come prima prova,successivamente ne verranno aggiunte altre 3.
N.B:
La matrice LED necessita di 5V per funzionare,si possono mandare anche tramite Arduino,connettendo i vari pin come vedremo di seguito.

Dalla foto a sinistra possiamo notare come i pin 3,4,5 della Ethernet shield siano connessi rispettivamente con i pin CS1,WR,DATA della matrice LED e i pin GND e quello dei 5V della Ethernet shield siano connessi rispettivamente con i pin GND e +5V della matrice LED.

 

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.