CatiaV5 – L’homogénéité des formules ou la conformité des magnitudes

Peut être vous êtes vous déjà lancé dans la paramétrie sous catia ?
Dans ce cas, je vous félicite car c’est là un des plus grands intérêts de ce logiciel.

Votre objectif était surement de retranscrire une équation simple ou complexe dans laquelle il fallait mêler des variables de types différents (des mm et des N.m par exemple).

Il est alors fort possible que vous vous soyez arrêté sur le problème suivant…

La non homogénéité d’une formule (non conformité des magnitudes)

image

Prenons cet exemple simple:

Créons un paramètre de type longueur nommé “Longueur initiale” avec une valeur de 25mm.
Puis créons un autre paramètre de type longueur nommé “longueur finale”.
Sur ce deuxième paramètre ajoutons une formule dans laquelle vous voulez simplement ajouter 20mm à “longueur initiale”.
On écrit alors cette formule qui est claire dans notre tête (on veut ajouter 20mm !)

‘Longueur finale’ = Longueur initiale + 20

image

mais que cette stupide machine n’accepte pas.

image

Dans la plus part des cas, Catia nous propose de désactiver la formule ou bien de revenir à l’éditeur de formule pour faire une correction.
Ici, c’est plus pernicieux car il nous donne tout de même un résultat en mm mais pas celui que nous attendions.
Nous espérions  45mm et nous obtenons 20025mm.
Le système ne vous fera d’ailleurs plus la remarque, alors attention restons attentif.

image

Pourquoi ?

En fait, c’est Catia qui a raison.
Il faut veiller au fait que la combinaison des différents types (longueur, angle, vitesse…) contenus dans l’équation (variables et constantes subissant toutes sortes d’opérations) conduise au même type que le paramètre portant l’équation.

Ici le paramètre “Longueur finale” est du type Longueur (on attend une valeur de résultat en mm) or dans notre formule nous avons une addition de deux types différents: Longueur initiale (des mm) et 20 (un entier = sans dimension).
Ceci n’a pas de sens. On ne peut additionner des mm avec autre chose que des mm.

Corrigeons la formule dans ce sens:

‘Longueur finale’ = Longueur initiale + 20mm

image

qui nous donne le résultat attendu soit 45 mm !
Nous avons simplement imposé un type longueur à la valeur 20 en précisant qu’il s’agissait de mm.
L’addition est donc juste mm+mm de même dimension qui conduit à une longueur (ici en mm).

Et si nous avions mis 20 m au lieu de 20mm ?

Essayons,

imageNous obtenons 20025 mm !
Oui 20m c’est bien 20000mm plus les 25mm…
20025 cela vous rappelle le problème de départ, non ?

Il y a deux conclusions à tirer de cela:

  • Puisqu’il n’y a pas d’erreur, Catia accepte de mélanger des m et des mm. C’est pratique)
  • Par défaut, Catia nous alerte mais cherche à convertir le nombre sans unité dans le type du paramètre résultant (ici une longueur) mais maladroitement en prenant l’unité de base le mètre d’où le résultat 20025 mm.

Un autre exemple, la pression

image

Pression = Force / Surface

Pour être homogène dans ce cas il faut que le paramètre résultant (Pression) soit bien du type pression (au moment de la création) et que les deux autres soient bien du type “force” et “aire”.
Oui mais les unités me direz vous ?
Je renforce ce que je viens de dire au dessus.
C’est vrai, si vous faites le calcul à la main, il faut faire attention aux unités en ayant par exemple une pression en Méga Pascal (Mpa), une force en Newton (N) et une surface en millimètre carré (mm²).
MPa = N / mm²

image

Cela fonctionne parfaitement bien.

Si l’on change d’unité pour l’un d’entre eux, cela fonctionne t’il toujours ?
Allons dans Outil/options puis dans paramètres et mesure et dans l’onglet unité et changeons par exemple l’unité de surface en m²  (mm² devient m²).

image
Regardons l’arbre… (un update manuel si nécessaire) … la pression n’a pas changé (toujours 200MPa).
La surface elle, a vu sa valeur se convertir à la nouvelle unité sans que nous ayons à intervenir.

image

Ceci est donc très pratique. Nous n’avons pas à nous soucier de l’unité utilisée du moment que le type est respecté. Une aire (ou une surface comme vous voulez) quelle soit exprimée en mm², en m², en square inch ou en km² est toujours du même type et Catia fera la conversion pour vous.

Que se passe t’il maintenant si l’on se trompe dans la formule en écrivant une grosse ânerie:

Pression = Surface / Force   !???

Faites l’essai !
Cela conduit à notre fameux message d’erreur “Non conformité des magnitudes” !
Normal puisque Catia manipule bien plus que des valeurs, il manipule des dimensions (les types) et comme nous venons de le voir une pression dont l’unité de base est le Pascal (1N/m²) est bien un force divisée par une surface et non l’inverse.

Conseil:

Si vous ne vous en sortez pas avec votre formule je peux vous donner deux astuces:

  • Faites sur le papier l’équation aux dimensions de votre formule et vérifiez que chaque entrée soit bien du bon type. Cela doit fonctionner
  • Passez par plusieurs étapes en créant des paramètres intermédiaires. Si vous avez une formule constituée de plusieurs membres (au numérateur et au dénominateur) fractionnez la en créant un paramètre numérateur et un autre dénominateur puis faites un dernier paramètre utilisant ces deux derniers(une simple division).

 

Changer le type ou forcer le type, c’est possible !

Imposer un type à un réel

Oui, on peut par exemple dans une formule imposer un type souhaité à un paramètre de type réel (c’est à dire sans unité). Comment:

Soit “ParamReel” le paramètre de type réel de valeur 58.3 (pourquoi pas) –> donc sans unité (on est d’accord ?)
Dans une formule je peux l’utiliser comme si il était un facteur d’une valeur unitaire d’un autre type.
Exemple:
“ParamReel” * 1deg    ce qui veut dire 58.3 * 1deg ce qui donne 58.3deg (un angle !)

58.3 est donc un facteur multiplicateur de l’angle unitaire.
Cela fonctionne avec n’importe quel autre type, encore faut il les connaitre:
s pour seconde, mm pour millimètre, m_s2 pour une accélération, etc…
Pour savoir comment écrire l’unité, vous pouvez créer un paramètre que vous détruirez dans la foulé.
Comment écrit on l’unité d’un moment d’inertie ?
On créé le paramètre en choisissant le type moment d’inertie

image

Ca s’écrit kgxm2 !
Je le note et je détruis le paramètre.
Dans ma formule, je peux mettre “ParamReel” * 1kgxm2 si ça m’arrange.

Bon, ça ne sert pas souvent mais c’est bon à savoir.

Par contre ce qui sert un peu plus c’est cela.

Supprimer le type

Un peut dans le même esprit, il suffit de diviser par la même unité.
Exemple:
Je veux récupérer la valeur (donc un réel) de cet angle 137.3deg
Je créée un paramètre de type réel et lui colle une formule du type:

MonRéel = 137.3deg / 1deg

L’équation aux dimensions dit Angle/angle –> cela s’annule, il n’y a plus de dimension et Catia est content.

image

Changeons alors le type

C’est simplement la combinaison des deux premiers cas.

On supprime le type et on impose un autre type.
Je pars par exemple d’un paramètre angulaire et je veux récupérer sa valeur et en faire un vitesse.

  • Je pars d’un paramètre angle
  • Je créé un paramètre vitesse

 

image

  • J’ajoute une formule à mon paramètre vitesse
    première étape, je divise par 1deg pour obtenir une valeur sans dimension
    deuxième étape, je multiplie par 1m_s pour obtenir une vitesseRésultat un paramètre de vitesse dont la valeur est liée à celle de l’angle.

image

 

Voilà pour les explications.

Si cet article vous a aidé à mieux comprendre Catia, j’en suis heureux alors n’hésitez pas à le partager.
Et si vous souhaitez plus de précision à ce sujet, laissez moi un commentaire en bas de page.

About the Author: PSX59

Technicien dans l'âme et résolument passionné d'aviation, je vous invite à découvrir la CAO sur des thèmes variés avec un seul but ... Créer !

Leave A Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *