Contenu principal

La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.

Processus de génération et déploiement de code temps réel

Lorsque vous votre modèle est prêt pour cela, utilisez le processus de simulation temps réel pour simuler votre modèle en temps réel. L‘organigramme présente un exemple de processus de simulation temps réel. Utilisez un solveur à coût fixe pour simuler le modèle, et vérifier que les résultats et le temps d'exécution sont acceptables. Tout comme le processus de préparation du modèle, le processus à coût fixe peut nécessiter plusieurs itérations d’ajustement du pas de temps et du nombre d'itérations. Si vous ne parvenez pas à des résultats acceptables, vous devrez peut-être revenir au processus de préparation du modèle.

If you are performing HIL simulation to test your controller:

  • Configure your controller.

  • Connect your controller to the real-time computer.

Effectuer une simulation Hardware-in-the-Loop

Générer, télécharger et exécuter du code

Utilisez Simulink® Real-Time™ pour :

  • Générer et compiler du code sur la machine de développement.

  • Télécharger l’application temps réel sur la machine cible.

  • Exécuter l’application à distance depuis la machine de développement.

Pour plus d’informations, consultez Générer, télécharger et exécuter du code.

Évaluer la précision

Comparez les résultats de la simulation sur la machine cible à vos résultats de référence. Les résultats de référence et ceux du modèle modifié sont-ils identiques ? Si la réponse est non, sont-ils suffisamment similaires pour que les données empiriques ou théoriques confirment les résultats de simulation du modèle modifié ? Le modèle modifié représente-t-il les phénomènes qu’il est censé mesurer ? Les représente-t-il correctement ? Si vous prévoyez de l’utiliser pour tester le design de votre contrôleur, votre modèle est-il suffisamment précis pour générer des résultats fiables pour la qualification du système ? Les réponses à ces questions vous aideront à décider si vos résultats temps réel sont suffisamment précis.

Évaluer la vitesse

Pour savoir si votre simulation entraîne un dépassement, examinez le rapport de temps d’exécution des tâches (TET) généré par Simulink Real-Time.

Retourner au workflow de préparation de modèle temps réel

Votre modèle n’est pas compatible temps réel si la simulation sur la machine cible temps réel génère un dépassement ou produit des résultats qui ne sont pas suffisamment proches des résultats de référence. Pour rendre votre modèle compatible temps réel en ajustant sa fidélité, retournez au workflow de préparation de modèle temps réel ou au workflow de simulation temps réel.

Ajustez la fidélité ou la portée de votre modèle puis passez en revue les autres processus et décisions du workflow de préparation de modèle temps réel. Effectuez des itérations en ajustant, simulant et analysant votre modèle jusqu’à ce qu’il soit assez rapide et précis pour que vous puissiez passer au workflow de simulation temps réel. Exécutez le workflow de simulation temps réel puis essayez à nouveau le workflow de simulation Hardware-in-the-Loop. Pour plus d’informations, consultez Model Preparation Process et Fixed-Cost Simulation Process.

Retourner au workflow de simulation temps réel

Votre modèle n’est pas compatible temps réel si la simulation sur la machine cible temps réel génère un dépassement ou produit des résultats qui ne sont pas suffisamment proches des résultats de référence. Pour rendre votre modèle compatible temps réel en ajustant les paramètres du solveur de simulation, retournez au workflow de simulation temps réel.

Exécutez le workflow de simulation temps réel puis essayez à nouveau le workflow de simulation Hardware-in-the-Loop. Pour plus d’informations, consultez Fixed-Cost Simulation Process.

Capacité de calcul insuffisante pour la simulation Hardware-in-the-Loop

Il se peut que votre machine cible temps réel n’ait pas la capacité de calcul requise pour exécuter votre modèle en temps réel. Si votre modèle ne parvient pas à s’exécuter en temps réel ou s’il produit des résultats peu fiables sur la machine cible après plusieurs itérations des workflows temps réel, envisagez de simuler certaines parties du système en parallèle. Pour en savoir plus, consultez Simulating Parts of the System in Parallel.

Gérer les variants d'un modèle

Les blocs Variant vous permettent de créer un modèle unique répondant aux diverses exigences des variants. Ces modèles présentent une structure commune fixe et un ensemble limité de composants variables. Les composants variables sont activés en fonction du choix de variants retenu. Ainsi, le modèle actif obtenu allie une structure fixe à des composants variables sur la base du choix de variants. L'utilisation de blocs Variant dans un modèle permet de réutiliser le modèle pour diverses expressions conditionnelles appelées choix de variants. Pour plus d’informations et d’exemples, consultez Implement Variations in Separate Hierarchy Using Variant Subsystems.

Toutefois, vous ne pouvez pas effectuer de simulation sur le hardware cible temps réel avec un code ne spécifiant pas de choix de variants par défaut. Avant de générer un code pour la simulation temps réel, utilisez Variant Manager pour identifier les blocs Variant dans votre modèle et gérer les points de variation modélisés à l'aide de ces blocs. Pour découvrir comment utiliser Variant Manager, consultez Variant Manager for Simulink.

Limitations

Simscape™ ne supporte pas la compilation conditionnelle des variants de modèle.

Résolution des problèmes

Si votre application temps réel génère un dépassement, pour améliorer le temps d’exécution de l’application :

  • Appliquez les processus décrits dans Model Preparation Process, Fixed-Cost Simulation Process et Processus de génération et déploiement de code temps réel.

  • Exécutez les contrôles Simulink Real-Time Performance Advisor. Utilisez le mode d’activité Execute real-time application dans Performance Advisor, qui comprend des contrôles propres aux modèles physiques. Ce mode vous aide à optimiser votre modèle Simscape en vue de l’exécution temps réel. Les contrôles sont organisés en dossiers. Les contrôles du dossier Simscape checks peuvent être appliqués à tous les modèles physiques. Les sous-dossiers contiennent des contrôles qui ciblent les blocs issus de produits complémentaires, tels que Simscape Electrical™ et Simscape Driveline™.

    Pour accéder aux contrôles :

    1. Ouvrez Performance Advisor. Dans l’onglet Debug, cliquez sur le bouton Performance.

    2. Dans la fenêtre Performance Advisor, sous Activity, sélectionnez Execute real-time application.

    3. Dans le volet de gauche, développez le dossier Real-Time, puis le dossier Simscape checks.

    4. Effectuez les contrôles Simscape de niveau supérieur. Si votre modèle contient des blocs issus d’un produit complémentaire, effectuez également les contrôles du sous-dossier correspondant à ce produit.

    Pour plus d’informations, consultez la rubrique Troubleshoot Unsatisfactory Real-Time Performance (Simulink Real-Time).

Une simulation Simulink Real-Time peut également échouer du fait de problèmes liés à l'ordinateur de développement et à l’ordinateur cible, de changements apportés au logiciel du système sous-jacent, de problèmes liés aux modules d'E/S et d'erreurs de procédure. Pour résoudre ces problèmes, suivez le workflow de Troubleshooting Basics (Simulink Real-Time). Pour plus d’informations, consultez la rubrique Troubleshooting in Simulink Real-Time (Simulink Real-Time).

Voir aussi

Rubriques