Tutorial KinematicSkeleton/de

Einleitung
In dieser Anleitung geht es darum, einen einfachen 2D-Mechanismus zu erstellen und daran 3D-Objekte zu befestigen, hauptsächlich mit den Werkzeugen des externen Arbeitsbereichs Assembly3.

Diese Anleitung verwendet nicht das Skeleton-Sketch-Prinzip (siehe Assembly3 Create-Skeleton-Sketch auf GitHub).

Stattdessen werden PartDesign Bodies (Körper) verwendet, die jeweils nur eine  Skizze enthalten, um einen 2D-Mechanismus aufzubauen, ein Skizzen-Skelett.

Die Maße und die Farben wurden von der Anleitung SolveSpace tutorial übernommen, auf die sich auch die Assembly3-GitHub-Seite bezieht (siehe oben).

Skizzen-Skelett
Dieses sogenannte Skizzen-Skelett besteht aus mehreren einzelnen Körpern und einem  Assembly-Container. Um weitere Objekte befestigen zu können, wird jeder Körper in einen eigenen Assembly-Container gepackt.

2D-Body-Objekte
Die Körper (Bodies) und ihre Skizzen, die in diesem Zusammenbau (auch Baugruppe genannt) verwendet werden:
 * Eine Grundplatte (grün)
 * Eine Kurbel (blau)
 * Zwei bewegliche Scheiben (rot und grau)
 * Vier Verbindungsstangen (weiß, gelb, lila und braun)



Die Form kann von dem tatsächlichen Teil abweichen, aber die Position der Geometrien, die die Gelenke festlegen, müssen genau sein.

Übergeordneter Zusammenbau
Um die Positionen aller Körper festzusetzen oder zu steuern, braucht man ein Assembly-Objekt. Das fügt dem Konstruktionsbaum in der Baumansicht einen Ast für den Zusammenbau hinzu.
 * Die Schaltfläche drücken, um einen Zusammenbauast in der Baumansicht zu erstellen.

Sub-assemblies
Repeat above action to create an Assembly object for each Body and drag the Body into its Parts container. Then fix the Body to its Assembly:
 * 1) Activate the Assembly object (double-click).
 * 2) Select a circle/arc belonging the Body object.
 * 3) Press the  button to fix the Body in its sub-assembly.

The Crank-Assembly, for example, should look like this:



Assembly tree
In the Tree view drag all sub-assembly branches into the Parts container of the parent Assembly object.



Now they are ready to be arranged.

Fixed base plate
First we need a fixed part. To fix the Base completely we would usually select a face, but in this case a circle will do as well.
 * 1) Select a circle of the Base.
 * 2) Press the  button to fix the Base.



Joints
For hinge-like joints we select one circle of each sketch and use the Plane Coincidence constraint. It not only sets both Element's XY planes coplanar, but sets their Z axes colinear, too.
 * 1) Select a circle of each object to connect.
 * 2) Press the  button.

Base - Upper Plate


Previously created joints can be identified by their constraint representations (red).

Upper Plate - Rod 1
The last link in this kinematic chain connects two Elements whose Z directions are already defined and a Point on line constraint is all we need.
 * 1) Select a circle of each object to connect.
 * 2) Press the  button.



If the 3 joints are colinear (those belonging to Crank and Rod 1), the solver might fail to rearrange the objects. In that case we need to help the solver and tilt one object (e.g. the Crank) manually using the Axial move tool.

Upper Plate - Rod 2
Another kinematic (sub-)chain starts with Plane Coincidence constraints.



Lower Plate - Rod 3
And this kinematic (sub-)chain ends with a Point on line constraint, too.



To connect both kinematic sub-chains we use Rod 4 with a Plane Coincidence constraint on one end and a  Point on line constraint on the other.

Actuator
Since Assembly3 doesn't provide any means to control kinematic assemblies, we need external assistance such as this kinematic controller. To use this controller we need to mark one constraint's label with the suffix to make it a driving constraint. It may be separated by a or  for clarity, as the controller will only check if the label ends with.

We therefore change the label of the Base-Crank joint to.

Finished skeleton
The finished kinematic assembly with deactivated representation of Elements and Constraints should look like this:





Attaching 3D geometry
My expectations about attaching a new object to a base object belonging to a kinematic assembly were something like: But that would have been too easy.
 * Put the new object into the base objects Parts container.
 * Position the new object in relation to the base object.
 * Fix the relative offset and orientation using the Attachment constraint.

The Assembly3 ConstraintAttachment tool, like any Assembly3  constraint tool, relies on the use of Element objects and their element coordinate systems (ECSs) for positioning tasks.

And so attaching objects is just another way of adding objects to a (sub-)assembly.

Let's attach Rod 4-3D to Rod 4 for example:

The objects have a different orientation and the 3D object should have an offset from the 2D object.


 * 1) Put the new object into the base objects Parts container.
 * 2) Select two corresponding circles or arcs.
 * 3) Press the.


 * [[Image:Assembly3_SketchSkeleton-28.png|200px|link=]] [[Image:Button_right.svg|16px|link=]] [[Image:Assembly3_SketchSkeleton-29.png|200px|link=]] [[Image:Button_right.svg|16px|link=]] [[Image:Assembly3_SketchSkeleton-30.png|200px|link=]]

It is now plain to see that the Assembly3 ConstraintAttachment tool ignores the offset and orientation between both objects.

However the position is already defined as we wanted and so we only need to adapt the angle manually and define the desired offset:
 * Set the of the first Element in the Attachment container to match the orientation.
 * Set the of the same Element to apply an offset.

In case we set the properties of the second Element, the movement of angle and offset would go in the opposite direction.
 * [[Image:Assembly3_SketchSkeleton-30.png|200px|link=]] [[Image:Button_right.svg|16px|link=]] [[Image:Assembly3_SketchSkeleton-31.png|200px|link=]] [[Image:Button_right.svg|16px|link=]] [[Image:Assembly3_SketchSkeleton-32.png|200px|link=]]

If there is a 3D object attached to each 2D object, it could look like this: