Simulink

Prácticas recomendadas de Simulink para modelado a gran escala

Estas prácticas recomendadas abarcan patrones, herramientas y procesos de modelado que han demostrado generar modelos de Simulink® eficientes, escalables y fáciles de mantener. Los temas específicos que se tratan son:

  • Componentización e interfaces
  • Colaboración con MATLAB® Projects
  • Gestión de datos
  • Mejora del rendimiento de simulaciones

Prácticas recomendadas de Simulink para modelado a gran escala

Prácticas recomendadas de modelado a gran escala: arquitectura y rendimiento

Explore técnicas para crear modelos de Simulink escalables, como componentización, gestión de datos, interfaces, colaboración, rendimiento y flujos de trabajo fáciles de mantener.

El modelado a gran escala suele implicar sistemas de lazo cerrado complejos, como modelos de planta, controladores, múltiples subsistemas y, en ocasiones, cientos de miles o incluso millones de bloques.

Entre los desafíos comunes se encuentran baja legibilidad de modelos, colaboración dificultosa, gestión de datos compleja, simulaciones lentas y aumento de los costos de mantenimiento.

La componentización divide los modelos en unidades manejables, lo que mejora legibilidad, pruebas, reutilización, mantenibilidad y colaboración.

El diseño basado en modelos utiliza modelos ejecutables para desarrollar, probar, verificar y validar sistemas complejos a lo largo de todo el ciclo de ingeniería.

Arquitectura de modelos, interfaces de componentes, gestión de datos, flujos de trabajo colaborativos y rendimiento de simulaciones.

Mediante el uso de referencias a modelos, diccionarios de datos, MATLAB Projects, control de versiones y definiciones de interfaces claras.

Automoción, aeroespacio, robótica, automatización industrial, sistemas de energía, dispositivos médicos y sistemas autónomos.

Los modelos industriales de gran tamaño contienen habitualmente cientos de miles de bloques, mientras que algunos modelos a escala empresarial superan el millón de bloques.

Mayor productividad en el desarrollo, eficiencia de simulación, colaboración y reutilización de modelos, y menor esfuerzo de mantenimiento.

Establecer una arquitectura componentizada en lugar de crear un único modelo monolítico.

Prácticas recomendadas de componentización en Simulink: referencias a modelos, librerías e interfaces

Componentización en Simulink: referencias a modelos e interfaces

Cree arquitecturas escalables en Simulink mediante referencias a modelos, librerías y subsistemas para mejorar la reutilización, la colaboración, las pruebas y el rendimiento.

La componentización divide un modelo de gran tamaño en componentes reutilizables más pequeños con interfaces bien definidas.

Las referencias a modelos permiten integrar modelos independientes en sistemas de mayor tamaño manteniendo flujos de trabajo de desarrollo independientes.

Utilice referencias a modelos cuando los componentes requieran desarrollo, simulación, pruebas, reutilización o aceleración independientes.

Las librerías suelen emplearse para utilidades reutilizables, mientras que las referencias a modelos admiten simulación independiente, aceleración y compilaciones incrementales.

Las referencias a subsistemas resultan útiles para componentes compartidos, flujos de trabajo de Simscape y determinados escenarios de desarrollo con HDL.

Los buses agrupan señales relacionadas en una interfaz estructurada que simplifica las conexiones en modelos de gran tamaño.

Los buses mejoran la legibilidad, reducen la complejidad de diagramas y facilitan el mantenimiento de interfaces.

Los puertos de elementos de bus simplifican el acceso a señales dentro de buses y reducen la necesidad de usar bloques Bus Selector independientes.

Diferentes ingenieros pueden trabajar en distintos componentes sin necesidad de modificar constantemente el mismo archivo de modelo.

Sí. Las arquitecturas componentizadas permiten utilizar el modo Accelerator y compilaciones incrementales, reutilizar la caché e inicializar más rápidamente.

Desarrollo colaborativo en Simulink con MATLAB Projects y Git

Desarrollo colaborativo de Simulink con MATLAB Projects y Git

Utilice MATLAB Projects para colaborar en modelos de Simulink con control de versiones, análisis de dependencias, pruebas, CI/CD y flujos de trabajo fáciles de mantener

MATLAB Projects proporciona gestión del entorno y dependencias, integración con sistemas de control de versiones y herramientas de colaboración.

Los proyectos ayudan a automatizar tareas de configuración, estandarizar entornos y reducir el esfuerzo de configuración manual.

Cuando se abre un proyecto se configuran automáticamente rutas, variables, scripts de inicio, accesos directos y ajustes de proyecto.

Sí. MATLAB Projects se integra con Git y proporciona herramientas para operaciones de confirmación, extracción, inserción, comparación y fusión.

Dependency Analyzer identifica relaciones entre archivos, modelos, pruebas, librerías y diccionarios de datos.

Sí. Los proyectos advierten sobre archivos con conflictos de nombres, cambios no guardados, dependencias faltantes y conflictos de rutas.

Las referencias a proyectos permiten que un proyecto utilice y dependa de otro proyecto conservando la configuración del entorno.

MATLAB incluye herramientas gráficas de comparación que resaltan cambios funcionales y no funcionales en modelos.

MATLAB proporciona herramientas visuales de fusión diseñadas específicamente para archivos de Simulink.

Sí. MATLAB Projects funciona con Jenkins, GitHub, GitLab, Azure DevOps y otras plataformas de automatización.

Sí. Los scripts de inicio y API de proyectos permiten automatizar flujos de trabajo de pruebas, informes y generación de código.

Diccionarios de datos de Simulink: prácticas recomendadas para gestionar datos de diseño

Diccionarios de datos de Simulink: prácticas recomendadas para gestionar datos de diseño

Gestione datos de diseño de Simulink con diccionarios de datos, áreas de trabajo de modelos, argumentos y tipos de valores para lograr un diseño basado en modelos escalable y coherente.

Los datos de diseño incluyen parámetros, señales, tipos de datos, enumeraciones, buses, alias e información de configuración que utiliza un modelo.

Un diccionario de datos de Simulink es un archivo .sldd específico que almacena datos de diseño por separado de los archivos de modelos.

Los diccionarios de datos mejoran la organización, persistencia, seguimiento de cambios, reutilización y colaboración.

El área de trabajo base es global y depende de la sesión, mientras que los diccionarios de datos proporcionan almacenamiento estructurado y persistente.

Sí. Múltiples modelos pueden hacer referencia al mismo diccionario de datos.

Sí. Los diccionarios de datos admiten referencias jerárquicas, lo que permite a las organizaciones compartir definiciones comunes.

Los argumentos de modelo permiten que distintas instancias de un modelo referenciado utilicen valores de parámetros diferentes.

Los tipos de valor definen propiedades reutilizables como tipo de dato, unidades, rangos y dimensiones.

La migración puede realizarse gradualmente. Simulink permite utilizar diccionarios de datos junto con variables existentes del área de trabajo.

Sí. Admiten seguimiento de cambios, flujos de trabajo de comparación e integración con sistemas de control de versiones.

Una jerarquía de diccionarios de datos en nivel de componente respaldada por diccionarios compartidos para definiciones comunes.

Aceleración de simulaciones de Simulink con cálculo paralelo, modo Accelerator y Fast Restart

Aceleración de Simulink con Fast Restart y cálculo paralelo

Acelere las simulaciones de Simulink con el modo Accelerator y Fast Restart,, perfilado, cálculo paralelo y prácticas recomendadas de arquitectura.

Pueden producirse cuellos de botella de rendimiento debidos a complejidad de modelos, configuración de solvers, arquitectura deficiente, registro excesivo o flujos de trabajo ineficientes.

Simulink Profiler, Solver Profiler, Performance Advisor y metadatos de simulación.

Simulink Profiler mide el tiempo de ejecución de bloques y subsistemas para identificar áreas lentas.

Solver Profiler analiza el comportamiento de un solver e identifica problemas, como cruces por cero excesivos y reinicializaciones del solver.

Performance Advisor comprueba automáticamente si existen problemas de rendimiento comunes y recomienda mejoras.

El modo Accelerator genera código compilado para ejecutar un modelo, lo que reduce la sobrecarga de simulación.

El modo Rapid Accelerator genera un objetivo de simulación ejecutable independiente para aumentar aún más la velocidad.

Fast Restart evita la recompilación entre ejecuciones de simulación cuando solo cambian los parámetros.

Los archivos de caché almacenan artefactos compilados y objetivos de simulación para reutilizarlos entre sesiones de simulación.

Sí. El flujo de trabajo parsim permite ejecutar múltiples simulaciones al mismo tiempo en varios núcleos de CPU.

Los modelos componentizados admiten compilaciones incrementales, aceleración selectiva, reutilización de caché e inicialización más rápida.

Utilice primero herramientas de creación de perfiles, identifique cuellos de botella, realice componentización del modelo, emplee el modo Accelerator, habilite Fast Restart y ejecute múltiples simulaciones en paralelo.