Pular para o conteúdo
Uncategorized

Domine o Servo Motor SG90: O Segredo para Dar Movimento aos seus Projetos 3D e com Arduino!

Bianca 7 min de leitura

O o servo motor SG90 é o queridinho de quem ama um projeto Arduino!!

Leve, barato e muito fácil de controlar com o Arduino. Neste artigo, você vai entender como ele funciona, como integrar perfeitamente com suas peças impressas em 3D, os cuidados essenciais com a parte elétrica e como funciona o código!

Conhecendo o Servo Motor SG90:

O SG90 é um micro servo motor capaz de controlar o ângulo de seu eixo com precisão, variando de 0° a 180°. Ao contrário de motores DC comuns que giram sem parar, o servo sabe exatamente em qual posição deve parar pois tem um circuito interno de controle e um potenciômetro acoplado às engrenagens.

 

  • Tensão de Operação: Funciona perfeitamente entre 4.8V e 6V (ideal para sistemas de 5V).
  • Torque: Cerca de 1.8 kgf.cm, suficiente para movimentar mecanismos leves, travas, garras e articulações.
  • Conectores: Cabo de 3 vias com padronização de cores bem definida para facilitar as conexões.
  • Acessórios: Acompanha normalmente alças de fixação (braços plásticos) e parafusos para acoplamento mecânico.

Design 3D e Calibração do Ponto Zero:

Servo motor SG90 e seus acessórios

Na hora de criar ou baixar modelos 3D que utilizem o SG90, o maior erro da maioria dos iniciantes é encaixar a alça plástica do motor antes de programá-lo.
Se você montar a peça mecânica com o eixo e depois mandar o Arduino girar para 0°, o motor tentará forçar além do limite mecânico da peça a qual ele está acoplado, o que pode espanar as engrenagens plásticas ou até queimar o componente.

Para evitar isso, siga estas 3 boas práticas:

  • 01: Antes de parafusar qualquer engrenagem ou braço impresso em 3D no eixo, conecte o servo ao Arduino e envie o comando para posicioná-lo no ponto zero (0°) ou no centro (90°).
  • 02: Modelos 3D para encaixe do SG90 devem considerar uma folga de cerca de 0.2 mm a 0.3 mm para acomodar o corpo do motor sem exigir força excessiva na montagem.
  • 03: Utilize os parafusos originais que acompanham o servo para fixar o corpo do motor na estrutura impressa em 3D, garantindo que o torque não desloque o conjunto durante o uso.

Ligação Elétrica:

Pinagem do cabo do servo motor SG90

O cabo do servo motor SG90 possui três fios com funções específicas. Identificar cada um é muito simples:

  • Fio Marrom ou Preto: GND (GND / Terra do circuito).
  • Fio Vermelho: VCC (Alimentação positiva de 5V).
  • Fio Amarelo ou Laranja: Sinal PWM (Conectado a um pino digital do Arduino).

⚠️ Atenção à alimentação!

Evite alimentar o servo motor diretamente pelo pino de 5V do Arduino, principalmente quando estiver utilizando vários servos. Um único servo pode até funcionar dessa maneira, maaaaaas, quando vários motores se movimentam ao mesmo tempo ou trabalham sob carga, o consumo de corrente pode ultrapassar o que a alimentação da placa consegue fornecer.

Isso pode causar quedas de tensão, fazendo o Arduino reiniciar constantemente ou apresentar comportamentos estranhos.

A solução recomendada é utilizar uma fonte externa de 5V, como uma fonte para protoboard ou um módulo de alimentação, dedicada aos servos. Mesmo usando uma fonte externa, lembre-se de interligar o GND da fonte com o GND do Arduino, para que ambos compartilhem a mesma referência elétrica.

Programação no Arduino

Controlar o servo motor no ambiente do Arduino é super fácil graças à biblioteca nativa Servo.h. O código a seguir coloca o servo em 3 diferentes graus de rotação (0°, 90°, 180°) com intervalo de 1 segundo entre cada:

#include <Servo.h> // Inclui a biblioteca para controlar servos

Servo meuServo; // Cria um objeto chamado meuServo para controlar o motor

void setup() { // a função setup executa uma única vez ao ligar ou reiniciar o Arduino
  meuServo.attach(9); // Conecta o sinal do servo ao pino digital 9 do Arduino
} // Finaliza a função setup

void loop() { // o loop executa repetidamente enquanto o Arduino estiver ligado
  meuServo.write(0); // Move o servo para a posição de 0 graus
  delay(1000); // Espera 1 segundo

  meuServo.write(90); // Move o servo para a posição de 90 graus
  delay(1000); // Espera 1 segundo

  meuServo.write(180); // Move o servo para a posição de 180 graus
  delay(1000); // Espera 1 segundo

} // Finaliza a função loop; o Arduino volta ao início dela

Agora, vamos andar de forma mais sofisticada, o código a seguir posiciona o servo no ponto zero para calibração e, em seguida, faz um movimento suave de varredura entre 0 e 180 graus:

#include <Servo.h>
Servo meuServo;

void setup() {
  meuServo.attach(9); // Conecta o pino de sinal do servo ao pino digital 9 do Arduino
  meuServo.write(0); // Define a posição inicial em 0 graus para calibração
  delay(1000);
}

void loop() {
  // Movimento de 0 a 180 graus
  for (int angulo = 0; angulo <= 180; angulo += 1) {
    meuServo.write(angulo);
    delay(15); // Pequena pausa para garantir movimento suave
  }
  delay(500);
  // Retorno de 180 a 0 graus
  for (int angulo = 180; angulo >= 0; angulo -= 1) {
    meuServo.write(angulo);
    delay(15);
  }
  delay(500);
}

💡 Como funciona esse movimento é suave?
O código utiliza dois loops for: o primeiro incrementa o ângulo de 0° até 180° de 1 em 1, enquanto o segundo decrementa o ângulo de 180° até 0°.

Como o ângulo muda de 1 em 1 grau, com uma pequena pausa de 15ms entre cada posição, o movimento fica muito mais suave, até satisfatório, diferente daqueles trancões do primeiro código.

Onde Usar o SG90? 5 Ideias Incríveis de Projetos com Impressão 3D e Arduino

Agora que você já domina o controle básico, vou dar alguns exemplos com o SG90 combinado com peças em impressas em 3D:

  • Radar Sonar com Sensor Ultrassônico HC-SR04: Fixando o sensor ultrassônico sobre o eixo do servo motor, você consegue criar um scanner panorâmico de 180°. Conforme o motor varre o ambiente, o Arduino mede a distância de obstáculos e pode plotar um mapa em tempo real estilo radar militar na tela do computador!
  • Braço Robótico Articulado: Usando de 3 a 4 servos SG90, é possível articular base, ombro, cotovelo e garra para pegar pequenos objetos, organizar peças na mesa ou até simular uma linha de montagem industrial.
  • Robôs Quadrúpedes e “Aranhas”: O SG90 é a peça-chave dos famosos robôs bípedes como o Otto DIY ou robôs aranhas de 4 a 8 patas. Com dois servos em cada perna, o robô ganha passos firmes, consegue dançar, desviar de obstáculos e fazer manobras bem divertidas.
  • Mecanismos Animatrônicos e Olhos Articulados para Cosplay: Dois servos SG90 podem formar um movimento perfeito para globos oculares para cima, para baixo e para os lados de forma realista.
  • Display Mecânico de 7 Segmentos: Um dos projetos mais impressionantes e criativos da impressão 3D! Em vez de usar LEDs comuns, cada traço do display é uma aleta plástica mecânica empurrada ou recolhida por um micro servo SG90. Você cria um relógio ou placar numérico físico retrô e interativo que se move diante dos seus olhos! (esse eu já fiz e tem vídeo no canal!)

Bora Tirar o Projeto do Papel?

Agora que você já domina o esquema de ligações, os cuidados com a fonte de alimentação e a calibração do ponto zero, a sua imaginação é o único limite! BOOOOOOORA BOTAR A MÃO NA MASSAA!

 

Compartilhar:

Leia também