Servo Motor MG995

Boa noite pessoal!

Problemão que eu to tendo aqui com o meus servo motores. Eu fiz um pequeno teste nos meus servos motores que comprei porem eles não respondem da maneira q deveria. O meu só esta girando para um lado e fica travando. Quando era pra ele girar pra um lado e depois para o outro ele so gira pra um e fica forçando a engrenagem.

Alguem sabe me ajudar neste problema?

Sem código e sem esquema de montagem é difícil que alguém consiga ajudar.

O codigo e o exemplo que ja vem na biblioteca do arduino Servo.h O que estou utilizando é "Sweep"

O esquema de montagem é simples... arduino ligado no pino digital 9 e vcc e GND. Só isto

fredericotrin: O codigo e o exemplo que ja vem na biblioteca do arduino Servo.h O que estou utilizando é "Sweep"

O esquema de montagem é simples... arduino ligado no pino digital 9 e vcc e GND. Só isto

Como você quer que te ajudemos se você não nos ajuda? Se a sua biblioteca for desatualizada? E se o código tiver sido alterado em alguma versão da IDE e for diferente?

Se está tudo "certo" (igual ao exemplo), como não funciona?

arduino ligado no pino digital 9 e vcc e GND. Só isto

E o motor, como está ligado? Uma imagem seria bem-vinda.

MEU CÓDIGO!

#include <Servo.h>

Servo myservo; // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0; // variable to store the servo position

void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}

void loop()
{
for(pos = 0; pos <= 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=0; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
}

Bem, o código está igualzinho, então o problema é o motor.

Como está ligado? Qual sua tensão nominal? Corrente que consome?

Qual é a placa que está a usar? Esta biblioteca utiliza PWM e nem todos os pinos têm esta capacidade. Para além disso, os pinos com esta capacidade diferem de placa para placa (i.e., são diferentes no UNO e no MEGA, por exemplo).

Estou alimentando o motor com 5v do USB que vem da maquina. Ligo no pino Vin do arduino Uno. Qual outra informação precisa? Ha e como coloco imagem aqui?

Para colocar imagem, pode usar o ‘attach’ e anexar um ficheiro de imagem ou então, se a imagem estiver num servidor, pode colocar o link utilizando o icon (da barra de ferramentas) “insert an image”.

http://pt-br.tinypic.com/r/vymc0/8

Segue a imagem da montagem

Eu estava a dizer assim: |500x281

mas o que fez também funciona.

Parece que está ligado no Pino 8, mas se eu estiver vendo errado e for o Pino 9, não há problema.

Qual a corrente que seu motor consome? A porta USB fornece 500mA, poderia testar ligar uma fonte externa no motor (não esqueça de colocar os negativos em comum) ? Não é um problema mecânico? Tem outros motores disponíveis para testar?

kkkkkkkkkkkkkkkkkkkkkk Foi mau não sei ainda como fazer isto. Não consegui entender muito bem como fazer.

Sim testei com outros motores que comprei e nenhum deles funcionou. Esta ligado no pino 9 mesmo. Tensão de Operação: 4.8 - 7.2Volts

Ja fiz testes também com uma bateria externa

Talvez seja o modelo do motor. Você sabe qual é e tem as especificações e manual dele?

Consegue ler a posição em que ele está? (utilizando a função read) Esqueça, isto não funciona como eu pensava.

https://www.robocore.net/modules.php?name=Forums&file=viewtopic&p=43413#43413

Aqui pessoal esta descrevendo o mesmo problema que estou tendo porem também desta forma nao consegui resolver o meu problema.

Servo motor MG995 DIGI HI-SPEED http://www.dx.com/pt/p/mg995-tower-pro-copper-servo-gear-for-r-c-car-plane-helicopter-black-173907#.Vcv2mp5Vilc

Este link mostra onde exatamente comprei e o modelo.

Mas vale a pena verificar se ele está fazendo reset ou não. Tente escrever para o serial monitor o ângulo em que ele se encontra. Assim pode confirmar se ele reinicia ou não.