Resolvido - Arduino reseta ao comandar dois servos rapidamente

Boa noite pessoal,

Já pesquisei de tudo e não encontrei nada que me ajudasse.

Seguinte: Tenho um arduino que comanda 4 servo motores, todos com alimentação sem passar pelo arduino, vem direto da bateria que fornece 5V. Leio os dados de potênciômetros de joysticks com analogRead, uso o map para converter de 0 a 179 na saída e mando isso no pino de cada servo. Acontece que se eu dou dois comandos rápidos, meu arduino reseta. Não sei mais o que fazer, mesmo que eu ligue apenas dois servos tenho o mesmo problema.

Obs: Arduino, potenciômetros e servos estão ligados na mesma bateria de 5V e que deveria fornecer picos de 3A. O fio do servo que recebe o comando está ligado diretamente nas portas PWM do arduino.

Se imprimo os valores lidos dos potenciômetros na serial sem ligar os servos, saem certinhos e não acontece de resetar o arduino se os servos estiverem desligados, mesmo acionando os 4 potênciômetros simultâneamente. Se ligo um servo por vez, também funcionam perfeitamente, mesmo com movimentos rápidos.

Desculpem pelo tamanho do texto, mas queria me fazer entender. O desenho não ficou bom, mas acho que dá para entender. Não tenho fotos agora.

Agradeço desde já pela ajuda.

Exibições: 1586

Anexos

As respostas para este tópico estão encerradas.

Respostas a este tópico

Os fios que vão da bateria e do arduino para os servos tem entre 20 e 30 cm e comprimento. Isso poderia gerar algum problema também?

WB,

Não se preocupe, os capacitores são pra 10V, mas normalmente estes capacitores encontrados

no comercio, (ou em sucatas em casa kkkk) superam este valor.

Sim, os fios maiores aumenta a capacidade de capturar ruídos elétricos.

Rui

Ainda não tive tempo de fazer o processo com todos os servos, pois já está tudo instalado dentro do aeromodelo(Sim, faltou testar tudo antes de montar, mas só montei tudo primeiro porque ainda não tinha a bateria e o BEC). Mas enfim, testei em dois dos servos e funcionou, antes até com dois apenas já dava problema. Mais tarde vou testar com os outros servos e o motor instalado no aeromodelo. Agora já está com o NRF24L01 instalado também, já fiz isso para ver se teria algum problema de ruído do transceiver.

Resolvido. Segui as dicas do @Ranzinza Véio e funcionou. Um capacitor em cada servo(0.01uf) e outro de 470uF na alimentação do arduino. Testei somente com o de 470 na alimentação e ainda resetava, porém com menos frequência, mas depois de colocar os menores próximos dos servos, os problemas se foram.

Espero que essas dicas também sirvam para mais pessoas. Muito obrigado @Flavio Hernan, @Bruno Diegues e @Ranzinza Véio. Sucesso para vocês.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço