Manual

do

Maker

.

com

Servo motor de rotação contínua (360 graus)

Servo motor de rotação contínua (360 graus)

Já escrevi sobre diversos tipo de motores. Motores de passo, utilizados em todo o tipo de equipamento que requer precisão; motores DC para movimentar eixo de carrinho, separadores de moeda ou dos relógios que faço; motores AC controlados por TRIAC... e nesse artigo, veremos o servo motor de rotação contínua, sem a limitação dos 180 graus de movimento dos servo motores tradicionais.

Também discorro a respeito de outras características de servos, outros modelos, AC e DC etc. Acredito que é uma leitura agradável para antes de se colocar a "mão na massa".

servo-300x281.webp

Características do servo motor comum DC

O servo motor comum se movimenta através de pulso PWM, e possui um motor ímã permanente com escova. Os menores, normalmente utilizados em aeromodelismo, pesam até 5g (ao menos o que eu peguei, mas pode ter mais leve). O tradicional SG90, utilizado na maioria dos projetos que vemos com Arduino, pesa 9gr e tem um torque de 1.8kgf.cm, que já é algo impressionante para um dispositivo desse tamanho.

Dentro dele tem uma caixa de redução com engrenagens que podem ser de poliéster ou metal, conforme tamanho e aplicação.

Para controlar a posição, um sinal entre 1ms e 2ms é enviado por PWM em um intervalo de 20ms, sendo 1ms para -90 graus, 1.5ms para 0 graus e 2ms para 90 graus.

periodo20ms-1-300x61.webp

A imagem acima (que você já pode ter visto em um bilhão de lugares) é uma representação da explicação anterior.

pwm.webp

No desenho acima, o 0 está sendo considerado à esquerda, indo até 180. Tanto faz a representação, uma vez que existe um movimento de 180 graus, e é isso que importa.

Girar o motor do servo manualmente é uma péssima ideia, devido ao esforço contrário na caixa de redução. O esforço menos significativo está na saída do eixo, e a redução é feita para gerar a força especificada para o modelo na última engrenagem.

Me parece que o único fabricante que está fora de um padrão do wiring é a Airtronic. Os demais podem variar a cor dos fios, mas está sempre na mesma ordem.

As marcas mais conhecidas são:

  • Futaba

futaba-300x185.webp

  • Hitec

hitec-296x300.webp

  • JR Radios

jrradios.webp

  • Sanwa

sanwa.webp

Estes servos custam na mesma proporção em que são bonitos.

Sobre os SG90, já escrevi alguns artigos relacionados, como esse de controle de servo motor com Arduino.

Já utilizei servo motor em diversos projetos, como a mira eletrônica.

Também já mostrei como fazê-lo com PIC, que é um pouco mais trabalhoso.

Usei também nesse seguidor de linha. Não ficou grande coisa porque o motor não aguentou nada de esforço, mas provei o conceito.

Fiz uma série com robôs quadrúpedes, que usam aos montes esses servos SG90. O primeiro deles foi feito em impressora 3d.

Braços robóticos também fazem uso de servo motores, como mostrei nesse artigo.

O projeto maker raiz que mais me orgulhou em termos de robô foi o que utilizei restos de carrinho com motor DC para os movimentos, partes de HD queimado, caixa patola cortada para comportar o circuito e um movimento bem legal da cabeça do robô, como pode ser visto nesse outro artigo.

Um projeto comercial também levou dois SG90, que foi o dispenser de drone. Se quiser dar uma conferida, eis o artigo. Aplicações não faltam para servo motores.

Características do servo motor AC

Nunca tive a oportunidade de sequer ver ao vivo um destes, mas é utilizado bastante na indústria. Esse motor pode ser síncrono do tipo brushless, ou pode ser motor de indução.

Um servo motor síncrono pode consumir entre 100W a 3.5KW. Tem alta velocidade, alto torque, eficiência operacional e baixa manutenção. O custo é alto. Altíssimo.

Motores AC de indução também têm alta velocidade, bom torque e eficiência, além de baixa manutenção e são mais duráveis.

Só para efeito de comparação, o servo motor DC é considerado como baixa confiabilidade, retificação limitada e baixa durabilidade. Mas são coisas muito distintas. Pra ter uma ideia, aprecie a imagem de um sistema de servo motor AC:

servo-motor-corrente-continua-300x150.webp

A direção do motor é definida pela polaridade instantânea de tensão de controle. Nesse modelo da imagem, o circuito é simplificado devido ao projeto que proporciona o torque à quantidade de corrente através da armadura.

Características do servo motor de rotação contínua

O servo motor de rotação contínua não tem controle de posição. Esse tipo de motor continua sendo controlado por PWM, mas apenas para controle da velocidade de avanço (que também pode incluir delay no código para operação de pausa ou movimento, como veremos mais adiante). O ponto zero dele, por padrão, vem em 1.5ms, que é o "ponto de descanso". Abaixo, ele gira para a esquerda; acima, gira para a direita.

Esse tipo de servo tem um trimpot acessível através da carcaça, que permite mudar o ponto zero. Não possui encoder e, nesse modelo que estou apresentando, seu tamanho é bastante significativo em relação aos tradicionais SG90.

O torque deste servo motor de rotação contínua apresentado nesse artigo é de 4.8kgf.cm. Simplesmente impressionante!

O conjunto de acessórios dele é bem interessante, contando com duas plataformas circulares e 4 tipos de braços, além de 4 roldanas de borracha com eixo furado, que podem ser bem úteis para serem utilizadas em sistema de polias. Também conta com os parafusos, claro.

Da parte mecânica, esse servo tem dois rolamentos de esfera para redução de atrito, gabinete de nylon (que o torna bem resistente) e tem uma velocidade de operação de 50RPM@4.8V com torque de 3.3kgf.cm e 60RPM@6V com torque de 4.8kgf.cm. A máxima não dá pra mexer, exceto faça um conjunto de engrenagens ou polias, como descrito nesse artigo de engrenagens e redução. A mínima tem duas opções para reduzir; utilizando o mesmo artigo ou com PWM e delay.

O modelo desse servo é SM S4303R e o datasheet pode ser visto aqui.

O fio branco é o signal, o vermelho é para VCC e preto para GND.

A última consideração é que quanto mais torque for demandado, maior o consumo, por isso é ideal que a alimentação não seja feita através da MCU, porque a corrente pode chegar a até 1.2A de pico! Exceder o limite de torque poderá danificar o mecanismo, exceto seja criado um novo conjunto para expandir a redução e aumentar o torque, seguindo o artigo supracitado.

Controlando o servo motor de rotação contínua com Arduino

Como não será exercido esforço para a apresentação, não haverá problema em alimentá-lo diretamente pela MCU. Faça o wiring como citado mais acima, use um pino que tenha PWM, por exemplo, o pino 5 do Arduino Nano - que utilizarei nesse exemplo com a placa de prototipagem Waldunano, da Wal Proj. Use o Arduino que desejar, basta mudar no código o pino referente ao PWM.

Se desejar, utilize outra plataforma, como ESP8266, ESP32 (ambos devem rodar com o mesmo código disposto aqui) ou até uma Onion Omega. Basta ter um pino que ofereça PWM.

O código de exemplo ficou assim:

#include <Arduino.h>
#include <Servo.h>
 
Servo servo;
 
uint8_t degree = 0;
 
void setup(){
    servo.attach(5);
}
 
void loop(){
    //sentido horario
    for (degree=91; degree<180; degree++) { 
        //manda comando pro servo
        servo.write(degree);
        //intervalor de execução por revolução
        delay(100);                              
    }
    //baixa a velocidade até parar
    for (degree = 179; degree > 90; degree--){ 
        servo.write(degree);
        delay(100);
    }
    // Ponto de descanso
    servo.write(90);
    delay(1000);                                  
    //começa girar anti-horario
    for(degree = 90; degree > -1; degree--){ 
        servo.write(degree);
        delay(100);   
    } 
    // reduz até o ponto de descanso
    for (degree = 0; degree <91; degree ++) { 
        servo.write(degree);                            
        delay(100);                                     
    }
    // Fim da demonstração
    servo.write(90);                                  
    delay(5000); 
}

Onde comprar servo motor de rotação contínua?

Esse servo motor de rotação contínua está disponível em nosso parceiro Saravati, que possui loja física na Santa Efigênia - São Paulo - SP. O link para o produto é esse, depois no home do site você pode pegar o endereço, caso deseje conhecer a loja.

 

Revisão: Ricardo Amaral de Andrade

Inscreva-se no nosso canal Manual do Maker no YouTube.

Também estamos no Instagram.

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.