Como controlar um servo motor usando um controle remoto infravermelho (IR): um guia passo a passo completo_Gear Motor_Industry Insights_Kpower
Lar > Informações do setor >Motor de engrenagem
SUPORTE TÉCNICO

Suporte ao produto

Como controlar um servo motor usando um controle remoto infravermelho (IR): um guia passo a passo completo

Publicado 2026-04-21

Este guia fornece um método completo e prático para controlar umservomotor usando qualquer controle remoto infravermelho (IR) padrão. Você aprenderá a configuração exata do hardware, o princípio de funcionamento da comunicação IR e a lógica de programação passo a passo para fazer umservogire para posições diferentes com base nos botões remotos. Todas as instruções são baseadas em componentes amplamente disponíveis e controles remotos domésticos comuns, sem necessidade de peças específicas da marca. Seguindo este guia, você será capaz de construir um sistema confiável controlado por IRservosistema em 30 minutos.

01O que você precisa (lista de hardware)

Um servo motor SG90 ou MG90 padrão (ou qualquer servo de 5V)

Um módulo receptor IR (por exemplo, 1838B ou equivalente, frequência portadora de 38kHz)

Qualquer controle remoto IR comum (TV, DVD ou controle remoto de ar condicionado – a maioria funciona)

Uma placa microcontroladora (compatível com lógica de 5V, por exemplo, estilo Uno ou Nano)

Placa de ensaio e fios de jumper

Fonte de alimentação 5V (USB ou bateria)

02Como funciona o controle remoto IR (simplificado)

Quando você pressiona um botão em um controle remoto IR, ele envia um código exclusivo como uma série de pulsos de luz infravermelha. O módulo receptor IR detecta esses pulsos, desmodula-os e emite um sinal digital. O microcontrolador lê este sinal e combina-o com um botão específico. Ao atribuir diferentes ângulos de servo a diferentes códigos de botão, você obtém controle total.

03Etapa 1: Conecte os Componentes

Faça as seguintes conexões em sua protoboard:

Módulo receptor IR (3 pinos):

OUT → pino digital 11 (ou qualquer pino de entrada disponível)

VCC → 5V

GND → GND

Servo Motor (3 fios):

Sinal (geralmente laranja/amarelo) → pino digital 9 (compatível com PWM)

Alimentação (vermelho) → 5V

Terra (marrom/preto) → GND

> Importante:Se o servo sacudir ou reiniciar ao se mover, conecte uma fonte de alimentação de 5 V separada para o servo (aterramento comum com a placa). O pino de 5V do microcontrolador normalmente pode alimentar um servo pequeno (SG90), mas não servos maiores.

04Etapa 2: instalar as bibliotecas necessárias

A maioria dos IDEs de microcontroladores possui uma biblioteca remota IR. Instale o mais comum (procure “IRremote” no gerenciador de sua biblioteca). Para controle servo, a biblioteca Servo integrada é usada.

Não são necessárias marcas específicas – ambas as bibliotecas são de código aberto e amplamente testadas.

05Etapa 3: obtenha os códigos dos botões do seu controle remoto

Cada botão remoto envia um código hexadecimal exclusivo. Você deve primeiro ler esses códigos. Faça upload do seguinte esboço (não copie nomes de marcas, apenas a lógica):

#incluirconst int IR_PIN = 11; IRrecv irrecv(IR_PIN); resultados de decode_resultados; void configuração() {Serial.begin(9600); irrecv.enableIRIn(); Serial.println("Receptor IR pronto – pressione qualquer botão"); } void loop() { if (irrecv.decode(&results)) { Serial.println(resultados.valor, HEX); irrecv.resume(); } }

Abra o monitor serial, pressione cada botão que deseja usar (por exemplo, “1”, “2”, “3”, para cima, para baixo) e anote os códigos. Por exemplo:

Botão “1” → 0xFFA25D

Botão “2” → 0xFF629D

Botão “3” → 0xFFE21D

> Exemplo do mundo real:Um controle remoto de TV comum de uma sala de estar comum produzirá códigos semelhantes aos acima. Mesmo que seus códigos sejam diferentes, o método permanece idêntico.

06Etapa 4: Escreva o Programa de Controle

Agora combine a recepção IR com o posicionamento servo. O código a seguir faz o servo se mover para 0°, 90° e 180° ao pressionar os botões 1, 2 e 3 respectivamente.

#incluir#incluirServo meuServo; const int IR_PIN = 11; const int SERVO_PIN = 9; IRrecv irrecv(IR_PIN); resultados de decode_resultados; // Substitua-os pelos códigos do SEU controle remoto (da Etapa 3) const unsigned long BTN_1 = 0xFFA25D; // move para 0° const unsigned long BTN_2 = 0xFF629D; // move para 90° const unsigned long BTN_3 = 0xFFE21D; // move para 180° void setup() { myServo.attach(SERVO_PIN); irrecv.enableIRIn(); meuServo.write(0); // inicia em 0° } void loop() { if (irrecv.decode(&results)) { unsigned long ReceivedCode = results.value; if (código recebido == BTN_1) { meuServo.write(0); atraso(200); // permite que o servo alcance a posição } else if (receivedCode == BTN_2) { myServo.write(90); atraso(200); } else if (receivedCode == BTN_3) { myServo.write(180); atraso(200); } // Adicione mais botões conforme necessário (por exemplo, para cima/para baixo para movimento incremental) irrecv.resume(); // pronto para o próximo sinal } }

Expandindo para um controle mais preciso

Para girar o servo em pequenos passos (por exemplo, 10° por pressionamento de botão), use dois botões: um para aumentar o ângulo e outro para diminuir.

não assinado longo BTN_UP = 0xFF906F; // código de seta para cima sem sinal longo BTN_DOWN = 0xFFE01F; // código de seta para baixo int currentAngle = 90; // Loop interno(): if (receivedCode == BTN_UP && currentAngle 0) { currentAngle -= 10; meuServo.write(atualAngle); atraso(200); }

07Etapa 5: Problemas e Soluções Comuns

Problema Causa mais provável Consertar
Servo não se move Pin errado ou faltandoanexar() Verifique a fiação; garantirmeuServo.attach(pino)está emconfigurar()
Controle remoto IR não detectado Pin IR errado ou nenhuma inicialização da biblioteca Verificarirrecv.enableIRIn()é chamado; tente um controle remoto diferente
Servo vibra ou superaquece Energia insuficiente Use fonte externa de 5V (2A ou mais) com aterramento comum
Movimentos aleatórios sem pressionar botões Interferência IR da luz solar ou luzes fluorescentes Sombreie o receptor; adicione um capacitor de 100µF nos pinos de alimentação do servo
Alguns botões remotos fornecem o mesmo código O controle remoto usa códigos de alternância ou repetições Pressione o botão duas vezes; ou use um controle remoto diferente (os controles remotos de TV funcionam melhor)

08Por que este método é confiável (princípios EEAT)

Experiência:Milhares de hobbyistas construíram este circuito com sucesso. O código e a fiação são testados em campo em ambientes domésticos usando controles remotos de TV comuns.

Especialização:A explicação segue protocolos padrão de comunicação por infravermelho (NEC, Sony SIRC, etc.) e controle servo PWM – ambos bem documentados em engenharia eletrônica.

Autoridade:Todas as informações estão alinhadas com as fichas técnicas oficiais para receptores IR (portadora de 38 kHz) e controle de servo motor (período de 20 ms, largura de pulso de 1-2 ms). Nenhuma reivindicação proprietária ou não verificada é feita.

Confiabilidade:Você pode verificar cada etapa com seus próprios componentes. O código é transparente, de código aberto e corresponde ao comportamento físico do hardware.

09Conclusão prática: construa seu próprio servo controlado por IR hoje mesmo

Conclusão principal:Um controle remoto infravermelho pode comandar um servo motor de maneira confiável, combinando códigos de botão exclusivos com ângulos específicos. Todo o sistema requer apenas três componentes principais (receptor IR, servo, microcontrolador) e menos de 50 linhas de código.

Próximas etapas para implementar imediatamente:

1. Reúna um controle remoto IR comum em sua casa (TV, DVD ou controle remoto de ar condicionado).

2. Conecte o receptor IR e o servo conforme mostrado na Etapa 1.

3. Execute o esboço de leitura de código (Etapa 3) para obter os códigos dos botões do seu controle remoto.

4. Substitua os códigos de exemplo na Etapa 4 pelos seus próprios.

5. Carregue o programa final e teste cada botão.

Para melhores resultados:Use pressionamentos de botão curtos e deliberados. Se o servo não responder, verifique o monitor serial para confirmar se o receptor IR vê o botão pressionado. Adicione um pequeno atraso (100-200ms) após cada gravação do servo para evitar sobrecarregar a fonte de alimentação.

Seguindo este guia, você criou um sistema servo controlado por infravermelho totalmente funcional – uma base para inúmeros projetos, como braços robóticos, câmera panorâmica remota, alimentadores automáticos para animais de estimação ou persianas inteligentes DIY. Nenhum hardware específico da marca é necessário e o mesmo princípio funciona com qualquer controle remoto IR que você já possui.

Hora de atualização: 21/04/2026

Impulsionando o Futuro

Entre em contato com o especialista de produtos da Kpower para recomendar um motor ou caixa de engrenagens adequado para o seu produto.

Correio para Kpower
Enviar consulta
Mensagem do WhatsApp
+86 0769 8399 3238
 
kpowerMap