domingo, 8 de maio de 2011

Tutorial: convertendo servo para rotação contínua

Já faz um bom tempo que parei de usar motores DC com caixa de redução para meus robôs, dando preferência a servos convertidos para rotação contínua. A principal vantagem é a simplicidade do circuito de controle. Mesmo quando a intenção é conectar diretamente a um outro circuito de controle, tenho usado os servos removendo toda a parte eletrônica e ligando diretamente ao motor. A vantagem sobre um motor DC comum nesse caso é a padronização do tamanho e a facilidade de conectar as partes, usando as peças de fixação dos servos.

A grande desvantagem é que a maioria dos servos baratos costuma ter engrenagens de plástico e pouco torque. Encontrei a solução para esse problema com o Tower Pro MG995 e 996. São servos baratos, na faixa de US$ 10-15, com engrenagens de metal, rolamentos e torque de sobra para a maioria das aplicações onde usaria um motor DC com caixa de redução na mesma faixa de preço.






Atendendo ao pedido de um amigo, vou documentar aqui o procedimento para converter qualquer um dos dois para rotação contínua. Não é muito diferente do procedimento usado para qualquer outro servo, mas a caixa de redução e as engrenagens de metal podem intimidar um pouco à primeira vista.


O primeiro passo é abrir o servo, retirando os parafusos da tampa traseira com uma chave philips.


Depois de retirar a tampa traseira, com muito cuidado retire a tampa superior. Há um pino que serve de eixo para as engrenagens centrais, mas como ele não é fixo nem à tampa, nem à base, ele pode escapar quando você abre e cair. Muito cuidado para não perdê-lo nesse momento. Recomendo que retire a tampa dentro de uma caixinha ou pote plástico para que qualquer peça caia ali dentro.



Com muito cuidado, retire a engrenagem central. Com mais cuidado ainda retire a engrenagem do eixo do servo (à esquerda na foto acima). Essa engrenagem é presa ao potênciometro interno do servo, e pode exigir um pouco de força para sair. Uma chave de fenda puxando aos poucos por baixo ajuda muito.


Note como a engrenagem do eixo tem um pino limitador. Retirá-lo é a parte mais difícil da conversão. Com um alicate pequeno segure-o com força, puxando para cima e girando para os lados. Você deve conseguir senti-lo se movendo e então retirá-lo sem muito trauma.


Uma vez removido o pino, pode recolocar as engrenagens e a tampa no lugar. Tudo deve encaixar com precisão, sem forçar nada no lugar. Depois de remontar a caixa de redução, use uma das rosetas de fixação como alavanca para girar um pouco o servo e confirmar que tudo está montado corretamente. Mesmo sem o pino você deve sentir um limite devido ao potênciometro.


Depois de remontar a caixa e confirmar que tudo está no lugar, recomendo prender a tampa superior com uma fita adesiva ou etiqueta fácil de remover, apenas para evitar que tudo abra de novo enquanto você estiver alterando o circuito.

Tire a plaquinha do circuito e sob ela você verá o potênciometro, preso ao lugar por um parafuso e cola-quente (Made in China). Remova a plaquinha e o parafuso e tire o potênciometro. Com o ferro de soldar, remova com cuidado os fios do potênciometro ligados à placa, limpando bem as ilhas. Não aqueça demais por muito tempo. Recomendo usar fita dessoldadora, apesar do sugador de solda na foto.


Depois de removido o potênciometro, solde dois resistores de 2k2 no lugar, formando o mesmo divisor de tensão. Uma alternativa é usar um trimpot de precisão de 5k, mas não é uma grande vantagem já que a regulagem pode ser feita no software.

Com cuidado coloque a plaquinha no lugar, recoloque a tampa e os parafusos e o trabalho está pronto. Agora basta conectar ao Arduino e encontrar o ponto exato em que o servo fica parado. Comece com 1500 microsegundos e ajuste para cima ou para baixo até que ele pare de se mover.