Tutorial KinematicAssembly/de

Einleitung
In dieser Anleitung geht es darum einen einfachen Mechanismus aufzubauen, hauptsächlich mit den Werkzeugen des externen Arbeitsbereichs Assembly3.

Der kinematische Zusammenbau (die Kinematik), die erstellt wird, besteht aus vier Bauteilen: Eine Basis, ein Schieber, eine Kurbel und ein Pleuel (Verbindungsstange). Sie sind mit vier Gelenken verbunden.



Bauteile
Die Basis ist ein Objekt mit zwei Hauptgeometrien, ein Loch und ein Zapfen. Beide sind zylindrisch. Der Rest der Form ist nicht von Bedeutung für diese Anleitung, solange er keine Kollision verursacht. Gleiches gilt auch für die anderen Bauteile.



Der Schieber bestecht aus einem Schaft mit einem Zapfen an einem Ende. Beide sind zylindrisch.



Die Kurbel hat ein Loch und einen Zapfen. Wieder sind beide zylindrisch.



Das Pleuel besitzt zwei zylindrische Löcher.



Festgesetzte Basis
Damit der Zusammenbau an der gewünschten Position bleibt, sollte die Basis festgesetzt werden.
 * (Wenn der Befehl [[Image:Assembly_LockMover.svg|16px]] Lock mover aktiviert ist, sind die Werkzeuge zum Bewegen deaktiviert, so lange ein festgesetztes Bauteil ausgewählt ist.)


 * 1) Eine Fläche der Basis auswählen.
 * 2) Die Schaltfläche  drücken, um die Basis auf Dauer an ihrem Platz zu halten.



Dann werden alle vier Bauteile mit vier Gelenken verbunden. Die kinematische Kette beginnt an der Basis.

Basis-Schieber-Gelenk
Das Basis-Schieber-Gelenk ist ein zylindrisches Gelenk. Es ermöglicht dem Schieber sich entlang der Z-Achse des Loches in der Basis und um sie herum zu bewegen, während die Z-Achsen beider Elemente fluchtend (kollinear) ausgerichtet sind.

Die passende Randbedingung findet man unter "AxialAlignment". Sie funktioniert mit Elementen, die zylindrische Geometrie repräsentieren, wie zylindrische Flächen, kreisförmige Flächen und kreisförmige Kanten.
 * 1) Die zylindrischen Flächen des Loches in der Basis und des Schieberschaftes auswählen.
 * 2) Die Schaltfläche  drücken.
 * 3) Optional können die Label der erzeugten Elemente editiert werden (die ).



Basis-Kurbel-Gelenk
Das Basis-Kurbel-Gelenk ist ein Scharnier. Es ermöglicht der Kurbel sich um die Z-Achse des Zapfens der Basis zu drehen, während die Z-Achsen beider Elemente fluchtend (kollinear) ausgerichtet und der Abstand zwischen ihren XY-Ebenen konstant bleiben.

Die passende Randbedingung findet man unter "PlaneCoincident". Sie funktioniert mit Elementen, die ebene Geometrien repräsentieren, wie kreisförmige Flächen oder ringförmige Kanten (wie in diesem Falle).
 * 1) Die kreisförmige Fläche oder die ringförmige Kante des Zapfens der Basis sowie die äußere kreisförmige Kante des Kurbellochs auswählen.
 * 2) Die Schaltfläche  drücken.
 * 3) Wahlweise können die Label der erzeugten Elemente editiert werden.



Schieber-Pleuel-Gelenk
Das Schieber-Pleuel-Gelenk ist ein Scharnier. Es ermöglicht dem Pleuel sich um die Z-Achse des Schieberzapfens zu drehen, während die Z-Achsen beider Elemente fluchtend (kollinear) ausgerichtet und der Abstand zwischen ihren XY-Ebenen konstant bleiben.

Die passende Randbedingung findet man wieder unter "PlaneCoincident". (siehe oben).
 * 1) Die kreisförmige Fläche oder die ringförmige Kante des Schieberzapfens und die äußere kreisförmige Kante des Pleuelloches auswählen.
 * 2) Die Schaltfläche  drücken.
 * 3) Wahlweise können die Label der erzeugten Elemente editiert werden.



Kurbel-Pleuel-Gelenk
Das Kurbel-Pleuel-Gelenk ist ein zylindrisches Gelenk. Es ermöglicht dem Pleuel sich um die Z-Achse des Kurbelzapfens zu drehen und sich daran entlang zu bewegen, während die Z-Achsen beider Elemente fluchtend (kollinear) ausgerichtet sind. Aber nur die Drehung ist möglich, da die Verschubbewegung durch die Kombination aus Basis-Kurbel-Gelenk und Schieber-Pleuel-Gelenk verhindert wird.

Die passende Randbedingung findet man wieder unter "AxialAlignment" (siehe oben).
 * 1) Die zylinderförmigen Flächen von Kurbelzapfen und Pleuelloch auswählen.
 * 2) Die Schaltfläche  drücken.
 * 3) Wahlweise können die Label der erzeugten Elemente editiert werden.



Überzählige Randbedingungen
Wenn die Basis festgesetzt ist und alle vier Gelenke definiert sind, erscheinen zwei Meldungen im Ausgabefenster:
 * Eine Warnung (orange): "...redundant constraints" (überzählige Randbedingungen).
 * Eine einfache Meldung (schwarz): "...dof remaining: 0" (noch nicht bestimmte Freiheitsgrade).

Diese Kombination der Meldungen taucht auf, wenn ein Bauteil eines Zusammenbaus überbestimmt ist, aber der Gleichungslöser weiterhin in der Lage ist, gültige Lösungen zu finden. Aber was führt zu den überzähligen Randbedingungen?

Es ist die Z-Richtung der Zapfen. Wenn man sich z. B. den Schieberzapfen ansieht, erkennt man, dass die Z-Achse seines Element-Objekts parallel zu der Z-Achse des Zapfens der Basis festgelegt ist über die Zusammenbaukette Basis-Kurbel-Pleuel-Schieber. Das bedeutet, dass der Schieberzapfen an der Drehung um die X- und Y-Achse gehindert wird.



Auf der anderen Seite wird die Drehung um die X-Achse (rot) schon duch das Basis-Kurbel-Gelenk verhindert; und daher ist der zugehörige Freiheitsgrad zweifach (also überzählig/redundant) festgelegt (bestimmt) und löst die Warnung aus.
 * Um diese Redundanz zu vermeiden, könnte man ein HIlfsobjekt einfügen mit entsprechenden Randbedingungen, aber das gehört in eine andere Anleitung.
 * Um die doppelte Festlegung des Abstandes zwischen Basis und Pleuel zu vermeiden, wurden unterschiedliche Randbedingungen verwendet und nur eine verhindert die Bewegung entlang der Z-Achse.

Antrieb
Now it is still a static assembly. To turn it into a kinematic assembly one constraint has to be used as an actuator. To use the "PlaneCoincident" constraint of the Base-to-Crank joint as an actuator, we need to control the angle between Base pin and Crank. This can be done by setting the property to. And for later use the label is marked with the suffix .Driver.

The property can now be used to spin the Crank.



Controller
To have a dialog window to change property values without typing and with automatic recomputation would be nice.

Have a look at the Kinematic Controller tutorial.