Como usar o servo motor "normal" e hackeado no arduino

Olá, amantes de robótica!
Ensinarei a testar os servos motores.
Estou usando o HK15138 Standard Analog Servo 38g / 4.3kg / 0.17s, porém, esse tutorial e válido para qualquer servo motor.



Veja o vídeo dos servos motores em funcionamento:





COM O SERVO MOTOR NORMAL:

Vamos ao material que precisamos: 



Qtd     Itens:
1      -  Arduino UNO ou qualquer outra versão;
1      -  Servo motor;
3      -  Jumpers (Fios).

Não sabe onde comprar as peças, confira esse post:  onde comprar arduino e componentes

Vamos à montagem:



Basta fazer as mesmas conexões da imagem abaixo:
(clique na imagem pra ampliá-la)


Veja as fotos do projeto:






O mais importante, o código fonte:



Não sabe programar? Então acesse: Como programar em Arduíno, fazer robôs e projetos diversos
Se você é iniciante veja:Como enviar (upload) o programa pronto para a placa do arduino uno, mega entre outros

 /*   
  >>>>> Criando Robô Com Arduino <<<<<   
  ##### Robôs, Projetos e Tutoriais! #####  
  .:: Site principal: http://www.CriandoRoboComArduino.com/     
  .:: Site secundário: http://www.TestCriandoRoboComArduino.com/  
  ========== IMPORTANTE ==========   
  O código está livre para usar, citar, alterar e compartilhar,  
  desde que mantenha o site como referência.   
  Obrigado.  
  --------------------------------------------------------------------------------------------------  
  Projeto: Como usar o servo motor "normal" no arduino   
  ---------------------------------------------------------------------------------------------------  
 */   
  #include <Servo.h>// inclui biblioteca de manipulação de servos motores.   
  Servo motor;   
  void setup(){ //configurações   
  motor.attach(13); //declarando qual porta o motor estará ligado    
  }   
  void loop(){ //principal   
  motor.write(0); //aqui o motor ficará a 0 graus   
  delay(3000);   
  motor.write(90); //aqui o motor ficará em 90 graus   
  delay(3000); // espera 3 segundo    
  motor.write(180); //aqui o motor ficará em 180 graus   
  delay(3000); // espere 3 segundo    
  }  
 /*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  
   >>>>> Acesse os sites: <<<<<  
   .:: Robôs, Projetos e Tutoriais  
     http://www.CriandoRoboComArduino.com/     
   .:: Testes dos robôs, noticias sobre robótica e muito mais  
     http://www.TestCriandoRoboComArduino.com/  
   >>>>> Inscreva-se nos canais no Youtube: <<<<<  
   .:: Vídeos dos robôs, projetos e tutoriais  
     Criando Robô Com Arduino  
     https://www.youtube.com/CriandoRoboComArduin  
   .:: Mostrando os testes dos robôs e projetos  
     Test Criando Robô Com Arduino  
     https://www.youtube.com/TestCriandoRoboComAr  
   :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/  


COM O SERVO MOTOR HACKEADO:

Vamos ao material que precisamos: 



Qtd     Itens:
1      -  Arduino UNO ou qualquer outra versão;
1      -  Servo motor hackeado;
3      -  Jumpers (Fios).

Não sabe onde comprar as peças, confira esse post:  onde comprar arduino e componentes

Vamos à montagem:



Basta fazer as mesmas conexões da imagem abaixo:
(clique na imagem pra ampliá-la)


Veja as fotos do projeto:









O mais importante, o código fonte:



Não sabe programar? Então acesse: Como programar em Arduíno, fazer robôs e projetos diversos

 /*   
  >>>>> Criando Robô Com Arduino <<<<<   
  ##### Robôs, Projetos e Tutoriais! #####  
  .:: Site principal: http://www.CriandoRoboComArduino.com/     
  .:: Site secundário: http://www.TestCriandoRoboComArduino.com/  
  ========== IMPORTANTE ==========   
  O código está livre para usar, citar, alterar e compartilhar,  
  desde que mantenha o site como referência.   
  Obrigado.  
  --------------------------------------------------------------------------------------------------  
  Projeto: Como usar o servo motor hackeado no arduino   
  ---------------------------------------------------------------------------------------------------  
 */   
  #include <Servo.h>// inclui biblioteca de manipulação de servos motores.   
  Servo motor;   
  void setup(){ //configurações   
  motor.attach(7); //declarando em qual porta o motor estará ligado    
  }   
  void loop(){ //principal   
  motor.write(0); //aqui o motor irá "andar" para frente    
  delay(3000);   
  motor.write(180); //aqui o motor irá "andar" para trás   
  delay(3000); // espere 3 segundo    
  }   
 /*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  
   >>>>> Acesse os sites: <<<<<  
   .:: Robôs, Projetos e Tutoriais  
     http://www.CriandoRoboComArduino.com/     
   .:: Testes dos robôs, noticias sobre robótica e muito mais  
     http://www.TestCriandoRoboComArduino.com/  
   >>>>> Inscreva-se nos canais no Youtube: <<<<<  
   .:: Vídeos dos robôs, projetos e tutoriais  
     Criando Robô Com Arduino  
     https://www.youtube.com/CriandoRoboComArduin  
   .:: Mostrando os testes dos robôs e projetos  
     Test Criando Robô Com Arduino  
     https://www.youtube.com/TestCriandoRoboComAr  
   :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/  



Pronto, qualquer duvida é só deixar nos comentários ou entrar em Contato 

Quer ajuda ou quer ajudar? Clique em Ajuda e veja como você pode ajudar ou ser ajudado.



14 comentários:

  1. Você ligou o sinal do servo no pino 13, mas eu li que os servos tem que ser usados em uma saída PWM. Não tem problema eu liga-lo em uma saída digital?

    ResponderExcluir
    Respostas
    1. olá, não tem problema, pois no código só estou lingando ele sem querer controlar a velocidade.
      É necessário ligar em um PWM quando você quer controlar a velocidade, coisa que eu não fiz nós meus projetos.
      Qualquer duvida é só perguntar!

      Excluir
  2. Para usar em um servo motor de maior potencia. O esquema é o mesmo? Um com a voltagem de 220V por exemplo...

    ResponderExcluir
    Respostas
    1. Olá, um servo motor de 220v, seria outro esquema, porem os menores podem só deixar a alimentação deles de acordo com a voltagem do servo.

      Excluir
    2. Em relação ao codigo do arduino, pode ser o mesmo? Em relação a alimentação, se eu usasse um foto acoplador, funcionaria?

      Excluir
    3. Olá, o mesmo código funcionara. Boa diversão com o projeto!

      Excluir
  3. Boa tarde!

    Poderia me ajudar?

    Consigo fazer meu servo se movimentar de 0 a 180 graus (indo e vindo), e no meio desse movimento quero que ao pressionar um botão o servo pare,veja quantos graus esta e ande mais 5 graus e se mantenha parado.

    Explicando melhor: tenha uma garra robótica que ao detectar que pegou um objeto (botão foi pressionado) quero que ele veja quantos graus andou ( botão foi pressionado e estava em 90 graus) quero que ele ande mais 5 graus e pare (95 graus) (para detectar e segurar com firmeza o objeto)

    Segue o código que tenho:
    #include

    Servo myservo; // create servo object to control a servo

    // a maximum of eight servo objects can be created



    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>=1; 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

    }

    }

    ResponderExcluir
    Respostas
    1. Olá, Filipe. Respondemos sua duvida por email, por favor, confira seu gmail.

      Excluir
  4. Olá Meu nome é Rodrigo eu quero saber se posso ligar 02 nano servo motores em um arduino nano 3.0 usando uma bateria de 12v,como devo ligar esses componentes na placa do arduino?
    E como posso controlá-lo usando botao para girar 180 graus,depois apertar novamente e voltar ao grau 0?

    ResponderExcluir
  5. Paulo Germano13/04/2015 13:32

    Olá, boa tarde
    Estou iniciando o curso de engenharia elétrica e não tenho nenhuma experiência em projetos com Arduino. Para um primeiro trabalho, preciso construir um robô com rodas, para uma competição de futebol, e pensei em usar uma roda direcional controlada por um servo motor, ao invés da forma mais comum de direção, com reversão/redução de velocidade de uma das rodas de tração.
    Os colegas poderiam me dizer se é possível fazer isso ou se haveriam muitas desvantagens?

    Obrigado.

    ResponderExcluir
  6. to tentando usar servo no drive l293d com fonte externa de 5v ele não funciona

    ResponderExcluir
  7. Precisa fazer alguma coisa no circuito do servo ou e só colocar a programação que esta "hackeado".

    ResponderExcluir
  8. Precisa fazer alguma coisa no circuito do servo ou e só colocar a programação que esta "hackeado".

    ResponderExcluir
    Respostas
    1. Olá, infelizmente não, você tem que abrir ele e soldar os componentes, veja: como hackeado o servo motor
      ou se preferir você pode comprar o servo hackeado na nossa loja, veja: acessar a loja online Seu Robô.

      Excluir

O seu comentário estará aguardando aprovação.