Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Forum destiné aux questions et discussions en français
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Voici un bilan d'étape... et une nouvelle question (à la fin)
Capture d’écran du 2021-03-25 22-54-48.png
Capture d’écran du 2021-03-25 22-54-48.png (31.28 KiB) Viewed 1052 times
J'ai mis en place les LCS en m'accrochant sur des "Datum Point" créés au centre des arcs de cercles de mes guidages en rotation.
Afin de créer un "Datum Point" au milieu d'un segment créé par deux autres "Datum Point" (les centres des arcs de cercles) j'ai utilisé l'accrochage center of mass.
Pour créer les LCS j'ai pris appui sur 3 "Datum Point" (un pour indiqué le centre de centre du repère, un pour donner la direction de l'axe X et un autre pour donner la direction de l'axe Z). L'accrochage est réalisé en utilisant (OXZ) (ce qui correspond à mon plan de symétrie).
Capture d’écran du 2021-03-25 22-43-31.png
Capture d’écran du 2021-03-25 22-43-31.png (20.66 KiB) Viewed 1052 times
J'ai posé les variables et les constantes dont j'aurai besoin. Ici les unités sont en mm. J'espère que cela ne posera pas de problème avec MBdyn.
Remarque : j'ai d’abord appelé la longueur variable "lambda". Cela ne posait pas de problème lors de la création de la variable, mais impossible de l'utiliser dans l'expression de la cote. Aussi j'ai utilisé "Lambda" avec une majuscule à la place. Je me demande si l'interpréteur python n'a pas pris ma variable Variables.lambda pour le mot réservé de déclaration de fonction à la volée "lambda" ?
Capture d’écran du 2021-03-25 22-41-41.png
Capture d’écran du 2021-03-25 22-41-41.png (63.93 KiB) Viewed 1052 times
Ensuite j'ai créé un nouveau fichier d'assemblage dans lequel j'ai créé le sketch maître. Ce mécanisme à 3 barres est piloté par l'allongement de la distance cotée 131mm. Les deux segments à 90 degrés sont fixes. J'ai accroché des LCS sur ce sketch.
Capture d’écran du 2021-03-25 22-44-57.png
Capture d’écran du 2021-03-25 22-44-57.png (231.63 KiB) Viewed 1052 times
Puis j'ai ouvert un à un les sous-assemblages et utilisé "Link Part" pour importer le sous-assemblage dans l'assemblage avec sélection des bons repères pour caler les pièces.
Capture d’écran du 2021-03-25 22-39-05.png
Capture d’écran du 2021-03-25 22-39-05.png (257.59 KiB) Viewed 1052 times
Petit test avec une animation. Je pilote l'angle de rotation de la vis par rapport au stator. Le bras bouge. TOP !

Question : la vis s'incline mais ne tourne pas autour de son axe principal. Faut-il que je rajoute un sketch perpendiculaire à l'axe de la vis pour imposer un angle entre deux segments et y coller un autre LCS pour pouvoir animer la vis ou y a-t-il plus rapide ?
Last edited by SuperMarty on Sun Mar 28, 2021 8:06 pm, edited 1 time in total.
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Voici la solution utilisée pour faire tourner la vis (sans avoir besoin de rajouter un LCS supplémentaire ni faire un autre sketch) :
Capture d’écran du 2021-03-26 22-33-49.png
Capture d’écran du 2021-03-26 22-33-49.png (21.32 KiB) Viewed 1024 times
Sélectionner la vis dans le "Model" de ASM4
Dans l'onglet "Données" partie "Assembly", vérifier/ajuster l'axe de la rotation (dans ce cas c'est x, donc "Axe"=[1,0,0])
Dans la rublique "Angle" saisir la variable correspondant à l'angle de la vis par rapport à l'écrou (Variables.theta)

BINGO !

PS : cette solution est inspirée de la vidéo de Mads Leth Danielsen (https://www.youtube.com/watch?v=XHVnopCW_6w)
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

J'ai cherché à associer une couleur différente à chaque classe d'équivalence cinématique.
Malheureusement dans la classe d'équivalence du bâti ainsi que dans celle du bras il y a des "Link Part" vers la même pièce (AxeArticulation, AxeArticulation001 sont des liens vers une seule et même pièce). Aussi lorsque j'affecte une couleur à l'un des axes ce sont tous les axes qui changent de couleur. Afin de mettre en évidence le pb, j'ai peint en rouge la pièce.
Capture d’écran du 2021-03-26 23-01-12.png
Capture d’écran du 2021-03-26 23-01-12.png (177.99 KiB) Viewed 1013 times
Comment dissocier les couleurs de ces "Link Part" tout en gardant le même fichier de définition de la pièce pour toutes les instances ?
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Pour répondre à ma question précédente...

Je pense avoir compris qu'il y a deux façons d'appliquer une couleur à une pièce :

Méthode 1 : dans le workbench Assembly4 exclusivement
Capture d’écran du 2021-03-27 09-43-40.png
Capture d’écran du 2021-03-27 09-43-40.png (324.73 KiB) Viewed 983 times
Choisir le pièce "Linkée" dans le Model et utiliser "Apparence".
Capture d’écran du 2021-03-27 09-47-23.png
Capture d’écran du 2021-03-27 09-47-23.png (32.49 KiB) Viewed 983 times
Dans la fenêtre choisir la couleur de la forme souhaitée.
Cette couleur affecte toutes les instances de cette pièce dans l'assemblage

Méthode 2 :
Capture d’écran du 2021-03-27 09-17-00.png
Capture d’écran du 2021-03-27 09-17-00.png (98.53 KiB) Viewed 983 times
Choisir le pièce "Linkée" dans le Model et utiliser "Remplacer les couleurs".
Capture d’écran du 2021-03-27 09-18-02.png
Capture d’écran du 2021-03-27 09-18-02.png (378.02 KiB) Viewed 983 times
Puis sélectionner les faces à colorier et appliquer la couleur souhaitée

Au final j'ai utilisé un mélange des deux méthodes précédentes pour résoudre mon problème de couleur des classes d'équivalences. J'ai obtenu :
Capture d’écran du 2021-03-27 10-08-19.png
Capture d’écran du 2021-03-27 10-08-19.png (142.31 KiB) Viewed 983 times
Remarque : l'ordre dans lequel on applique ces modifications de couleurs ainsi que l'ordre des "Link part" dans le Model semblent influencer le résultat final (parfois la couleur souhaitée n’apparaît que lorsque la souris passe sur la zone...).

Savez-vous quelle est la règle générale concernant la remarque précédente ?
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Avant de démarrer l'étude dynamique avec MBdyn, j'ai souhaité faire quelques vérifications sur mon assemblage et découvrir les outils disponibles pour déterminer la masse d'un sous-ensemble, la position du centre de masse, l'opérateur d'inertie...

Surprise : la vis a une masse négative (voir https://forum.freecadweb.org/viewtopic. ... 58#p491758)
=> raison : les faces lors de l'export (ou de l'import ?) n'étaient pas bien orientées.
=> solution : ouvrir le fichier de la vis, Atelier Part > Pièce > Inverser les formes. Attention : inverser la pièce nécessite ensuite de retoucher son assemblage pour que le "Link Part" pointe bien vers la vis inversée.
=> Note pour la prochaine fois : vérifier la cohérence du fichier STEP avant de débuter l'assemblage. Malheureusement je n'ai pas trouvé d'outil pour faire facilement ce travail sous Linux. Toutefois Analysis situs (http://quaoar.su/blog/page/analysis-situs) semble être un bon choix sous Windows. Une version pour Linux serait en cours de préparation. (je n'ai pas testé la version 0.4 qu'il faut compiler à la main sous Linux - je tenterai probablement la compilation lorsque la version 1.0 sera ok mais je préfèrerais qu'un AppImage soit dispo).

Déception : je n'ai pas trouvé d'outil capable de déterminer les propriétés d'inertie d'un sous-assemblage de asm4 (classe d'équivalence). FCinfo permet de déterminer la masse, le centre de masse et l'opérateur d'inertie pour une seule pièce.
=> solution bancale : fusionner toutes les pièces du sous-assemblage (Part > Exécuter l'union de plusieurs formes). A partir de là il n'est plus possible d'appliquer des masses volumiques différentes pour les pièces de l'assemblage. Ce qui conduit à des écarts plus ou moins importants en fonction de l'inhomogénéité de l'assemblage. J'ai affecté une densité moyenne pour obtenir la bonne masse de l'ensemble.

Ci-dessous un comparatif SolidWorks / FCinfo :
volume-vis.png
volume-vis.png (349.36 KiB) Viewed 951 times
vis-inertie.png
vis-inertie.png (409.03 KiB) Viewed 951 times
bras_nu.png
bras_nu.png (281.77 KiB) Viewed 951 times
bras_charge.png
bras_charge.png (281.59 KiB) Viewed 951 times
On constate que le calcul des volumes est bon :)
On constate également que les axes ne sont plus exactement orientés comme sur le fichier original (quelques pouièmes de différence heureusement).
Pour le centre de masse et l'opérateur d'inertie PAS GLOP ! (en raison de la non prise en compte des différentes densités)

Connaissez-vous une macro qui fasse le boulot (masse + centre de masse + opérateur d'inertie d'un assemblage) ? Si en plus il était possible de choisir le centre (G ou autre) et la base pour l'opérateur d'inertie ce serait super.
Ou si quelqu'un est volontaire pour coder cette fonctionnalité dans FCinfo ce serait génial ;)
schupin
Posts: 476
Joined: Sun Jan 21, 2018 1:43 pm

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by schupin »

SuperMarty wrote: Sun Mar 28, 2021 7:56 pm Connaissez-vous une macro qui fasse le boulot (masse + centre de masse + opérateur d'inertie d'un assemblage) ? Si en plus il était possible de choisir le centre (G ou autre) et la base pour l'opérateur d'inertie ce serait super.
J'avais fait cette macro : https://wiki.freecadweb.org/Macro_CenterOfMass il y a quelques temps.

Pour les masses et centre de masse c'est bon, mais j'avais pas calculé les moments inerties.
Je suppose que ça doit pouvoir se faire sans trop de mal.
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Bonjour @schupin,

Je te remercie pour ta réponse.
J'ai testé ta macro avec des éléments d'un assemblage asm4. Il semblerait que la macro se perde dans les repères de asm4 car elle me met le centre de masse en dehors de la pièce (en photo ci-dessous le cas de la chaise (bâti) sélectionnée seule avec son centre de masse sous la forme d'une boule rouge en-dehors de la pièce).
Capture d’écran du 2021-03-29 20-10-06.png
Capture d’écran du 2021-03-29 20-10-06.png (216.1 KiB) Viewed 887 times
Si tu es partant pour faire évoluer ta macro sache que je serais honoré d'être bêta-testeur :D
Je peux t'envoyer la maquette en privé pour que tu constates/testes (je ne connais pas la licence de la maquette originale, aussi je ne souhaite pas la diffuser ici).

PS : je n'arrive pas à voir ce qu'il y a dans les boutons. Mais ce n'est probablement pas lié à ta macro car j'ai le même bug avec des boutons de FCinfo

PS2 : pour rappel voici ma config
OS: Linux Mint 20 (X-Cinnamon/cinnamon)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 2021.311.24301 +3373 (Git) AppImage
Build type: Release
Branch: LinkStage3
Hash: 91ca94db328bf6126c4a01547b6aa2202d876ebc
Python version: 3.8.8
Qt version: 5.12.9
Coin version: 4.0.1
OCC version: 7.4.0
Locale: French/France (fr_FR)
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

Par contre en éditant le sous-assemblage ta macro marche bien ;)
Capture d’écran du 2021-03-29 21-45-41.png
Capture d’écran du 2021-03-29 21-45-41.png (207 KiB) Viewed 877 times
schupin
Posts: 476
Joined: Sun Jan 21, 2018 1:43 pm

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by schupin »

Bonsoir,
SuperMarty wrote: Mon Mar 29, 2021 7:29 pm Si tu es partant pour faire évoluer ta macro sache que je serais honoré d'être bêta-testeur :D
Je peux t'envoyer la maquette en privé pour que tu constates/testes (je ne connais pas la licence de la maquette originale, aussi je ne souhaite pas la diffuser ici).
Avec plaisir, quand j'avais fait ça, j'avais pas essayé de trucs venant d'ASM4. Je veux bien essayer de comprendre d'où vient le souci. Si c'est possible, je te laisse envoyer un PM.
SuperMarty wrote: Mon Mar 29, 2021 7:29 pm PS : je n'arrive pas à voir ce qu'il y a dans les boutons. Mais ce n'est probablement pas lié à ta macro car j'ai le même bug avec des boutons de FCinfo
Je pense que ça vient juste des icones qui ne sont pas à côté de la macro.
Il faut les télécharger à part (https://forum.freecadweb.org/download/file.php?id=84270) et dézipper à coté du fichier macro.
SuperMarty
Posts: 24
Joined: Fri Mar 19, 2021 12:19 pm
Location: France

Re: Solidworks => STEP => ASM4 => MBdyn : quelle est la bonne approche ?

Post by SuperMarty »

schupin wrote: Mon Mar 29, 2021 8:35 pm Je pense que ça vient juste des icones qui ne sont pas à côté de la macro.
Il faut les télécharger à part (https://forum.freecadweb.org/download/file.php?id=84270) et dézipper à coté du fichier macro.
En effet, c'est nickel à présent !

PS : tu as reçu un PM
Post Reply