[AJUDA][ARDUINO] Controlando um servo motor de alto torque

Olá moçada, adquiri um servo motor da tower pro MG996R, com engrenagens de metal para um projeto. Ele consome uma alta corrente (5V, 900 ma), entao arrumei uma fonte externa para alimentá-lo, que fornece exatamente o que ele pede. Quando ligo ele ao arduino com qualquer codigo ele gira até o ponto máximo e para. No caso ele fica chiando ainda como se quisesse rodar mais, porem o potenciometro esta no final, entao eu desligo rapido e volto ele ao ponto inicial manualmente. Nao importa o código que implemente (crescimento gradual ou ir para determinada posição), ele ignora tudo, inclusive os delays e vai direto pro final. Em um blog gringo o sujeito testou o comprimento de onda minimo e maximo (para esse mesmo modelo) para mover o servo para as posições iniciais e finais e sugeriu a seguinte modificação:

motor.attach( Pino do arduino, no meu caso o 3 pwm, 771, 1798);

Porem mesmo assim o problema nao foi resolvido. Quando desconecto o servo da placa e deixo apenas a energia alimentando ele nao se move (tal qual era esperado), desmontei o servo por completo e verifiquei e está tudo em ordem, parece ser um problema na comunicação mesmo entre o arduino e o servo, segue abaixo o codigo que usei. Desde ja muito obrigado pela atenção.

#include
Servo motor;
void setup()
{
motor.attach(3, 771, 1798);
}
void loop()
{
motor.write(0);
delay(2000);
motor.write(65);
delay(2000);
motor.write(130);
delay(2000);
}

Exibições: 193

Responder esta

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço