SG92R é um servo motor de entrada sendo um dos ou menores servos do mercado, pesando apenas 9g, por isso é bastante usado em mão robóticas.
Especificações do SG92R
- Voltagem de Trabalho: 4V8;
- Torque: 2,5kg/cm;
- Tamanho: 32,5 x 12,6 x 34,5mm;
- Peso: 9g;
- Comunicação: PWM;
Aonde Adquirir
Certamente se você estar a ler este post, já adquiriu ou pretende adquirir o sensor. Caso seja a segunda opção temos um cupom de desconto de 10% (CEREZA10) neste e qualquer outro produto da loja da Arduino Ômega, parceiro da Elcereza. Por isso, não perca tempo e acesse agora.
O que é um Servo motor?
O Servo motor é um dispositivo eletromecânico capaz de se movimentar com precisão objetos em distâncias e ângulos específicos com velocidade.

Por isso, é possível dizer que o servo motor é uma união dos motores de velocidade com o servo motor. Embora sejam possível fazer essa comparação, continua sendo único.
Como funciona um motor de passo?
Como já foi dito anteriormente, o motor de passo é único e o motivo é a composição, como o SG92R é o mais comum, ele servirá como exemplo. Para entender o funcionamento, é necessário entender a composição, a imagem a seguir mostra cada parte do motor.

O controlador faz a leitura do PWM e aciona o motor interno para girar a caixa de engrenagem e o encoder informa o ângulo ao controlador.
Peculiaridade do SG92R
A maior característica deste servo motor, é justamente o tamanho bastante reduzido, o que facilita a implementação em projetos como braços e mão robóticas. Além disso, tem uma limitação de giro de 180 graus, o que é comum nesse tipo de motor.

Servo motor e Arduino
Por fim de exemplo, uma pequena demonstração de como usar este motor com o Arduino sem que haja problemas.
Diagrama esquemático
Diferentemente dos motores escovados, no servo é necessário o uso de 3 fios, sendo 2 de alimentação e um de PWM (fio amarelo).

Código SG92R
De antemão, já aviso que não é necessário instalar uma biblioteca para o servo motor, pois a IDE do Arduino já tem a biblioteca de forma nativa. Caso queira baixar via Github, basta clicar aqui.
#include <Servo.h>
Servo myservo;
void setup() {
pinMode(A1, INPUT);
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop() {
for(int i = 0; i < 180; ++i)
{
myservo.write(i);
delay(5);
}
for(int i = 180; i > 0; --i)
{
myservo.write(i);
delay(5);
}
}
Funcionamento
Por fim o funcionamento, note que durante o vídeo é possível escutar um barulho vindo do motor, isso é normal e ele de fato um pouco barulhento. Além disso, perceba também a suavidade do movimento.
Você precisa fazer log in para comentar.