Bonnes pratiques Simulink pour la modélisation à grande échelle
Ces bonnes pratiques abordent les schémas, outils et processus de modélisation qui ont fait leurs preuves pour produire des modèles Simulink® efficaces, évolutifs et faciles à maintenir. Les thèmes spécifiques abordés sont les suivants :
- Modularisation et interfaces
- Collaboration avec MATLAB® Projects
- Gestion des données
- Amélioration des performances de simulation
Meilleures pratiques pour la modélisation à grande échelle : architecture et performance
Explorez les techniques de modélisation Simulink évolutive, notamment la modularisation, les données, les interfaces, la collaboration, les performances et les workflows faciles à maintenir.
La modélisation à grande échelle implique généralement des systèmes complexes en boucle fermée qui comprennent des modèles de systèmes physiques, des contrôleurs, plusieurs sous-systèmes et parfois des centaines de milliers, voire des millions de blocs.
Parmi les défis courants, on peut citer le manque de lisibilité des modèles, les difficultés de collaboration, la gestion complexe des données, la lenteur des simulations et l'augmentation des coûts de maintenance.
La modularisation permet de décomposer les modèles en unités gérables, ce qui améliore la lisibilité, les tests, la réutilisation, la maintenabilité et les collaborations.
L'approche Model-Based Design utilise des modèles exécutables pour développer, tester, vérifier et valider des systèmes complexes tout au long du cycle de vie du développement en ingénierie.
Une approche efficace repose sur l'architecture des modèles, les interfaces des composants, la gestion des données, les workflows de collaboration et les performances de simulation.
Elle repose sur l'utilisation de références de modèles, de dictionnaires de données, de MATLAB Projects, d'un système de gestion de version et de définitions claires des interfaces.
Il s'agit des industries suivantes : automobile, aérospatiale, robotique, automatisation industrielle, systèmes d'énergie, équipements médicaux et systèmes autonomes.
Les grands modèles industriels comptent généralement des centaines de milliers de blocs, tandis que certains modèles à l'échelle de l'entreprise peuvent dépasser le million de blocs.
Elles améliorent la productivité du développement, l'efficacité des simulations, les collaborations et la réutilisation des modèles, tout en réduisant des efforts de maintenance.
Il faut commencer par mettre en place d'une architecture modulaire au lieu d'élaborer un modèle monolithique unique.
Modularisation des modèles Simulink : références et interfaces des modèles
Concevez des architectures Simulink évolutives avec des références de modèles, des bibliothèques et des sous-systèmes pour améliorer la réutilisation, la collaboration, le test et la performance.
La modularisation consiste à diviser un modèle volumineux en composants plus petits et réutilisables, dotés d'interfaces bien définies.
Les références de modèles permettent d'intégrer des modèles indépendants dans des systèmes plus vastes tout en conservant des workflows de développement distincts.
Utilisez les références de modèles lorsque les composants doivent pouvoir être développés, simulés, testés, réutilisés ou accélérés de manière indépendante.
Les bibliothèques sont typiquement employées pour les utilitaires réutilisables, tandis que les références de modèle supportent la simulation autonome, l'accélération et les compilations incrémentales.
Les références de sous-systèmes sont utiles pour les composants partagés, les workflows Simscape et certains scénarios de développement HDL.
Les bus regroupent des signaux liés au sein d'une interface structurée qui simplifie les connexions de grands modèles.
Les bus améliorent la lisibilité, réduisent l'encombrement des schémas et facilitent la maintenance des interfaces.
Les ports d'éléments de bus simplifient l'accès aux signaux au sein des bus et réduisent le recours à des blocs sélecteurs de bus distincts.
Différents ingénieurs peuvent travailler sur des composants distincts sans avoir à modifier en permanence le même fichier de modèle.
Oui. Les architectures modulaires permettent d'utiliser le mode Accelerator, d'effectuer des compilations incrémentales, de réutiliser le cache et d'accélérer l'initialisation.
Développement collaboratif Simulink avec MATLAB Projects et Git
Utilisez MATLAB Projects pour collaborer sur des modèles Simulink avec contrôle de version, analyse des dépendances, tests, CI/CD et workflows faciles à maintenir.
MATLAB Projects proposent des fonctionnalités de gestion de l'environnement, de gestion des dépendances et d'intégration de la gestion de version, ainsi que des outils de collaboration.
Les projets permettent d'automatiser les tâches de paramétrage, de standardiser les environnements et de réduire les efforts de configuration manuelle.
L'ouverture d'un projet configure automatiquement les chemins d'accès, les variables, les scripts de démarrage, les raccourcis et les paramètres du projet.
Oui. MATLAB Projects s'intègre à Git et propose des outils pour effectuer des opérations de commit, d’extraction, de publication, de comparaison et de fusion.
Dependency Analyzer identifie les relations entre les fichiers, les modèles, les tests, les bibliothèques et les dictionnaires de données.
Oui. Les projets signalent les fichiers masqués, les modifications non enregistrées, les dépendances manquantes et les conflits de chemins d'accès.
Project References permet à un projet d'utiliser un autre projet et de dépendre de celui-ci tout en préservant la configuration de l'environnement.
MATLAB intègre des outils de comparaison graphiques qui mettent en évidence les modifications fonctionnelles et non fonctionnelles apportées aux modèles.
MATLAB propose des outils de fusion visuels spécialement conçus pour les fichiers Simulink.
Oui. Les projets supportent Jenkins, GitHub, GitLab, Azure DevOps et d'autres plateformes d'automatisation.
Oui. Les scripts de démarrage de projet et les API permettent d'automatiser les workflows de test, de reporting et de génération de code.
Dictionnaires de données Simulink : meilleures pratiques pour la gestion des données de design
Gérez les données de design Simulink avec des dictionnaires de données, des espaces de travail de modèles, des arguments et des types de valeurs pour une approche Model-Based Design évolutive et cohérente.
Les données de design comprennent les paramètres, les signaux, les types de données, les énumérations, les bus, les alias et les informations de configuration utilisés par un modèle.
Un dictionnaire de données Simulink est un fichier .sldd dédié qui stocke les données de design séparément des fichiers de modèle.
Les dictionnaires de données améliorent l'organisation, la persistance, le suivi des modifications, la réutilisation et la collaboration.
L'espace de travail de base est global et basé sur les sessions, tandis que les dictionnaires de données proposent un stockage structuré et persistant.
Oui. Plusieurs modèles peuvent faire référence au même dictionnaire de données.
Oui. Les dictionnaires de données supportent les références hiérarchiques, ce qui permet aux organisations de partager des définitions communes.
Les arguments de modèle permettent à différentes instances d'un modèle référencé d'utiliser des valeurs de paramètres différentes.
Les types de valeur définissent des propriétés réutilisables telles que le type, les unités, les plages et les dimensions des données.
La migration peut être progressive. Simulink supporte l'utilisation des dictionnaires de données en complément des variables d'espace de travail existantes.
Oui. Ils supportent le suivi des modifications, les workflows de comparaison et l'intégration avec les systèmes de gestion de version.
Il est conseillé d'opter pour une hiérarchie de dictionnaires de données au niveau composant, supportée par des dictionnaires partagés contenant les définitions communes.
Accélérer Simulink grâce au Fast Restart et au calcul parallèle
Accélérez vos simulations Simulink grâce au profilage, aux modes Accelerator, au Fast Restart, au calcul parallèle et aux meilleures pratiques d'architecture.
Les goulots d'étranglement des performances peuvent résulter de la complexité du modèle, des paramètres du solveur, d'une architecture inadaptée, d'une journalisation excessive ou de workflows inefficaces.
Vous pouvez utiliser Simulink Profiler, Solver Profiler, Performance Advisor et les métadonnées de simulation.
Simulink Profiler mesure le temps d'exécution des blocs et des sous-systèmes pour identifier les zones de ralentissement.
Solver Profiler analyse le comportement du solveur et identifie les problèmes tels qu'un excès de passages par zéro ou des réinitialisations du solveur.
Performance Advisor détecte automatiquement les problèmes de performances courants et propose des améliorations.
Le mode Accelerator génère du code compilé pour l'exécution du modèle, ce qui réduit la surcharge liée à la simulation.
Le mode Rapid Accelerator génère une cible de simulation exécutable autonome permettant d'améliorer encore davantage la vitesse.
Fast Restart évite de devoir recompiler entre deux exécutions d'une simulation lorsque seuls les paramètres changent.
Les fichiers de cache stockent les artefacts compilés et les cibles de simulation pour pouvoir les réutiliser entre différentes sessions de simulation.
Oui. Le workflow parsim permet d'exécuter plusieurs simulations simultanément sur un ensemble de cœurs de CPU.
Les modèles modulaires permettent des compilations incrémentales, l'accélération sélective, la réutilisation du cache et une initialisation plus rapide.
Utilisez d'abord les outils de profilage, puis identifiez les goulots d'étranglement ; modularisez le modèle ; exploitez les modes Accelerator ; activez le Fast Restart ; et enfin, exécutez plusieurs simulations en parallèle.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)