Lar > Informações do setor >Motor de engrenagem
SUPORTE TÉCNICO

Suporte ao produto

Princípio do ângulo da engrenagem de direção com controle PWM Relação correspondente entre largura de pulso e ângulo

Publicado 2026-03-03

Não entendo a relação entre PWM eservoângulo? Vendo oservosem virar ou virar aleatoriamente, fiquei ansioso. Não se preocupe, vamos decompô-lo e explicá-lo claramente hoje, para que você não apenas saiba como ajustá-lo, mas também entenda os princípios por trás dele.

Por que ele não se move quando dou um sinal para oservo?

Muitos amigos se depararam com esta situação quando brincaram com servos pela primeira vez: depois que os fios foram conectados e o programa foi gravado, os servos simplesmente não se moveram. Geralmente isso ocorre porque você não entende o que é o sinal PWM. Simplificando, há um pequeno motor na caixa de direção e um conjunto de circuitos de controle. Ele não analisa a tensão ou a corrente, mas apenas reconhece um sinal de pulso especial, que é o PWM.

Este sinal é como um comandante estrito, enviando um comando ao leme a cada 20 milissegundos (ou seja, uma frequência de 50Hz). A largura deste comando, ou seja, a duração do nível alto, determina diretamente o quanto o servo gira. Seu sinal tem frequência errada ou largura de pulso errada. O servo não consegue entender isso e irá naturalmente ignorar você.

Qual é a relação entre largura e ângulo do pulso?

Precisamos esclarecer claramente essa relação central. A largura de pulso de um sinal de servocontrole padrão está geralmente entre 0,5 milissegundos e 2,5 milissegundos. Você pode pensar nisso como uma escala de tempo. Quando o nível alto dura 1,5 milissegundos, o eixo de saída do servo irá parar na posição intermediária, que é 90 graus.

Se o tempo de alto nível for reduzido para 0,5 milissegundos, o servo girará para a esquerda, geralmente 0 graus. Pelo contrário, se for estendido para 2,5 milissegundos, ele girará para a extrema direita, que é 180 graus. Portanto, controlar o ângulo da caixa de direção é essencialmente controlar com precisão a duração desse alto nível, que é o que costumamos chamar de “ciclo de trabalho”.

Como calcular com precisão o ciclo de trabalho necessário

Depois de compreender a relação entre a largura e o ângulo do pulso, temos que descobrir como obter esse tempo preciso. Usamos um sinal de 50 Hz com período de 20 milissegundos. Para obter um nível alto de 1,5 milissegundos, o ciclo de trabalho é 1,5 dividido por 20, o que equivale a 7,5%. Da mesma forma, 0,5 milissegundos correspondem a um ciclo de trabalho de 2,5% e 2,5 milissegundos correspondem a um ciclo de trabalho de 12,5%.

Este cálculo é crucial durante a programação. Por exemplo, se você usá-lo, sua função gerará um valor de 0 a 255, correspondendo a um ciclo de trabalho de 0% a 100%. Você precisa converter 7,5% no valor correspondente, que é cerca de 19. Se o cálculo não for preciso, o servo não será capaz de girar para a posição precisa desejada.

Como devo escrevê-lo no código para que funcione?

Agora que a teoria está clara, vamos começar a escrevê-la. Tomando como exemplo o mais comum, não é possível utilizá-lo sozinho porque sua frequência padrão não é 50Hz. Precisamos usar a biblioteca Servo.h, que pode nos ajudar a lidar com todos os cálculos PWM complexos. Você só precisa escrever .(9), conectar a linha de sinal ao pino 9 e, em seguida, escrever .write(90) e o servo girará 90 graus.

Se você estiver usando outras placas de desenvolvimento, como a STM32, o princípio é o mesmo. A chave é encontrar a função que controla a frequência PWM e a largura do pulso. A ideia central é: configurar o temporizador, definir a frequência PWM para 50 Hz e, em seguida, alterar o valor do registro de comparação para ajustar a largura do pulso para controlar o ângulo.

Por que o servo vibra às vezes?

A servo vibração é um problema problemático. Existem dois motivos mais comuns. Primeiro, a fonte de alimentação é insuficiente. O servo requer uma corrente relativamente grande para girar. Se a porta USB da sua placa de desenvolvimento tiver fonte de alimentação insuficiente, isso causará instabilidade de tensão, distúrbio de sinal e o servo irá tremer naturalmente. A solução é conectar uma fonte de alimentação externa separada ao servo e conectar os fios terra da placa de desenvolvimento e do servo ao mesmo aterramento.

Outro motivo é a interferência de sinal. Se as linhas de controle e as linhas de acionamento do motor estiverem emaranhadas ou se o sinal PWM em si não for estável o suficiente, isso também poderá causar instabilidade. Verifique a fiação, tente manter as linhas de sinal longe de linhas de alta corrente e certifique-se no código de que a interrupção do temporizador gerada pelo sinal PWM não seja frequentemente interrompida por outros programas.

Como usar um servo que excede 180 graus

Se você acha que o servo padrão de 180 graus não é suficiente e quer tocar algo mais legal, então você deve dar uma olhada no servo de rotação contínua de 360 ​​graus ou usar um motor sem escova com ESC. Embora o princípio de controle ainda seja PWM, a lógica é diferente. Para um servo de 360 ​​graus, uma largura de pulso de 1,5 ms o faz parar. Se for inferior a 1,5 ms, ele girará em uma direção. Se for maior que 1,5 ms, ele girará na direção oposta. Quanto mais a largura do pulso se desviar, mais rápido ele girará.

Isso lhe dá mais espaço criativo e você pode facilmente fazer uma roda de carro ou robô. No entanto, deve-se notar que este tipo de aparelho de direção não pode controlar com precisão o ângulo, mas apenas controlar a velocidade e a direção. Se o seu projeto exigir posicionamento preciso, como um braço robótico, você ainda precisará usar servos padrão.

Espero que o que falei hoje possa ajudá-lo a entender completamente o PWM e o controle de servo. Que outros problemas estranhos você encontrou ao ajustar a direção? Por exemplo, você já encontrou uma situação em que o servo inverte ou fica extremamente quente? Bem-vindo a compartilhar na área de comentários, vamos discutir e resolver juntos! Se você achar o artigo útil, não esqueça de curtir e compartilhar com seus amigos que também estão jogando.

Hora de atualização: 03/03/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
+86 0769 8399 3238
 
kpowerMap