El primer uso práctico de un motor eléctrico para impulsar un vagón de ferrocarril en un tramo corto de vía fue documentado en 1834 por Thomas Davenport. Hoy en día, los motores son el principal impulsor de transporte electrificado, automatización industrial, y productos comerciales y de consumo. Un estudio de la Agencia Internacional de la Energía (AIE) estima que los sistemas impulsados por motores consumen entre el 40% y el 45% de la electricidad generada en el mundo.
En las últimas décadas, los motores sin escobillas se han vuelto más populares debido a su mayor eficiencia, densidad de potencia y fiabilidad. A medida que fue creciendo su popularidad, se desarrollaron técnicas para lograr un control preciso de estos motores y aumentar aún más su eficiencia.
El control de campo orientado (FOC) es una de las técnicas de control que proporciona un control preciso sobre el rango completo del par motor y la velocidad en motores sin escobillas.
Como muestra el esquema anterior, el control de campo orientado se basa en controladores PI para lazos de control de velocidad, corriente Iq y corriente Id. Los controladores PI son simples y fáciles de implementar, pero pueden ser difíciles de ajustar en presencia de incertidumbres y perturbaciones externas, tales como:
- Incertidumbres en los parámetros del motor y la dinámica del sistema
- Cambios en los parámetros del motor (resistencia, inductancia o fuerza contraelectromotriz) debido a desgaste, deterioro y temperatura de funcionamiento
- Fluctuaciones de tensión de entrada y par motor de carga
- Cambios en histéresis y región de funcionamiento en el comportamiento del motor
Además de estos factores, también se debe considerar la necesidad de volver a ajustar los controladores cuando se redimensiona un motor para una aplicación determinada. Este proceso implica un esfuerzo significativo. Para abordar estos retos, se pueden utilizar algoritmos de control avanzados para diseñar controladores de campo orientado que tengan en cuenta estos factores, al mismo tiempo que mejoran la precisión del control, el tiempo de respuesta y la eficiencia del motor, incluso en entornos difíciles.
Después de leer este white paper, comprenderá mejor el diseño de controladores de campo orientado. En este documento se analizan las herramientas de MATLAB® y Simulink® para utilizar con las siguientes técnicas de control:
- Control activo de rechazo de perturbaciones (ADRC)
- Control predictivo basado en modelo (MPC)
- Reinforcement Learning (RL)
En la tabla siguiente se comparan estos métodos de control avanzados entre sí y con el control PID.
ADRC | MPC | RL | Control PID | |
¿Cómo funciona? | Utiliza un observador de estado extendido (ESO) para estimar y compensar incertidumbres y perturbaciones en tiempo real | Utiliza predicción de modelos para optimizar las acciones de control en un horizonte de predicción | Aprende las políticas de control óptimas directamente de los datos mediante ensayo y error | Calcula la señal de control en función de acciones proporcionales, integrales y derivativas sobre la señal de error |
¿Cómo funciona frente a incertidumbres, no linealidades y perturbaciones externas del sistema? — Bien |
|
|
|
|
¿Es fácil iniciarse y obtener buenos resultados? — Fácil |
|
|
|
|
¿Es posible verificar el rendimiento con métricas lineales estándar tales como márgenes de ganancia y fase? | Sí | No | No | Sí |
Esta técnica puede ser una mejor alternativa que PID cuando: | Se desea un sólido rechazo de perturbaciones en presencia de dinámicas con incertidumbre, perturbaciones desconocidas y parámetros de motor variables que no requieren un modelo detallado del sistema. | Existen restricciones/límites operativos en los motores o se requiere un control basado en predicciones. | Es difícil caracterizar la dinámica del motor y las condiciones de funcionamiento, y resulta más práctico aprender las políticas de control directamente de los datos. | — |
El control activo de rechazo de perturbaciones amplía el control PID y ofrece la ventaja significativa de gestionar una gama más amplia de incertidumbres, incluidas las dinámicas y perturbaciones desconocidas, al mismo tiempo que se mantiene el rendimiento del controlador.
El algoritmo utiliza una aproximación del modelo de la dinámica del sistema conocida y agrupa las dinámicas y perturbaciones desconocidas como un estado extendido de la planta. Se utiliza un observador de estado extendido para estimar este estado e implementar el control de rechazo de perturbaciones. Esto se logra reduciendo el efecto de la perturbación estimada en el sistema y dirigiendo el sistema hacia el comportamiento deseado.
En aplicaciones de brazos robóticos industriales de alta velocidad, el control preciso de los motores sin escobillas que accionan las articulaciones y las uniones del robot es fundamental para lograr un movimiento y un posicionamiento precisos. Sin embargo, los elementos estructurales de muchos robots son propensos a cierto grado de flexión, lo que introduce dinámicas adicionales que causan oscilaciones o vibraciones indeseables.
Los controladores PID requieren modelado y ajustes complejos para mantener la estabilidad y el rendimiento frente a estas dinámicas flexibles. Como alternativa, el ADRC es una solución eficaz para gestionar la dinámica de articulaciones y uniones flexibles. Esto se logra estimando y compensando la perturbación causada por la dinámica adicional en tiempo real, sin depender de un modelo explícito del sistema.
Simulink Control Design™ proporciona el bloque Active Disturbance Rejection Control de Simulink, que permite diseñar el controlador. El controlador se prueba en una simulación en nivel de sistema con un inversor, un motor y otras dinámicas eléctricas y mecánicas. Una vez que el controlador se ha probado en simulación, es posible generar código C/C++ a partir de este bloque prediseñado utilizando Embedded Coder®. Con requisitos de memoria y tasa de transferencia similares a los de un controlador PID, es posible desplegar el código para el ADRC en el hardware del controlador del motor existente. Esto proporciona una forma sencilla de implementar el ADRC, especialmente para quienes no tienen experiencia con esta técnica.
En el siguiente gráfico se compara el rendimiento de seguimiento de referencia de velocidad de un ADRC (azul) y un controlador PID (naranja). Las ganancias PID se ajustaron utilizando el método convencional con parámetros estimados del motor. El ADRC muestra transitorios más suaves y menos sobreimpulso que el controlador PID. Además, el ADRC muestra un mejor rendimiento de rechazo de perturbaciones a los 2 segundos cuando hay un cambio de carga en el motor (del 5% al 50% del par motor nominal). Cabe señalar que el modelo de simulación utilizado no modela el acoplamiento cruzado de los ejes d y q.
Tipo de controlador | Tiempo de ejecución |
Controlador PI como controlador de corriente | 13,1 µs |
Controlador ADRC como controlador de corriente | 14,65 µs |
Más información
- Control activo de rechazo de perturbaciones - Documentación
- Control de velocidad de PMSM mediante control activo de rechazo de perturbaciones en Texas Instruments C2000 - Ejemplo
- Diseño de control activo de rechazo de perturbaciones para control de velocidad de un motor BLDC utilizando PWM - Ejemplo
El control predictivo basado en modelo (MPC) es una técnica de control basada en optimización, originalmente desarrollada para procesos industriales en plantas químicas y refinerías en la década de 1980. Desde entonces, los avances en tecnología de microcontroladores, procesamiento digital de señales y algoritmos de optimización han permitido aplicar MPC en electrónica de potencia. Se estima que la adopción del MPC aumentará en los próximos años.
El principio fundamental de MPC consiste en utilizar un modelo de predicción matemática para predecir los estados futuros del sistema controlado dentro de un horizonte de predicción. Luego, el controlador calcula una secuencia de acciones de control óptimas para seguir la trayectoria de referencia deseada y cumplir con las restricciones. Para ello, el algoritmo resuelve un problema de optimización en tiempo real. La primera acción de control se aplica al sistema y se ignoran las acciones posteriores. Este proceso se repite en la siguiente unidad de tiempo.
El MPC ofrece una importante ventaja sobre PID para el control de campo orientado, ya que gestiona explícitamente los límites operativos y las restricciones del motor teniendo en cuenta el acoplamiento cruzado entre los lazos. Esto significa que el controlador puede considerar los límites físicos, como saturación del par motor, límites de corriente y tensión, y límites de velocidad de cambio. Cuando se incorporan estas restricciones al problema de optimización, el MPC logra evitar infracciones de restricciones y reducir una función de coste que representa los objetivos de control. En aplicaciones de control del motor de tracción de vehículos eléctricos, las restricciones de límite del par motor, límites de corriente de la batería y límites térmicos son fundamentales para garantizar un funcionamiento seguro y evitar daños en los componentes. Los controladores PID no pueden gestionar restricciones explícitamente, lo que puede generar comportamientos de seguimiento indeseables, tales como sobreimpulso, saturación de velocidad o par motor, e inestabilidad en algunos casos.
El MPC ofrece una vista previa que permite optimizar las acciones de control según el conocimiento de la señal de referencia futura, dando lugar así a una mayor capacidad de respuesta al seguimiento de referencias. Por el contrario, los controladores PI se limitan a responder a los errores de estado del sistema de corriente. Además, el componente de control integral de los controladores PI puede introducir un retardo que ralentiza la respuesta dinámica del lazo de control.
Model Predictive Control Toolbox™ simplifica el proceso de configurar un controlador predictivo basado en modelo para aplicaciones de FOC en MATLAB mediante bloques y algoritmos de Simulink integrados. El lazo interno de un FOC se puede configurar con bloques MPC integrados. Este sistema de control de lazo interno implica calcular las tensiones del estátor del eje d y el eje q para accionar el motor a la velocidad deseada y a la vez reducir la función de coste que representa el tradeoff entre los objetivos de control.
Puede evaluar el rendimiento del controlador de MPC si lo simula en un lazo cerrado con la planta del motor en MATLAB o Simulink. Después de la evaluación inicial, puede perfeccionar el diseño del controlador ajustando los parámetros y probando diferentes escenarios de simulación.
Una vez probado el controlador en una simulación, puede usar Simulink Coder™ a fin de generar código C y C++ a partir del bloque MPC para desplegarlo en el hardware del controlador integrado.
Tipo de controlador | Tiempo de ejecución |
Controlador PI como controlador de corriente | 13,1 µs |
Controlador de MPC como controlador de corriente (a 5 kHz) | 134 µs |
Aunque MPC ofrece varias ventajas para el control de campo orientado, existen algunas desventajas que no se deben obviar. Uno de los principales retos es la complejidad computacional y la implementación del algoritmo en tiempo real. El MPC puede imponer una alta carga computacional o de memoria, lo que dificulta su ejecución en hardware con recursos limitados. Además, la precisión del modelo de predicción es fundamental para su rendimiento, y es posible que el modelo se deba actualizar o volver a identificar si existen cambios en la dinámica del motor o de la carga. Estos factores deben tenerse en cuenta cuando se diseña un sistema de control de motor basado en MPC.
Más información
Reinforcement Learning es una técnica de Machine Learning que permite que un agente informático aprenda a tomar decisiones basadas en interacciones con un entorno, y recompensas o penalizaciones recibidas por sus acciones. El objetivo del agente es aprender una política que optimiza las recompensas acumuladas a lo largo del tiempo. Esto se logra mediante ensayo y error, y la política se actualiza en función del feedback recibido. El aprendizaje se produce sin intervención humana y se basa únicamente en lo que el agente observa en el entorno.
Reinforcement Learning proporciona una alternativa al control lineal cuando la dinámica no lineal compleja y los entornos operativos inciertos dificultan un rendimiento de seguimiento satisfactorio. Es particularmente útil cuando resulta difícil caracterizar los motores y sus condiciones de funcionamiento para ajustar los controladores.
Por ejemplo, la maquinaria agrícola que incorpora PMSM opera en entornos diversos y desafiantes que presentan superficies irregulares, tipos de suelo variables, niveles de humedad fluctuantes y compactación diversa. Estas variaciones ambientales son difíciles de caracterizar, lo que dificulta el ajuste de controladores de campo orientado basados en PI para proporcionar un rendimiento de seguimiento del par motor satisfactorio. Una política de Reinforcement Learning adecuadamente entrenada puede adaptarse a estas variaciones y ofrecer el rendimiento de seguimiento necesario para tales aplicaciones.
Reinforcement Learning ofrece varias ventajas. Por ejemplo, es posible utilizar un único controlador para regular la velocidad y las corrientes del motor, en lugar de ajustar otros controladores PID para cada uno de estos lazos en varios puntos operativos. Además, Reinforcement Learning puede gestionar varias entradas y salidas de diversos sensores y accionadores.
Con MATLAB y Reinforcement Learning Toolbox™, puede configurar un controlador de Reinforcement Learning para el control de campo orientado. La toolbox proporciona funciones y un bloque de Simulink de agente de Reinforcement Learning para implementar el control de Reinforcement Learning, así como algoritmos integrados y personalizados para entrenar el controlador.
Una vez entrenado, puede usar Embedded Coder a fin de generar código C++ para desplegar la política óptima en plataformas integradas.
Tipo de controlador | Tiempo de ejecución |
Controlador PI como controlador de corriente | 13,1 µs |
Controlador de Reinforcement Learning como controlador de corriente (a 5 kHz) | 85 µs |
Cabe destacar que, aunque Reinforcement Learning puede ser una buena alternativa a los controladores tradicionales como los controladores PID, conlleva una alta carga computacional, y requiere tiempo y datos para entrenar el controlador. Es esencial considerar estos tradeoffs al optar por Reinforcement Learning; la decisión depende de las necesidades específicas de la aplicación y factores tales como recursos, tiempo y datos disponibles. En ciertos casos, combinar Reinforcement Learning con controladores PI puede resultar ventajoso. Cuando se integran ambos enfoques, un agente de Reinforcement Learning puede generar señales de corrección que complementan las señales de control de los controladores PI. Esta combinación permite que el sistema gestione condiciones complejas, no lineales o imprevistas fuera del rango nominal de los controladores PI.
En resumen, este white paper abordó estrategias de control alternativas para controladores de campo orientado en motores eléctricos, con énfasis en el control activo de rechazo de perturbaciones, el control predictivo basado en modelo y Reinforcement Learning. Estas técnicas de control avanzadas ofrecen mejoras en cuanto a precisión, tiempo de respuesta y eficiencia en el control del motor, incluso en entornos difíciles.
MATLAB, Simulink y las toolboxes asociadas proporcionan una plataforma accesible para diseñar e implementar estas técnicas de control avanzadas para aplicaciones de control de motores. Sin embargo, para seleccionar la estrategia de control más adecuada, es fundamental tener en cuenta los tradeoffs entre complejidad computacional, implementación en tiempo real y requisitos de datos.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)