Olá a todos,

  Tenho um projeto e Vending em funcionamento já há uns 3 anos e ao longo desse tempo me deparo co u ma questão e procuro sugestões.

  

  Uma das portas digitais do atmega é configurada como input  e recebe de dispositivos como moedeiros e noteiros uma sequencia e pulsos dependendo do dinheiro inserido.

  Eventualmente me deparo com o seguinte :  O dispositivo em questão por alguma razão entra em curto e quando isso ocorre, os pulsos enviados na verdade viram 12v que é alimentação padrão desses dispositivos. O resultado é que a porta input nesse momento recebe os 12v e obviamente queima e o atmega fica inutilizado ,pois deixa de ser capaz de ler pulsos. Só substituindo o atmega. 

  Minha pergunta :  Como protejo essa porta para que nunca ultrapasse 5v vindo externamente nela?

  Eu já tentei via opto acoplador mas o pulso sofre um retardo e a identificação  dos mesmos perde a precisão.

  Alguém consegue dar uma ajuda?

  Grato desde Já

   Ps : Atmega 328

Exibições: 141

Responder esta

Respostas a este tópico

como se trata de sinal, já tentou fazer um teste com um diodo zenner? 

Uma outra opção também, talvez seja usar um transistor.

Olá.

  Como já foi dito e vc ja tentou.. tem várias formas de fazer isso.

1) Optoacoplador

   A melhor, embora mais cara, seria com o optoacoplador. Eles funcionam sim, se vc teve problemas com velocidade precisa ver qual usou, qual a frequencia do seu pulso, como polarizou, etc. Um erro clássico é não ler a folha de dados do optoacoplador, ex: O 4N25, que é um projeto dos anos 80, tem uma perninha a mais, ligada ao transistor que fica no receptor. Ela serve para, em caso de necessidade, colocar um resistor ao GND, pra descarregar mais rapidamente o fototransistor, que por ser grande funciona como um capacitor.
  Nos dias de hj o 4N25 é pouco usado em produtos de consumo, não vou me alongar pq nem sei se é esse q vc usou.

2) Resistor+Diodo Zener.

   Sim, resistor+diodo zener. De nada a dianta o diodo puro, isso já tem dentro do atmega. É preciso por um resistor. Se for por uma coisa só melhor por só o resistor que só o diodo. O diodo puro se for de baixa potencia queimará e se for de grande potencia será uma carga (vide Izmin do diodo zener). 100R a 220R em série com o sinal e um diodo de 5V6 do pino ao GND podem ser suficientes.
3) Um transistor. Ele inverte o sinal... Mas é efetivo. Vc usaria o sinal na base dele. Como chave pode ser feito de forma a suportar por ex de 3 a 15V tranquilamente. Claro que precisa tb de resistor de base e do coletor ao VCC.

 

  Eduardo, eu usei o 4N25 , 4N35 e PC817 sem sucesso na questão da velocidade dos pulsos. Perde a precisão. Hora lê o valor correto, hora não lê ...

Olá, Cezar!

   Eu tenho um projeto com optopacopladores para ler um encoder, utilizando o EL817, que deve ter características muito próximas às do PC817.

   Funciona bem até 20 kHz, com a limitação mais por parte do software do que do hardware.

   A forma de onda, a 20 kHz, é excelente, fazendo crer que a frequência pode subir ainda um pouco mais e, se o software permitisse, poderia funcionar também nesta frequência mais alta.

   O único cuidado que tive de ter foi colocar um pullup "forte" ( baixa resistência ) no coletor do fototransístor do opto. Acho que usei 1 kΩ. Isto serve para carregar rapidamente a capacitância parasita do transístor do opto.

   Ah, e também garantir uma corrente suficiente no LED do opto, para garantir a transferência de corrente para o fototransístor, já que estes optos tem um ganho de corrente muito baixo.

   Eu não sei qual é a frequência dos pulsos do moedeiro que você usa, mas alguns que tenho visto não chegam aos 20 kHz.

   Será que o problema é realmente a velocidade?

D. T. Ribeiro

   

   Eu acredito que seja, até porque como eu disse, é um produto há 3 anos rodando com moedeiros, noteiros, interfaces PIX e interfaces Cartão de crédito sem nenhum problema. Meu problema apenas é quando um moedeiro resolve entrar em pane e dá uma paulada na saída dos pulsos  e me queima o atmega na porta e escuta. Quando isso ocorre, vc mede nada menos que 12v na saida de pulsos dele
 :-)

Olá. Se for usar opto use o 6N137, que é cmos de alta velocidade.Baixe o datasheet dele e dê uma olhada. Eu uso ele em sistemas de CNC onde a frequencia dos pulsos são bem altas e com excelentes resultados.

Outra coisa, você usou a configuração INPUT_PULLUP nas suas entradas ? Algo parecido com isso;

pinMode(moedeiro, INPUT_PULLUP);

E por último talvez um diodo de proteção de alta velocidade(1n4148) ligado inversamente com sua entrada poderá proteger contra surtos de tensão.

Espero ter ajudado,

Att.:Reinaldo de Souza

obs.: Tenho duas placas que fabrico para máquinas de venda, uma com um produto usando o atmega e outra com 3 produtos usando o esp32 e nunca tive este tipo de problema.

Se quiser dê uma olhada nas minhas placas em www.rdscnc.com.br

Olá Ronalo

  

 O diodo invertido poe surtir algum efeito sim. Vou experimentar.

 Grato

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço