Ir ao conteúdo

Posts recomendados

Postado

Ola galera,estarei postando mais adiante ,fotos e explicaçoes q quem quiser montar o projeto,meu transformador rotativo esta funcioando e esta em fase de testes,mais estarei postando o programa pra gerar pwm 20khz,mais fotos do transformador,que é a base principal do relogio.ateeeeeee.

  • Curtir 1
  • 2 semanas depois...
Postado

então amigos,vou ter q fazer um novo primario com fio mais grosso,aquele era estão fino q esquentou e derreteu o núcleo kkkkkkkkk,a placa foi feita ,so gravar o pic e mandar ver

kkkkkkkkkkk,aguardem aiiiiiiiiiiiiiiii.Postarei o codigo em c,pra galera estudar....

  • Curtir 1
Postado

Só uma sugestão hehehhe

Você pode conseguir um transformador rotativo em um VCR abandonado, era usado para acoplar a cabeça à base.

Postado

Amigo, meu sonho é construir um desse. Estou no aguardo da conclusão do seu projeto e já fico aqui torcendo. Se possível, poste para nós uma relação de custo dos materiais necessários para seu projeto. Pelo que eu entendi, você mandou fazer a PCI?

Postado

Amigos como vão,meu transformador rotativo ta gerando pouca tensão,so acende um led

e quando ponho a placa ,devido ao peso a rotaçao cai e nao gera tensão.Vou aumentar o enrolamento do secundario ,assim elevo a tensão.Segue ai o programa para quem quiser ajudar a concluir e foto do transformador.

#include <16f628a.h>

#fuses intrc_io,nowdt,noprotect,put,nobrownout,mclr,nolvp,nocpd
#use delay(clock=4000000)
#use fast_io(
int n,hour,min,sec, ch1, ch2, chr;
int16 q;
//Tabelas de numeros

const unsigned char table[11][5] = {{ 0xC1,0xBE,0xBE,0xBE,0xC1 }, // 0
{ 0xFF,0xDE,0x80,0xFE,0xFF }, // 1
{ 0xDE,0xBC,0xBA,0xB6,0xCE }, // 2
{ 0xBD,0xBE,0xAE,0x96,0xB9 }, // 3
{ 0xF3,0xEB,0xDB,0x80,0xFB }, // 4
{ 0x8D,0xAE,0xAE,0xAE,0xB1 }, // 5
{ 0xE1,0xD6,0xB6,0xB6,0xF9 }, // 6
{ 0xBF,0xB8,0xB7,0xAF,0x9F }, // 7
{ 0xC9,0xB6,0xB6,0xB6,0xC9 }, // 8
{ 0xCF,0xB6,0xB6,0xB5,0xC3 }, //9
{ 0xFF,0xC9,0xC9,0xFF,0xFF }}; //:



#int_TIMER1 //Interrupção do Timer1
void temp1s(void) //Funcão. O que deverá ser feiro a cada interrupão.
{
q++;
sec=q/2;

if (sec==60)
{
q=0;
sec=0;
min++;
}

if (min>59)
{
min=0;
hour++;
}

if (hour>23)
{

hour=0;
}
set_timer1 (3036); //Preload do Timer1
}



void caracter(chr) { //chr contem os 2 digitos (hh,mm o ss)

ch1 = (chr/10); //pegamos as dezenas
ch2 = (chr-(ch1*10)); // aqui a unidade
for (n=0;n<=5;n++) { //imprimimos primeiro digito
output_b(table[ch1][n]);
delay_ms(1); //
}
output_b(0x40);
delay_ms(2); //pausa entre digitos

for (n=0;n<5;n++) {
output_b(table[ch2][n]);
delay_ms(1);
}
output_b(0x40);
delay_us(2);
}

void doispontos() {

for (n=0;n<5;n++) {
output_b(table[10][n]);
delay_ms(1);
}
output_b(0x40);
delay_us(2);
}

void main() {

setup_timer_1 (T1_INTERNAL | T1_DIV_BY_8); //Configuração do Timer1 para clock interno = 1E6 dividido por 8
set_timer1 (3036);
enable_interrupts(INT_TIMER1); //Habilita interrupção timer1
enable_interrupts(global); //habilita interrupcão global
set_tris_b(0);

hour = 17;
min = 03;
sec = 10;
q = 0;

while (1) {


while(!input(pin_a4)) {
//delay_ms(5);

caracter(hour);
doispontos();
caracter(min);

}
}
}

Postado

fala ae galera,obtive algum progresso


#include <16f628a.h>

#fuses intrc_io,nowdt,noprotect,put,nobrownout,mclr,nolvp,nocpd

#use delay(clock=4000000)
#use fast_io(

#bit tmr1f = 0x0c.0// flag de estouro timer1 )
int n;
int h=12;
int m=0;
int s=0;
int dezena, unidade, digito;
int16 q;
//Tabela com os digitos
const unsigned char table[11][5] = { {0xC1,0xBE,0xBE,0xBE,0xC1}, // ;"O"
{0xFF,0xDE,0x80,0xFE,0xFF}, //;"1"
{0xDE,0xBC,0xBA,0xB6,0xCE}, //;"2"
{0xBD,0xBE,0xAE,0x96,0xB9}, // ;"3"
{0xF3,0xEB,0xDB,0x80,0xFB}, // ;"4"
{0x8D,0xAE,0xAE,0xAE,0xB1}, // ;"5"
{0xE1,0xD6,0xB6,0xB6,0xF9}, // ;"6"
{0xBF,0xB8,0xB7,0xAF,0x9F}, // ;"7"
{0xC9,0xB6,0xB6,0xB6,0xC9}, // ;"8"
{0xCF,0xB6,0xB6,0xB5,0xC3}, // ;"9"
{0xFF,0xC9,0xC9,0xFF,0xFF}, // ;":"
};

#int_TIMER1 //Interrupção do Timer1
void temp1s(void) //Funcão. O que deverá ser feiro a cada interrupão.
{
q++; //Variável q incrementada a cada estouro do Timer1
set_timer1 (3036); //Preload do Timer1
}


void caracter(digito) { //chr contiene los 2 digitos (hh,mm o ss)

dezena = (digito/10); //obitemos as dezenas
unidade = (digito-(dezena*10)); //e as unidades

for (n=0;n<=5;n++) { //vamos leyendo la tabla para el primer digito
output_b(table[dezena][n]);
delay_ms(1); //160useg cada pixel horizontal
}
delay_us(500); //pausa entre digitost
output_b(0xff);
delay_us(500); //pausa entre digitos

for (n=0;n<5;n++) {
output_b(table[unidade][n]); //lo mismo con las unidades
delay_ms(1);
}
delay_us(500); //pausa entre digitos
output_b(0xff);
delay_us(500); //pausa entre digitos
}

void doispontos() { //los 2 puntos son el bit 7 del puerto

for (n=0;n<5;n++) {
output_b(table[10][n]); //lo mismo con las unidades
delay_ms(1);
}
delay_us(500); //pausa entre digitos
output_b(0xff);
delay_us(500); //pausa entre digitos
}

//void mensagem()

void main() { //bucle principal

setup_timer_1 (T1_INTERNAL | T1_DIV_BY_8); //Configuração do Timer1 para clock interno = 1E6 dividido por 8
set_timer1 (3036);
enable_interrupts(INT_TIMER1); //Habilita interrupção timer1
enable_interrupts(global); //habilita interrupcão global
set_tris_b(0);



while (1) { //esto quiere decir que es un bucle infinito
s=q/2; //A variável Q incrementa a 2Hz, então os segundos
//devem ser a metade.
if (s==60) //Se for igual a 60, reset em Q e S. M incrementa.
{
q=0;
s=0;
m++;
}

if (m>59)
{
m=0;
h++;
}

if (h>23) //Se H(horas) for maior q 23, reset. DIA DA SEMANA
{ //e DIA DO MÊS incrementam.
h=0;
}

while(!input(pin_a4)) { //esperamos al indice de rotacion
delay_ms(75);
//No EE protection
caracter(h);
doispontos();
caracter(m);
doispontos();
caracter(s);
}
}
}


Postado

na verdade o que falta e melhorar minha placa kkkkkkkk,os leds ficar muito perto do centro

e isso faz os numeros expixarem kkkkkkkkkkk,do resto ja coloquei botões ,e to pondo frase.O projeto funciona muito bem.

Postado

Fala jorgeletronico beleza.

Cara muito interessante esse projeto se desse pra você postar o circuito seria legal e mais uma coisa como você faz para sincronizar com o motor, porque tem que ser de um sincronizo bem preciso para acender os leds no momento certo.

Postado

pow caroline ,senhor nao ne kkkkkkkkkkk.Sim ,você é competente certamente ira conseguir sim.Irei postar o circuito pra todos ok.Kabça o sincronismo é feito atraves de um sensor ,um fototransistor,toda vez q passa pelo led infravermelho ele dispara a sequencia de acendimento.

O circuito é esse,so foi trocado o circuito no pino ra4,onde foi colocado um fototransistor q leva a zero o pino ra4 quando passa frente ao led ir.

Obs: Nao montem os leds proximo ao centro rotativo,pois os numeros tendem a expixarem kkkkkk. Postarei o circuito do pwm amanha,pois ainda tenho q desenhar,e postarei o codigo tbem.Ate mais gente!

Postado

vou tentar postar danilo.Amigo o custo ,tipo usei muita sucata ,tipo ventoinha,os fio pra o enrolamento das bobinas tirei de transformadores de sucata,os led sao de uma placa ,q foi descartada,so comprei o pic e a placa pra soldar os componetes.A tá esqueci

q sao dois pics,mais pode obtar em gerar o pwm com um 555,eu usei um pic 16f873a q tinha aqui,usei o ad pra controlar o pwm,bom é disperdicio mais pra mim tanto faz ate porque fica aqui jogada na minha caixa no fim estraga e nao uso kkkkkkkkkkkkkkkk.Estarei postando o material completo amanha,to indo dormir agora .Mais ainda sera implementado um controle remoto no relogio ,frases etc.... aguardem... hum tenho uma ja q é eu te amo kkkkkkkk,vou ver como vai ficar kkkkkkkk.abraços.

  • 3 semanas depois...
Postado

Jorge, Beleza?

Me cadastrei no forum só pra acompanhar seu progresso cara ahuahuahhuahuha

Tenho interesse em montar também um propeller clock usando teu código(sou mais que iniciante em programação C) e tô no aguardo de tu postar esse material por aqui.

Sucesso no projeto

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...