Alterando servo TowerPro SG-5010 para rotação infinita

Alterando servo TowerPro SG-5010 para rotação infinita

A limitação de rotação do servo TowerPro SG-5010 faz com que os movimentos executados pelo servo possam atingir no máximo 180º.

Servo TowerPro SG-5010

Entretanto, com algumas  alterações, podemos aproveitar seu bom torque (11 Kg/cm, à 6 volts) e retirar essa limitação, aproveitando todo o potencial do motor.

Para essa alteração, teremos que retirar o potenciômetro interno do servo, substituindo-o por 2 resistores, e efetuar uma pequena alteração em uma das engrenagens.

Material utilizado :

  • Servo TowerPro SG-5010
  • Chave philips pequena
  • Chave de fenda
  • Ferro de solda, sugador de solda, solda
  • 2 resistores de 2,2 K ohms

Passo 1 – Usar a chave philips para retirar os parafusos na parte inferior do motor e remover a tampa, expondo a placa de controle :

Passo 1 - Remoção da tampa inferior

Passo 2 – Com cuidado, retirar a tampa superior, onde estão localizada as engrenagens. Sugerimos tirar uma foto das engrenagens antes de desmontar. Isso vai ajudar na hora de montar novamente o motor :

Passo 2 - Engrenagens

Passo 3 – Retire cuidadosamente as engrenagens. Atenção ! Não remova a graxa branca usada para lubrificação  :

Passo 3 - Engrenagens removidas

Passo 4 – Use o ferro de solda e o sugador para retirar a solda dos pontos indicados na imagem abaixo. Com isso, iremos remover o potenciômetro da placa. Isso deve ser feito ANTES de se retirar a placa de controle. E por que antes ? Explicaremos no próximo passo :

Passo 4 - Retirada solda potenciometro

Passo 5 – Com a solda do potenciometro removida, retire a placa de controle com o auxílio de uma chave de fenda. Repare que o potenciometro está fixado à carcaça por um pequeno parafuso, por este motivo tivemos que retirar a solda antes de remover a placa. Solte o parafuso e remova o potenciômetro:

Passo 5 - Potenciometro removido

Passo 6 – Pegue os 2 resistores de 2,2 K, enrole os terminais e forme um pequeno “M”. Faça um ponto de solda nos terminais que foram enrolados. Depois, corte as extremidades dos terminais :

Passo 6 - Resistores

Passo 7 – Agora, soldamos os resistores no local onde estava soldado o potenciômetro :

Passo 7 - Resistores soldados

Passo 8 – Na engrenagem maior, há uma pequena aba que serve como limitador mecânico e deve ser removida. Para isso, podemos usar um estilete :

Passo 8 - Engrenagem aba removida

Pronto, basta recolocar a placa de controle, as engrenagens e os parafusos da carcaça. O motor agora está pronto para ser testado, agora sem limitação de rotação.

Vamos testar o motor utilizando um potenciômetro para controle da rotação. No motor testado, o fio laranja corresponde ao pino de dados/controle, o fio vermelho corresponde ao Vcc (5v), e o marrom ao negativo :

Servo TowerPro SG-5010 - Circuito Potenciometro

Carregando o programa abaixo no Arduino, conseguimos controlar o sentido de rotação e a posição do servo :

// Controlling a servo position using a potentiometer (variable resistor)
// by Michal Rinott http://people.interaction-ivrea.it/m.rinott

#include <Servo.h>
Servo myservo; // Cria o objeto para controlar o servo

int potpin = 0; // Pino analogico conectado ao potenciometro
int val; // variavel que guarda o valor lido do potenciometro

void setup()
{
myservo.attach(9); // Pino de dados do servo conectado ao pino 9 do Arduino
}

void loop()
{
// Le o valor do potenciometro (entre 0 e 1023)
val = analogRead(potpin); 

// Ajusta a variavel para um valor entre 0 e 180
val = map(val, 0, 1023, 0, 180); 

myservo.write(val); // Move o servo
delay(15); // Aguarda o servo atingir a posição
}

Gostou? Conte-nos sua experiência com este post e visite nossa loja FILIPEFLOP!

6
Alterando servo TowerPro SG-5010 para rotação infinita
7 votos, 4.43 classificação média (88% pontuação)

Formado em Ciência da Computação pela Universidade de Mogi das Cruzes, atualmente responsável pelo departamento técnico da FILIPEFLOP.

Compartilhe este Post

4 Comentários

  1. Lauro Becker - 16 de janeiro de 2016

    Também gostaria de alterar um servo para mais de 180º. Mais precisamente iria trabalhar com valores entre zero grau e 270 graus. Vi vários posts sobre como modificar um servo, mas nenhum dava pistas de como ter um -zero- grau confiável e preciso, ou seja, quando for comandado zero grau que o eixo sempre esteja na posição -zero-.

  2. Rafael Stella - 23 de dezembro de 2014

    Olá amigo.
    Uso muito o blog em meus estudos.
    Sobre essa alteração no motor SG-5010: após isso ele passa a se comportar como um motor de rotação infinita. Seria possível apenas “estender” um pouco o limite, para ao invés de 180 graus, digamos, uns 270?
    Para o projeto que estou desenvolvendo, eu preciso de um motor que se comporte como um servo, ou seja, vá até uma posição e pare, só que ele precisa girar mais do que 180 graus.
    Estou pensando em usar motor de passo, mas se houvesse um servo com essas característica, iria facilitar muito.
    Desde já agradeço pela ajuda.

  3. Sensor Hall KY-003 com Servo Tower Pro SG-5010 | Blog FILIPEFLOP - 30 de junho de 2014

    […] sugeridas. Neste post, ilustramos a utlização deste sensor de efeito hall em conjunto com um Servo Tower Pro com rotação infinita, onde fixamos um ímã no motor, e a cada acionamento do sensor, o sentido de rotação é […]

Deixe uma resposta