Réserver une Démo
Pré. Proc.

Créer un Bloc de contraintes à partir d'équations

Cette fonctionnalité est disponible à partir de la version 14.1 Enterprise Architect .

Lors de l'élaboration d'une solution technique, il est souvent nécessaire de tenir compte des facteurs déterminés par calcul à l'aide d'équations mathématiques, telles que Force = Masse x Accélération (ou f=m*a). L'équation est représentée par une contrainte, et les éléments de l'équation (dans ce cas f , m et a ) sont les paramètres de la contrainte.

Vous pouvez modéliser une ou plusieurs contraintes calculées sous forme d'élément Bloc de contraintes SysML à l'aide de la dialogue « Modifier Bloc de contraintes », à travers laquelle vous analysez les contraintes et extrayez les paramètres de chacune des contraintes. Vous pouvez appliquer toutes les équations appropriées à votre modèle, qu'il s'agisse de formules standard internationales ou de celles que vous avez vous-même dérivées dans le cadre de votre travail.

Accéder

Menu contextuel

Cliquez-droit sur un Bloc de contraintes | Modifier le bloc de contraintes

Autre

Boîte à outils Diagramme , page Définition Bloc SysML | Faites glisser une icône Bloc de contrainte et déposez-la sur un diagramme de définition Bloc

Analyser les équations et créer des paramètres

Supposons que nous ayons un Bloc de contraintes nommé « Damper », contenant ces trois équations comme contraintes :

  • v_rel = der(s_rel)
  • f = d * v_rel ('d' est un symbole incorrect pour 'coefficient d'amortissement' ; ceci est délibéré, pour permettre une correction dans une étape ultérieure)
  • pertePower = f * v_rel
Les trois contraintes sont entrées dans le dialogue (en écrasant le texte Créer une contrainte ) et à partir de ces contraintes, cinq paramètres sont automatiquement extraits.

Le signe « + » qui précède chaque paramètre indique qu'il n'existe pas encore dans le modèle. Pour créer le paramètre dans le modèle :

  1. Cliquez sur le bouton Fermer.

    Le système affiche une prompt permettant de sélectionner si les paramètres doivent être créés ou non.
  2. Cliquez sur le bouton Oui.
Alternativement, dans la dialogue « Modifier Bloc de contraintes », vous pouvez cliquez-droit sur un nouveau paramètre et choisir l'option de menu contextuel « Créer un paramètre ». De cette façon, vous pouvez créer un seul paramètre.

Cette image montre l' amortisseur Bloc de contrainte résultant.

SysML Constraint Block in Sparx Systems Enterprise Architect.

Suppression des paramètres

La dialogue « Modifier Bloc de contraintes » peut également être utilisée pour supprimer une contrainte et ses paramètres associés d'un Bloc .

Dans notre exemple, supposons que nous ouvrions le dialogue et supprimions la contrainte :

pertePower = f * v_rel

( Cliquez-droit sur la contrainte et sélectionnez l'option 'Supprimer'.)

Les paramètres propres à la contrainte (dans ce cas, le paramètre « lossPower ») seront déplacés sous le titre « Paramètres non requis ».

Vous pouvez maintenant :

  • Cliquez-droit sur le paramètre et choisissez l'option de menu contextuel « Supprimer le paramètre », ou
  • Cliquez-droit sur la rubrique « Paramètres non requis » et choisissez l'option « Supprimer tous les paramètres non requis »

Renommer les paramètres existants

Dans notre exemple, supposons que nous ouvrions le dialogue et modifions la contrainte :

f = d * v_rel

à

f = coefficient d'amortissement * v_rel

(Cliquez sur la contrainte, cliquez sur le point dans la contrainte pour commencer l'édition, puis écrasez ou supprimez le texte. Cliquez ensuite sur la contrainte.)

Ces changements se produiront :

  • Le paramètre « dampingCoefficient » est extrait et signalé comme un nouveau paramètre (il n'existe pas dans le modèle actuel)
  • Le paramètre « d » est signalé comme « Non requis »
Nous pouvons supprimer « d » et créer « dampingCoefficient », comme expliqué précédemment ; cependant, il peut y avoir des connecteurs de liaison se connectant au paramètre « d » et tout ce que nous voulons, c'est renommer le paramètre « d » en « dampingCoefficient ». Par conséquent, une meilleure solution est de cliquez-droit sur le paramètre « Non requis » « d » et de choisir l'option de menu Renommer « d » en « dampingCoefficient » .

(Pour plus d'informations sur les paramètres de liaison, consultez la rubrique d'aide Lier les paramètres d'une propriété de contrainte .)

Fonctions Mathématiques

L'analyseur d'équations supporte l'utilisation de fonctions mathématiques (telles que der(s_rel) , plus haut dans cette rubrique) dans vos équations de contrainte. Lorsque vous spécifiez une fonction, il ne doit pas y avoir d'espace entre le nom de la fonction et la parenthèse ouvrante. Les paramètres de la fonction seront extraits en tant que nouveaux paramètres de contrainte, mais pas le nom de la fonction.

Variables intégrées

Une équation peut contenir des variables que vous préférez ne pas extraire comme paramètres de contrainte. Par exemple, l'environnement de simulation OpenModelica fournit un certain nombre de variables intégrées. Ainsi, lorsque le modèle doit être simulé sous OpenModelica, vous ne souhaiterez pas dupliquer ces variables comme paramètres extraits. Vous pouvez identifier les variables intégrées à l'aide de la fonctionnalité « Modifier le bloc de contrainte », afin qu'elles ne soient pas extraites de vos équations de contrainte, évitant ainsi les conflits potentiels.

Pour définir une liste de variables qui ne doivent pas être extraites en tant que paramètres, dans la dialogue « Modifier le bloc de contraintes », cliquez sur le bouton Modifier les variables intégrées...

Saisissez ensuite ou ajoutez à la liste séparée par des virgules les noms de variables intégrées.

Par exemple, OpenModelica définit « time » comme une variable intégrée, nous ajouterons donc « time » à la liste des ConstraintBlocks. Ensuite, lorsque nous saisissons l'équation « r = cos (time) », seul le paramètre « r » sera extrait.

Bloc de contrainte composite

Lors du développement de contraintes calculées plus complexes et/ou séquentielles, vous pouvez construire des ConstraintBlocks composites pour décomposer et séquencer les calculs.

Dans cet exemple, le ConstraintBlock K ne définit lui-même aucune contrainte, mais en tant que composite, il les hérite de ses trois composants ConstraintBlocks K1 , K2 et K1TimesK2 . Le ConstraintBlock K hérite des cinq paramètres a, b, c, d et K.

Plutôt que d'extraire la valeur de K à partir d'un seul calcul, le système calculera d'abord K1, puis K2, et enfin le produit de K1 et K2, donnant la valeur de K.

Cette structure permet également de modifier plus facilement la saisie de certains éléments du calcul sans affecter les autres éléments.

Apprenez Plus