En el entorno de ingeniería actual, los sistemas de hoy en día cada vez son más complejos, con múltiples elementos interactuando y comunicándose entre ellos y nuevas tecnologías, como la Inteligencia Artificial, que avanza a ritmos desafiantes. Para esto, el poder entender en primera instancia el comportamiento mediante la Ingeniería de Sistemas es cada vez más crítico, llegándose incluso a hablar ya de Ingeniería de Sistemas de Sistemas.
Los Ingenieros de Sistemas necesitan gestionar múltiples niveles y tipos de requisitos y arquitecturas. Por ejemplo, es posible que tengan que crear una arquitectura funcional para un nuevo vehículo, que esté basada en los requisitos funcionales de alto nivel, como ser capaz de alcanzar cierta velocidad en un tiempo determinado. A continuación, asignar esas funcionalidades a componentes de una arquitectura lógica basada en los requisitos del vehículo, como el sistema de navegación. Gestionar y analizar todas las relaciones entre estos artefactos a distintos niveles puede ser un reto, especialmente con múltiples sistemas en juego.
Tradicionalmente, para resolver este proceso se sigue un flujo de trabajo donde los requisitos y la información se capturan en documentos. Esto hace que la transferencia de información sea manual y pueda dar lugar a errores, malentendidos y retrasos. Además, en muchos casos, los flujos de trabajo para requisitos, arquitectura y diseño detallado están desconectados y requieren un esfuerzo manual que consume tiempo y es propenso a errores.
Para esto surge la Ingeniería de Sistemas Basada en Modelos (MBSE), permitiendo gestionar la complejidad, mejorar la comunicación y optimizar el rendimiento del sistema. Con el diseño basado en modelos y, a más alto nivel, la ingeniería de sistemas basada en modelos, los requisitos se crean, analizan y gestionan en un modelo de diseño y arquitectura directamente en el entorno de desarrollo. Permitiendo mantener una trazabilidad completa de requisitos a modelo y verificación tanto de alto como de bajo nivel, incluso extendiéndola a código generado.
Esta trazabilidad completa permite además poder gestionar los cambios de forma automática: si hay un cambio en los requisitos a cualquier nivel, se puede identificar rápidamente qué parte del diseño, qué otros requisitos y qué pruebas están afectada directamente por el cambio, y así tomar las medidas adecuadas y aceptar los cambios.
Adicionalmente, se pueden realizar análisis de trade-off directamente sobre la arquitectura si añadimos características a los elementos por el hecho de tener MATLAB por detrás y si además asociamos modelos de Simulink al modelo de arquitectura, añadimos una capacidad de simulación dinámica a nivel de sistema.
Caso Práctico: ESA y Airbus Space and Defence
“El diseño basado en modelos nos permitió crear un marco para diseñar controladores de vuelo con algoritmos de diseño de control robustos de vanguardia, crear modelos físicos multidominio, ajustar el diseño a través de optimización, y generar código para pruebas de PIL en el hardware de destino, todo en el mismo entorno”, asegura Hans Strauch, de Airbus D&S.
Cuando un lanzador de la Agencia Espacial Europea (ESA), como Ariane 5 o Vega, pone su carga útil satelital en órbita, el sistema de control de actitud (ACS) toma el control, orienta la carga útil y ordena la separación de la etapa superior del lanzador. Además de orientar el satélite, el sistema ACS debe identificar y gestionar problemas relacionados con el proceso de separación, el sistema de amortiguamiento del propulsor y una amplia variedad de posibles fallos de hardware.
ESA y Airbus necesitaban simular fallos de separación con un modelo físico para probar la capacidad del controlador de detectar fallos y tomar medidas correctivas. También necesitaban simular el sistema de amortiguamiento del propulsor, fugas en tuberías, válvulas atascadas y otro tipo de fallos. Además, deseaban ejecutar optimizaciones para identificar el rendimiento del sistema en el peor de los casos si se produjeran fallos.
Asimismo, buscaban probar los algoritmos de control en hardware del computador de vuelo en las primeras etapas de desarrollo. A medida que aumenta su complejidad, los algoritmos de control superan el límite de rendimiento del procesador y otros recursos con carga computacional. Por lo tanto, necesitaban verificar el rendimiento de los algoritmos y la utilización de recursos en un computador de vuelo representativo durante el diseño del controlador, cuando resulta más fácil corregir problemas.
Para lograrlo, ESA y Airbus utilizaron el diseño basado en modelos con MATLAB, Simulink y una combinación de herramientas de generación de código, modelado físico, diseño de lógica de control, verificación y validación para crear el Marco de diseño y control de actitud de la etapa superior (USACDF). El marco, que permite la simulación de lazo cerrado y la verificación de algoritmos de control con modelos físicos, se utiliza para desarrollar demostradores de conceptos complejos para operaciones de misiones de mantenimiento orbitales.
Para más información sobre Ingeniería de sistemas basada en modelos, pinche aquí.