Skip to content
RFrftools.io
Motor27 de febrero de 202611 min de lectura

Control de motores de corriente continua: explicación de PWM, controladores y codificadores

Guía completa para controlar motores de corriente continua con PWM: seleccionar el controlador de puente en H correcto, dimensionar el MOSFET y cerrar el ciclo con un codificador.

Contenido

Introducción

Variar el voltaje para cambiar la velocidad del motor de corriente continua suena sencillo sobre el papel. En la práctica, hay que hacer malabares con la corriente de entrada, que puede aumentar 10 veces más que la nominal indicada en la placa de identificación, con la contraelectromotriz, que combate la tensión de suministro, con los límites térmicos que se le acercan sigilosamente durante cargas sostenidas, y con los requisitos de precisión de posición que exigen circuitos de retroalimentación. En esta guía se desglosa cada elemento de la pila de control para que comprendas realmente lo que ocurre bajo el capó.


El modelo de motor de corriente continua

Un motor de corriente continua con escobillas no es solo una resistencia: tiene una resistencia de armadura, una inductancia y una fuente de voltaje (contraEMF) que funcionan juntas. El modelo de circuito tiene este aspecto:

Vsupply=IaRa+LadIadt+VemfV_{supply} = I_a R_a + L_a \frac{dI_a}{dt} + V_{emf}
La contrafuerza electromotriz es proporcional a la velocidad del eje:Vemf=KeωV_{emf} = K_e \cdot \omega. El par proviene de la corriente:T=KtIaT = K_t \cdot I_a. Estas constantesKeK_eyKtK_tsuelen estar ocultas en algún lugar de la hoja de datos, a menudo en unidades mixtas que dan ganas de gritar.

Una vez que el motor alcanza el estado estacionario y el inductor deja de luchar contra ti, la ecuación se simplifica:

ω=VsupplyIaRaKe\omega = \frac{V_{supply} - I_a R_a}{K_e}
Esto le indica por qué los motores cargados se ralentizan: el términoIaRaI_a R_areduce su voltaje efectivo. Un motor que pasa de 5 A a 0,5 Ω pierde 2,5 V allí mismo, lo que se traduce directamente en una pérdida de velocidad.

Juega con estas relaciones usando la calculadora de velocidad del motor de corriente continua para ver cómo la resistencia del blindaje y la corriente de carga afectan a tus RPM finales.


Fundamentos de PWM

La PWM (modulación por ancho de pulso) es la forma de controlar el voltaje del motor sin quemar energía en una resistencia en serie como en 1985. Enciende y apaga rápidamente la fuente de alimentación: la inductancia del motor suaviza los pulsos para convertirlos en una tensión continua efectiva:

Veff=D×VsupplyV_{eff} = D \times V_{supply}
dondeDDes su ciclo de trabajo de 0 a 1. Si funciona al 75% a 12 V, tendrá una efectividad de 9 V. Matemáticas simples, pero la elección de frecuencia es más importante de lo que la mayoría de la gente cree.

FrecuenciaVentajasContras
1—5 kHzBajas pérdidas de conmutación, fáciles de implementarUn gemido audible te vuelve loco
20—50 kHzFuncionamiento silencioso, buena eficienciaPérdidas de conmutación moderadas
> 100 kHzRespuesta transitoria ultrarrápidaLa EMI se convierte en una pesadilla, las pérdidas de conmutación aumentan
Regla empírica: Utilice los motores de corriente continua con escobillas típicos de 20 a 25 kHz. Está por encima del rango audible (sin molestos zumbidos), las pérdidas de conmutación son razonables y la mayoría de los temporizadores con microcontroladores lo manejan con facilidad. He visto a ingenieros utilizar los 100 kHz pensando que cuanto más rápido siempre es mejor, y que después han pasado semanas depurando la EMI radiada y lidiando con el timbre del controlador de puerta.

La calculadora PWM Duty Cycle te permite calcular la tensión efectiva y estimar el aspecto que tendrá la corriente de bloqueo antes de hacer estallar el conductor.


Controladores H-Bridge

El control bidireccional requiere un puente en H: cuatro interruptores dispuestos de manera que puedas cambiar la polaridad entre los terminales del motor. El nombre proviene de la topología del circuito, que literalmente se parece a una H.

Discreto frente a integrado

Los controladores integrados como el DRV8833, el TB6612 o el L298N son la mejor opción, a menos que tenga una razón específica para no hacerlo. Se encargan de la inserción en los momentos muertos (para no provocar cortocircuitos en el suministro de los MOSFET de alta y baja potencia), del apagado térmico y de la protección contra sobrecorriente. El L298N es antiguo e ineficiente, pero prácticamente indestructible: ideal para aprender y terrible para proyectos que funcionan con baterías. Los MOSFET discretos tienen sentido cuando necesitas consumir mucha corriente o quieres la máxima eficiencia. Necesitarás controladores de compuerta (es divertido depurar los circuitos de arranque de alta potencia), un diseño cuidadoso de la PCB para evitar que se rompan y una gestión adecuada de los tiempos muertos en el código de control. Sin embargo, el aumento de eficiencia es real: los diseños discretos pueden alcanzar más del 95%, mientras que el L298N se esfuerza por superar el 70%.

Selección de MOSFET

Cuando eliges MOSFET para un puente en H, cuatro especificaciones son importantes:

  1. VDSV_{DS}: debe superar el voltaje de suministro con un margen. Usa el artículo 15§ como punto de partida. De lo contrario, los picos transitorios e inductivos lo afectarán.
  1. IDI_D: debe soportar la corriente de entrada máxima, no solo la corriente nominal. Aplica el artículo 17§ como mínimo. Esa corriente de entrada puede ser 10 veces mayor que el valor del estado estacionario.
  1. RDS(on)R_{DS(on)} — Cuanto más bajo es siempre mejor. Esto determina sus pérdidas de conducción. Un MOSFET de 10 mΩ frente a 50 mΩ marca una gran diferencia en corrientes altas.
  1. QgQ_g: la carga de la puerta determina la rapidez con la que puedes cambiar y la cantidad de energía que consume el controlador de la puerta. Cuanto más bajo es mejor para el PWM de alta frecuencia.
La pérdida de conducción por MOSFET se calcula de la siguiente manera:
Pcond=I2×RDS(on)×DP_{cond} = I^2 \times R_{DS(on)} \times D
dondeDDes el ciclo de trabajo durante el que está encendido ese interruptor en particular. Las pérdidas altas y bajas son diferentes porque se producen en ciclos de trabajo complementarios.

La calculadora H-Bridge Selection le ayuda a determinar los requisitos de corriente máxima y las clasificaciones mínimas de MOSFET. Usa la calculadora de potencia del controlador del motor para estimar la disipación total de energía y comprobar si necesitas un disipador térmico.


Corriente de entrada y arranque

Esto es lo que más llama la atención: cuando se aplica voltaje por primera vez a un motor estacionario, la fuerza contraelectromotriz es cero. No hay nada que se oponga al voltaje aplicado, excepto la pequeña resistencia de la armadura. La corriente inicial se convierte en:

Iinrush=VsupplyRaI_{inrush} = \frac{V_{supply}}{R_a}
Supongamos que tiene un motor con una resistencia de armadura de 0,5 Ω que funciona con 12 V. La corriente de entrada es de 24 A, aunque la placa de identificación del motor diga 2 A continuos. Eso es un multiplicador de 12 veces. Tu conductor tiene que hacer frente a esto sin dejar escapar el humo mágico.

Estrategias de mitigación que realmente funcionan:
  • Arranque suavemente el ciclo de trabajo del PWM: pase del 0% al objetivo en más de 100 a 500 ms. Sencillo y efectivo, solo cuesta unas pocas líneas de código.
  • Utilice un controlador limitador de corriente: piezas como el DRV8434 tienen un sistema de reducción de corriente incorporado que limita automáticamente los picos de corriente.
  • El tamaño del puente en H se ajusta a la corriente de entrada, no a la corriente nominal: esto no es negociable. Un motor de 2 A necesita un controlador con capacidad de 20 a 30 A si desea confiabilidad.
La mayoría de los ingenieros se saltan el arranque suave y se preguntan por qué sus conductores siguen muriendo. No seas ese ingeniero.

Codificadores para control de bucle cerrado

El control PWM de circuito abierto funciona bien para ventiladores, bombas y otras aplicaciones en las que no te importa la velocidad o la posición exactas. En el momento en que necesitas precisión (robótica, control numérico o cualquier cosa con control de posición), necesitas la opinión de un codificador.

Tipos de codificadores

Los codificadores incrementales ópticos utilizan un disco ranurado y fotointerruptores para generar pulsos de cuadratura AB. Son el tipo más común y están disponibles entre 100 y 10 000 pulsos por revolución (PPR). Señales limpias, buena resolución, pero no les gusta el polvo ni las vibraciones. Los codificadores magnéticos utilizan sensores de efecto Hall y un anillo magnetizado. Mucho más resistente a la contaminación y a los golpes. Los encontrará en motores industriales y aplicaciones automotrices. La resolución suele ser inferior a la óptica, pero sobrevivirán a entornos en los que un codificador óptico eliminaría instantáneamente. Los codificadores absolutos muestran la posición real del eje en forma de palabra digital, sin necesidad de contar ni de establecer una secuencia de referencia tras el encendido. Son caros y exagerados para la mayoría de los proyectos, pero son imprescindibles para el seguimiento de posiciones en varios giros en aparatos como monturas de telescopios o robots industriales.

Decodificación en cuadratura

Dos canales A y B se desfasan 90°. Al observar los bordes ascendentes y descendentes en ambos canales, obtendrás 4 veces la resolución del PPR básico:

CPR=4×PPR\text{CPR} = 4 \times \text{PPR}
Un codificador de 1000 PPR ofrece 4000 conteos por revolución, lo que equivale a una resolución angular de 0,09°. La dirección de rotación proviene del canal que conduce: si A lleva a B, vas hacia adelante, si B lleva a A, vas hacia atrás.

La mayoría de los microcontroladores tienen periféricos descodificadores en cuadratura por hardware que gestionan esto automáticamente. Si intentas hacerlo en software con interrupciones, empezarás a perder cuentas superiores a unos pocos miles de RPM.

Usa la calculadora de resolución del codificador para calcular tu RCP real, la resolución angular y la frecuencia de pulso máxima que debe soportar el contador.


Control de velocidad PID

Una vez que tengas la información del codificador que te indique la velocidad real del eje, puedes cerrar el ciclo con un controlador PID. La ecuación PID clásica:

u(t)=Kpe(t)+Kie(t)dt+Kdde(t)dtu(t) = K_p e(t) + K_i \int e(t)\,dt + K_d \frac{de(t)}{dt}
dondee(t)=ωsetpointωmeasurede(t) = \omega_{setpoint} - \omega_{measured}es tu error de velocidad.

El término proporcionalKpK_pte da una respuesta inmediata proporcional al error. El término integralKiK_ielimina el error de estado estacionario al acumular errores a lo largo del tiempo. El término derivadoKdK_damortigua las oscilaciones al responder a la tasa de cambio. Lograr que los tres jueguen bien juntos es más arte que ciencia.

Afinación de Ziegler-Nichols

Ziegler-Nichols le ofrece un punto de partida práctico basado en la respuesta escalonada en bucle abierto. No será perfecto, pero es mejor que las conjeturas aleatorias:

  1. Aplica una entrada escalonada (por ejemplo, salta del 0% al 50% de PWM) y mide la respuesta de velocidad del motor
  2. Extraiga tres parámetros: ganancia de procesoKK, tiempo muertoLLy constante de tiempoτ\tau3. Calcule las ganancias iniciales de PID:
-Kp=1.2τ/(KL)K_p = 1.2\tau / (K \cdot L)-Ki=Kp/(2L)K_i = K_p / (2L)- § 30§

No serán óptimos, pero te permitirán llegar al estadio. A partir de ahí, afinas empíricamente: aumentasKpK_phasta obtener oscilaciones, retrocedes un 50% y luego ajustasKiK_iyKdK_dal gusto.

La calculadora de ajuste PID calcula las ganancias iniciales a partir de los parámetros de respuesta escalonados medidos. Te ahorra tener que hacer los cálculos a mano y cometer errores aritméticos a las 2 de la mañana.


Gestión térmica

Los motores generan calor en las bobinas a partir de pérdidas resistivas:P=I2RaP = I^2 R_a. El conductor genera calor a partir de las pérdidas de conducción en los MOSFET: § 35§. Si se mantiene demasiado caliente durante demasiado tiempo, se producirá una reducción térmica o un fallo total.

La temperatura de funcionamiento funciona para:

Tmotor=Tambient+Ploss×RθT_{motor} = T_{ambient} + P_{loss} \times R_{\theta}
dondeRθR_{\theta}es la resistencia térmica de la carcasa del motor al ambiente. Las hojas de datos suelen dar este número, o se puede medir empíricamente haciendo funcionar el motor a una potencia conocida y comprobando el aumento de temperatura con un termopar.

Esto es lo que más molesta a la gente: la resistencia al devanado del cobre aumenta con la temperatura, aproximadamente un 0,39% por °C. Un motor que está 50 °C más caliente que el ambiente tiene una resistencia al devanado aproximadamente un 20% más alta. Esto significa menos par para la misma corriente, lo que significa que se necesita más corriente para mantener el par, lo que genera más calor. Es un círculo vicioso si corres cerca del límite térmico.

Compruebe la curva de reducción térmica del motor en la hoja de datos. La mayoría de los motores comienzan a reducir la potencia en torno a los 100 °C de la temperatura de la caja y se reducen por completo en 150 °C. Si tiene previsto funcionar de forma continua con cargas elevadas, necesitará refrigeración por aire forzado o un motor más grande.


Resumen

Controlar correctamente los motores de corriente continua implica comprender el sistema en su totalidad:

  1. Modele el motor correctamente: utilice el artículo 37 para predecir la velocidad y la corriente bajo carga, no solo para las especificaciones en vacío
  2. Ajuste el tamaño del controlador a la realidad: diseñado para la corriente de entrada (entre 5 y 10 veces la corriente nominal), no para la potencia nominal nominal
  3. Elija su frecuencia PWM con cuidado: entre 20 y 25 kHz es el punto óptimo para el silencio y la eficiencia en la mayoría de las aplicaciones
  4. Agregue comentarios cuando necesite precisión: los codificadores en cuadratura le brindan 4 veces más resolución y detección de dirección
  5. Ajuste su controlador PID: comience con Ziegler-Nichols y, a continuación, perfeccione en función de la respuesta real del sistema
  6. No ignore los límites térmicos: calcule la temperatura del motor y del controlador con una carga continua máxima, no con una carga máxima
La diferencia entre un sistema de control del motor que funciona y uno que funciona de manera confiable radica en el manejo adecuado de estos detalles. Evalúe todo para que se adapte a las peores condiciones posibles, añada un margen y pruébelo a temperaturas extremas antes de iniciar la producción.

Artículos Relacionados