Assembly Basic Tutorial/fr

Ce tutoriel vous donnera des informations sur le flux de travail de l'assemblage actuel tout en fournissant l'arrière-plan de la conception utilisée. L'objectif est de comprendre le fonctionnement de l'atelier d'assemblage, sa structure et son utilisation.

Cet atelier est à un stade de développement précoce, par conséquent, vous rencontrerez un comportement incohérent et toutes sortes d'erreurs / de plantage. Veuillez signaler les problèmes reproductibles à [assembly sub-forum] ou sur [mantis bug tracker].

Comment bouger les éléments : Systèmes de coordonnées
Le but d'un atelier d'assemblage est de déplacer des pièces. Il est donc évident qu'il doit y avoir un moyen de réaliser cette transformation de pièces, et cette partie de l'introduction concerne cette fonctionnalité de base.

Dans FreeCAD, chaque objet de l'espace 3D possède son propre système de coordonnées. Ce système local est mis en relation avec son système parent par une transformation, son placement. Le placement de l'objet définit comment la géométrie locale doit être translatée et tournée pour être exprimée dans le système des parents. Ainsi, si vous déplacez une pièce en modifiant sa propriété de placement, vous ne modifiez pas la pièce, mais seulement la transformation de son système de coordonnées dans le système parent. Imaginez une boîte simple créée dans le plan de travail Part. Une fois créée, le paramètre "longueur" change la dimension de la boîte dans la direction x locale. Comme le placement est vide, c'est aussi la direction x globale. Si vous faites pivoter la pièce en définissant un axe de rotation et un angle, la longueur sera toujours dans la direction x locale, cependant, visuellement, elle ne changera plus sur x lorsque les images seront présentées dans le système de coordonnées global. La géométrie de la boîte n'a pas changé, seule la visualisation est transformée.



Cela faciliterait le déplacement de pièces uniques: il suffit d'adopter son emplacement. Cependant, dans FreeCAD, la plupart des dessins sont faits avec de nombreuses fonctionnalités (protrusions, poches, etc.), comment gérer cela? Déplacer toutes les fonctionnalités? Seul le dernier? Les deux façons introduiraient un comportement de modélisation très problématique, donc une troisième méthode est utilisée: ne pas déplacer les fonctionnalités du tout! Au lieu de cela, le concept d'un corps a été introduit dans la modélisation générale, tout ce qui est fait dans la conception de la pièce est maintenant groupé en dessous. Cet objet possède également une propriété de placement et peut être transformé.

Revenons aux systèmes de coordonnées locaux et parentaux: le corps est l'incarnation parfaite de ce concept! Chaque fonctionnalité sous le corps ne peut pas être déplacée directement, son placement est toujours vide. Cela signifie que la géométrie de l'entité n'a pas besoin d'être pivotée ou translatée si nous voulons l'exprimer dans le système de coordonnées des corps. Mais nous pouvons déplacer le corps à l'intérieur du système de coordonnées global en définissant son emplacement, puis la valeur globale de la géométrie de l'entité est calculée en appliquant également cette transformation. Rappelez-vous, nous faisons tourner les systèmes de coordonnées. Cela signifie que si nous transformons le système du corps, tout ce qui est en dessous l'utilise comme son système global personnel. Il n'y a pas besoin de déplacer les fonctionnalités du tout. Vous voulez tout votre dessin à un endroit différent? Il suffit de définir le placement du corps!

Pour résumer: Les systèmes de coordonnées peuvent être empilés, chaque objet utilise son système de parents comme un système global personnel. Si le système de coordonnées des parents est transformé, tous les enfants se transforment eux aussi sans changer leurs systèmes locaux.

Ce qui peut être assemblé: Modèle d'objet
Avec l'objet Corps, nous avons tout ce que nous voulons pour l'assemblage: nous pouvons déplacer des conceptions complexes d'une manière compréhensible, non? Pas assez! Que se passerait-il si vous vouliez avoir votre dessin plusieurs fois à l'intérieur de l'assemblage? Par exemple, si vous avez modélisé une vis, vous ne voulez pas la remodeler à chaque fois que vous en avez besoin. La copie peut fonctionner, cependant, que faire si vous changez la conception de votre vis: changer toutes les copies? Ce serait très ennuyeux. Pour surmonter cela, encore une fois un nouvel objet est introduit: la partie. Une pièce est un objet d'assemblage pur et ne peut être créée qu'à l'intérieur de cet atelier. Son but est de référencer un objet corps et de fournir un autre système de coordonnées.

Pour comprendre pourquoi il est introduit, nous devons considérer comment les choses sont déplacées dans FreeCAD. Permet d'étendre le graphique ci-dessus avec deux parties référençant le même corps comme indiqué dans l'image suivante.



Le système local de corps est le même dans les deux parties, cependant, les parties ont leurs propres emplacements et peuvent donc être transformées par rapport au système global. Comme les emplacements sont appliqués de manière récursive, les mêmes fonctionnalités peuvent se retrouver sur des positions différentes. Imaginez que vous changiez le placement des pièces P4 et P5 en différentes valeurs, votre dessin apparaîtrait dans deux endroits différents au sein du système global sans aucun changement dans les caractéristiques ou le corps qui les contient. Et puis imaginez changer le système de coordonnées du corps P3: Vous changeriez la position de toutes les incarnations de votre conception de la même manière!

Vous pouvez vous demander comment vous concevez peut être à deux endroits tout en étant une seule géométrie. C'est simple: la partie montre seulement une représentation visuelle de la géométrie à l'intérieur du corps, et vous pouvez avoir beaucoup de photos de votre pièce unique. Ces représentations visuelles sont également transformées si vous définissez le placement. Une partie ne contient absolument aucune information de modélisation.

Retour à notre cas d'utilisation: si vous avez besoin de 100 vis, vous ne modéliserez qu'un seul corps avec votre dessin. Ensuite, vous pouvez ajouter autant de pièces que vous le souhaitez en tenant ce corps. En appliquant différents emplacements aux pièces seulement, vous pouvez déplacer les vis comme vous le souhaitez. Et si vous changez quelque chose dans votre conception, le corps est mis à jour et chaque partie aussi, comme ils lui font tous référence. Impressionnant!

Maintenant imaginez un autre cas d'utilisation: vous avez un bon ensemble de moteur électrique composé de plusieurs parties, qui sont toutes déplacées à la bonne position. Ensuite, vous voulez créer une machine plus grande et vous avez besoin de plusieurs moteurs électriques pour cela. Ce que nous voulons, c'est réutiliser l'assemblage du moteur, le même raisonnement que pour les incarnations à plusieurs corps. Pour les conceptions simples, nous avons été en mesure de créer plusieurs parties à partir d'un seul corps, cependant, nous ne pouvons pas créer une pièce à partir de plusieurs parties. Par conséquent, nous avons besoin d'un autre objet qui peut le faire! FreeCAD présente l'objet produit pour cela. Un produit est essentiellement un assemblage complet avec plusieurs parties, mais possède également une propriété de placement. Qu'est-ce que ça veut dire? Il devient clair lorsque nous étendons à nouveau le diagramme du système de coordonnées avec notre nouvel objet produit.



Maintenant, nos pièces ne sont plus sous le système de coordonnées global, mais elles sont regroupées sous le produit. Pour les pièces, rien ne change: elles fonctionnent comme avant. Et en fait, si notre Produit1 avait été l'objet de niveau supérieur, absolument rien ne changerait du tout. Le système global est simplement remplacé par un système de coordonnées produit qui agit comme un système global. Dans notre exemple cependant, nous avons ajouté le produit à un autre produit, avec une troisième partie. Maintenant, ça devient intéressant: comme un produit a une propriété de placement, il peut être déplacé! Et nous avons déjà appris qu'une telle transformation est appliquée à tous les enfants. Par conséquent, les parties 1 et 2 se déplacent lorsque vous modifiez le placement de Produit1.

Retour à notre exemple: Produit1 serait le moteur électrique, Produit2 la grosse machine. Maintenant, vous pouvez ajouter plusieurs produits à la machine qui référencent tous les mêmes pièces que le produit1, donc tous représentant un moteur électrique. Et comme chaque produit peut être placé différemment, vous pouvez déplacer tous les moteurs à différentes positions. Combinez-le avec d'autres pièces et assemblages et vous pouvez construire une machine complexe. Encore une fois, si vous mettez à jour un corps, toutes les parties et donc tous les produits référencés sont mis à jour.

Enfin, vous pouvez vous demander pourquoi il n'y a pas de système de coordonnées global dans la dernière image. C'est parce qu'il n'y a rien de tel qu'un système de coordonnées global, c'était juste un concept facile à expliquer. Si vous assemblez votre moteur électrique, le système de coordonnées de niveau supérieur sera le système Produit1. Cependant, ce n'est pas un global général, car vous pouvez l'ajouter à un autre produit qui est le plus haut niveau cs après. Et cela peut être ajouté à un autre, et ainsi de suite. Il n'y a rien de tel qu'un système de coordonnées global, juste un système de haut niveau.

Pour résumer: Dans l'atelier de montage, vous pouvez combiner des pièces à des assemblages (produits). Ces produits peuvent être implantés avec d'autres pièces en nombre arbitraire.

Comment définir les relations: contraintes d'assemblage
Jusqu'à présent, nous avons discuté de tous les détails du déplacement des objets avec les emplacements et les objets impliqués. Il est cependant très fastidieux de calculer manuellement tous les placements et de les paramétrer manuellement via l'éditeur de propriétés. Il serait plus agréable s'il était possible d'établir des relations simples entre les parties au lieu de rotations abstraites et de translations. FreeCAD introduit donc des contraintes d'assemblage. Comme leur nom l'indique, elles fonctionnent de la même manière que dans l'esquisse: l'utilisateur applique différents attributs aux géométries des pièces. Cela peut être par exemple la distance entre deux points, ou l'orientation des lignes (parallèle, perpendiculaire) etc. FreeCAD essaie alors de trouver des emplacements qui satisfont toutes les contraintes données.



Pour assembler les objets dans le monde réel, on utiliserait la structure des pièces pour adapter la contrepartie à sa place, par exemple un boulon qui se loge dans un trou. Ou des surfaces qui se touchent et définissent donc la position exacte des pièces. Dans FreeCAD, cela fonctionne exactement comme ça: vous utilisez la géométrie des pièces pour spécifier où la seconde pièce doit se placer. A votre disposition sont les points, les lignes droites, les plans et les cylindres. L'image à droite les montre tous dans l'environnement FreeCAD. Mais bien sûr, la géométrie seule ne suffit pas pour calculer les positions des pièces, le type de relation doit également être connu. Par exemple deux faces: Elles peuvent se toucher, ou simplement être parallèles, voire perpendiculaires. Cette relation est définie dans FreeCAD à travers les contraintes d'assemblage déjà mentionnées. Vous avez 6 types différents à votre disposition: Fixe, Distance, Orientation, Angle, Aligné et Coïncident. Voyons ce qu'ils font tous et comment les utiliser.

Fix
The fix constraint is the simplest of all constraints. It only needs one part to be selected and then it fixes its position and its rotation. No matter what you do to this part afterwards: it will hold its place. And thats the whole purpose of that type. It's most useful to have always one fixed part per assembly, as it can be annoying if all parts get moved to satisfy other constraints. If you fix the most basic part in your assembly, all other parts will move towards it which gives you a pleasant experience. Note that this constraint works only in the assembly it is created in, the part will not be fixed in any parent assembly (remember: assemblies can be stacked).

Distance
As you already guessed from the name, with this constraint you can specify the distance between two geometries. This works for two points, but also for a point and a line, or a line and a cylinder and many more combinations. This constraint is pretty simple, but two points need mentioning: First, if there are multiple possible distances between geometries, for example the last mentioned line and cylinder, then the shortest distance is used. Second, sometimes multiple solutions exist even for the shortest distance. This is the case for the point-plane distance: every value can be satisfied with the point above AND below the plane. So if you only specify the value, it can happen that FreeCAD puts the point at the wrong side of the plane. To control this, the distance constraint has a special option, the solution space. This option allows to reduce the space of possible solutions, so that it matches your wishes. Lets see how this works on our small example: