# Hardware-in-the-loop

En electrónica, la simulación hardware-in-the-loop (HIL) es una técnica usada para el desarrollo y comprobación de sistemas embebidos en tiempo real complejos.
La simulación HIL constituye una plataforma efectiva porque incluye toda la complejidad de la planta que controla el sistema embebido. Esto lo realiza mediante modelos matemáticos de todos los sistemas dinámicos relacionados con la planta bajo control, formando lo que se denomina como "simulación de la planta". El sistema embebido que se está comprobando interactúa con esta simulación de la planta.

## Funcionamiento

La simulación hardware-in-the-loop debe incluir la simulación eléctrica de sensores y actuadores. Estas simulaciones sirven de interfaz entre el modelo de planta y el sistema integrado bajo prueba. El valor de cada sensor está controlado por el modelo de planta y es leído por el sistema embebido. Del mismo modo, el sistema embebido bajo prueba ejecuta su algoritmo de control por medio de las señales de los actuadores. Igualmente, cambios en las señales de control provocan cambios en los valores de las variables en el modelo de simulación de planta.
Por ejemplo, un sistema HIL de simulación para desarrollo de sistema antibloqueo de freno (ABS) puede incluir la representación matemática de los siguientes subsistemas en el modelo de planta:
* Elementos del chasis como la suspensión, ruedas, neumáticos, alabeo, guiñada y cabeceo.
* Características de la vía por la que se desplaza el vehículo.
* Dinámica del circuito hidráulico de freno.
Además la simulación hardware-in-the-loop debe proveer una interfaz de comunicación con los sistemas de bus de datos. Por ejemplo, en el caso de la automoción se debe proporcionar la correspondiente topología de bus (CAN, LIN, FlexRay, MOST, etc.).

## Usos

En muchos casos, la forma más efectiva de desarrollar sistemas embebidos es conectar el sistema embebido a la planta real: conectar una centralita de motor (sistema embebido) a un motor real (planta real). En otros la simulación HIL es más eficiente. El baremo que determina qué utilizar depende entre otros factores del costo, la duración y de la seguridad.
El costo dará una medida del costo total de todas las herramientas y el esfuerzo requerido. La duración del desarrollo y de la prueba determinará el tiempo de ciclo de producto hasta su comercialización. El factor de seguridad y duración están supeditados al costo económico.
Las condiciones en las que el uso de simulación hardware-in-the-loop es adecuado incluyen:

### Ciclos cortos de desarrollo de software

La planificación de ciclos cortos de desarrollo asociados a la mayoría de proyectos en la industria automotriz, aeroespacial y en programas de defensa no permiten esperar a la disponibilidad del primer prototipo para testeto del sistema embebido.
En la mayor parte de las planificaciones de proyecto se asume que la simulación hardware-in-the-loop se usará en paralelo con el desarrollo de la planta. Por ejemplo, en el momento en el que el primer prototipo de motor está disponible para prueba, el 95% del prueba de la centralita de motor ha sido completado a través de simulación hardware-in-the-loop.
Los ciclos de desarrollo más cortos se dan en la industria aeroespacial y defensa. Programas de desarrollo de aviones y vehículos militares usan en paralelo PC y HIL simulación para mejorar el diseño, prueba e integración.

### Modelo de planta fiable y económico

En muchos casos, la planta es más costosa que un simulador fiable en tiempo real y por ello es más recomendable su simulación, por lo que es más económico el desarrollo y prueba conectado a un simulador HIL que a la planta real.
Para fabricantes de motores, la simulación HIL es parte fundamental del ciclo de desarrollo del motor.
El desarrollo de centralitas digitales para control de motores de aviones es un ejemplo de reducción de costes a través de simulación HIL. Cada motor puede costar millones de euros. Por el contrario, el uso de simuladores HIL puede reducir a una décima parte ese costo.

### Desarrollo de la interacción usuario-sistema de control

La simulación HIL es un paso clave en el proceso de análisis de la interacción del entorno HIL con el usuario, asegurando la consistencia del sistema optimizando la ergonomía del software. La tarea de la tecnología en tiempo real es tomar datos de usuarios para prueba de componentes que tendrán una interfaz humana. La alternativa a este caso sería el uso de un modelo de usuario (por ejemplo, un modelo de conductor en el caso de un entorno HIL de vehículo completo).

### Posibilidad de automatización

El entorno HIL es automatizable. Es decir, la prueba se puede llevar a cabo sin la presencia de un usuario como sería el caso si el modelo de planta fuera un componente real. Por ello, la prueba en entornos HIL es consistente, rápida y eficiente.