Relógio de ponteiro com HD Velho !!!

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Relógio de ponteiro com HD Velho !!!

Mensagempor Andre_Cruz » 27 Ago 2009 15:00

Estou de férias rsrsrsrs
E não consigo ficar longe do PIC rsrrsrs

Ah tempo eu vi esse projeto, um relógio de ponteiro montado em um HD velho.

http://www.dm.ufscar.br/~waldeck/pic/hdd-clock/

Vi o diagrama esquematico, e uma foto do relógio em funcionamento onde fica as horas é usado led a cada 30º formando as 12 horas até ai tudo bem, vi também que uma ranhura é feita no disco, só não consegui entender como a imagem dos ponteiros é criada e onde deve ser fixo os leds dos ponteiros no HD, alguém pode me explicar ?

Agradeço a ajuda de todos
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor renatokodaira » 27 Ago 2009 16:06

Pelo o que entendi do que li na pagina, a superficie do disco é pintada de preto, menos na ranhura radial, onde é colado um plastico transparente para difundir a luz que provirá dos leds colados (nao fixados no disco, mas no gabinete do HD) a cada 30 graus.

Para mostrar/acender o ponteiro, ele deve acender uma cor do led RGB (nao tenho certeza se eh isso) no momento em que a ranhura com o plastico difusor passar pelo led. Cada cor representa um ponteiro (horas, minutos e sgundos)

O relogio pelo que entendi soh marca de 5 em 5 minutos e de 5 em 5 segundos porque só tem 12 leds.
Editado pela última vez por renatokodaira em 27 Ago 2009 16:13, em um total de 1 vez.
renatokodaira
Byte
 
Mensagens: 402
Registrado em: 11 Out 2006 15:15

Mensagempor Djalma Toledo Rodrigues » 27 Ago 2009 16:11

A ranhura no disco do HD é uma única.

Os Ponteiros são formados pela iluminação dessa única ranhura por LEDs de diferentes cores.

O ângulo de incidência da luz dos LEDs da o comprimento dos Ponteiros.
.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor Andre_Cruz » 27 Ago 2009 16:44

renatokodaira,

Os LED's que ficam a cada 30º são os leds que passam a informação das horas ou minutos ou segundos, pelo que eu entendi eles ficam ligados direto.
Agora os leds que vão dar a ilusão dos ponteiros das horas, minutos e segundos eu não sei onde eles são fixos.

Pior que o relógio marca de 1 em 1 segundo, da uma olhada nessa imagem:

http://www.dm.ufscar.br/~waldeck/pic/hd ... legend.jpg

O ponteiro dos segundos esta um pouco pra frente do "2" que indica mais ou menos 21 ou 22 segundos. O ponteiro do minuto esta um pouco pra frente do "6" que indica mais ou menos 31 ou 32 minutos. O ponteiro da hora esta entre o "6" e o "7" indicando 6 horas.

Djalma,
Que tem uma unica ranhura eu entendi.
Que o ponteiro é feito pela iluminação dos leds controlados pelo PIC eu também entendi.

O que eu não consegiu entender é, como acionar um led para fazer o ponteiro aparecer, por exemplo do "12" e depois movimentar ele.

Agradeço a ajuda e a paciência rsrsrss
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor renatokodaira » 27 Ago 2009 16:53

Os LED's que ficam a cada 30º são os leds que passam a informação das horas ou minutos ou segundos, pelo que eu entendi eles ficam ligados direto.


Andre, acho que nao ficam acesos continuamente, se fosse assim nao precisaria de circuito driver (os mosfets) para acende-los a partir das portas do PIC, pelo esquema. Eles devem acender (piscar) no momento apropriado. Mas o misterio pra mim eh que eles estao colocados atras do disco de cima. Caso eles realmente estejam ligados continuamente e por tras do primeiro disco, entao o driver seria para outros leds. Quem sabe em cada ponta da ranhura nao haja um led RGB para acender o ponteiro ?

Escreve pro autor, quem sabe ele esclareça o misterio.
renatokodaira
Byte
 
Mensagens: 402
Registrado em: 11 Out 2006 15:15

Mensagempor Andre_Cruz » 27 Ago 2009 17:29

renato,
Foi uma ótima idéia perguntar para o autor.
Estou aguardando uma resposta dele.

VAlew
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor Djalma Toledo Rodrigues » 27 Ago 2009 18:39

Porque esta sincronizado.

Provavélmente o Foto acoplador IR D1 T1 gera o Pulso de Sincronismo.

3 600 RPM são 60 R/s logo o tempo de cada volta é de ~ 16.667 milisegundos.
Então o intervalo de tempo de cada marcação de segundos do Relógio é de ~ 277.78 micro segundos.
.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor Andre_Cruz » 27 Ago 2009 19:02

Djalma eu estava imaginando isso ! (Suspeitei desde o Principio rsrsrsr)

No diagrama esquematico tem 2 leds de cada cor e na foto são 4.

Deixa eu ver se entendi.

É feita a leitura da rotação do disco, que é 3600 RPM com a frequencia de 60 Hz e o periodo de 16.667 mS, para a ranhura percorrer 360º ela leva 16.667 mS e cada 1º leva 46.2 uS ?

E por exemplo pra fazer o ponteiro do segundo aparecer na posição "12" supondo que a o leitor de rotação esteja na posição das 6 horas, eu devo esperar a metade do periodo que é 8,334 mS para acionar o led ?

Agradeço a ajuda, se eu estiver pensando errado por favor me indique o caminho certo.

Abraço
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor MOR_AL » 27 Ago 2009 19:17

Eu também entendi o seguinte:
Os leds acendem quando o ponteiro (ranhura) passa ou pela hora (vermelho), ou pelo minuto (verde), ou pelo segundo azul).
A necessidade de tres leds com a mesma cor e defasados de 120 graus serve para a ranhura receber a cor em qualquer posição angular.
Na verdade seriam necessários apenas dois leds acesos por vez, aqueles que ficam imediatamente antes e depois do ponteiro, mas isso necessita de mais portas, portanto não vale a pena.
Talvez houvesse a necessidade de sincronizar a rotação a cada volta com um sensor ótico. Aí o controle da rotação do ponteiro seria mais correto.
A velocidade angular mínima do ponteiro poderia ser 30rps, ou 1800rpm. O período de acendimento dos leds poderia ser de 1 / (30rps * 60) = 556us, para uma definição de 1 / 60 (1 segundo, ou 360 graus / 60 = 6 graus).
A idéia é bem legal ...
MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Mensagempor Andre_Cruz » 27 Ago 2009 19:38

MOR_AL,

Tem três leds vermelhos por exemplo (para fazer um ponteiro apenas), defazado cada um em 120º, ou seja:

1) Temos um led na posição 0 hora.
2) Temos um led na posição 4 horas.
3) Temos um led na posição 8 horas.

A rotação é medida por um sensor de barreira construido com led de infravermelho (o sensor ótico que você se refere).

Com o furo é feito na ranhura, supondo que o sensor fique exatamente na posição 0 hora, para mostrar o ponteiro nessa posição, toda vez que chegar o sinal do sensor, deve ser acionado o led, e pra eu fazer o ponteiro movimentar ?
Até chegar na posição 4 horas ?

Para eu mover o ponteiro em 1 segundo ou 6º basta eu esperar 1/(60 RPS * 60) = 0,0000278 S ou 27.8 uS ?

Agradeço a ajuda de todos
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor Djalma Toledo Rodrigues » 27 Ago 2009 19:58

4) Drill index hole: Drill a ¼ inch hole near the edge of the 3rd platter. The infrared beam sensor will be positioned around this last platter so make sure that the index hole is in a location that will trip the beam.

5) Install the LEDs: Mark and drill holes in the outer case housing for LEDs, I used 12 in total, 6 blue and 6 red. More will give better hand visibility but 12 seems adequate.

http://alan-parekh.com/projects/hard-drive-clock/
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor Andre_Cruz » 27 Ago 2009 20:25

Encontrei esse:

www.ian.org/HD-Clock/

Que detalha um pouco melhor como deve ser posicionado os led's (Hardware).

http://alan-parekh.com/projects/hard-drive-clock/

Detalha bem o hardware e o software.

Acho que vou começar a mexer com algo rsrsrs

Agradeço a ajuda
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor MOR_AL » 27 Ago 2009 23:56

Andre_Cruz escreveu:MOR_AL,


Com o furo é feito na ranhura, supondo que o sensor fique exatamente na posição 0 hora, para mostrar o ponteiro nessa posição, toda vez que chegar o sinal do sensor, deve ser acionado o led, e pra eu fazer o ponteiro movimentar ?
Até chegar na posição 4 horas ?

Para eu mover o ponteiro em 1 segundo ou 6º basta eu esperar 1/(60 RPS * 60) = 0,0000278 S ou 27.8 uS ?

Agradeço a ajuda de todos

André.
O sensor só serve para manter a rotação do disco correta e sincronizá-la.
Um timer mede o período de rotação. O correto, por exemplo é de 60rps, ou T = 1/60 = 16,7ms. Este período foi escolhido para que a vista humana não perceba as piscadas dos leds.
Para poder identificar os segundos.
Sabe-se que cada rotação possui 60 segundos. Então o período correspondente a cada segundo seria de:
Ts = período de uma rotação, dividido pelo número de segundos por rotação. Ts = (1/60) / 60 = 1/3600 = 278us e não 27,8us como você calculou.
Faz-se um contador de períodos de 278us. Inicía-se a contagem cada vez que o risco do disco passar pelo sensor, em zero graus. Ao final de uma volta, o período deveria ser T (16,7ms). O contador deveria medir 60 períodos de 278us. Digamos que o contador mede 61 (períodos). Logo a rotação do motor está lenta. O controle deve aumentar a rotação.
Se o contador medir 59 períodos de 278us, a rotação do disco está rápida, devendo ser reduzida.
Com isso você acerta a velocidade de rotação do disco, ok?
Repare que o contador inicia em zero graus, por exemplo na posição 0 horas, ou 12 horas, ou 0 minutos, ou 60 minutos, ou 0 segundos, ou 60 segundos. O sensor deve estar lá.
Como na velocidade correta (uma rotação em cada 1/60 de segundo), o contador deve contar 60 períodos para cada rotação, significa que cada valor do contador corresponderá a uma posição do ponteiro dos segundos.
Para marcar a posição de 18 segundos, bastaria acender o led quando o contador chegar a 18 e apagá-lo quando chegar a 19.
O mesmo procedimento seria usado para indicar os minutos e horas. No caso das horas, cada 5 contagens corresponderia a uma hora (60/5 = 12 horas).
MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Mensagempor Andre_Cruz » 28 Ago 2009 09:05

MOR_AL,

Entendi o principio de funcionamento, muito obrigado !
Custei a visualizar que os leds ficam, de uma tal maneira que iluminem a parte de baixo do disco, nas fotos parece estar na mesma direção da ranhura.

Eu não vou controlar a velocidade do disco, vou deixar a placa do próprio HD acionar ele(pelo menos por enquanto). Como a velocidade nunca vai ser constante (eu acho) ainda não testei, estava pensando em fazer o PIC ler o periodo, e de acordo com o periodo ajustar o valor do timer.

Realmente eu comi bronha na notação cientifica rsrrsss
Você esta certo 278 uS e não 27.8 uS como eu disse.
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Mensagempor Andre_Cruz » 28 Ago 2009 09:19

MOR_AL,

"A velocidade angular mínima do ponteiro poderia ser 30rps, ou 1800rpm. O período de acendimento dos leds poderia ser de 1 / (30rps * 60) = 556us, para uma definição de 1 / 60 (1 segundo, ou 360 graus / 60 = 6 graus). "

Se eu quiser andar o ponteiro de 3º em 3º por exemplo eu calculo assim:

1/(30RPS * 120) = 278 uS

Substitui o 60 por 120 por que encontrei ele nessa equação:

360º / 120 = 3º

Muito obrigado
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Próximo

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x