HIL Vehículo Eléctrico

Jaume Martínez, Asoindel

"Para el modelo completo se han obtenido lazos de ejecución de entre 5 y 10 microsegundos y para la parte más crítica correspondiente al motor, ya que los pasos de integración deben ser más precisos, de hasta 1 microsegundo. Gracias a la velocidad de la FPGA ha sido posible implementar algunas respuestas digitales necesarias del orden de decenas de nanosegundos."

- Jaume Martínez, Asoindel

El Reto:

Desarrollar un sistema de “Hardware in the loop“ para diversos modelos complejos, partiendo de un diagrama en Simulink* para alcanzar velocidades de lazo de simulación por debajo de los 20 microsegundos. Además los modelos deben ser parametrizables y la interfaz hardware tener una muy rápida respuesta.

La Solución:

Utilización de un sistema NI CompactRIO y programación en la FPGA de la matemática del modelo para obtener una gran velocidad de cálculo altamente determinista y una respuesta del hardware simulado de muy alta velocidad. Para ello se ha realizado toda la programación mediante diagramas de NI LabVIEW, sin recurrir a VHDL.

Justificación: Hardware in the loop

Es habitual en el mundo de la producción que los ensayos de los dispositivos fabricados sea una tarea costosa. En numerosas ocasiones probar el dispositivo contra un sistema real tiene unas grandes implicaciones en términos de coste, tiempo y disponibilidad de recursos.

 

En el caso de este artículo el dispositivo que se desea ensayar es una electrónica de gestión del motor de un vehículo eléctrico. Ello implica que si se quisiera realizar un ensayo se debería de tener físicamente toda la electrónica de potencia para alimentar el motor, el motor en sí mismo y un sistema de carga que se opondría al movimiento del motor, o bien el vehículo completo. En muchas ocasiones no se tiene tal disponibilidad o la infraestructura necesaria.

 

El “hardware in the loop” (HIL, en adelante) modela todos esos sistemas físicos en un sistema electrónico/informático simplificando la instalación necesaria, pues un pequeño dispositivo es capaz de emular varios sistemas físicos. El principio es sencillo: Por un lado la interfaz de entradas y salidas del HIL debe corresponder con la de los dispositivos a emular (en cuanto a niveles de tensión, potencia, tiempos de respuesta, etc.). Las entradas son digitalizadas y en el interior del HIL se ejecuta un modelo matemático que simula el sistema físico. Así se calculan las diferentes variables del sistema (por ejemplo velocidad, par, etc.) a partir de las entradas y el estado del modelo. Esas variables son convertidas de nuevo a señales eléctricas que simulan los sensores reales en el dispositivo físico y que realimentan el sistema de control.

 

De esa manera se consigue sustituir el sistema físico por un hardware dentro del lazo de control. Evidentemente la respuesta será tan buena como el modelo se corresponda con la realidad. Otro dato importante es la velocidad de cálculo, pues debe ser lo suficientemente elevada para que la dinámica del sistema de control en lazo cerrado que va a supervisar el HIL no quede perjudicada por la sustitución del sistema real (continuo) por un sistema discreto, por ello es necesario alcanzar grandes velocidades de cálculo.

 

Otra ventaja adicional es que el sistema, al estar basado en un hardware programable mediante software permite realizar cambios en la parametrización del modelo. Así es posible verificar, por ejemplo, qué ocurre cuando la tensión de alimentación disminuye, o bien se cambian los parámetros del motor, o también si cambia la masa del vehículo… sin tener que recurrir a un nuevo dispositivo físico.

 

Solución propuesta

Debido al modelo y las necesidades del mismo en cuanto a su dinámica (tiempos menores de 20us) no había más opción que optar por un sistema basado en FPGA y alojar allí el modelo matemático. Finalmente se optó por una solución basada en NI CompactRIO básicamente porque se trata de un sistema compacto y robusto que permitía su ubicación en el área de pruebas.

 

El punto de partida era un diagrama Simulink* con varios modelos a implementar (filtrado de señal, inversor, rectificador, motor … e incluso un modelo del vehículo (carga) contra la que trabaja el motor, incluida la condición de pendiente en la que se encuentra el vehículo). Estos modelos incluyen ecuaciones diferenciales, por lo que para tener una buena aproximación se necesita un paso de integración del orden de microsegundos.

 

Para poder ejecutar el modelo correctamente y a la velocidad necesaria fueron necesarios algunos meses de desarrollo, pues se tuvieron que descartar por el camino diferentes estrategias de programación en la FPGA pues o consumían grandes recursos y por tanto no era capaz de alojar el modelo, o bien los tiempos de cálculo excedían las necesidades. Finalmente se desarrolló una arquitectura de programación que ha permitido cumplir los requisitos de forma óptima. A partir del know-how adquirido y la técnica empleada ha sido posible añadir nuevos bloques al modelo en pocas semanas.

 

Para el modelo completo se han obtenido lazos de ejecución de entre 5 y 10 microsegundos y para la parte más crítica correspondiente al motor, ya que los pasos de integración deben ser más precisos, de hasta 1 microsegundo.

 

Por otro lado están los modelos de interfaz que conectan con el exterior. Por un lado, las señales de entrada como contactores, IGBTs etc, estimulan al modelo. Las salidas corresponden a sensores físicos simulados, por ejemplo la velocidad viene dada por la generación por parte de la FPGA de unos pulsos de encoder. Otras salidas analógicas informan del estado de ciertas variables internas del modelo (corrientes, par motor, aceleración, etc.). El nivel de las señales se ha adaptado mediante la utilización de electrónica externa a medida.

 

Gracias a la velocidad de la FPGA ha sido posible implementar algunas respuestas digitales necesarias del orden de decenas de nanosegundos. Las señales analógicas generadas son algo más lentas (del orden de kilohercios) debido a la limitación de las tarjetas generadoras empleadas, pero suficientes para la aplicación.

 

Todo el modelo se ejecuta en la FPGA del NI CompactRIO. En un principio se pensó utilizar la CPU RT del NI CompactRIO para tareas de cálculo auxiliar del modelo, finalmente se desestimó. Actualmente sólo se utiliza la CPU RT para la transmisión de datos entre la interfaz de usuario y la FPGA.

 

La interfaz de usuario se ejecuta en un PC en Windows. Desde ella es posible parametrizar todo el modelo y lanzar el HIL. También es capaz de mostrar los datos importantes así como el estado de variables internas del modelo a una velocidad de 10 kHz en diferentes gráficas. Finalmente es posible cambiar algunos de los parámetros de la simulación “on the fly” como por ejemplo cambiar las condiciones del Angulo de inclinación del vehículo, los valores de alimentación de la tensión suministrada o incluso alguno de los parámetros internos del modelo.

 

Conclusión:

Gracias a la utilización de NI CompactRIO y la programación de FPGA mediante NI LabVIEW se ha podido implementar un “Hardware in the loop” de un sistema complejo, que responde a ecuaciones diferenciales, con una respuesta altamente dinámica del orden de microsegundos (hasta 1 microsegundo en el modelo del motor). Todas las entradas y salidas corresponden al sistema físico real, salvo por los niveles de señal que han tenido que adaptarse mediante electrónica a medida.

 

El resultado ha sido de gran utilidad para el cliente, porque le ha sido posible utilizarlo en varias fases del desarrollo de sus sistemas. En primer lugar para la verificación de las señales de su sistema y verificación de la programación interna. En una segunda fase para desarrollar y probar los algoritmos de control de velocidad y par del vehículo. Finalmente para hacer el “tunning” de los parámetros de control para los distintos modelos de vehículo concretos en base a sus parámetros.

 

Una vez se terminó el primer desarrollo, el HIL ha resultado ser un sistema solicitado por distintos departamentos para sus validaciones internas, más allá de la intención con la que fue desarrollado, y se le han añadido nuevos módulos y variaciones para ampliar su funcionalidad. Actualmente se ha desarrollado un “lanzador HIL” que permite ejecutar distintos modelos (por ejemplo vehículos con distintos tipos de motor (síncrono o asíncrono), sistema de recuperación de energía, etc.) en la misma plataforma NI CompactRIO.

 

* Simulink® y Real-Time Workshop® son marcas registradas de The MathWorks, Inc

Vista general HIL
Vista NI CompactRIO