Pages: [1] 2 3   Go Down
Author Topic: Led clock  (Read 2009 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Uff... non è ancora finito lato software ma funziona...  smiley-wink
Domani vi do qualche dettaglio in più

« Last Edit: April 23, 2013, 04:08:25 am by leo72 » Logged


0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5914
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

carinissimo
molti che ho visto sono in binario, ma diventano poi troppo difficili da leggere.
Copiero' parte del codice, e lo modifichero', senza rilasciare nulla. A limite una foto nel cartone  smiley-yell
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Rilascerò il firmware già compilato così non potrai spacciarlo per tuo  smiley-yell
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Grande Leo, la Svizzera ha emesso un mandato di cattura internazionale "LEO_Clock dead or alive"  smiley-grin ormai stanno perdendo il controllo del tempo.... Concordo con Test e.... con qualcun altro  smiley-wink I LED in colonna sono tranquillamente leggibili rispetto al binario, dove non si capisce niente di niente, nemmeno ad impararlo a memoria smiley-eek-blue
Un solo suggerimento: nella versione definitiva io cambiarei le colorazioni dei LED a gruppi di due ed il 5 diverso, secondo me la leggibilità ne guadagnerebbe molto. P.es. vvrrgrrvv o vvrrgvvrr, quindi gruppi di due ed il centrale di colore diverso, naturalmente nella combinazione di colori che preferisci. COMPLIMENTI.... Riiiicolaaaaa smiley-lol
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
God Member
*****
Karma: 0
Posts: 689
AHHAH
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bello, volevo farne uno pure io ma del tipo random, o come il tuo ma disponendo i led in cerchi concentrici, giusto per incasinare la lettura smiley

alla fine che componenti hai usato, solo l'atmega?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@Michele:
I led sono a discrezione dell'utente, ognuno si mette la combinazione che preferisce, basta poi cambiare le corrispondenti resistenze in serie.

Inizialmente era nato come orologio con i colori mescolati ma poi mi sono reso conto che sarebbe stato un bel casino leggere l'orario. Ho scartato anche i led blu perché non li ho trovati a buon mercato (1 blu mi costava quanto 4 di quegli altri) ed i led arancioni perché con un colore troppo simile al rosso. Alla fine i vecchi rosso/verde/giallo sono i migliori  smiley-wink

Tra poco pubblico lo schema, al codice sto ancora lavorando.
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 130
Posts: 9516
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Leo, a quando la realizzazione di un propeller clock ? smiley

Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

bello, volevo farne uno pure io ma del tipo random, o come il tuo ma disponendo i led in cerchi concentrici, giusto per incasinare la lettura smiley

alla fine che componenti hai usato, solo l'atmega?
Quelli random richiedono di contare dei led che mentre li stai contando possono anche cambiare combinazione. Sono molto belli, sopratutto se li fai con i led RGB. Uwe ne ha fatto uno molto bello l'anno scorso, l'ho visto dal vivo.

Questo qui lo reputo più semplice perché la divisione in decine ed unità facilità il conteggio. Alla fine, l'orario lo leggi sulle ore:minuti, i secondi sono optional e lasciati più per la scenografia che per altro, fanno vedere un pò di animazione  smiley-wink

Come "cuore" ho usato un Atmega328 (ma dovrebbe bastare anche un 168, penso) ed un PCF8563 come RTC. Ho usato un modulo RTC esterno perché volevo un orario preciso nonché facilmente mantenibile in caso l'alimentazione se ne vada: la sua batteria CR2032 lo alimenterà per anni in caso di assenza di alimentazione. Se dovevo alimentare il 328 avrei dovuto prevedere una batteria più grossotta nonché tutte le problematiche legate al risparmio energetico che non potevo attivare perché avrei sfalsato l'orario mantenuto dalla swRTC.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@astro:
quando inizierò a lavorare con i motori  smiley-wink
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@ Astro: spiega, è una battuta, un effetto grafico o qualcosa che si può realizzare sul serio, non vedo il video perché la chiavetta mi farebbe disperare, quindi mi piacerebbe saperne di più.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Te lo spiego io. Si ha un circuito su cui sono montati i led che è fissato ad un motore. Si accende il motore e lo si fa girare ad una velocità prefissata, poi l'elettronica a bordo accende i led a seconda della posizione in cui si trova il circuito. In questo modo durante la rotazione, grazie alla persistenza della visione, l'occhio umano "assembla" tutte quelle accensioni programmate ricostruendo un'immagine che sembra comparire in aria.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Un paio di foto del prototipo montato.
Ho scelto una millefori grande per poter mettere i led da 10 mm che ho scelto per l'orologio. Si può anche realizzare l'orologio usando led di 5 mm, riducendo l'ingombro e permettendo di montarlo all'interno di un contenitore, dividendo il circuito su 2 schede.


* led_clock_fronte.jpg (210.98 KB, 1024x768 - viewed 45 times.)

* led_clock_retro.jpg (374.49 KB, 1024x768 - viewed 79 times.)
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Te lo spiego io. Si ha un circuito su cui sono montati i led che è fissato ad un motore. Si accende il motore e lo si fa girare ad una velocità prefissata, poi l'elettronica a bordo accende i led a seconda della posizione in cui si trova il circuito. In questo modo durante la rotazione, grazie alla persistenza della visione, l'occhio umano "assembla" tutte quelle accensioni programmate ricostruendo un'immagine che sembra comparire in aria.
smiley-eek grazie.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22817
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Qui il circuito.
I componenti sono semplici. Si tratta di un Atmega328P (dovrebbe bastare anche un Atmega168P), un PCF8563 come RTC, 5 shift register 74HC595 per pilotare altrettanti ULN2803 a cui sono collegati i 39 led da 10 mm.
Le resistenze in serie ai led sono da mettere da 220 ohm sui led rossi e da 200 sui led verdi e gialli. In questo modo si ha una corrente di circa 15 mA per led. Il progetto è stato fatto per NON pilotare i led in multiplexing: avrei risparmiato componenti e collegamenti ma avrei avuto una minor luminosità dei led. Siccome il tutto è alimentato da un alimentatore esterno, ho scelto di alimentare i led singolarmente.

E' prevista una fotoresistenza che, se abilitata da codice, comanda la luminosità dei led via PWM in modo da abbassarla quando la stanza ha poca luce (per evitare l'effetto faro negli occhi quando è buio) o aumentarla quando c'è molta luce (per favorire la vista dei led). Il pilotaggio dei led è fatto con un transistor PNP BDX54 alettato per sicurezza, così da comandare in tutta tranquillità i led anche nel caso in cui siano quasi tutti accesi (può capitare alle 19:59:59, dove abbiamo 38 led accesi).

L'alimentazione è fornita da un alimentatore a 5V che fornisca almeno 1A di corrente (il circuito consuma qualcosa di meno ma è bene stare tranquilli). Io ne ho acquistato uno da 5V/2,5A.

Ho scelto il PCF8563 per "simpatia", lo preferisco al DS1307. Ho fatto uscire un segnale ad 1Hz sul suo pin CLKOUT che ho collegato ad un pin dell'Atmega e che uso per aggiornare l'orario, in modo da non interrogare in maniera frenetica e continuativa l'RTC: l'orario esatto lo prelevo solo 1 volta ogni ora.

Ci sono 3 pulsanti per la regolazione dell'orologio.

EDIT: schema aggiornato


* Led_clock.png (89.66 KB, 1959x2120 - viewed 21 times.)
« Last Edit: April 24, 2013, 03:53:26 am by leo72 » Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Alcune osservazioni sullo schema:
il pin 10 dell'ULN2803 va collegato al positivo solo per attivare i diodi interni da mettere in parallelo a carichi induttivi (relé), quindi lo dovresti scollegare e lasciare libero
il sistema dei due diodi sull'alimentazione dell'RTC provoca due scompensi: un 4148 sulla batteria porta all'IC solo 2,3-2,4V (pochi), mentre lo stesso diodo sui 5V gliene porta 4,3-4,4 (troppi); dovresti sostituire il 4148 della bat con uno schottky, in modo da perdere solo 0,2-0,3 e mettere almeno due 4148 sui 5V in modo da far passare circa 3,6-3,8V; però non conosco le specifiche dell'RTC che hai usato, magari lavora da 2 a 5V, allora tutto va bene, ma comunque sia quello sulla batteria lo cambierei in ogni caso, 0,4V di differenza saranno un paio di anni di autonomia smiley
Usi l'ADC, devi mettere almeno il C da 100nF sull'ARef, visto che non ti serve precisione puoi invece evitare i disaccoppiamento dell'AVcc
« Last Edit: April 23, 2013, 06:03:28 am by Michele Menniti » Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Pages: [1] 2 3   Go Up
Jump to: