Contenu principal

Créer un modèle d’architecture avec des interfaces et des liens d’exigences

Dans cette section, découvrez comment créer un modèle d’architecture de bras robotisé avec System Composer™, définir des interfaces sur les ports et ajouter des liens d’exigences aux composants.

Découvrez comment :

  • Démarrer System Composer.

  • Ajouter des composants architecturaux afin de représenter les capteurs du bras robotisé, la planification de trajectoire et son mouvement.

  • Créer des ports et des connexions représentant l’échange de données.

  • Définir des interfaces de données représentant la structure des données.

  • Gérer les liens d’exigences représentant les connexions entre les éléments du modèle et les exigences.

Une licence Requirements Toolbox™ est requise pour lier, suivre et gérer les exigences dans System Composer.

Pour plus d’informations sur le workflow Model-Based Systems Engineering (MBSE) dans le cadre de System Composer, consultez Composer et analyser des systèmes au moyen de modèles d’architecture.

Représenter visuellement le système

L’implémentation d’un design architectural débute par la représentation visuelle du système au moyen de composants et de leurs connexions. Créez un modèle d’architecture, représentez les composants du système et tracez les connexions qui les relient.

Créer un modèle d’architecture

  1. Saisissez cette commande dans la fenêtre de commande MATLAB®.

    systemcomposer

    La page d’accueil de Simulink® s’ouvre sur System Composer.

  2. Cliquez sur Architecture Model.

    Accessing a new System Composer architecture model from the Simulink start page.

    System Composer propose des modèles d’architecture qui traitent de différents domaines de l’ingénierie système et de la modélisation de l’architecture logicielle : Architecture Model et Software Architecture Model. Tous les modèles d’architecture proposent les mêmes capacités structurelles avec certaines contraintes propres au domaine et à la plateforme. Pour plus d’informations sur les modèles d’architecture, consultez Choose Architecture Template for System Design.

    Un nouveau canevas de modèle d’architecture vide s’ouvre. Vous pouvez identifier un modèle d’architecture par le badge situé dans l’angle inférieur gauche et par la palette de composants située sur la gauche.

    A new untitled architecture model in System Composer.

  3. Double-cliquez sur l’en-tête du modèle d’architecture et remplacez untitled par un nom de modèle descriptif, par exemple RobotDesign. En règle générale, le nom du modèle reflète le système dont vous créez l’architecture.

    Renamed architecture model called 'Robot'.

  4. Enregistrez le modèle.

Concevoir les composants

Concevez un bras robotisé mobile doté d’un capteur détectant la position et d’un système de planification de trajectoire qui calcule un chemin menant à un emplacement que le mouvement du robot doit permettre d’atteindre. Un modèle d’architecture d’un système de ce type peut consister en trois composants principaux : Sensors, Trajectory Planning et Motion. Vous pouvez représenter ces composants dans System Composer au moyen de trois blocs Component.

  1. Cliquez sur un bloc Component component block icon et faites-le glisser depuis la palette de gauche.

    Click and drag a component from the left-side palette to add it to the architecture model.

  2. Renommez le composant en Sensors.

  3. Suivez ces même étapes pour créer les composants Trajectory Planning et Motion, Procédez de la même manière pour...

    An architecture model called 'Robot' with three components

Créer des ports et des connexions

Vous pouvez commencer à créer une connectivité entre les composants en décrivant le flux de puissance, d’énergie, de données ou de toute autre information représentative. Créez des ports sur les composants qui proposent ou consomment des informations et des connecteurs qui relient les ports pour deux composants afin de représenter le flux d’informations.

Vous pouvez ajouter un port à un composant sur n’importe quel côté, et le port peut avoir une direction d’entrée ou de sortie. Pour créer un port, placez votre curseur sur un côté du composant. Cliquez et relâchez pour afficher les options du port. Pour créer un port, sélectionnez Input, Output ou Physical. Renommez le port en lui attribuant un nom évocateur des informations qu’il transmet.

  1. Créez un port de sortie au bas du composant Sensors. Renommez-le en SensorData.

    'Robot' architecture model with a downward facing output port below the 'Sensors' component called 'Sensor Data'.

  2. Cliquez et tracez une ligne depuis le port de sortie SensorData vers le composant Motion. Lorsqu’un port d’entrée est créé côté composant, relâchez le pointeur. Par défaut, ce nouveau port porte le même nom que le port source.

  3. Placez votre curseur à l’angle de la ligne SensorData jusqu’à voir apparaître l’icône de la branche branch icon. Faites un clic droit et tracez une ligne de branche vers le composant Trajectory Planning.

    'Robot' architecture model with a 'Sensor Data' connection out-port from the 'Sensors' component connected to two in-ports into the 'Trajectory Planning' and 'Motion' components.

  4. Établissez les connections présentées dans cette figure.

    To the 'Robot' architecture model, add a 'Motion Command' connection from the 'Trajectory Planning' component to the 'Motion' component, and an 'Encoder' connection from the 'Motion' component to the 'Sensors' component.

Le niveau racine du modèle d’architecture peut également comporter des ports qui décrivent l’interaction du système avec son environnement. Dans cet exemple, la position cible du robot est proposée par un ordinateur extérieur au robot lui-même. Représentez cette relation avec un port d’entrée.

  1. Cliquez sur le bord gauche du modèle d’architecture et saisissez le nom du port TargetPosition.

  2. Connectez un port d’architecture à un composant en faisant glisser une ligne depuis le port d’entrée TargetPosition vers le composant Trajectory Planning. Les connexions vers ou depuis un port d’architecture se présentent sous forme de tags.

    Final 'Robot' model has an architecture port connected from the 'Trajectory Planning' component to the 'Target Position' input port.

Modifier les interfaces de données

Vous pouvez définir une interface de données afin de spécifier complètement une connexion et ses ports associés. Une interface de données peut être constituée de plusieurs éléments de données présentant des dimensions, des unités et des types de données différents. Pour vérifier la cohérence lors de la connexion d’un port, vous pouvez également associer des interfaces à des ports non connectés lors du design des composants.

Spécifiez le flux d’informations entre les composants par le biais d’un port en configurant l’interface de données avec des attributs. Une interface de données peut se contenter d’envoyer une valeur entière, mais également transmettre un ensemble de nombres, une énumération, une combinaison de nombres et de chaînes de caractères ou un ensemble d’autres interfaces prédéfinies.

Intéressons-nous à l’interface de données entre les composants Sensors et Motion. Les données de capteurs se composent de ce qui suit :

  • Données de position de deux moteurs

  • Données concernant la proximité d’un obstacle issues de deux capteurs

  • Horodatage permettant d’évaluer le caractère actuel des données

  1. Pour ouvrir l’Interface Editor, accédez à Modeling > Interface Editor.

  2. Pour ajouter une interface de données, cliquez sur le bouton add interface. Attribuez à l’interface le nom sensordata.

    L’interface de données est nommée et définie séparément du port d’un composant avant de lui être affectée.

  3. Cliquez sur le port de sortie SensorData du composant Sensors. Dans l’Interface Editor, faites un clic droit sur sensordata et sélectionnez Assign to Selected Port(s).

    Si vous cliquez une nouvelle fois sur sensordata, les trois ports SensorData sont mis en surbrillance, ce qui indique que les ports connectés sont associés à cette interface.

    Model with three 'Sensor Data' ports highlighted in purple.

  4. Ajoutez un élément de données à l’interface de données sélectionnée. Cliquez sur le bouton add data element pour ajouter un élément de données et attribuez-lui le nom timestamp.

  5. Ajoutez d’autres éléments de données à l’interface de données comme indiqué en cliquant sur le bouton correspondant.

    NomTypeUnités
    timestampdoubleseconds
    direction1doubledegrees
    direction2doubledegrees
    distance1doublemeters
    distance2doublemeters
    position1doubledegrees
    position2doubledegrees
  6. Modifiez les propriétés d’un élément de données dans l’Interface Editor. Cliquez sur la cellule correspondant à l’élément de données dans la table et ajoutez des unités comme l’indique la spécification.

    Pour enregistrer l’interface de données dans un dictionnaire de données, cliquez sur la liste déroulante à côté du bouton save to data dictionary. Un dictionnaire de données permet de gérer et de partager collectivement un ensemble d’interfaces entre les modèles. Par exemple, plus tard dans le design, si vous choisissez de modéliser l’ordinateur externe sous la forme d’un modèle d’architecture distinct, ce modèle et le modèle Robot pourront partager le même dictionnaire de données. Ici, le dictionnaire est enregistré sous le nom RobotDD.

    The Robot DD dictionary with interface named 'sensor data' and interface elements named 'time stamp', 'direction 1', direction 2', distance 1', distance 2', 'position 1', and 'position 2.

Décomposer des composants

Chaque composant peut disposer de sa propre architecture. Double-cliquez sur un composant pour le décomposer en sous-composants.

  1. Double-cliquez sur le composant Trajectory Planning. La barre d’exploration et Model Browser indiquent la position du composant dans la hiérarchie du modèle.

    The inside of the 'Trajectory Planning' component shows three architecture ports called 'Target Position, 'Sensor Data', and 'Motion Command'.

    Ce composant commence par utiliser les données de position du moteur qui font partie de l’interface sensordata pour calculer la position idéale et la commande de vitesse. Il traite ensuite les informations relatives à la distance de l’obstacle dans la même interface afin de conditionner cette commande de mouvement en fonction de certaines règles de sécurité.

  2. Ajoutez les composants Motion Control et Safety Rules en tant que parties intégrantes de l’architecture Trajectory Planning.

    Faites glisser le port TargetPosition vers le composant Motion Control. Ajoutez un port de sortie Command à Motion Control, puis tracez une ligne vers le composant Safety Rules. Tracez des lignes depuis le port SensorData vers les composants Motion Control et Safety Rules.

    Port connections for the 'Trajectory Planning' component.

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.

Gérer les liens d’exigences

Les exigences font partie intégrante du processus d’ingénierie système. Certaines exigences portent sur la fonctionnalité de l’ensemble du système, d’autres sur des aspects de performance tels que la puissance, la taille et le poids. La décomposition des exigences de haut niveau en exigences de bas niveau et la dérivation d’exigences supplémentaires sont déterminantes pour l’architecture de l’ensemble du système. Par exemple, la consommation d’énergie globale du robot détermine la consommation d’énergie de son contrôleur.

Pour allouer et tracer les exigences avec les éléments du système, System Composer s’intègre entièrement à Requirements Toolbox. Pour dériver les exigences qui conviennent, vous devrez éventuellement analyser et spécifier les propriétés (telles que la puissance) des éléments du système, y compris les composants, les ports ou les connecteurs. Par exemple, si le coût total du système constitue une préoccupation, une propriété unitPrice est nécessaire.

Gérez les exigences à partir du Requirements Perspective de System Composer au moyen de Requirements Toolbox. Accédez à Apps > Requirements Manager. Pour plus d’informations, consultez View and Link Requirements in Simulink (Requirements Toolbox).

Requirements perspective showing requirement list and requirement links on components in the model.

Pour améliorer la traçabilité des exigences, liez les exigences aux composants architecturaux et aux ports. Lorsque vous cliquez sur un composant dans le Requirements Perspective, les exigences liées sont mises en surbrillance. À l’inverse, lorsque vous cliquez sur une exigence, les composants liés sont affichés. Pour créer directement un lien, faites glisser une exigence vers un composant ou un port.

Voir aussi

Rubriques