Contents — find the section you need
El Control Predictivo Basado en Modelo (MPC) predice la acción de una orden actual en los pasos siguientes, selecciona una secuencia de órdenes que equilibra de forma óptima el seguimiento y el esfuerzo, cumpliendo con las restricciones, aplica solo la primera orden y, a continuación, realiza mediciones y optimiza el proceso. Este bucle de horizonte deslizante resulta valioso cuando las entradas tienen límites, las variables de estado tienen límites de seguridad, las entradas interactúan entre sí o la curvatura y el retardo futuros son relevantes. Se utiliza en diversos ámbitos, desde plantas de proceso hasta vehículos, sistemas de movimiento robótico y sistemas energéticos.
El MPC no sustituye universalmente al PID. Un optimizador predictivo con una estimación de estado tardía, un modelo erróneo, un problema inviable o un plazo incumplido no se vuelve seguro simplemente porque sus restricciones matemáticas parezcan completas. Muchas arquitecturas robustas conservan bucles PID rápidos de corriente/velocidad bajo el MPC para la coordinación de trayectorias, energía, térmica o multivariable. Consulta ROS 2 Primer para conocer el límite de ejecución y Visual SLAM Primer para comprender las suposiciones de temporización y localización que alimentan un controlador de robot móvil.
Conclusión práctica
-
Construye el horizonte N a partir del estado x y la entrada u, e incorpora restricciones de entrada, velocidad de entrada, estado y seguridad en la optimización, en lugar de recortar un comando sin restricciones posteriormente.
-
Especifica qué sucede cuando el solucionador se retrasa, es numérico o inviable antes de la implementación. El límite de tiempo, la reserva y el comportamiento de parada independiente forman parte del controlador.
-
Comienza con el modelo más pequeño que prediga la escala de tiempo relevante. Un modelo más grande puede empeorar el tiempo de ejecución, el error de identificación y el mantenimiento sin mejorar las decisiones.
- Ajuste el horizonte y los pesos a partir de prioridades operativas explícitas: margen de seguridad, seguimiento, energía, desgaste, comodidad y cálculo, no aumentando indiscriminadamente el peso de seguimiento.
Intuición: decidir frenar antes de la curva
Un controlador de retroalimentación simple puede girar un vehículo tras detectar un error lateral. El MPC puede considerar la curva, la velocidad, el rango de dirección, los límites de los neumáticos, la aceleración y la distancia al obstáculo. Evalúa secuencias de dirección y aceleración candidatas, elige una que se mantenga dentro de la región factible, ejecuta solo el primer movimiento y luego descarta la predicción anterior cuando llega una nueva medición. Por lo tanto, el MPC no es un adivino. Es un control de retroalimentación que prueba repetidamente hipótesis efímeras sobre el futuro.
Flujo de señales y horizonte deslizante
Diagrama: Duskcoil, conceptual en lugar de medido. Una trayectoria predicha es una candidata basada en el modelo y debe actualizarse mediante la observación después de aplicar una acción.
Una formulación MPC lineal mínima
Para el modelo lineal discreto
x es el estado, u la entrada, w la perturbación y y la salida. En un horizonte de predicción N (para referencia r), un costo cuadrático común es:
donde \Delta u_k=u_k-u_{k-1} y Q,R,S,P expresan la importancia del seguimiento de estado, la magnitud del comando, el cambio abrupto y el comportamiento terminal. Estas son prioridades de ingeniería expresadas matemáticamente. Penalizar únicamente el error lateral, por ejemplo, puede producir una dirección violenta inaceptable para los pasajeros, los neumáticos o un actuador.
La diferencia esencial con un regulador sin restricciones radica en el conjunto factible explícito:
Los límites pueden representar la dirección, la corriente, la temperatura, el ángulo de la articulación, el estado de la batería, la presión o la distancia a los obstáculos. Las restricciones pueden entrar en conflicto. Mantenga un límite de colisión o de hardware inviolable como estricto; utilice una holgura no negativa \epsilon\ge0 solo para restricciones deliberadamente flexibles y penalícela, por ejemplo. \rho\lVert\epsilon\rVert^2. Registra cuándo se utilizó holgura: una restricción flexible es un compromiso declarado, no prueba de que la violación sea inofensiva.
Estimación, retardo y desajuste del modelo
El MPC predice a partir de x_k, pero este estado suele ser una estimación de fusión de sensores. Para un robot móvil que utiliza SLAM visual, la latencia de localización, los saltos de relocalización y los fotogramas inconsistentes corrompen el estado inicial de cada optimización; consulta Visual SLAM Primer. Resolver un problema perfecto con un estado antiguo y una nueva referencia genera un comando físicamente tardío.
El desajuste incluye fricción, carga útil, viento, deslizamiento de neumáticos, capacidad térmica variable y flexión no modelada. Las respuestas incluyen aumento del estado de perturbación o acción integral, actualizaciones de parámetros en línea, múltiples modelos, márgenes de MPC robustos/de tubo y un bucle interno estabilizado rápido. Ninguna reemplaza el comportamiento de parada independiente cuando el desajuste está fuera del rango de diseño.
Ajuste del horizonte y ponderaciones
Seleccione el tiempo de muestreo T_s y el horizonte N de modo que NT_s cubra el retardo relevante, la distancia de frenado, el transitorio dominante y la curvatura de la ruta, pero no tanto como para que el tiempo de ejecución y el error del modelo a largo plazo sean dominantes. Un horizonte de control más corto puede mantener constantes las entradas posteriores y reducir las variables de decisión.
Ajuste en este orden: fije las unidades y los límites de seguridad estrictos; seleccione las ponderaciones de seguimiento Q para la tarea operativa; aumente R y S para gestionar la energía, el desgaste y la suavidad; luego mida el tiempo de resolución en el peor de los casos y la inviabilidad bajo ruido, carga, latencia y perturbaciones. Pruebe tanto un horizonte corto N como uno largo antes de seleccionar el punto de operación. Aumentar Q hasta que el sistema parezca rápido puede hacer que el optimizador se mantenga en los límites de las restricciones estrictas, dejando poco margen incluso cuando se cumplen las restricciones.
| Observación | Causa plausible | Inspeccionar primero | Acción típica |
|---|---|---|---|
| Al final de una curva | horizonte demasiado corto; retardo de estado | trayectoria prevista vs. medida, marcas de tiempo | ajustar horizonte, plan de velocidad, gestión de retardos |
| Comandos irregulares | S bajo; estimación ruidosa | \Delta u y traza del sensor | aumentar la penalización por movimiento; mejorar el estimador/filtro |
| Holgura/límites frecuentes | desajuste; sin margen | holgura, restricciones activas, perturbación | añadir margen, modelo de perturbación, referencia más suave |
| Sin solución | restricciones conflictivas | estado del solucionador y conjunto activo | definir política inviable; suavizar solo los límites permitidos |
| Incumplimiento de plazos | Problema demasiado grande/variable | Tiempo de resolución en el peor de los casos | Reducir modelo/horizonte; configurar solucionador |
Relación con PID y seguridad
Un bucle MPC podría funcionar a 10-100 Hz para emitir referencias de velocidad, actitud o trayectoria, mientras que los controladores de motor o los bucles PID ros2_control cierran la corriente, la velocidad o la posición a una frecuencia mayor. El MPC debe conocer las capacidades reales del bucle interno: saturación, retardo, tiempo de espera y límites de seguimiento. Si el optimizador se retrasa o no es factible, el bucle inferior necesita una referencia segura definida, como velocidad cero, desaceleración controlada o retención.
Las protecciones de seguridad deben ser independientes del optimizador: parada de emergencia, detección de colisiones, límites de recorrido estrictos, protección contra sobrecorriente/sobretemperatura, monitorización de velocidad y mecanismos de vigilancia de la comunicación. Defina una respuesta para una resolución faltante, un error numérico, un estado obsoleto, una referencia no válida y un fallo del estimador. La factibilidad en el modelo de optimización no es lo mismo que la seguridad en el mundo real.
Software, productos y ejemplos de investigación actuales
La computación multipropósito (MPC) se ha extendido desde las industrias de procesos continuos a los vehículos, la robótica y la gestión energética. Una implementación desplegada incluye un solucionador, identificación de modelos, estimación de estado, monitorización y gestión de plazos, no solo una función de coste. OSQP publica un solucionador de programación cuadrática convexa de código abierto y material orientado a MPC. La descripción general de MPC de MathWorks describe la estructura de predicción, restricciones y optimización repetida. Son referencias de implementación primarias, no recomendaciones de productos.
En el ámbito de la robótica, ros2_control gestiona las interfaces de hardware, los ciclos de vida de los controladores, las actualizaciones asíncronas y el encadenamiento de controladores. Integrar un nodo MPC en ROS 2 no garantiza por sí solo la planificación en tiempo real, la alineación de marcas de tiempo de estado/referencia ni un bucle inferior independiente y seguro. La investigación actual incluye MPC no lineal, dinámica aprendida, MPC robusto a la distribución y optimización conjunta de percepción y planificación; el tiempo de ejecución, la explicabilidad, la incertidumbre y la garantía de seguridad siguen siendo limitaciones prácticas.
Lista de verificación de implementación
-
Defina las unidades, los marcos, las tasas de actualización, la latencia, la frescura, el horizonte N y el peso de movimiento S para el estado, la entrada, la perturbación y la referencia.
-
Separe las restricciones físicas estrictas de las operacionales deliberadamente flexibles.
-
Pruebe el tiempo de resolución en el peor de los casos, el tiempo de espera, la inviabilidad y la reserva ante fallos numéricos.
-
Registre las predicciones, las mediciones, la secuencia de entrada, las restricciones activas, la holgura y el estado del solucionador en un solo reloj.
-
Inyecte desajustes, perturbaciones, deslizamientos, retardo/pérdida de sensores y pérdida de comunicación.
-
Asegúrese de que el MPC comprenda la saturación del bucle interno y que la protección de parada independiente funcione si falla el MPC, ROS 2 o la estimación.
Casos límite para probar primero en simulación
El control predictivo basado en modelos (MPC) puede generar trayectorias atractivas en simulación, por lo que las condiciones normales por sí solas pueden ocultar suposiciones peligrosas. Automatice los cambios abruptos de referencia, los cambios de fricción y carga útil, la saturación del actuador, las mediciones retrasadas o faltantes y los plazos de ejecución del solucionador intencionalmente cortos. Registre qué restricción se activó, cuántos ciclos tardó en entrar en una situación de seguridad y qué señal justificó la decisión. Pase al hardware a baja velocidad y con una salida con margen amplio, y supervise los residuos, el tiempo de saturación, la holgura y la distancia de parada en lugar de solo el indicador de éxito del solucionador.
¿Se ha ejecutado toda la secuencia de entrada optimizada?
Normalmente, solo se aplica la primera entrada; luego, el problema se resuelve de nuevo utilizando nuevas observaciones.
Esto incorpora desviaciones de la predicción. ## Referencias - [OSQP](https://osqp.org/) - [MathWorks: Control Predictivo de Modelos](https://www.mathworks.com/discovery/model-predictive-control.html) - [Documentación de Control de ROS 2](https://control.ros.org/master/doc/ros2_control/doc/index.html) - [Introducción a ROS 2](/es/blog/posts/robotics-ros2.html), [Introducción a Visual SLAM](/es/blog/posts/robotics-visual-slam.html)
Comentarios
Inicia sesión para continuar.
Todavía no hay datos.