Bom dia pessoal do labdegaragem , tenho uma duvida muito simples mas que ja faz tempo. A poucos dias eu rackeiei dois sevo motores, consegui fazer funcionar pra um lado mas depois tentei tentei mas nao consegui fazer ele girar pro outro lado, preucurei no GOOGLE em ingles pra ver se eu conseguia achar outro codigo pra ver se dava certo mas nada de diferente aconteceu, sei que ele nao esta estragado porque quando ligo na alimentaçao de 5V ela da um giro pra traz e depois faz o comando que eu mandei .Estou muito aflito e quero saber o mais rapido possivel o que estou fazendo de errado .O codigo é esse:

#include <Servo.h>

Servo myservo;
int val = 100;
void setup()
{ myservo.attach(11);
}
void loop()
{
myservo.write(val);
myservo.write(-val);
}

// ja tentei colocar menos mas nao adianta
// espero que me ajudem por favor .

Exibições: 1132

Responder esta

Respostas a este tópico

Boa Tarde ja tentou escrever desta forma:

motor.write(0); //frente
delay(3000); // espera 3 segundos
motor.write(180); // trás
delay(3000); // espere 3 segundos

nao adiantou ele ainda so gira pra um lado.

Carlos Henrique,

    Cara, você fala que hackeou os servo motores,  que tipo de hack foi esse ?   você retirou a limitação dos 180º ?

    Bem, se o problema foi esse,  eu não tenho absoluta certeza, mas me parece que existem os servos comuns que vão de 0 a 180º   e existem servos especiais de giro completo,  mas esse eu ainda não tive a chance de comprar e testar.

    Pelo que li até hoje, se você tirar o limitador de 180º deles,  eles tendem a dar problemas, pois perdem a referencia do potenciometro interno que tem neles que é o que lhes proporciona a capacidade de se mover e parar num local desejado.

Muito obrigado pela ajuda, descobri o que estava fazendo errado erra porque linguei o resistor no fio errado. Voçe foi demais nao sei como agradecer !!!

Muito obrigado pelo codigo é esse mesmo deu tudo certo  me ajudou muito, descobri o que estava fazendo errado erra porque linguei o resistor no fio errado. Voçe foi demais nao sei como agradecer !!!

Aqui tem um link que mostra uma maneira fácil de colocar um servo para fazer rotação contínua.

http://brasilrobotics.blogspot.com.br/2011/05/modificando-o-mini-se...

Foi isso que você fez? Colocou os resistores em substituição ao potenciômetro?

Espero ter ajudado.

Muito obrigado pelo link me ajudou muito, descobri o que estava fazendo errado erra porque linguei o resistor no fio errado. Voçe foi demais nao sei como agradecer !!!

Sim, foi isso mesmo tirei a função do potenciometro e coloquei os resistores, sei que não fiz errado pq como disse quando ligo na alimençao de 5V ele da um passo pra traz e so vai pra frente nem o delay ele executa ele so vai num sentido. O que será que esta acontecendo algo na placa do servo ou na programação do arduino?

 Olá Carlos,

Isso pode ocorrer se o fio que estava no cursor  do potenciômetro (terminal do meio) não for soldado a união dos dois resistores. Se o fio for soldado a uma das extremidades dos resistores o servo irá girar em um sentido apenas. 

Verifique se a ligação está correta, e observe se os resistores são de valores iguais, meça a resistencia de ambos, pois se um deles estiver aberto, com valor alterado ou mesmo com uma solda mal feita o servo se comporta da forma descrita, girando em apenas um sentido.

Abraço.

muito obrigado pela ajuda, estava dando contato , descobri o que estava fazendo errado erra porque linguei o resistor no fio errado. Voçe foi demais nao sei como agradecer !!!

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço