Ir ao conteúdo
  • Cadastre-se

Gerador AT com Attiny85 Digispark


Posts recomendados

Estou procurando uma forma rápida e fácil para fazer um gerador de alta tensão, utilizando um Attiny85 digispark como oscilador. Alguém sabe se é possível e como seria. Acredito que variar uma das saídas pwm entre 50Khz e 150Khz, proporcionalmente a uma entrada analógica onde tem um potenciometro resolveria a questão. Alguém poderia me ajudar? O valor dos componentes do projeto certamente precisam sofrer alterações. Antecipadamente agradeço.Proj1.png.a0195cfca1e7c287e4eca330aa4df859.png

Link para o comentário
Compartilhar em outros sites

@Reginaldo Sgorlon ,

 

Você tem de fazer funcionar semelhante a isto aqui :

 

http://www.eleccircuit.com/efficient-flyback-driver-circuit-by-ic-555-irf510/

 

fly-drv2.gif

 

Repare que no 555 é possível ajustar tanto a freqüência como o duty rate, então seu programa deve prever esses dois ajustes, e apenas na bancada você conseguirá definir a melhor condição para o seu flyback.

 

Usando um flyback de TV, a frequência a ser gerada deve ser algo entre 15Khz e 16 Khz.

 

Paulo

Link para o comentário
Compartilhar em outros sites

Paulo, antecipadamente agradeço a atenção. Meu circuito foi baseado exatamente em um circuito com o 555, porém utilizando componentes disponíveis.

Então eu preciso modular a frequência e o duty rate (ou não, após encontrar a frequência ideal). O duty rate seria a amplitude em volts? Eu não entendo bem. Você sabe se eu preciso mexer nos fuses para trabalhar em 16Khz na saída pwm? Se sim, você sabe como faço isso?

Reginaldo.

adicionado 20 minutos depois

Usei o programa abaixo para testar. Não sei que frequencia gerou, porém produziu um pouco de AT, mas ao custo de um sobreaquecimento do transistor.

 

 

void setup() {
  pinMode(1, OUTPUT); 
 
}

void loop() {
  
  int potenciometro = analogRead(2) / 4;  
  int frequencia = potenciometro + 1;
  double periodo = (1 / frequencia) * 1000; 
  double tempo = periodo / 2; 
  
  analogWrite(1, 255); 
  delay(tempo); 
  analogWrite(1, 0); 
  delay(tempo);
  
 }

adicionado 23 minutos depois

Duty cicle é a relação da largura de pulso, vi agora em um site. Está começando a clarear.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Reginaldo Sgorlon ,

 

Não, não precisa mexer nos Fuses, voce pode gerar a frequência de 16 Khz ( ou próxima disto ) usando o PWM por hardware, mas também pode obter uma frequência precisa de PWM por software. 

 

Você pode trabalhar o PWM com menos bits também.... por exemplo com 5 bits apenas já daria para controlar bem a tensão de saída.

 

O truque é exatamente esse : variando o duty do PWM, voce pode controlar um pouco a tensão produzida pelo flyback, embora não vejo utilidade nisso.

 

Se quiser apenas fazer o flyback funcionar, sem variar a amplitude da tensão gerada, pode apenas gerar uma onda quadrada em uma saída, deixando essa saída em nivel alto durante 1/32000 segundos, e a seguir deixando em nível baixo por 1/32000 segundos, e assim sucessivamente. Vai ter na saída uma onda quadrada de 16 Khz.

 

Também pode programar o Timer do Attiny85 para gerar a temporização necessária, gerando a sua onda quadrada, tudo por hardware apenas.

 

Infelizmente não posso te ajudar no código pois não programo nem em C e nem na IDE do Arduino....

 

Paulo

 

Link para o comentário
Compartilhar em outros sites

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...