Assembly3 Workbench/de: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 3: Line 3:
[[Image:Assembly3_workbench_icon.svg|thumb|128px|Assembly3 workbench icon]]
[[Image:Assembly3_workbench_icon.svg|thumb|128px|Assembly3 workbench icon]]


{{TOCright}}
{{TOCright/de}}


== Einleitung ==
== Einleitung ==

Revision as of 15:49, 27 July 2021

Assembly3 workbench icon

Template:TOCright/de

Einleitung

Assembly3 ist eine externer Arbeitsbereich, der verwendet wird, um verschiedene Körper, die in einer einzigen Datei oder in mehreren Dokumenten enthalten sind, zusammenzufügen. Der Arbeitsbereich basiert auf einigen Kernfunktionen, die für die Version FreeCAD 0.19 geändert wurden (z.B. App Link), daher kann der Assembly3 Arbeitsbereich nicht mit früheren Versionen verwendet werden.

Die Hauptmerkmale des Assembly3 Arbeitsbereichs sind

  • dynamischer/interaktiver Löser. Das bedeutet, dass du Teile mit der Maus bewegen kannst, während der Löser die Bewegung beschränkt. So kannst du z.B. ein Rad mit einer Achse verbinden und das Rad interaktiv mit der Maus drehen.
  • Verknüpfungen. Dies bedeutet, dass du ein einzelnes Teil, z.B. eine Schraube, mehrfach in einer Baugruppe (an verschiedenen Stellen) verwenden kannst, ohne die Geometrie zu duplizieren.
  • Externe Verknüpfungen. Es ist möglich, ein Freecad Dokument zu haben, das nur eine Baugruppe und keine Teile enthält. Alle Teile können in einzelnen Dateien enthalten sein. Die Dateien können sich auch in einer Bibliothek oder an einem anderen Ort im Dateisystem befinden. Die einzige Bedingung ist, dass die Datei geladen sein muss, wenn die Verknüpfung hergestellt wird. Nach der Verknüpfung muss die Datei geöffnet sein, um Aktualisierungen an den Verknüpfungen, die die Datei betreffen, vorzunehmen. Assembly3 löst dieses Problem durch das Öffnen von Dateien im Hintergrund nach Bedarf.
  • Hierarchische Baugruppen. Wie im wirklichen Leben kann eine mechanische Baugruppe aus Unterbaugruppen bestehen. Diese können wiederum aus Unterbaugruppen bestehen und so weiter.
  • Baugruppen Einfrieren. Da die CPU nur eine bestimmte Anzahl von gleichzeitigen Beschränkungen in Echtzeit verarbeiten kann, ermöglicht das Einfrieren einer Baugruppe die Verwendung von Beschränkungen auch für große Baugruppen. Durch das Einfrieren von fertigen Baugruppen oder Beschränkungen, die nicht dynamisch bleiben müssen (z. B. geschweißte, geschraubte oder geklebte Teile), werden diese von Aktualisierungsberechnungen ausgeschlossen und vom Assembly3 Löser als feste Geometrie betrachtet.
    Beachte, dass andere Ansätze andere Lösungen für dieses Problem bieten, z. B. die Assembly4 Arbeitsbereich.

Zum Anfang

Werkzeugleisten

Seit 2020 verfügt der Assembly3 Arbeitsbereich über die folgenden Werkzeugleisten.


Hauptwerkzeugleiste

Die Hauptwerkzeugleiste enthält Werkzeuge, die die am häufigsten gebrauchten Eigenschaften des Arbeitsbereiches abdecken. In den Kurzinformationen werden die Tastaturkürzel angezeigt.
  • Importieren aus STEP. Dies hat zwei Einstellungen
  • Beschränkungen auflösen: Beschränkungen auflösen
  • Schnelles Lösen: Schnelles Lösen von Beschränkungen
  • Teil verschieben: Verschieben von Teilen in 3D, dies ist kennzeichnend für Assembly3
  • Axiales Verschieben: Axiales Verschieben von Teilen in 3D, dies ist das klassische Werkzeug, das auch anderswo in FreeCAD verfügbar ist
  • Schnelles Verschieben: Hierdurch wird das im Baum ausgewählte Teil am Mauszeiger angeheftet. Beim Klicken wird die Position des Teils geändert.
    Oft sind hinzugefügte Teile im Ursprung übereinander gestapelt. Verwende diese Funktion, um ein Teil zu greifen, das du nicht sehen kannst.
  • Verschieber sperren: Verschieber für fixiertes Teil sperren. Umschaltknopf. Wenn dies nicht ausgewählt ist, kannst du die Teile bewegen, die eine "Gesperrt" Beschränkung haben.
  • Teilesichtbarkeit umschalten: Hiermit wird die Sichtbarkeit des ausgewählten Teils ein/ausgeschaltet.
    Beachte, dass dies von der Verwendung der Leertaste abweicht. Die Verwendung der Leertaste mit ausgewählten Teilen aus einer Unterbaugruppe in der 3D Ansicht verhält sich oft nicht wie erwartet. Verwende in solchen Fällen diese Funktion (oder die Tastenkombination A-Leertaste)
  • Teilverschiebung verfolgen: Teilverschiebung verfolgen (ZuTun)
  • Automatische Neuberechnung: Automatisches Neuberechnen. Normalerweise aktiviert.
    Kann abgewählt werden, wenn Beschränkungen fixiert oder Teile fixiert werden, bei denen der Löser eine "nicht konvergieren" Meldung ausgibt (z.B. durch Drehen des Teils um 180°)
  • Intelligente Neuberechnung: Intelligentes Neuberechnen. Normalerweise aktiviert.
  • Element automatisch fixieren: Element Autofixierung. Experimentelle Funktion in 0.19_pre
  • Element Stil. Dies hat zwei Einstellungen


Hauptbeschränkungswerkzeugleiste

Einige Werkzeuge sind eigentlich ein Menü für weitere Werkzeuge.

  • Festsetzen: Zum Fixieren eines oder mehrerer Teile.
    Es muss ein (Geometrie-) Element eines Teiles ausgewählt werden.
    Wird ein Knotenpunkt oder eine Kante festgesetzt, lässt sich das Teil immer noch frei um den Knotenpunk oder die Kante drehen.
    Das Festsetzen einer Fläche fixiert das Teil vollständig.
  • Ebenen ausrichten: Zum Ausrichten ebener Flächen zweier oder mehrerer Teile.
    Die Flächen werden komplanar ausgerichtet oder optional parallel mit Abstand.
  • Deckungsgleiche Ebenen: Zum deckungsgleich Festlegen ebener Flächen zweier oder mehrerer Teile.
    Die Flächen werden mit deckungsgleichen Ursprüngen komplanar ausgerichtet oder optional parallel mit Abstand.
  • Befestigung: Zum Befestigen eines Teils an ein zweites mittels der ausgewählten (Geometrie-) Elemente.
    Diese Beziehung verbindet beide Teile starr miteinander.
  • Axiale Ausrichtung: Zum axialen Ausrichten (Fluchten) von Kanten und Flächen zweier oder mehrerer Teile.
    Die Beziehung akzeptiert:
    lineare Kanten; sie werden kollinear ausgerichtet,
    ebene Flächen; sie werden unter Nutzung ihrer Flächennormalen (Z-Achse) ausgerichtet,
    und zylindrische Flächen; sie werden unter Nutzung ihrer (Z) Achsrichtung ausgerichtet.
    Verschiedene Arten von (Geometrie-) Elementen können gemischt werden.
  • Richtungen angleichen: Zum identischen Ausrichten der (ebenen) Flächen zweier oder mehrerer Teile.
    Die Ebenen werden so ausgerichtet, dass ihre (Z-) Achsen in dieselbe Richtung zeigen.
  • Mehrfach parallel: Zum parallelen Ausrichten von ebenen Flächen oder geraden Kanten zweier oder mehrerer Teile.
  • Winkel festlegen: Zum Festlegen des Winkels zwischen ebenen Flächen oder geraden Kanten zweier Teile.
  • Rechtwinklig festlegen: Zum rechtwinkligen Festlegen von ebenen Flächen oder geraden Kanten zweier Teile.
  • Punkt auf Punkt: Zum deckungsgleich Festlegen zweier Punkte in 2D oder 3D.
  • Punkt auf Ebene: Zum Festlegen eines oder mehrerer Punkte auf einer Ebene (Punktberührung).
  • Punkt auf Linie: Zum Festlegen eines oder mehrerer Punkte auf einer Linie in 2D or 3D.
  • Punkt auf Kreis: Zum Festlegen eines oder mehrerer Punkte auf einer durch einen Kreis definierten zylindrischen Fläche.
    Achtung! Es muss ein Punkt (irgendein Geometrieelement, dass einen Punkt definieren kann) ausgewählt werden und dann der Kreis (oder eine zylindrische Fläche),
    danach können bei Bedarf weitere Punkte hizugefügt werden.
  • Punkt zu Punkt Abstand: Zum Festlegen des Abstands zweier oder mehrerer Punkte zueinander.
  • Punkt zu Ebene Abstand: Zum Festlegen des Abstands eines oder mehrerer Punkte zu einer Ebene.
  • Punkt zu Linie Abstand: Zum Festlegen des Abstands eines Punktes zu einer geraden Kante in 2D oder 3D.
  • Symmetrie festlegen: Zum Festlegen der Symmetrie der (Geometrie-) Elemente zweier Teile bezüglich einer Ebene.
    Unterstützte Elemente sind gerade Kanten und ebene Flächen.
  • Weitere: Zum Anzeigen weiterer Werkzeugleisten mit mehr Beschränkungen.
    Nicht wirklich eine Beziehnung, sondern ein Umschalter zum Anzeigen oder Ausblenden der Zusatzwerkzeugleiste für Beschränkungen.


Zusatzwerkzeugleisten für Beziehungen

Sie werden aktiviert durch die Auswahl der -Schaltfläche in der Hauptwerkzeugleiste für Beziehungen.
  • Abstand zweier Punkte: Zum Festlegen des Abstands zweier Punkte in 2D oder 3D.
  • Gleiche Winkel: Zum Festlegen von gleichen Winkeln zwischen (je) zwei Linien oder (Flächen-) Normalen.
  • Symmetrische Punkte: Zum Festlegen der symmetrischen Lage zweier Punkte bezüglich einer Ebene.
  • () Horizontale Symmetrie : (noch nicht fertig...)
  • () Vertikale Symmetrie: (noch nicht fertig...)
  • Achsensymmetrie: Zum Festlegen der symmetrischen Lage zweier Punkte bezüglich einer Symmetrieachse.
  • Horizontale Punkte: Zum Festlegen einer horizontalen Ausrichtung zweier Punkte, wenn sie auf eine Ebene projiziert werden.
  • Vertikale Punkte: Zum Festlegen einer vertikalen Ausrichtung zweier Punkte, wenn sie auf eine Ebene projiziert werden.
  • Horizontale Linie: Zum Festlegen einer horizontalen Ausrichtung eines Liniensegments, wenn es auf eine Ebene projiziert wird.
  • Vertikale Linie: Zum Festlegen einer vertikalen Ausrichtung eines Liniensegments, wenn es auf eine Ebene projiziert wird.
  • Bogen-Linie-Tangente: Zum Festlegen eines tangentiellen Übergangs zwischen einer Linie und dem Start- oder Endpunkt eines Bogens.


  • Skizzierebene: Zum Festlegen einer Arbeitsebene für alle Draft-WB-Elemente innerhalb dieser Beziehung oder dieser Beziehung folgend.
    Eine weitere hinzufügte leere Skizzenebene löst die vorherige als Arbeitsebene ab.
  • Linienlänge: Zum Festlegen der Länge eines nicht unterteilten Draft-Drahtes.
  • Gleiche Länge: Zum Festlegen, dass zwei Linien gleich lang sind.
  • Längenverhältnis: Zum Festlegen des Verhältnisses der Längen zweier Linien.
  • Längendifferenz: Zum Festlegen der Differenz der Längen zweier Linien.
  • Länge gleich Punkt-Linie-Abstand: Zum Festlegen, dass der Abstand eines Punktes zu einer Linie gleich der Länge einer weiteren Linie ist.
  • ( )Linien- gleich Bogenlänge: Zum Festlegen, dass die Länge einer Linie gleich der Länge enes Bogens ist.
  • Mittelpunkt: Zum Festlegen eines Punktes in der Mitte einer Linie.
  • Durchmesser: Zum Festlegen des Durchmessers eines Kreises oder Bogens.
  • Gleicher Radius: Zum Festlegen, dass die Radien zweier Kreise oder Bögen gleich groß sind.
  • Projizierter Punktabstand: Zum Festlegen des Abstands zweier Punkte, die auf eine Linie projiziert werden.
  • Gleicher Punkt-Linien-Abstand: Zum Festlegen, dass der Abstand eines Punktes zu einer Linie gleich dem Abstand eines weiteren Punktes zu einer anderen Linie ist.
  • Kollinear: Zum Festlegen, dass zwei Linien fluchten d.h. kollinear sind.


Die Werkzeugleisten der Beziehungen sind die Hauptschnittstelle für den Zusammenzubau von Einzelteilen.
Sie sind standardmäßig ausgegraut, werden aber aktiviert, sobald mindestens eine Fläche, eine Linie oder ein Punkt eines Teiles ausgewählt wird.
Normalerweise werden erst die zu verbindenden Elemente ausgewählt und danach die Art der Beziehung.
Die unterschiedlich gefärbten Rahmen weisen auf unterschiedliche Eigenschaften der Einschränkungen hin:
ob 2D / 3D oder ob mehr als 2 Elemente zusammengefügt werden können.
Eine ausführliche Beschreibung ist im GitHub-Wiki zu finden.


Navigationswerkzeugleiste

Diese Funktionen sind nützlich, wenn ein Zusammenbau mit hierarchisch verknüpften externen Dateien bearbeitet wird


Messwerkzeugleiste

Die Messwerkzeugleiste fügt Funktionen zum Messen des Abstands oder des Winkels zwischen zwei Objekten hinzu
Es gibt keine Funktion um einen Radius oder Durchmesser zu messen.
Die Messwerkzeuge überdauern Änderungen des Bauteils, z.B. den Abstand zwischen Kanten eines Würfels, wenn die die Größe des Würfels verändert wird.
Wie die Einschränkungen werden diese Berechnungen in Echtzeit ausgeführt und bei jeder Änderung aktualisiert. Im Hintergrund ist die Funktion ähnlich zu der der Einschränkungen.
Der Abstand oder Winkel wird zwischen Elementen auf die gleiche Art wie für Einschränkungen berechnet. Die Anzeige im Baum funktioniert auf die selbe Weise.


Wie gewohnt, kann die Werkzeugleiste geändert und einzelne Werkzeuge hinzugefügt oder entfernt werden. Im Assembly3-Menü sind weitere Funktionen vorhanden, die sich nicht in den Werkzeugleisten befinden.

Zum Anfang

Beschränkungen

Der Konstrukteur nutzt Beschränkungen, um das gewünschte Ergebnis für die Beziehung zwischen zwei Teilen zu erreichen. Die Kunst besteht darin, die richtigen Beschränkungen auszuwählen, die für jedes Problem am besten geeignet sind. Theoretisch sollte jede eliminierte Freiheitsgrad nur einmal zwischen zwei Objekten eliminiert werden, aber in der Praxis verursachen die ausgewählten Beschränkungen bei vielen CAD Werkzeugen übermäßige Kombinationen, die oft durch komplexe Algorithmen ausgeglichen werden, manchmal aber auch nicht. Assembly3 verwendet zwar Algorithmen zur Erkennung und Kompensation von überbestimmten Beschränkungen, aber diese sind noch nicht sehr ausgereift. In der Praxis vermeiden Assembly3 Beschränkungen also Probleme, indem sie sich bewusst sind, wie viele Freiheitsgrade (DOF) verwendet wurden und welche noch durch Beschränkungen gesperrt werden müssen. Kein Teil sollte mit mehr als 6DOF durch Beschränkungen verbunden sein.

Hinweis: Wenn der Löser auf eine Kombination trifft, die nicht gelöst werden kann, gibt er einen Fehler aus. Es ist sehr schwierig für den Löser herauszufinden, was das Problem verursacht hat, so dass typischerweise aus dieser Fehlermeldung nicht klar hervorgeht, wo das Problem liegt. Bei größeren Baugruppen kann dies zu einer komplexen Problemsuche führen. Leider gibt es keine einfache Möglichkeit, dies zu vermeiden. Es ist jedoch hilfreich, sich über die Funktionsweise des Systems im Klaren zu sein (siehe z.B. Elemente unten), eindeutige Namen für alle beteiligten Komponenten zu verwenden und immer nur dann zusätzliche Beschränkungen hinzuzufügen, wenn der Löser die aktuelle Baugruppe gelöst hat. Sehr hilfreich, um ein Problem aufzuspüren, ist die "KontexMenü/Deaktivieren" Funktion jeder Beschränkung.

Assembly3 Beschränkungen definieren Einschränkungen in der Position oder Orientierung zwischen zwei Elemente. Einige Beschränkungen funktionieren sogar mit mehr als zwei Elements. Ein Elemente kann eine Fläche, eine Linie oder Kante oder ein Punkt eines Teils sein. Im Allgemeinen werden Beschränkungen definiert, indem man die gewünschten Elemente auswählt und dann die Beschränkung aus der Werkzeugleiste auswählt.

  • Fixiert 6 Freiheitsgrade, 0 bleiben unbestimmt:
    • Fixierung (Schloss): Die Fixiereinschränkung legt alle Freiheitsgrade einer Fläche. Sie sollte in jedem Zusammenbau zur Festlegung eines Basisteils genutzt werden. Es ist sinnvoll auch gleich die "Bewegung ausschließen für fixierte Teile"-Funktion (in der Werkzeugleiste) zu aktivieren, um damit ein unbeabsichtigtes Verschieben zu verhindern. In der Regel ist es egal welche Fläche, Linie oder Punkt benutzt wird um ein Teil zu fixieren. Man beachte, dass die Fixierung nur auf den aktuellen Zusammenbau wirkt, d.h. im Falle einer Unterbaugruppe braucht der übergeordnete Zusammenbau noch ein eigenes fixiertes Teil.
    • Anhang: Legt die Koordinatensysteme der ausgewählten Elemente (zweier oder mehrerer Teile) deckungsgleich aufeinander. Dies ist die für die Berechnung günstigste Funktion und sollte, wo immer möglich, benutzt werden. Man beachte, dass man die Eigenschaften der Elemente nutzen kann, um Abstände und Winkel einzustellen, wenn die Elemente nicht optimal zueinander ausgerichtet sind.
  • Fixiert 5 Freiheitsgrade, 1 bleibt unbestimmt:
    • Lagegleiche Ebenen: fixes Tx,Ty,Tz, Rx,Ry. Only Rz is free. There remains the rotation around the normal passing through the ‘‘center of the plane’’.
  • Fixiert 4 Freiheitsgrade, 2 bleiben unbestimmt:
    • Axial Alignment: fixes Tx,Ty, Rx,Ry. Only Tz, Rz are free. There remains the rotation around the axis of the shape and the translation along this same axis. Two PointOnLine constraints (if the two points are different) give the same result. The '‘Colinear'’ constraint too.
    • PointOnLine: This eliminates the translation and rotation along the normals to the reference line. Only the translation and rotation along the line axis is allowed.
  • Fixiert 3 Freiheitsgrade, 3 bleiben unbestimmt:
    • Same Orientation: fixes Rx,Rz,Rz. All T's remain free.
    • Points Coincident: fixes Tx,Ty,Tz. All R's remain free.
    • PointOnPoint constraint eliminates the 3 translations.
    • Plane Alignment: fixes Tz, Rx,Ry. In plane motion and Rz. This eliminates the translation along the normal to the reference plane and the two rotations around the axes of this plane.
  • Fixiert 2 Freiheitsgrade, 4 bleiben unbestimmt:
    • Multi Parallel: fixes Rx,Ry. all T's and Rz remain. This eliminates the two rotations around the axes of the reference plane.
  • Fixiert 1 Freiheitsgrad, 5 bleiben unbestimmt:
    • Points in Plane: Fixes Tz. This eliminates the translation along the normal to the reference plane.
    • Points Distance: fixes the distance between the Element origins.
      This gives you more freedom than Points in Plane

Other

  • Points on Circle: fixes Tz and partially Tx,Ty. Freezes the point translation (or several points) on a circle or disk area. You must pick the circle second. This leaves all rotations free and gives limited translation in the circle reference plane.

: Hinweis: In der folgenden Liste werden Tx,Ty,Tz und Rx,Ry,Rz benutzt, um Translations- (Verschiebe-) und Rotations- (Dreh-) Bewegungen bezogen auf die Koordinatenachsen des betreffenden Elements zu beschreiben. Dies ist nicht immer exakt oder vollständig beschrieben, wie z.B. wenn es eine Linie betrifft, ist es nicht definiert, ob sie in X-Richtung, Y-Richtung oder einem beliebigen Winkel dazwischen verläuft. Das System sorgt eher für Kürze und einfache Vergleichbarkeit, als für eine korrekte aber komplexere Definition. So ist Z normalerweise die Richtung der Flächennormalen der betroffenen Flächen.

Zum Anfang

Elemente

Elemente wird in der Assembly3-Arbeitsumgebung als besonderer Begriff benutzt, und Elemente zu verstehen ist wichtig für das Verständnis, wie Assembly3 benutzt werden sollte.

Es ist hilfreich ein Element als einen generellen Begriff für 'auswählbarer Bestandteil' eines Teiles zu sehen wie z.B. eine Fläche , eine Kante, ein Kreis, eine Ecke oder ein Punkt. Dies sind die Elemente, die ausgewählt werden, um Teile zueinander in Beziehung zu setzen. Im Baum hat ein 'Assembly'-Ordner drei Unterordner. Neben 'Parts' und 'Constraints' gibt es einen Ordner namens 'Elements', der leer bleibt, solange keine Einschränkungen hinzugefügt werden. Wenn eine Einschränkungen hinzugefügt wird, erhält sie selbst zwei (oder mehr) Blätter, dies sind die ausgewählten Elemente. Auch werden diese Elemente dem 'Elements'-Ordner hinzugefügt, der eine Liste aller im Zusammenbau benutzten Elemente darstellt. Es ist eine gute Idee, ihre Namen zu ändern (mit der F2-Taste), besonders in größeren Zusammenbauten.

Sehen wir uns ein Beispiel an

Es wird eine neue Datei erstellt und mit der Part-Arbeitsumgebung ein Würfel und ein Zylinder hinzugefügt. Es soll der Zylinder auf den Würfel gestellt werden. Zuerst wird das Basisteil fixiert, in diesem Fall der Würfel. Dazu wird die Unterseite des Würfels und danach die Fixiereinschränkung (das erste Symbol in der Werkzeugleiste der Haupteinschränkungen) ausgewählt. Es werden die Oberseite des Würfels und die Oberseite des Zylinders ausgewählt. Danach wird die 'Plane Coincident'-Einschränkung ausgewählt. Nun hat sich der Zylinder in den Würfel hinein bewegt und im Baum wurde ein neues Blatt mit zwei Kindknoten unter 'Constraints' hinzugefügt. Zusätzlich wurden die selben zwei Kindknoten unter 'Elements' hinzugefügt. Falls der Zylinder im Inneren des Würfels liegt, anstatt auf seiner Oberseite wird dies als nächstes korrigiert: Den Kindknoten unter 'Constraints' auswählen, zu dem die Zylinderfläche gehört, und mit einem Rechtsklick im Kontextmenü 'Flip Part' auswählen. Nun wurde der Zylinder auf die Würfeloberseite gestapelt.

Der Schlüsselgedanke ist, zu verstehen, dass eine Einschränkung mit den Verweisen zu den Elementen in der Liste im 'Elements'-Baumabschnitt arbeiten. Dies erlaubt es die Struktur aus Einschränkungen intakt zu halten, während Teile ausgetauscht werden. Ohne Beispiel ist dies nur schwer zu begreifen.

Zurück zum obigen Beispiel

Achtung: Es sollte darauf geachtet werden, dass die Fixiereinschränkung zum Würfel hinzugefügt wurde, andernfalls wird es verwirrend aussehen.
Im CAD-Fenster wird eine weitere Fläche des Würfels ausgewählt. Ab jetzt wird nur noch in der Baumansicht gearbeitet. Im Baum wird die Maus über dem auszuwählenden Würfel platziert. Der Würfel wird per 'Drag&Drop' auf den 'Elements'-Ordner gezogen und abgelegt. Das Ablegen sollte auf dem Namen des 'Elements' erfolgen, nicht anderswo im Ordner - warum, sehen wir später. Es sollte erkennbar sein, das ein weiteres Element zur 'Elements'-Liste hinzugefügt wurde. Nun wird im 'Constraints'-Ordner der Kindknoten der Würfelfläche in der 'Plane Coincident'-Einschränkung ausgewählt und aus der Liste entfernt. Die Einschränkung ist nun mit einem Ausrufezeichen gekennzeichnet, da ihr ein Element fehlt. Hierbei ist zu beachten, dass ein Element, das aus der Einschränkung entfernt wurde, nicht auch aus der (Element-)Liste gelöscht wurde. Der Grund dafür ist, dass in der Einschränkung nur ein Verweis zum Element in der Liste abgelegt wird. Nun kann das neu zur 'Elements'-Liste hinzugefügte Element per 'drag&drop' auf die 'Plane Coincident'-Einschränkung gezogen und abgelegt. Damit bewegt sich der Zylinder zu der anderen Fläche des Würfels, die vorher ausgewählt wurde. Wenn der Zylinder im Inneren des Würfels liegt, muss nochmals im Kontextmenü 'flip part' ausgewählt werden.

Das Beispiel zeigt, dass man die zur Einschränkung gehörenden Elemente austauschen kann, ohne die Einschränkung zu Löschen. Auf dieselbe Weise kann der Zylinder auch zu einem ganz anderen Teil bewegt werden. Nachdem man etwas mit diesem Beispiel herumgespielt hat, wird man noch zusätzliche Möglichkeiten entdecken, wie z.B.

  • Wenn ein Element in der Liste umbenannt wird, wird es auch in allen Einschränkungen umbenannt
  • Ein Element der Liste kann für mehrere Einschränkungen verwendet werden.
  • Das Eigenschaftsfenster eines Elements kann verwendet werden, um Versatzangaben (Offsets) hinzuzufügen. Z.B. kann hiermit der Zylinder auf unterschiedliche Positionen auf der gewählten Würfelfläche platziert werden.
  • Man kann den 'Show Element Coordinate System'-Knopf der Hauptwerkzeugleiste benutzen, um zu sehen, wie sich 'Flip Part' und 'Flip Element' aus dem Kontextmenü auswirken. Nicht vergessen, die Änderungen im Eigenschaftsfenster zu beobachten.
  • Eine Einschränkung kann auch in einer ganz anderen Reihenfolge hinzugefügt werden: Zuerst werden Elemente zur 'Elements'-Liste hinzugefügt (Eine Benennung ist hier nützlich, z.B. "Würfel-Oberseite" oder "Würfel-Unterseite"), dann wird eine Einschränkung hinzugefügt, ohne etwas auszuwählen - Das ergibt eine leere Einschränkung. Dann werden Elemente aus der Liste per 'Drag&Drop' hierher gezogen und abgelegt. Das Ergebnis ist das gleiche, wie in dem ersten Beispiel. Nach dieser Übung sollte klar sein, wie Einschränkungen und Elemente zusammenarbeiten.
  • Eine bestehende Einschränkung zwischen bestehenden Elementen kann einfach ausgetauscht werden, indem man eine andere Auswahl in der 'ConstraintType'-Eigenschaft im Eigenschaftsfenster trifft.

Zum Anfang

Kompatibilität

Assembly3 wurde vom Assembly2-Arbeitsbereich inspiriert, ist aber nicht mit diesem kompatibel. Wenn ältere Baugruppen in Assembly2 erstellt wurden, sollte man bei FreeCAD 0.16 bleiben und Assembly2 verwendet.

Neue Baugruppen, die mit Assembly3 erstellt wurden, sollten nur in diesem Arbeitsbereich geöffnet und bearbeitet werden.

Obwohl sie möglicherweise über ähnliche Werkzeuge verfügen, ist Assembly3 nicht kompatibel mit A2plus und Assembly4. Baugruppen, die in diesen Arbeitsbereichen erstellt wurden, sollten nur in dem jeweiligen Arbeitsbereich geöffnet werden.

Zum Anfang

Testen

Der Assembly3 Arbeitsbereich befindet sich in der Entwicklung und ist noch nicht (April 2020) über den Addon Manager verfügbar.

Assembly3 kann auf zwei Arten getest werden:

  • Eine spezielle Abspaltung von FreeCAD von realthunder; siehe FreeCAD_assembly3 releases. Dieser Fork basiert auf einem bestimmten Commit des Master-Zweiges von FreeCAD, hat aber auch zusätzliche Funktionen, die derzeit im Master-Zweig nicht vorhanden sind. Da dieser Fork auf einem bestimmten Entwicklungs-Snapshot basiert, verfügt er nicht über die neuesten Funktionen, die täglich in den Master-Zweig eingebunden werden.
  • Die Entwicklung AppImage; diese basiert auf dem aktuellen Master-Zweig und beinhaltet die Abhängigkeiten, die für die Arbeit mit Assembly3 benötigt werden, wie z.B. den SolveSpace Solver.

Da das AppImage nur unter Linux funktioniert, ist für Windows-Benutzer im Moment die erste Option (realthunder's fork) die einzige Möglichkeit, Assembly3 zu testen.

Zum Anfang

Wie man...

...Startet

Es gibt viele Wege einen Zusammenbau mit Assembly3 zu erstellen. Hier wird der einfachste gezeigt.

Endergebnis des 'Wie man startet'-Beispiels. In dem Bild ist die Assembly3-Arbeitsumgebung ausgewählt, sodass ihre unterschiedlichen Werkzeugleisten sichtbar sind. Beachte, dass die vertikale 'TabBar'-Leiste links neben der Baumansicht eine zusätzliche Arbeitsumgebung ist und nicht Bestandteil von Standard-FreeCAD (aber mit dem Addon-Manager installiert werden kann).
  • Eine neue FreeCAD-Datei erstellen
  • Assembly3-Arbeitsumgebung auswählen. CreateAssembly auswählen (erstes Symbol)
  • Part-Arbeitsumgebung auswählen und einen Zylinder und einen Würfel hinzufügen
  • Die Datei mit einem beliebigen Namen speichern, danach schließen und wieder öffnen.
    Die Baumansicht sollte ungefähr so aussehen:
Assembly
   Constraints
   Elements
   Parts
 Zylinder
 Würfel
  • Nun mit der Maus per 'Drag&Drop' Zylinder und Würfel auf den PartsOrdner ziehen und ablegen. Beide wurden in den Ordner verschoben.
    Das ist der schnellste Weg. Bitte beachten, dass es einen besseren Weg gibt, bei dem die Kontextmenüs beider Objekte geöffnet werden und ContetxMenu/LinkActions/MakeLink ausgewählt wird. Dies fügt zwei Verweisdateien hinzu. Dann werden die Verweisdateien auf den Parts-Ordner gezogen und abgelegt. Für einfache Fälle wie diesen speilt es keine große Rolle.
  • Anklicken der beiden Oberseiten von Zylinder und Würfel (Strg gedrückt halten).
  • Assembly3-Arbeitsumgebung auswählen. 'PlaneCoincident' aus der 'Constraint'- Werkzeugleiste auswählen.
    Jetzt sollten beide Teile miteinander verbunden sein und der Baum sollte so aussehen:
Assembly
   Constraints
      PlaneConicident
        _Element
        _Element001
   Elements
        _Element
        _Element001
   Parts
      Zylinder
      Würfel
  • Rechtsklick auf "_Element" (eins der beiden) und "Flip Part" auswählen.
    Nun sollte sich der Zylinder oben auf dem Würfel befinden. Wenn das Gebilde auf dem Kopf steht, einen Schritt zurückgehen und "Flip Part" auf dem anderen Element auswählen.

Bisher wurde ein wichtiger Schritt ausgelassen, den man besonders für größere Zusammenbauten nicht vergessen sollte: Das Fixieren eines Basisteils. D.h. ein Teil zu definieren, das nicht durch Einschränkungen bewegt werden soll. In Diesem Fall wird dafür der Würfel benutzt:

  • Auswahl der Unterseite des Würfels. Nur die Unterseite, nicht der ganze Würfel.
  • Auswahl der Fixiereinschränkung aus der 'Constraint'-Werkzeugleiste.
    Der fertige Zusammenbau sollte so wie auf dem obigen Bild aussehen.

Fertig.
Wenn gewünscht, kann die Fixiereinschränkung im Baum weiter nach oben bewegt werden. Dazu wird der "MoveItemUp"-Knopf der Hauptwerkzeugleiste benutzt.

Achtung: Alle neuen externen Dateien müssen wenigstens einmal gespeichert, geschlossen und wieder geöffnet sein, damit Assembly3 sie finden kann. Tut man es nicht, kann FreeCAD keine Datei-Handler an den the Assembly3-Arbeitsbereich übergeben und dieser kann die neuen Bauteile nicht finden. Wenn alle Bauteile in der selben Datei abgelegt werden, sollte diese geschlossen und wieder geöffnet werden.

Zum Anfang

...einen Versatz hinzufügt

Assembly3 bietet nicht die Möglichkeit mit den Einschränkungen einen Versatz zu erstellen, wie man es von der A2plus-Arbeitsumgebung oder anderen CAD-Programmen her kennt. Im Gegensatz dazu bietet es ein allgemeineres und flexibleres System um Abstände, Verschiebungen aber auch Drehungen festzulegen.

  • Einen Versatz in den Eigenschaften eines Elements einer Einschränkung hinzufügen.
    Es ist gleich, welches der beiden Elemente benutzt wird.

Beispiel:

  • Zwei Würfel zu einem Zusammenbau hinzufügen und ihre Seitenflächen auswählen.
  • "PlaneCoincident" auswählen. Die Würfel werden ineinanderliegend verbunden.
  • Ein Element und ContextMenu/Flip Part auswählen. Die Würfel werden seite-an-seite-liegend verbunden.
  • die Eigenschaft 'Offset/Position/z' eines Elements auswählen und auf 5 mm setzen. Die Würfel liegen nun 5 mm auseinander.
  • Man kann noch den Versatz entlang der anderen Raumachsen und die Drehungen um die Achsen ausprobieren. Und man sollte überprüfen, dass man das gleich Ergebnis erreicht, wenn man die Einstellungen am anderen Element vornimmt.

Dies gilt sinngemäß auch für alle anderen Einschränkungen.

Zum Anfang

...einen Fehler des Gleichungslösers behebt

Dies passiert meistens, wenn Zusammenbauten überbestimmt sind, d.h. mehr als 6 Freiheitsgrade (DOFs) festlegt sind.

Der einfachste Weg das Problem zu finden, ist das Anklicken der entsprechenden Einschränkungen, die Auswahl von ContextMenu/Disable und anschließender Neuberechnung. Es ist hilfreich zu wissen, welche Einschränkungen als letzte hinzugefügt wurden, bevor die Berechnung des Gleichungslösers fehlgeschlagen ist, um diese einfach zurückzunehmen.

Achtung: Da Assembly3 hinter den Kulissen versucht überbestimmte Teile auszugleichen, kann es vorkommen, dass eine neue Einschränkung scheinbar eine Fehlfunktion auslöst, die tatsächliche Ursache aber an einer anderen Stelle zu finden ist. Bevor man nun alles löscht und von vorne beginnt, sollte man daran denken, dass man Elemente wiederverwenden kann. Wenn sie benannt wurden, können die erforderlichen Elemente leicht ermittelt und die Einschränkungen erneut aufgebaut werden, ohne die 3D-Ansicht zu verwenden. Siehe auch obigen Elemente-Abschnitt.

Zum Anfang

...ein Teil austauscht oder einen Dateinamen ändert

Wenn ein Teil entfernt wurde, oder sich ein Dateiname ändert, zerbricht der Zusammenbau; er kann nicht länger berechnet werden und der Gleichungslöser gibt die Meldung "Inconsistent constraints" aus. Der Gleichnungslöser markiert ungültige Elemente und Einschränkungen im Baum mit einem Fragezeichen.

Ein Weg die Aufgabe zu lösen, ist einfach alle ungültigen Einschränkungen und Elemente zu löschen und anschließend das neue Teil zu laden und alle nötigen Schritte zu wiederholen. Aber es gibt einen besseren Weg:

  • Eine Datei umbenennen
    1. Einen Dateimanager benutzen, um die Datei zu kopieren, umbenannt werden soll. Anschließend gibt man der Kopie den neuen Namen.
    2. Öffnen der Kopie in FreeCAD. Der Zusammenbau und die alte Datei sollten auch geöffnet sein.
    3. Das alte Objekt im Baum auswählen und per Klick die Eigenschaft 'Linked object' ändern (sie enthält den alten Dateinamen).
    4. Ein Dialogfenster mit einer Auflistung aller geöffneten Teile öffnet sich. Es zeigt die Dateinamen und Objekte aller Teile an. Das alte Teil und das zugehörige Objekt sind ausgewählt. Das umbenannte Teil wird im Baum abgelegt und das gleiche Objekt des neuen Teiles ausgewählt. Danach die Auswahl bestätigen.
    5. Die alte Datei aus dem Baum entfernen. Die Datei kann jetzt auch gelöscht werden.
    6. Die Einschränkungen und Elemente des alten Teiles sind ungültig geworden. Jetzt wird die Einschränkung oder die 'Elements'-Liste im Baum geöffnet und anschließend nacheinander
      • Jede Element-Fläche am neuen Teil ausgewählt. Ein Objekt im Baum wird hervorgehoben.
      • Das Objekt per 'drag&drop' auf das alte Element ziehen und ablegen (entweder in der 'Elements'-Liste oder in einer der Einschränkungen, wo es benutzt wurde). Das Element sollte jetzt gültig werden.
      • Diesen Ablauf für die übrigen Elemente wiederholen. Oft reicht ein einzelnes Element dafür aus, dass Assembly3 die übrigen Elemente des Teiles automatisch erkennen kann.
      • Falls ein Element ausversehen einer falschen Fläche zugeordnet wurde, wird die Zuordnung einfach mit der korrekten Fläche wiederholt.
    7. Ändern des Objektnamens in FreeCAD, falls gewünscht


  • Ein Teil durch ein anderes Teil ersetzen
    Welches dem originalen Teil ähnlich genug ist, dass die originalen Einschränkungen noch sinnvoll sind.
    1. Das alteTeil aus dem Baum entfernen. Die Datei kann jetzt auch gelöscht werden.
    2. Die Einschränkungen und Elemente des alten Teiles sind ungültig geworden. Jetzt wird die Einschränkung oder die 'Elements'-Liste im Baum geöffnet.
      • Eine Element-Fläche am neuen Teil auswählen. Ein Objekt im Baum wird hervorgehoben.
      • Das Objekt per 'drag&drop' auf das alte Element ziehen und ablegen (entweder in der 'Elements'-Liste oder in einer der Einschränkungen, wo es benutzt wurde). Das Element sollte jetzt gültig werden.
      • Diesen Ablauf für die übrigen Elemente wiederholen.
      • Falls ein Element ausversehen einer falschen Fläche zugeordnet wurde, wird die Zuordnung einfach mit der korrekten Fläche wiederholt.
    3. Ändern des Objektnamens in FreeCAD, falls gewünscht


Hinweise

  • Es ist nicht so kompliziert, wie es hier auf den ersten Blick aussieht. Nach 2-3 Durchläufen sollten die Abläufe in Fleisch und Blut übergehen und die Ausführung leicht von der Hand gehen.
  • Es ist nicht nur viel schneller als das Löschen und erneute Anlegen von Einschränkungen, sondern auch sicherer, da ein Element in einem übergeordneten Zusammenbau eingesetzt sein könnte. Das Original zu löschen, würde den Verweis zerstören, es neu zuzuordnen würde ihn erhalten.
  • Ferner beschleunigt und vereinfacht es diesen Ablauf, wenn Einschränkungen und Elemente benannt werden. Es gäbe kein Raten, wo die Flächen hingezogen und abgelegt werden sollten, da es aus den Namen hervorgeht (siehe auch Tipps & Tricks).

Zum Anfang

Tipps & Tricks

  • Hierarchisch aufgebaute Zusammenbauten helfen dabei, Probleme des Gleichnungslösers zu vermeiden und das Modell schlank zu halten. Man kann eine Unterbaugruppe mit einem Klick einfrieren und so ohne Aufwand CPU-Resourcen einsparen (Im Kontextmenü des Baumes). Wenn ein Zusammenbau geladen wird, muss Assembly3 die externen Dateien der eingefrorenen Unterbaugruppen nicht öffnen, wodurch der Baum kompakt gehalten wird.
  • Es ist sehr hilfreich, sich anzugewöhnen, Einschränkungen und Elemente zu benennen. Im Baum lässt es sich schnell durch Benutzung der F2-Taste erledigen. Sehr nützlich ist auch das Werkzeug zum Sortieren des Baumes, das man in der Hauptwerkzeugleiste findet. Ein Zusammenbau mit vollständig benannten Einschränkungen und Elementen ist für andere Leute sehr einfach zu verstehen, oder auch für einen selbst, wenn man sich ältere Modelle ansieht.
    Beispiele für Namen von Einschränkungen für einen Tisch könnten lauten: "Ausrichtung_Beine_vorne", "Ausrichtung_RahmenUnterseite-BeinOberseite" und Elementnamen könnten sein: "Bein1_Oberseite", "Tischplatte_Vorderseite" oder "Tischplatte_linke_Seite".
  • Bitte beachten, dass, sobald externe Dateien durch einen Zusamenbau geöffnet werden, es nicht mehr möglich ist, diese auf einfache Weise zu schließen, ohne auch den Zusammenbau zu schließen. Da der Zusammenbau die Dateien im Hintergrund offen hält, kann der Reiter verschwinden, aber die Dateien bleiben im Baum sichtbar. Wenn man Zusammenbauten über mehrere Ebenen hat, kann es fast unmöglich sein einzelne Dateien zu schließen. Dieses Verhalten kann sich in Zukunft ändern, aber bis dahin bleibt die Möglichkeit, Die Befehle File/Save All und File/Close All zu nutzen, um den Baum aufzuräumen, bevor an einer anderen Unterbaugruppe gearbeitet wird.
    Beispiel: Man hat eine große CNC-Maschine mit einem Hauptzusammenbau und Unterbaugruppen für alle Module. Sobald man den Hauptzusammenbau geladen hat, wird er hunderte Dateien bis hin zur kleinsten Schraube öffnen. Bevor man nun die Baugruppe des Elektronikfachs der Maschine bearbeitet, ist es eine gute Idee, alle Dateien zu speichern und zu schließen, um einen leeren Baum zu erhalten. Dann wird nur die Unterbaugruppe des Elektronikfachs geöffnet. Sie öffnet alle benötigten Dateien, aber auch nur diese.
  • Externe Dateien zu benutzen, macht es einfacher, Teile wiederzuverwenden oder Bauteilversonierung mit Systemen wie git oder subversion zu ermöglichen. Der Arbeitsablauf in FreeCAD mit Assembly3 fühlt sich fast genauso an, wie der mit Dateien, in denen alle zusammengehörigen Teile in jeweils einer Datei enthalten sind. Letzteres bietet sich an, wenn man häufig Baugruppen mit anderen Beteiligten austauscht.
  • Mehrfach verknüpfte Dateien. Wenn man eine Dateiverknüpfung zu einem Zusammenbau hinzufügt, wird eine Eigenschaft "Element Count" angelegt mit Standardwert 0. Wenn man diesen auf 3 setzt, erhält man 3 Instanzen dieses Teils. Sie werden in einem Unterordner hinzugefügt und können wie vollständig unabhängige Teile verwendet werden. Diese Einstellung kann genutzt werden, um den Speicherplatzverbrauch der Datei klein zu halten, da das Teil nur einmal gespeichert wird. Die Instanzen enthalten nur die Unterschiede.
  • Einsetzen mehrfacher Teile, wie z.B. Schrauben, mit einem Klick. Siehe Assembly3 Wiki auf der Github-Seite. Dies ist nicht nur eine erstaunliche Funktion (vielleicht ein bisschen magisch), sondern auch sehr sehr nützlich.
  • Die Benutzung der TabBar-Arbeitsumgebung beschleunigt die Arbeit mit Zusammenbauten. Es wird eine Werkzeugleiste mit je einem Knopf für jede Arbeitsumgebung hinzugefügt. Man kann die Reihenfolge ändern und man kann die Werkzeugleiste nach belieben platzieren. Veile Leute legen sie vertikal an den linken Rand direkt neben der Baumansicht. Wenn man Assembly3, Part, PartDesign und andere oft genutzte Arbeitsumgebungen am oberen Ende platziert, macht es das Umschalten zwischen den Arbeitsumgebungen extrem einfach.


Zum Anfang

Verknüpfungen/Verweise