| Thème |
|---|
| Analyse d'éléments finis |
| Niveau |
| Débutant/intermédiaire |
| Temps d'exécution estimé |
| 30 minutes |
| Auteurs |
| HarryvL |
| Version de FreeCAD |
| 1.1 ou plus récente |
| Fichiers exemples |
| None |
| Voir aussi |
| None |
Dans ce tutoriel, nous analysons la déformation par cisaillement d'un bloc composite constitué d'un noyau rigide noyé dans une matrice souple. Il démontre l'utilisation de BooleanFragments et de CompoundFilter pour créer des solides pour le bloc et la matrice à partir de deux cubes concentriques. Ce flux de travail garantit que des MeshRegions, des matériaux et des conditions limites distincts peuvent être définis pour le bloc et la matrice qui l'entoure. Pour sélectionner les régions internes, nous pouvons utiliser Choisir un élément, la macro de Markus Hovorka ou choisir une autre approche. Les résultats de CalculiX montrent clairement l'effet du noyau rigide sur la réponse du bloc composite.
Tout d'abord, nous créons deux cubes concentriques, l'un de 10 mm et l'autre de 5 mm. Cette opération s'effectue dans l'atelier Part. Par défaut, le cube est placé à l'origine [0, 0, 0] ; il faut donc réduire l'échelle du plus petit cube et le décaler en modifiant la propriété Position dans le placement pour la définir sur (2.5,2.5,2.5). Pour rendre le noyau visible, la transparence du bloc extérieur est réglée sur 50 dans l'onglet « Vue » de l'éditeur de propriétés. Le résultat est présenté ci-dessous.
Ensuite, mettez en surbrillance les deux blocs dans l'arborescence et créez des Fragments booléens (Part → Scinder → Fragments booléens). Dans l'onglet « Données » de l'éditeur de propriétés, changez le mode en CompSolid. Mettez maintenant en évidence les fragments booléens dans l'arborescence des objets et créez un filtre de composé (Part → Créer un composé → Filtre de composé).
À partir de l'atelier FEM, nous créons un conteneur d'analyse. Celui-ci contiendra toutes les définitions nécessaires à l'analyse CalculiX ainsi que ses résultats. Si le conteneur d'analyse n'est pas actif (par exemple, lors du rechargement du fichier ou après être revenu d'autres analyses), il faut l'activer en cliquant avec le bouton droit de la souris et en sélectionnant « Activer l'analyse » ou simplement en double-cliquant dessus. Pour lancer le processus de maillage, sélectionnez le « CompoundFilter » dans l’arborescence et ouvrez la boîte de dialogue de maillage « Maillage → Maillage à partir d’une forme par Gmsh ». Quittez la boîte de dialogue en cliquant sur OK.
Un objet « Mesh » est désormais créé dans l'arborescence des objets. Sélectionnez cet objet et créez une densification de maillage via Maillage → Densification de maillage. Ouvrez la boîte de dialogue de l'objet « MeshRegion » en double-cliquant dessus dans l'arborescence, puis cochez la case « Solid ». Cliquez ensuite sur le bouton « Ajouter » et sélectionnez l’objet CompoundFilter dans la vue 3D. Cela devrait ajouter une référence à « CompoundFilter:Solid1 » dans la liste des objets du raffinement de maillage. Enfin, spécifiez la taille maximale des éléments pour cette région (5 mm dans l’analyse en cours). Quittez la boîte de dialogue en cliquant sur OK.
Ensuite, créez un nouvel objet MeshRegion comme expliqué ci-dessus et utilisez Std Choisir un élément (passez la souris au-dessus du centre du cube et appuyez sur G,G) pour sélectionner une face de l'objet Cube_Core intérieur dans la vue 3D. Une fenêtre contextuelle vous demandera quel solide sélectionner. Choisissez Solid2 (le cube intérieur). Cette fois-ci, la liste de référence devrait afficher « CompoundFilter:Solid2 », comme ci-dessous. Nous avons choisi une taille maximale d'élément de 1 mm.
Remarque : si vous avez des difficultés à choisir "CompoundFilter:Solid2" c'est peut-être parce que vous avez oublié de mettre le mode BooleanFragments à CompSolid.
Un matériau est attribué aux régions du modèle via un objet SolidMaterial. Dans ce tutoriel, nous affectons deux matériaux : un pour la matrice et un pour le noyau.
Créez un objet MaterialSolid via l'option de menu Modèle → Matériaux → Matériau solide. Ouvrez la boîte de dialogue, cochez la case d'option « Solide », cliquez sur « Ajouter » et sélectionnez l'objet CompoundFilter dans la fenêtre graphique. La liste de référence devrait désormais afficher « CompoundFilter:Solid1 », comme précédemment. Nous attribuons le matériau ABS à la matrice, avec un module de Young correspondant à environ 1 % de celui de l'acier.
Répétez la procédure ci-dessus pour le noyau (« CompoundFilter:Solid2 ») à l'aide de l'outil « Choisir un élément » ou d'une autre méthode. Cette fois-ci, nous attribuons le matériau « CalculiX-Steel », qui est nettement plus rigide que l'ABS utilisé pour la matrice.
Pour créer une condition de cisaillement simple pour le bloc composite, les déformations aux limites ne doivent pas être contraintes. Pour ce faire, le bloc est placé sur un support coulissant. Cela laisse trois degrés de liberté dans le plan du support (2 translations et une rotation) et ceux-ci seront contraints plus tard. (Remarque : comme le plan empêche la déformation de la face, il induit toujours une contrainte mineure, qui pourrait être éliminée par un choix différent des conditions limites). Pour créer une condition limite de glissement, ajoutez un objet « Displacement » (Modèle → Conditions limites et charges mécaniques → Condition limite de déplacement). Une fois la boîte de dialogue ouverte, cliquez sur le bouton « Ajouter » et sélectionnez la face à laquelle la condition aux limites doit être appliquée. Comme le bloc est autorisé à coulisser dans le plan x-y, seul le bouton radio « Déplacement en Z » est sélectionné ; les autres boutons radio ne sont pas cochés.
Pour empêcher le mouvement du corps rigide dans le plan de glissement, il faut éliminer trois degrés de liberté indépendants. Pour cela, un sommet du plan de glissement est contraint dans les directions x et y (éliminant 2 degrés de liberté) et un sommet est fixé dans la direction x (éliminant le dernier degré de liberté). Pour ce faire, deux objets Displacement supplémentaires sont créés et le résultat est illustré ci-dessous.
La dernière étape de la définition de l'analyse est l'application des charges. Pour créer une condition de cisaillement simple, un ensemble de charges de cisaillement est appliqué comme indiqué ci-dessous. Chaque charge est choisie à 1000 N et, compte tenu des directions d'application, l'équilibre des forces et des moments est atteint pour tous les degrés de liberté de translation et de rotation. Dans FC, cela nécessite l'ajout de quatre objets Force (Modèle → Conditions limites et charges mécaniques → Charge d'effort) - un pour chaque face. Lorsque la boîte de dialogue est ouverte, appuyez d'abord sur le bouton « Ajouter », puis sélectionnez la face à laquelle la condition aux limites doit être appliquée. Par défaut, cela crée un ensemble de forces perpendiculaires à la face (c'est-à-dire une force normale). Pour passer à une force de cisaillement, appuyez sur le bouton « Direction » et sélectionnez une arête du cube qui va dans la direction souhaitée. Si la force résultante pointe dans la direction opposée à celle requise, sélectionnez la case d'option "Inverser la direction".
Maintenant que tous les objets de maillage, les matériaux et les conditions aux limites ont été définis, nous sommes prêts à analyser la déformation du bloc avec CalculiX. Si le conteneur « Analyse » n'est pas actif, activez-le en double-cliquant dessus (ou en cliquant avec le bouton droit et en sélectionnant « Activer l'analyse »). Ouvrez la boîte de dialogue CalculiX en double-cliquant sur l'objet « SolverCalculiX », puis cliquez sur « Appliquer » pour lancer l'analyse.
Si tout se passe bien, la fenêtre de sortie CCX devrait afficher les messages suivants.
Une fois l'analyse terminée, examinez l'objet « SolverCalculiXResult » qui affiche par défaut l'amplitude du déplacement. Le déplacement maximal, d'environ 0,08 mm, s'affichera dans la zone de sortie correspondante. Le déplacement maximal étant relativement faible par rapport aux dimensions du bloc (< 1 % de la taille du bloc), il convient de mettre les déplacements à l'échelle pour une meilleure visibilité. Pour ce faire, sélectionnez l’objet « SolverCalculiXResult » et ajoutez un filtre de visualisation (Résultats → Filtre de visualisation des déformations). Réglez le facteur de déformation sur 20 et utilisez le curseur pour visualiser la déformation mise à l’échelle. Sélectionnez « Déplacement » dans le champ « Champ ».
Pour étudier la déformation du noyau, nous devons découper le bloc. Une fois le pipeline « SolverCalculiXResult » sélectionné, ajoutez un filtre de découpe (Résultats → Filtre d'écrêtage d'une région) et créez un plan dont l’origine est [5.0,2.5,5.0] et la normale [0,1,0], c’est-à-dire au niveau d’une face du noyau dont la normale est orientée dans la direction y. Cochez la case « Couper des cellules » pour créer une surface plane. Comme précédemment, définissez le champ sur « Déplacement » pour afficher les courbes de déplacement en couleur. Cliquez sur « Appliquer » puis sur OK. Si nécessaire, masquez le filtre de visualisation des déformations pour ne voir que la coupe.
D'après le résultat, il est clair que le noyau reste largement indéformé et aide à résister à la déformation de la matrice souple (comparez l'angle de cisaillement de la partie colorée en bleu à celui de la partie colorée en vert). Ce qui est également mis en évidence, c'est que dans des conditions de cisaillement simple, les faces du bloc composite se déforment, ce qui implique que la condition de limite de glissement à la base du cube fournit une contrainte excessive.
Les défis suivants peuvent être intéressants à relever à titre d'exercice supplémentaire :
1) Corriger la contrainte excessive imposée par la condition de frontière glissante.
2) Essayer de créer des conditions limites de contact entre le noyau et la matrice pour voir si une séparation se produit.
Le fichier FC pour ce tutoriel est joint ci-dessous comme point de départ.
https://forum.freecad.org/viewtopic.php?f=18&t=26517&start=20
Amusez-vous bien!