Assembly3 Workbench/fr

Introduction
Assembly3 est un Atelier externe utilisé pour effectuer l'assemblage de différents corps contenus dans un seul fichier ou dans plusieurs documents. L'atelier est basé sur plusieurs changements de fonctions de base effectués pour la version de FreeCAD 0.19 (par exemple App Link), de sorte que Assembly3 Workbench ne peut pas être utilisé avec les versions antérieures.

Les principales caractéristiques de l'atelier Assembly3 sont:
 * solveur dynamique/interactif. Cela signifie que vous pouvez déplacer des pièces avec la souris pendant que le solveur contraint le mouvement. Cela permet par exemple de connecter une roue à un axe et de faire tourner la roue de manière interactive avec la souris.
 * liens. Cela signifie que vous pouvez utiliser une seule pièce, par ex. une vis plusieurs fois dans un assemblage (à différents endroits) sans dupliquer la géométrie.
 * liens externes. Il est possible d'avoir un document Freecad contenant uniquement un assemblage et non des pièces. Toutes les pièces peuvent être dans des fichiers uniques. Les fichiers peuvent même être dans une bibliothèque ou n'importe quoi d'autre dans le système de fichiers. La seule exigence est que le fichier doit être chargé lorsque le lien est établi. Une fois le lien établi, le fichier doit être ouvert pour mettre à jour les liens impliquant le fichier. Assembly3 résout ce problème en ouvrant les fichiers en arrière-plan selon les besoins.
 * assemblages hiérarchiques. Comme dans la vraie vie, un ensemble mécanique peut être constitué de sous-ensembles. Ceux-ci pourraient se composer de sous-assemblages encore et ainsi de suite.
 * blocage des assemblages. Comme le processeur ne peut gérer qu'un nombre limité de contraintes simultanées en temps réel, figer un assemblage permet d'utiliser des contraintes même pour des assemblages volumineux. En gelant des assemblages finis ou des contraintes qui ne sont pas tenus de rester dynamiques (par exemple des pièces soudées, boulonnées ou collées), ceux-ci sont exclus des calculs de mise à jour et considérés comme une géométrie fixe par le solveur Assembly3.
 * Notez que d'autres approches offrent une solution différente à ce problème, par exemple l'Assembly4_workbench_icon.svger Assembly4.

En haut

Barres d'outils
À partir de 2020, l'atelier Assembly3 comprend les barres d'outils suivantes.


 * Assembly3_ToolbarMain.png
 * Barre d'outils principale


 * La barre d'outils principale contient des outils qui couvrent les fonctionnalités les plus souvent utilisées de l'atelier. Les info-bulles donneront les raccourcis clavier.
 * Ajouter un dossier d'assemblage
 * Objets de groupe
 * Créer un lien. Ceci est également disponible dans un menu contextuel
 * Importer des fichiers STEP
 * Résoudre les contraintes
 * Contraintes de résolution rapide
 * tool1 pour déplacer des pièces en 3D, ceci est spécifique à Assembly3
 * tool2 pour déplacer des pièces en 3D, c'est l'outil classique disponible ailleurs dans FreeCAD
 * Déplacement rapide. Cela attachera la pièce sélectionnée dans l'arborescence au curseur de la souris. Cela changera la position de la pièce lorsque vous cliquerez.
 * Souvent, les pièces ajoutées sont empilées les unes sur les autres à l'origine. Utilisez cette fonction pour saisir une partie que vous ne pouvez pas voir.
 * Dispositif de verrouillage pour partie fixe. Bouton à bascule. Lorsque cette option n'est pas sélectionnée, vous pouvez déplacer les pièces qui ont une contrainte verrouillée "Locked".
 * Basculer la visibilité. Cela active/désactive la visibilité de la partie sélectionnée.
 * Notez que cela diffère de l'utilisation de l'espace. L'utilisation de l'espace avec des éléments sélectionnés d'un sous-assemblage dans la vue 3D ne se comporte souvent pas comme prévu. Utilisez cette fonction dans ces cas (ou le raccourci A-Space).
 * Déplacement de pièce de trace (à déterminer)
 * Recalcul automatique. Habituellement activé.
 * Peut être désélectionné lors de la réparation de contraintes ou de la fixation de pièces où le solveur donne un message "do not converge" (par exemple en tournant la pièce de 180 degrés)
 * Recalcul intelligent. Habituellement activé.
 * Fixation automatique des éléments. Fonctionnalité expérimentale dans 0.19_pre
 * Style d'élément. Cela a deux paramètres
 * Visibilité automatique des éléments.
 * Afficher le système de coordonnées de l'élément
 * Commandes du plan de travail. Ajoute un plan de travail, un placement ou une origine. Une pièce doit être sélectionnée
 * ajouter un plan de travail
 * ajouter un plan de travail XZ
 * ajouter un plan de travail YZ
 * ajouter un emplacement
 * ajouter l'origine
 * Déplacer l'élément d'arborescence sélectionné vers le haut
 * Déplacer l'élément d'arborescence sélectionné vers le bas
 * Permet de trier les pièces, éléments ou contraintes dans l'arborescence. Élément retourné (de haut en bas et vice versa). Ne fonctionne que pour une seule sélection.
 * Contrainte de multiplication. Cela peut être sélectionné si plusieurs pièces et éléments appropriés sont présents. Il est utilisé par ex. pour affecter plusieurs fixations du même type dans plusieurs trous avec une seule contrainte.


 * Assembly3_ToolbarConstraints_1.jpg
 * Barre d'outils des contraintes principales. Certains outils sont en fait un menu pour plus d'outils.


 * Assembly3_ToolbarConstraints_2.jpg
 * Barre d'outils des Contraintes supplémentaires. Vous pouvez l'activer en sélectionnant l'icône '...' dans la barre d'outils des contraintes principales.


 * Les Barre d'outils Contraintes seront l'interface principale utilisée lors de l'assemblage des pièces. Elles sont grisées par défaut mais sont activées une fois qu'au moins une face, une ligne ou un point d'une pièce est sélectionné. En général, vous sélectionnez les éléments à joindre puis vous sélectionnez le type de contrainte. Les différents cadres colorés marquent différentes caractéristiques des contraintes: si 2D/3D si plus de 2 éléments peuvent être ajoutés. Une description détaillée peut être trouvée dans le wiki Gibhub.


 * Lock La toute première contrainte. Dans chaque assemblage, une pièce doit être verrouillée pour servir de pièce de base. Le verrouillage signifie rien de plus que de contraindre cette partie en 6DOF à sa position et à son orientation courantes. Elle devient le point de départ de la


 * Assembly3_ToolbarNavigation.jpg
 * Barre d'outils de navigation
 * Ces fonctions sont utiles lorsque vous travaillez avec un assemblage avec une hiérarchie de fichiers externes liés
 * Sélectionnez l'objet pièce correspondant dans le groupe de relations
 * Sélectionnez l'objet lié
 * Sélectionnez l'objet de liens le plus profond


 * Assembly3_ToolbarMeasurement.jpg
 * Barre d'outils de mesure
 * The Measurement toolbar ajoute des fonctions pour mesurer les distances entre deux points, un point et une ligne ou un point et une face. L'outil 'Measure Angle' mesure l'angle entre deux faces ou lignes. Il n'y a pas de fonction pour mesurer un rayon ou un diamètre.
 * Les outils de mesure survivent aux changements de pièces, par ex. la distance entre les bords d'un cube lorsque le cube est redimensionné. Comme les contraintes les calculs sont effectués en temps réel et les mis à jour se font à chaque changement. En coulisse, la fonction est très similaire aux Contraintes. La distance ou l'angle est calculé entre Eléments de la même manière que pour Contraintes. L'affichage dans l'arborescence fonctionne de la même manière.

Comme d'habitude, vous pouvez modifier les barres d'outils et ajouter ou supprimer des outils individuellement. Veillez à vérifier dans le menu Assembly3 les fonctions qui ne sont pas présentes dans les barres d'outils.

En haut

Contraintes
Le concepteur utilise des contraintes pour atteindre le résultat souhaité pour la relation de deux parties. Tout l'art est de sélectionner les bonnes contraintes, les mieux adaptées pour faire face à chaque problème. Chaque DOF éliminé ne devrait en théorie être éliminé qu'une seule fois entre deux objets. En pratique, avec de nombreux outils de CAO, les contraintes sélectionnées entraînent des combinaisons de sur-contraintes souvent compensées par des algorithmes complexes, parfois non. Assembly3 utilise des algorithmes pour détecter et compenser les sur-contraintes mais il est clair qu'ils ne sont pas encore très aboutis. Ainsi, en pratique, pour les contraintes Assembly3, évitez les problèmes en sachant combien de degrés de liberté (DOF) ont été utilisés et lesquels doivent encore être verrouillés par les contraintes. Aucune pièce ne doit avoir une connexion par des contraintes de plus de 6DOF.


 * Remarque: Si le solveur rencontre une combinaison qui ne peut pas être résolue, il donnera une erreur. Il est très difficile pour le solveur de découvrir ce qui a causé le problème donc généralement à partir de cette erreur, il ne sera pas clair «d'où» vient le problème. Dans les assemblages plus volumineux, cela peut conduire à des recherches de problèmes complexes. Malheureusement, il n'y a pas de moyen simple d'éviter cela. Cependant, il est utile d'être pleinement conscient du fonctionnement du système (par exemple, voir Elements ci-dessous), d'utiliser des noms clairs pour tous les composants impliqués et d'ajouter des contraintes supplémentaires uniquement lorsque le solveur résout l'assemblage en cours. La fonction «ContexMenu/Deactivate» de chaque contrainte est très utile pour repérer un problème.

Les contraintes Assembly3 définissent les restrictions de position ou d'orientation entre deux Elements. Certaines contraintes fonctionnent même avec plus de deux Elements. Un Element peut être une face, une ligne ou une arête ou un point d'une pièce. En général, les contraintes sont définies en sélectionnant les Elements souhaités puis en sélectionnant la contrainte depuis la barre d'outils des Contraintes.

Autre
 * Corrige 6 DOF, laisse 0 DOF:
 * Lock: la contrainte de verrouillage corrige tous les DOF ​​pour une face. Elle doit être utilisée pour une pièce de base dans chaque assemblage. Vous pouvez également activer la fonction "MoveLock" (dans la barre d'outils) afin que la pièce ne puisse pas être déplacée accidentellement. Normalement, peu importe la face/ligne/point que vous utilisez pour fixer une pièce. Notez également que le verrou n'est valide que pour l'assemblage direct, c'est-à-dire que dans le cas d'un sous-assemblage, l'assemblage parent nécessiterait toujours une pièce verrouillée seule.
 * Attachment: rend les systèmes de coordonnées des deux éléments égaux pour tous les axes. C'est la fonction la moins coûteuse en termes de calcul et elle doit être utilisée dans la mesure du possible. Notez que vous pouvez utiliser les propriétés des éléments pour compenser les décalages et les angles si les deux Elements ne sont pas parfaitement alignés.
 * Corrige 5 DOF, laisse 1 DOF:
 * Plane Coincident: corrige Tx, Ty, Tz, Rx, Ry. Seul Rz est libre. Il reste la rotation autour de la normale passant par le «centre du plan».
 * Corrige 4 DOF, laisse 2 DOF:
 * Axial Alignment: corrige Tx, Ty, Rx, Ry. Seuls Tz, Rz sont libres. Reste la rotation autour de l'axe de la forme et la translation le long de ce même axe. Deux contraintes «PointOnLine» (si les deux points sont différents) donnent le même résultat. La contrainte «Colinear» aussi.
 * PointOnLine: Ceci élimine la translation et la rotation le long des normales à la ligne de référence. Seules la translation et la rotation le long de l'axe de la ligne sont autorisées.
 * Corrige 3 DOF, laisse 3 DOF:
 * Same Orientation: corrige Rx, Rz, Rz. Tous les T restent libres
 * Points Coincident: corrige Tx, Ty, Tz. Tous les R restent libres
 * PointOnPoint élimine les 3 translations.
 * Plane Alignment: corrige Tz, Rx, Ry. En mouvement d'avion et Rz. Cela élimine la translation le long de la normale au plan de référence et les deux rotations autour des axes de ce plan.
 * Corrige 2 DOF, laisse 4 DOF:
 * Multi Parallel: corrige Rx, Ry. tous les T et Rz restent. Cela élimine les deux rotations autour des axes du plan de référence
 * Corrige 1 DOF, laisse 5 DOF:
 * Points in Plane: corrige Tz. Cela élimine la translation le long de la normale au plan de référence.
 * Points Distance: fixe la distance entre les origines des éléments.
 * Cela vous donne plus de liberté que Points in Plane
 * Points on Circle: corrige Tz et partiellement Tx, Ty. Gèle la translation de points (ou plusieurs points) sur un cercle ou une zone de disque. Vous devez choisir le cercle en second. Cela laisse toutes les rotations libres et donne une translation limitée dans le plan de référence du cercle.

'':Remarque: dans la liste suivante, Tx, Ty, Tz et Rx, Ry, Rz sont utilisés pour décrire les translations et les rotations concernant les systèmes de coordonnées de référence des éléments impliqués. Ce n'est pas toujours exact ou entièrement défini, par ex., lorsqu'il s'agit d'une ligne, elle n'est pas définie si elle s'étend en X, Y ou tout angle entre les deux. Le système est utilisé pour la convivialité et la comparaison facile en faveur d'une définition correcte mais plus complexe. Donc Z est généralement la direction normale de toutes les faces impliquées. N'hésitez pas à modifier cela avec une meilleure approche avec une meilleure lisibilité.''

En haut

Elements
Elements est un terme spécifique utilisé dans l'atelier Assembly 3 et il est important de comprendre les Elements pour comprendre comment Assembly 3 doit être utilisé.

Il est utile de penser à un Element comme un mot général pour un 'élément sélectionnable' d'une pièce, c'est-à-dire une face, une arête, un cercle ou un coin ou un autre point. Les éléments que vous sélectionnez pour les contraindre sont ces éléments. Dans l'arborescence, un dossier d'assemblage comporte trois sous-dossiers. À côté de 'Parts' et 'Constraints', il y a un dossier nommé 'Elements', qui est vide tant qu'aucune contrainte n'est ajoutée. Lors de l'ajout d'une contrainte, la contrainte elle-même obtient deux (ou plus) feuilles, ce sont les 'Elements' sélectionnés. Ces derniers sont également ajoutés dans le dossier 'Elements' qui n'est qu'une liste de tous les éléments utilisés dans l'assemblage. C'est le bon moment pour changer leurs noms (avec la touche F2), en particulier dans les grands assemblages.

Regardons un exemple
 * Créez un nouveau fichier et ajoutez à partir de l'atelier Part un cube et un cylindre. Nous empilerons le cylindre sur le tube. Nous fixons d'abord la partie de base, en aucun cas le cube. Sélectionnez la face inférieure du cube et sélectionnez les contraintes "Verrouillées" (première icône dans la barre d'outils des Contraintes). Sélectionnez la face supérieure du cylindre et la face supérieure du cube. Sélectionnez ensuite la contrainte "Plan coïncident". Maintenant, le cylindre est déplacé dans le cube et dans l'arbre une nouvelle feuille avec deux nœuds enfants a été ajoutée sous «Contraintes». De plus, les deux mêmes nœuds enfants ont été ajoutés sous «Éléments». Si votre cylindre est à l'intérieur du cube au-dessus du cube, corrigez d'abord cela: sélectionnez le nœud enfant sous 'Constraints' qui montre la face du cylindre et avec un clic droit dans le menu contextuel sélectionnez 'Retourner la pièce'. Maintenant, le cylindre est empilé sur la boîte.

Il est important de comprendre que la contrainte s'applique aux liens vers les Elements de la liste du dossier 'Elements' de l'arborescence. Cela permet de garder la structure de la contrainte intacte tout en changeant les parties. C'est très difficile à voir sans un exemple.

Revenons à l'exemple ci-dessus
 * Remarque: assurez-vous que vous avez ajouté la contrainte "Lock" au cube ou cela semblera déroutant
 * Dans la fenêtre CAD, sélectionnez une autre face du cube. Désormais, nous ne travaillons que dans l'arborescence. Allez avec votre souris dans l'arborescence où le cube doit être sélectionné. Glissez-déposez le cube dans le dossier 'Elements'. Déposez-le sur le nom «Elements», pas n'importe où ailleurs dans le dossier - nous verrons pourquoi plus tard. Vous devriez voir qu'un autre élément est ajouté à la liste 'ELements'. Sélectionnez maintenant dans le dossier 'Contraintes', le nœud enfant de la face de cube dans la contrainte "Plane Coincident" et supprimez-le. La contrainte affichera un point d'exclamation car il manque un élément. Notez qu'en supprimant l'élément dans la contrainte, nous ne l'avons «pas» supprimé de la liste. C'est parce que dans la contrainte était seulement un lien vers l'élément dans la liste. Maintenant, prenez l'élément nouvellement ajouté dans la liste des 'Elements' et faites-le glisser sur la contrainte "Plane Coincident". Maintenant, le cylindre se déplace vers l'autre face que nous avons sélectionnée. Nous devrons peut-être sélectionner à nouveau 'context menu/flip part' (menu contextuel/retourner la pièce) si le cylindre est à nouveau à l'intérieur du cube.

L'exemple a montré que sans supprimer la contrainte, nous pouvons changer les Elements utilisés pour la contrainte. De la même manière, nous pouvons déplacer le cylindre vers une pièce totalement différente. Après avoir joué un peu plus avec cet exemple, vous noterez quelques éléments supplémentaires comme
 * si vous renommez un Element dans la liste, le nom sera changé dans toutes les contraintes.
 * vous pouvez utiliser un Element de la liste dans plusieurs contraintes.
 * Vous pouvez utiliser la fenêtre des propriétés d'un Element pour ajouter des décalages. Dans l'exemple, cela pourrait déplacer le cylindre sur la face du cube.
 * vous pouvez utiliser le bouton "Show Element Coordinate System" (Afficher le système de coordonnées de l'élément) dans la barre d'outils principale pour voir ce que font 'ContextMenu/Flip Part' et 'ContextMenu/Flip Element'. Assurez-vous de regarder ce qui se passe dans la fenêtre des propriétés.
 * vous pouvez ajouter une contrainte dans un ordre totalement différent: commencez par ajouter quelques éléments à la 'Elements List' (la dénomination est utile, par exemple "Face supérieure du cube" ou "Face avant du cube") puis ajoutez une contrainte sans rien sélectionner - ce sera une contrainte vide. Faites ensuite glisser Elements de la liste 'Elements'. Le résultat est le même que ce que nous avons fait dans le premier exemple. Après avoir fait cet exercice, la nature du fonctionnement des contraintes avec les éléments doit être claire.
 * vous pouvez modifier une contrainte existante entre des éléments existants en sélectionnant simplement un élément différent dans la propriété PropertyWindow/ConstraintType.

En haut

Compatibilité
Assembly3 a été inspiré par Assembly2 mais il n'est pas compatible avec lui. Si vous avez des modèles plus anciens fabriqués dans Assembly2, vous devriez rester avec FreeCAD 0.16 et utiliser Assembly2.

Les nouveaux modèles développés avec Assembly3 ne doivent être ouverts et modifiés qu'avec cet atelier.

Bien qu'ils puissent avoir des outils similaires, Assembly3 n'est pas compatible avec A2plus ni Assembly4. Les modèles créés avec ces ateliers ne doivent être ouverts qu'avec leur atelier respectif.

En haut

Test
Atelier Assembly3 est en cours de développement et n'est pas encore disponible (avril 2020) via le Gestionnaire d'Addon. Il est prévu que cela se produise à un moment donné.

Vous pouvez le tester de deux manières:
 * Un fork spécial de FreeCAD faite par realthunder; voir FreeCAD_assembly3 releases. Ce fork est basé sur un commit particulier de la branche master de FreeCAD, mais il a également des fonctionnalités supplémentaires qui ne sont actuellement pas présentes dans la branche master. Étant donné que ce fork est basé sur un instantané de développement particulier, il n'a pas les dernières fonctionnalités fusionnées quotidiennement à la branche principale.
 * Le développement AppImage est basé sur la branche principale actuelle et inclut les dépendances nécessaires pour travailler avec Assembly3, comme le solveur SolveSpace.

Étant donné que l'AppImage ne fonctionne que pour Linux, pour les utilisateurs de Windows pour le moment, la seule option pour tester Assembly3 est la première option (le fork de realthunder).

En haut

Commencez
Il existe de nombreuses façons de créer un assemblage avec Assembly3. Voici la plus simple que vous puissiez faire.


 * Assembly3_Example-GettingStarted.jpg
 * Résultat final de l'exemple de mise en route. Dans l'image, l'atelier Assembly3 est sélectionné, de sorte que ses multiples barres d'outils sont visibles. Notez que la "TabBar" verticale à gauche de l'arborescence est un AddOn qui n'est pas contenu dans FreeCAD standard (peut être installé avec le Gestionnaire d'Addon).


 * Créez un nouveau fichier FreeCAD
 * Sélectionnez l'atelier assembly. Sélectionnez CreateAssembly (première icône)
 * Sélectionnez l'atelier Part et ajoutez un cylindre et un cube
 * Enregistrez le fichier avec n'importe quel nom de fichier que vous aimez. Fermez et ouvrez et le fichier.
 * L'arborescence devrait ressembler à ceci


 * Maintenant, dessinez et déposez avec la souris à la fois Cylinder et Cube dans le dossier Parts. Ils sont déplacés dans ce dossier.
 * C'est le moyen le plus rapide. Veuillez noter qu'une meilleure façon est d'ouvrir le menu contextuel sur les deux et de sélectionner ContetxMenu/LinkActions/MakeLink. Cela ajoute deux fichiers de lien. Faites ensuite glisser/déposer les fichiers de liens vers le dossier Parts. Pour des cas simples comme celui-ci, cela n'a pas vraiment d'importance.
 * Cliquez sur les deux surfaces supérieures du cylindre et du cube (maintenez la touche Ctrl enfoncée)
 * Sélectionnez l'atelier assembly. Sélectionnez "PlaceCoincident" dans la barre d'outils des Contraintes.
 * Maintenant, les parties doivent être jointes les unes aux autres et votre arbre doit ressembler à ceci

Nous avons omis une étape importante à effectuer dans les assemblages plus volumineux: le verrouillage d'une pièce de base. Cela signifie définir une partie qui ne doit pas être déplacée par des contraintes. Dans notre cas, nous prenons le cube pour cela: Terminé. Si vous le souhaitez, vous pouvez déplacer la contrainte "Locked" vers le haut dans l'arborescence. Utilisez pour cela le bouton "MoveItemUp" de la barre d'outils principale.
 * Cliquez avec le bouton droit sur "_Element" (l'un des deux) et sélectionnez "Flip Part".
 * Le cylindre doit maintenant être au-dessus de la boîte. Si tout est à l'envers, revenez en arrière et sélectionnez "Flip Part" sur l'autre élément.
 * Sélectionnez la face inférieure du cube. Seule la face inférieure, pas le cube entier.
 * sélectionnez la contrainte "Locked" dans la barre d'outils de contrainte
 * L'assemblage fini doit ressembler à l'image ci-dessus

Remarque: tous les nouveaux fichiers externes doivent être enregistrés, fermés et rouverts au moins une fois pour que Assembly3 puisse les trouver. Sans cela, FreeCAD ne peut pas donner de descripteur de fichier à l'atelier Assembly3 et il ne peut pas trouver la nouvelle pièce. Lorsque toutes les pièces sont dans le même fichier, vous devez enregistrer et rouvrir le fichier.

En haut

Ajouter un décalage
Assembly3 n'offre pas de décalage avec les contraintes comme le font l'atelier A2plus ou d'autres outils de CAO. Au lieu de cela, il offre un système plus général et plus flexible pour ajouter des traductions de décalages mais aussi des angles.


 * Ajoutez le décalage dans les propriétés d'un Element d'une contrainte (Constraint).
 * vous pouvez choisir lequel des deux vous souhaitez utiliser.

Exemple:
 * ajoutez 2 cubes à un assemblage et sélectionnez leurs faces latérales.
 * sélectionnez "PlaneCoincident". Les cubes seront attachés les uns dans les autres.
 * sélectionnez un Element et ContextMenu/Flip Part. Les cubes seront attachés côte à côte.
 * sélectionnez une propriété d'Element Offset/Position/Zz et définissez-la à 5 mm. Les cubes seront espacés de 5 mm.
 * Testez avec d'autres axes ou les champs angle/axe. Vérifiez également que vous obtenez le même résultat lorsque vous utilisez l'autre élément.

Il s'agit de la même approche pour toutes les autres contraintes.

En haut

Résoudre un échec du solveur
Cela se produit souvent lorsque les pièces sont sur-contraintes, c'est-à-dire que plus de 6 DOF sont verrouillés.

Le moyen le plus simple de trouver le problème est de cliquer sur les contraintes pertinentes dans l'arborescence et de sélectionner ContextMenu/Disable et de recalculer. Il est utile de connaître les dernières contraintes ajoutées avant l'échec du solveur et de les annuler.

Remarque: comme Assembly3 essaie de compenser les pièces de sur-contrainte dans les coulisses, il arrive que le problème soit simplement déclenché par une nouvelle contrainte mais que la cause première soit différente. Avant de tout supprimer et de recommencer, n'oubliez pas que vous pouvez réutiliser Elements. Si vous les avez nommés, vous pouvez identifier les éléments requis et recréer les contraintes sans utiliser la vue 3D. Voir la section Elements ci-dessus.

En haut

Remplacer une pièce ou renommer un nom de fichier
Lorsqu'une pièce est supprimée ou lorsqu'un nom de fichier change, l'assemblage se casse. Il ne peut plus être résolu et le solveur émettra le message "Inconsistent constraints". Le solveur marque les éléments et les contraintes non valides avec un point d'interrogation dans l'arborescence.

Une façon de résoudre ce problème consiste simplement à supprimer toutes les contraintes et tous les éléments non valides, à importer la nouvelle pièce et à tout refaire. Mais il existe un meilleur moyen:


 * Renommer un fichier
 * Utilisez un gestionnaire de fichiers et copiez le fichier que vous souhaitez renommer. Donnez ensuite le nouveau nom à la copie.
 * Ouvrez la copie dans FreeCAD. L'assemblage et l'ancien fichier doivent également être ouverts.
 * Sélectionnez l'ancien objet dans l'arborescence et cliquez pour changer la propriété "Linked object" (contient l'ancien nom de fichier)
 * Une boîte de dialogue de type liste s'ouvre contenant toutes les pièces ouvertes. Elle montre les noms de fichiers et les objets de chaque partie. La pièce et l'objet anciens sont sélectionnés. Localisez la pièce renommée dans l'arborescence et sélectionnez le même objet dans la nouvelle pièce. Confirmez ensuite la sélection.
 * Supprimez l'ancienne partie de l'arborescence. Le fichier peut également être supprimé maintenant.
 * Les contraintes et éléments de l'ancienne pièce sont devenus invalides. Ouvrez la liste de contraintes ou d'éléments dans l'arborescence. Puis séquentiellement:
 * Sélectionnez chaque surface d'élément sur la nouvelle pièce. Un élément de l'arborescence sera mis en évidence.
 * Prenez cet élément et glissez-déposez-le sur l'ancien élément (soit dans la liste des éléments, soit dans l'une des contraintes où il a été utilisé). Cet élément devrait devenir valide.
 * Répétez la procédure pour les éléments restants. Souvent, un seul élément suffit pour permettre à Assembly3 d'identifier automatiquement les éléments restants de la pièce.
 * Si un élément a été assigné à la mauvaise surface par accident, répétez simplement avec la bonne surface.
 * Modifiez le nom de l'objet dans FreeCAD, si vous le souhaitez.


 * Remplacer une pièce par une autre pièce
 * qui est assez similaire à la pièce d'origine pour que les contraintes d'origine aient encore un sens, bien sûr
 * Supprimez l'ancienne partie de l'arborescence. Le fichier peut également être supprimé.
 * Les contraintes et éléments de l'ancienne pièce sont devenus invalides. Ouvrez la liste de contraintes ou d'éléments dans l'arborescence.
 * Sélectionnez une surface d'élément sur la nouvelle pièce. Un élément de l'arborescence sera mis en évidence.
 * Prenez cet élément et glissez-déposez-le sur l'ancien élément (soit dans la liste des éléments, soit dans l'une des contraintes où il a été utilisé). Cet élément devrait devenir valide.
 * Répétez la procédure pour les éléments restants.
 * Si un élément a été assigné à la mauvaise surface par accident, répétez simplement avec la bonne surface.
 * Modifiez le nom de l'objet dans FreeCAD, si vous le souhaitez.

''Remarques ''
 * Ce n'est pas aussi compliqué que cela puisse paraître. Après 2-3 fois, cela devient une seconde nature et on sent que c'est facile à faire.
 * Ce n'est pas seulement généralement plus rapide que de supprimer et de refaire des contraintes, c'est aussi plus sûr car un élément pourrai être utilisé dans un assemblage parent. Supprimer l'original détruirait ce lien, le réassigner le garderait.
 * Cette procédure devient également très rapide et facile à réaliser si des contraintes et des éléments sont nommés. Il n'est pas possible de deviner où les surfaces doivent être glissées et déposées car les noms le disent (voir Trucs et astuces).

En haut

Trucs et astuces
''
 * L'utilisation d'assemblages hiérarchiques permet d'éviter les problèmes de solveur et de maintenir la fluidité du modèle. Vous pouvez figer un sous-assemblage en un seul clic et enregistrer facilement les ressources CPU (utilisez le menu contextuel dans l'arborescence). Lors du chargement d'un assemblage, Assembly3 n'a pas besoin d'ouvrir les fichiers externes pour les sous-assemblages figés, ce qui maintient l'arborescence compacte.
 * Il est très utile de prendre l'habitude de nommer les éléments et les contraintes. Utilisez la touche pour le faire rapidement dans l'arborescence. Vous trouverez les outils de tri d'arbre dans la barre d'outils principale très utiles. Un assemblage avec des contraintes et des éléments entièrement nommés est très facile à comprendre pour d'autres personnes ou pour soi-même lorsque l'on regarde un fichier plus ancien.
 * Des exemples de noms de contraintes pour une table peuvent être "Align_FrontLegs", "Align_FrameBottom-LegTops" et les noms d'élément peuvent être "Leg1_Top" ou "TableTop_Front", "TableTop_Left".
 * Veuillez noter qu'une fois que les fichiers externes sont ouverts par un assemblage, il n'est pas possible de les refermer facilement sans fermer l'assemblage. Étant donné que l'assemblage garde ouvert ces fichiers dans l'arrière-plan, l'onglet peut disparaître mais le fichier reste visible dans l'arborescence. Si vous avez plusieurs couches de sous-assemblages, il devient pratiquement impossible de fermer des fichiers uniques. Ce comportement peut changer, mais jusque-là une approche possible pourrait être d'utiliser régulièrement les commandes Fichier/Enregistrer tout et Fichier/Fermer tout pour nettoyer l'arborescence avant de travailler sur un autre sous-assemblage.
 * ''Exemple: considérez que vous avez une grande machine CNC avec un ensemble principal et un sous-ensemble pour chaque module. Une fois que vous avez ouvert l'assemblage principal, vous pouvez ouvrir des centaines de fichiers jusqu'au roulement à billes. Avant de travailler sur le sous-ensemble de l'armoire électronique de la machine, il est judicieux d'enregistrer et de fermer tous les fichiers pour vider l'arbre. Ouvrez ensuite uniquement le sous-ensemble de l'armoire électronique. Cela ouvrira tous les fichiers dont vous avez besoin sauf ceux-là.
 * L'utilisation de fichiers externes facilite la réutilisation d'une partie ou le contrôle de version d'une partie avec des systèmes comme git ou subversion. Le flux de travail dans FreeCAD avec Assembly est tout à fait le même que celui des fichiers qui ont toutes les parties dans le même fichier. Pour échanger souvent des fichiers avec d'autres parties, des fichiers uniques peuvent être plus pratiques.
 * Multipliez les pièces liées. Si vous avez ajouté un lien dans l'assemblage, il aura une valeur de propriété nommée "Element Count", par défaut 0. Si vous définissez ceci sur 3, vous obtenez 3 instances de cette pièce. Elles seront ajoutées dans un sous-dossier et pourront être utilisées comme des pièces entièrement séparées. Utilisez cette fonction pour réduire l'encombrement des données de votre fichier, car la pièce n'est enregistrée qu'une seule fois. Chaque instance ne contient que les différences.
 * Insérez plusieurs pièces, par ex. des vis, en un seul clic. Consultez le Wiki Assembly3 sur le site Github. Ce n'est pas seulement une fonction étonnante (même un peu magique), mais vraiment très utile.


 * L'utilisation de l'atelier TabBar accélère le travail avec l'assemblage. Cela ajoute une barre d'outils avec un bouton pour chaque atelier. Vous pouvez trier la barre d'outils et la placer où vous le souhaitez. Beaucoup de gens le placent verticalement sur le côté gauche juste à côté de la vue de l'arbre. Si vous disposez de Assembly3, Part, PartDesign et d'autres ateliers souvent utilisés à proximité du premier, il devient extrêmement facile de passer de l'un à l'autre.

En haut

Liens

 * L'objet App Link qui fait fonctionner Assembly3.
 * FreeCAD_assembly3 dépôt et documentation.
 * Assembly3 preview, grand fil de discussion.
 * Tutoriel de test pour Assembly 3 WB par jpg87.
 * État actuel de l'assemblage
 * Ateliers externes
 * Liste des ateliers externes
 * Old Assembly project plan de développement, pour se familiariser avec l'historique du problème.