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 d' Enterprise Architect .

Lors du développement d'une solution d'ingénierie, il est courant de refléter les 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 en tant qu'élément de Bloc de contraintes SysML à l'aide de la boîte de dialogue "Modifier le 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 domaine de votre travail.

Accéder

Menu contextuel

Cliquez-droit sur un Bloc de Contrainte | Modifier le bloc de contrainte

Autre

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

Analyser des é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)
  • pertePuissance = f * v_rel
Les trois contraintes sont saisies dans la boîte de le dialogue du fichier (en écrasant le texte Créer une contrainte ) et de ces contraintes cinq paramètres sont automatiquement extraits.

Le signe '+' précédant 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 pour sélectionner s'il faut ou non créer les paramètres.
  2. Cliquez sur le bouton Oui.
Alternativement, dans la boîte de dialogue 'Edit Constraint Bloc ', vous pouvez cliquez-droit sur un nouveau paramètre et choisir l'option de menu contextuel 'Create Parameter'. De cette façon, vous pouvez créer un seul paramètre.

Cette image montre le Constraint Bloc Damper résultant.

SysML Constraint Block in Sparx Systems Enterprise Architect.

Suppression de paramètres

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

Dans notre exemple, supposons que nous ouvrons le dialogue et supprimons la contrainte :

pertePuissance = f * v_rel

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

Les paramètres uniques à la contrainte (dans ce cas, le paramètre 'lossPower') seront déplacés sous l'en-tête '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 ouvrons 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, et é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 consiste à cliquez-droit sur le paramètre 'd' 'Non requis' et à choisir l'option de menu Renommer 'd' en 'dampingCoefficient' .

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

Fonctions Mathématiques

L'analyseur d'équations prend en 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 y avoir aucun 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 en tant que paramètres de contrainte. Par exemple, l'environnement de simulation OpenModelica fournit un certain nombre de variables intégrées, donc là où le modèle doit être simulé sous OpenModelica, vous ne voudriez pas dupliquer ces variables en tant que paramètres extraits. Vous pouvez identifier les variables intégrées à la fonctionnalité 'Edit ConstraintBlock', 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 boîte de dialogue 'Edit ConstraintBlock', cliquez sur le bouton Edit Built-In Variables....

Saisissez ou complétez ensuite la liste séparée par des virgules des noms de variables intégrées.

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

Bloc de contrainte composite

Dans le 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 les hérite de ses trois composants ConstraintBlocks K1 , K2 et K1TimesK2 . ConstraintBlock K hérite des cinq paramètres a, b, c, d et K.

Plutôt que d'extraire la valeur de K d'un 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