Página 1 de 2

Relógio de ponteiro com HD Velho !!!

MensagemEnviado: 27 Ago 2009 15:00
por Andre_Cruz
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

MensagemEnviado: 27 Ago 2009 16:06
por renatokodaira
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.

MensagemEnviado: 27 Ago 2009 16:11
por Djalma Toledo Rodrigues
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.
.

MensagemEnviado: 27 Ago 2009 16:44
por Andre_Cruz
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

MensagemEnviado: 27 Ago 2009 16:53
por 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.


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.

MensagemEnviado: 27 Ago 2009 17:29
por Andre_Cruz
renato,
Foi uma ótima idéia perguntar para o autor.
Estou aguardando uma resposta dele.

VAlew

MensagemEnviado: 27 Ago 2009 18:39
por Djalma Toledo Rodrigues
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.
.

MensagemEnviado: 27 Ago 2009 19:02
por Andre_Cruz
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

MensagemEnviado: 27 Ago 2009 19:17
por MOR_AL
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

MensagemEnviado: 27 Ago 2009 19:38
por Andre_Cruz
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

MensagemEnviado: 27 Ago 2009 19:58
por Djalma Toledo Rodrigues
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/

MensagemEnviado: 27 Ago 2009 20:25
por Andre_Cruz
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

MensagemEnviado: 27 Ago 2009 23:56
por MOR_AL
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

MensagemEnviado: 28 Ago 2009 09:05
por Andre_Cruz
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.

MensagemEnviado: 28 Ago 2009 09:19
por Andre_Cruz
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