CALCULADORA · CONTROL

PWM para servomotor

Convierte un ángulo de 0 a 180° en ancho de pulso y duty cycle para un servo RC típico.

Resultado—
Abrir en Engineering Lab ↗

El resultado y la visualización se actualizan mientras modificas los valores.

VISUALIZACIÓN EN TIEMPO REAL

¿Qué calcula esta herramienta?

Muchos servos RC interpretan pulsos cercanos a 1–2 ms dentro de un periodo alrededor de 20 ms, aunque los límites exactos dependen del modelo.

FÓRMULA PRINCIPAL

tp ≈ 1 ms + ángulo × (1 ms / 180°)

Introduce los valores en las unidades indicadas. Total Engineering realiza automáticamente las conversiones necesarias para mostrar el resultado en unidades prácticas.

Ejemplo resuelto

A 90° y 50 Hz, el pulso típico es de 1.5 ms y el duty aproximado es 7.5%.

Recomendaciones prácticas

  • Verifica el rango real del datasheet del servo.
  • No alimentes servos grandes desde el pin del microcontrolador.
  • Comparte tierra entre el controlador y la fuente del servo.

Cuándo resulta útil

Conversión de ángulo objetivo a ancho de pulso para servos de hobby y prototipos mecatrónicos.

Error común que conviene evitar

No todos los servos usan exactamente 1–2 ms o el mismo rango angular; revisa el datasheet del modelo concreto.

Fórmulas completas del PWM para servos

Un servo de modelismo no responde al duty cycle en sí, sino a la duración del pulso en alto, que se repite aproximadamente cada 20 ms. Con la convención más común (1 ms = 0°, 2 ms = 180°):

  • Ancho de pulso: tp = 1 ms + (ángulo / 180°) × 1 ms
  • Ángulo a partir del pulso: ángulo = (tp − 1 ms) × 180° / 1 ms
  • Periodo: T = 1000 / f ms (50 Hz → 20 ms)
  • Duty cycle: D = tp / T × 100 %
  • Cuenta de un temporizador de n bits: cuenta = tp / T × 2ⁿ
  • Rango genérico: tp = tmín + (ángulo / ángulomáx) × (tmáx − tmín), si tu servo usa otros límites

Tabla de pulsos a 50 Hz

ÁnguloPulsoDutyCuenta en 12 bits (4096)Cuenta en 16 bits (65 536)
0°1.00 ms5.00 %≈ 205≈ 3277
45°1.25 ms6.25 %2564096
90°1.50 ms7.50 %≈ 307≈ 4915
135°1.75 ms8.75 %≈ 358≈ 5734
180°2.00 ms10.00 %≈ 410≈ 6554

La columna de 12 bits sirve, por ejemplo, para controladores PWM como el PCA9685 configurado a 50 Hz; la de 16 bits, para temporizadores de microcontroladores con esa resolución. Si la frecuencia real del oscilador difiere un poco, ajusta las cuentas midiendo con un osciloscopio.

Ejemplo resuelto

Quieres llevar un servo a 60° con PWM de 50 Hz y un temporizador de 16 bits.

  1. Pulso: tp = 1 + 60 / 180 ≈ 1.333 ms.
  2. Periodo: T = 1000 / 50 = 20 ms.
  3. Duty: 1.333 / 20 ≈ 6.67 %.
  4. Cuenta: 0.0667 × 65 536 ≈ 4369.

Muchos servos aceptan pulsos fuera de 1 a 2 ms (algunos llegan a 0.5 o 2.5 ms) y otros tienen un recorrido distinto de 180°. Calibra los extremos con pequeños incrementos para no forzar los topes mecánicos.

Errores comunes

  • Alimentar el servo desde el microcontrolador: los picos de corriente al moverse pueden reiniciar la placa; usa una fuente aparte de la tensión adecuada.
  • No unir las tierras: la señal necesita una referencia común entre el controlador y la fuente del servo.
  • Pensar en el duty como en un motor DC: lo que importa es el ancho del pulso; cambiar la frecuencia sin mantener el pulso cambia la posición o desconcierta al servo.
  • Forzar los topes: mandar pulsos fuera del rango real hace que el servo empuje contra su tope, se caliente y consuma mucha corriente.
  • Usar un servo de rotación continua como posicional: en esos modelos el pulso controla velocidad y sentido, no el ángulo.

Preguntas frecuentes

¿Por qué 50 Hz?

Es la frecuencia de repetición tradicional de los receptores de radiocontrol (un pulso cada 20 ms). Muchos servos digitales aceptan frecuencias más altas, pero consulta su hoja de datos antes de cambiarla.

¿Qué tensión necesita un servo?

Los servos pequeños suelen trabajar a unos 4.8 a 6 V, pero hay modelos de mayor tensión. Usa la tensión que indique el fabricante.

¿Cómo genero el PWM?

Con un temporizador del microcontrolador, una biblioteca de servos o un controlador PWM dedicado. Para los conceptos de periodo y duty, consulta la calculadora PWM.

Herramienta educativa. Verifica tolerancias, hojas de datos, normas y condiciones reales antes de utilizar los resultados en aplicaciones críticas.