Implémenter des comportements de simulation de modèles d’architecture
Un workflow d’ingénierie des systèmes de base dans System Composer™ comprend la composition d’un système d’architecture, la définition des exigences, l’ajout de métadonnées, la réalisation d’analyses et la représentation de l’architecture par le biais de vues. À l’issue de ces étapes, le design du système est plus proche des objectifs des parties prenantes et des besoins des clients.
Vous pouvez également commencer à concevoir les composants du système avec Simulink®, Stateflow® et Simscape™. L’approche Model-Based Design permet de spécifier, de tester et d’analyser entièrement le comportement d’un composant.
Pour plus d’informations sur le workflow d’ingénierie des systèmes basée sur des modèles (MBSE) au sein de System Composer, consultez Composer et analyser des systèmes au moyen de modèles d’architecture.
Dans ce tutoriel, vous allez réaliser cette procédure sur le modèle d’architecture d’un bras robotisé.
Modèle d’architecture d’un bras robotisé
Ouvrez le modèle d’architecture d’un bras robotisé composé de capteurs, d’actionneurs de mouvement et d’un algorithme de planification. Vous pouvez utiliser System Composer pour visualiser les interfaces et gérer les exigences de ce modèle.
Faire référence à un modèle comportemental Simulink dans un composant
Lorsqu’un composant ne nécessite pas de décomposition architecturale plus poussée, vous pouvez activer la simulation de modèle et un workflow de bout en bout. Pour activer la simulation du modèle, implémentez des comportements Simulink pour les composants. Vous pouvez associer un modèle Simulink doté d’un composant ou d’un lien à un sous-système Simulink ou à un modèle existants.
Sélectionnez le composant
Motion
. Accédez à Modeling > Create Simulink Behavior. Vous pouvez également faire un clic droit sur le composantMotion
, sélectionnerCreate Behavior
, puis sélectionnerSimulink Behavior
.Dans la liste Type, sélectionnez
Model Reference
. Indiquez le nom de modèleMotionSimulink
. Par défaut, le nom correspond à celui du composant.Cliquez sur OK. Un nouveau fichier de modèle Simulink est créé avec le nom proposé dans le dossier actuel. Les ports de niveau racine du modèle Simulink correspondent à ceux du composant. Le composant dans le modèle d’architecture est lié au modèle Simulink. L’icône
figurant sur le composant indique que ce dernier a un comportement Simulink.
Remarque
Pour supprimer le comportement du modèle, faites un clic droit sur le composant
Motion
lié et sélectionnez Inline Model.Pour afficher les interfaces du port SensorData converti en éléments de bus Simulink, double-cliquez sur le port dans Simulink.
Vous pouvez également lier un composant System Composer à un modèle de comportement Simulink existant à condition que le composant ne soit pas déjà lié à une architecture de référence. Faites un clic droit sur le composant et sélectionnez Link to Model. Vous pouvez saisir ou rechercher le nom d’un modèle Simulink.
Vous pouvez également lier le comportement d’un sous-système Simulink référencé à un composant. Utilisez les références de sous-systèmes pour créer des comportements Simulink ou Simscape avec des ports physiques, des connexions et des blocs.
Sélectionnez le composant
Motion
. Accédez à Modeling > Create Simulink Behavior. Vous pouvez également faire un clic droit sur le composantMotion
, sélectionnerCreate Behavior
, puis sélectionnerSimulink Behavior
.Dans la liste Type, sélectionnez
Subsystem Reference
. Indiquez le nom de modèleMotionSubsystem
. Par défaut, le nom correspond à celui du composant.Cliquez sur OK. Un nouveau fichier de sous-système Simulink est créé avec le nom proposé dans le dossier actuel. Les ports de niveau racine du sous-système Simulink correspondent à ceux du composant. Le composant dans le modèle d’architecture est lié au sous-système Simulink. L’icône
figurant sur le composant indique que ce dernier a un comportement de sous-système Simulink.
Ajouter un comportement de diagramme Stateflow à un composant
Pour implémenter une modélisation évènementielle avec des machines à état, ajoutez un comportement de diagramme Stateflow à un composant. Les diagrammes d’état consistent en un ensemble fini d’états reliés par des transitions pour capturer les modes de fonctionnement du composant. Cette fonctionnalité nécessite une licence Stateflow.
Un composant System Composer avec des stéréotypes, des interfaces, des liens d’exigences et des ports est préservé lorsque vous ajoutez un comportement Stateflow Chart (Stateflow).
Faites un clic droit sur le composant
Sensor
, sélectionnezCreate Behavior
, puis sélectionnezStateflow Behavior
. Vous pouvez également sélectionner le composantSensor
, puis accéder à Modeling > Create Stateflow Chart Behavior.Double-cliquez sur
Sensor
qui présente l’icône Stateflow. Dans le menu Modeling, cliquez sur Symbols Pane pour afficher les symboles Stateflow. Le port d’entrée Encoder apparaît sous la forme d’une donnée d’entrée dans le volet des symboles et le port de sortie SensorData apparaît sous celle d’une donnée de sortie.Sélectionnez la sortie SensorData et affichez l’interface dans le Property Inspector. Vous pouvez accéder à cette interface à la manière d’un signal de bus Simulink.
Concevoir une architecture logicielle dans un composant
Pour concevoir une architecture logicielle, définissez l’ordre d’exécution des fonctions, simulez et générez du code, créez une architecture logicielle à partir d’un composant System Composer.
Renommez le composant
Trajectory Planning
enTrajectoryPlanning
afin que cela soit un nom de variable C valide.Faites un clic droit sur le composant
TrajectoryPlanning
, sélectionnezCreate Architecture
, puis sélectionnezSoftware Architecture
ou accédez à Modeling > Create Software Architecture Model.Spécifiez le nom de l’architecture logicielle en tant que
TrajectorySoftware
. Cliquez sur OK.Le modèle d’architecture logicielle
TrajectorySoftware.slx
est référencé à partir du composantTrajectoryPlanning
.Double-cliquez sur le composant
TrajectoryPlanning
pour interagir avec le composant logicielTrajectorySoftware
.
Représenter l’interaction des systèmes avec des diagrammes de séquence
Pour représenter l’interaction des éléments structurels d’une architecture sous la forme d’une séquence d’échanges de messages, utilisez un diagramme de séquence dans l’Architecture Views Gallery.
Observez le modèle d’architecture du bras robotisé composé de composants, de ports, de connexions et de comportements. Les résultats de la simulation du modèle doivent correspondre aux interactions figurant au sein des diagrammes de séquence.
Créez un nouveau diagramme de séquence en accédant à Modeling > Sequence Diagram. L’Architecture Views Gallery s’ouvre. Pour créer un nouveau diagramme de séquence, cliquez sur
New > Sequence Diagram.
Un nouveau diagramme de séquence appelé
SequenceDiagram1
est créé dans le navigateur de vues et l’onglet Sequence Diagram est activé. Sous Sequence Diagram Properties, renommez le diagramme de séquenceRobotArmSequence
.Pour ajouter une ligne de vie, cliquez sur le bouton Component > Add Lifeline
. Une nouvelle ligne de vie sans nom est créée et indiquée par une ligne en pointillé.
Cliquez sur la flèche vers le bas et sélectionnez
Sensor
. Ajoutez une deuxième ligne de vie du nom deMotion
.Sélectionnez la ligne en pointillé verticale pour la ligne de vie
Sensor
. Cliquez et faites glisser le curseur jusqu’à la ligne de vieMotion
. Dans la zone To, commencez à taperSensordata
et choisissezSensorData
dans le menu déroulant. Un message est créé à partir du port SensorData du composantSensor
vers le port SensorData du composantMotion
.Cliquez sur le message pour savoir où placer la condition du message. Saisissez une condition de déclenchement du message sous la forme suivante :
rising(SensorData.distance1-1)
Le nom du signal est un élément de données sur une interface de données. Le message est reconnu lors de l’événement de franchissement de seuil, lorsque la valeur de
SensorData.distance1
atteint 1.
Voir aussi
Rubriques
- Créer un modèle d’architecture avec des interfaces et des liens d’exigences
- Étendre le design architectural au moyen de stéréotypes
- Analyser les propriétés des modèles d’architecture au moyen de la fonction d’analyse
- Inspecter les composants dans les vues architecture personnalisées
- Concepts de System Composer