Wo liegt die Hand bei bekannten Winkeln?
Die Vorwärtskinematik berechnet aus den Gelenkwinkeln eines Roboterarms, wo seine Hand liegt. Sie ist die Grundrechnung der Robotik, denn jede Bewegung beginnt mit der Frage, wo der Arm gerade steht.
Hier rechnen wir sie für einen Arm mit zwei Gelenken in einer Ebene, wie ihn eine Fabrik zum Sortieren von Schrauben nutzen könnte. Es bleibt eine Simulation.
Am Ende dieser Lektion
Notiz
Ich kann aus den Gliedlängen und den Gelenkwinkeln berechnen, wo die Hand eines Zwei-Gelenk-Arms liegt.
Schlüsselwörter
| Begriff | Was er bedeutet |
|---|---|
| Glied | ein starres Stück des Arms zwischen zwei Gelenken |
| Gelenk | die Stelle, an der sich ein Glied dreht |
| Gelenkwinkel | wie weit ein Gelenk gedreht ist, in Grad |
| Hand | das freie Ende des Arms, das greift oder arbeitet |
| Vorwärtskinematik | aus den Winkeln die Lage der Hand berechnen |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Der Ellbogen liegt eine Gliedlänge vom Ursprung entfernt
Das erste Gelenk sitzt im Ursprung, an der Schulter. Das erste Glied ist 30 Zentimeter lang. Es zeigt in die Richtung des ersten Winkels.
Der Ellbogen ist das Ende dieses Gliedes. Seine Koordinaten sind 30 mal cos(w1) und 30 mal sin(w1). Das ist die Drehung aus der letzten Lektion, angewendet auf den Punkt (30, 0).
Beispiel: der Ellbogen bei drei ersten Winkeln
| Erster Winkel | Ellbogen (x, y) | Wohin zeigt das Glied? |
|---|---|---|
| 0 Grad | (30, 0) | nach rechts |
| 90 Grad | (0, 30) | nach oben |
| 180 Grad | (-30, 0) | nach links |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Das zweite Glied dreht sich mit beiden Winkeln
Das zweite Glied sitzt am Ellbogen. Sein Winkel w2 ist relativ zum ersten Glied gemessen. Die Richtung in der Ebene ist also die Summe w1 plus w2.
Die Hand liegt am Ende des zweiten Gliedes. Dort ist x gleich 30 mal cos(w1) plus 20 mal cos(w1 plus w2). Und y ist gleich 30 mal sin(w1) plus 20 mal sin(w1 plus w2).
Beispiel: Glieder von 30 und 20 Zentimetern
| w1 | w2 | Hand (x, y) | Form des Arms |
|---|---|---|---|
| 0 | 0 | (50, 0) | gestreckt nach rechts |
| 0 | 90 | (30, 20) | Glied 2 zeigt nach oben |
| 90 | 0 | (0, 50) | gestreckt nach oben |
| 90 | -90 | (20, 30) | Glied 2 zeigt nach rechts |
| 90 | 90 | (-20, 30) | Glied 2 zeigt nach links |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Die Hand bei 90 und minus 90 Grad
docker exec jupyter python3 -c "import numpy as np; a = np.radians(90); b = np.radians(-90); print(np.round(30 * np.cos(a) + 20 * np.cos(a + b), 6), np.round(30 * np.sin(a) + 20 * np.sin(a + b), 6))"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Die Hand bei 60 und minus 60 Grad
docker exec jupyter python3 -c "import numpy as np; a = np.radians(60); b = np.radians(-60); print(np.round(30 * np.cos(a) + 20 * np.cos(a + b), 6), np.round(30 * np.sin(a) + 20 * np.sin(a + b), 6))"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Die Hand erreicht nur einen Ring
Sind beide Glieder gestreckt, liegt die Hand am weitesten entfernt: 30 plus 20, also 50 Zentimeter. Ist der Arm ganz zurückgeklappt, ist es am wenigsten: 30 minus 20, also 10 Zentimeter.
Die Hand erreicht deshalb nur einen Ring zwischen 10 und 50 Zentimetern. Diese Grenzen brauchen wir in der nächsten Lektion.
Die Hand eines Arms in Python berechnen
import math
# Ein Arm mit zwei Gliedern, Längen in Zentimetern, Winkel in Grad.
glied_1 = 25
glied_2 = 15
w1 = math.radians(40)
w2 = math.radians(30)
ellbogen_x = glied_1 * math.cos(w1)
ellbogen_y = glied_1 * math.sin(w1)
hand_x = ellbogen_x + glied_2 * math.cos(w1 + w2)
hand_y = ellbogen_y + glied_2 * math.sin(w1 + w2)
print(round(hand_x, 2), round(hand_y, 2))
# Setzen Sie den zweiten Winkel auf 0 und starten Sie erneut.
Ein häufiger Fehler
Warnung
Viele rechnen für das zweite Glied nur mit cos(w2) und sin(w2). Aber w2 ist relativ zum ersten Glied gemessen. Die Richtung in der Ebene ist w1 plus w2. Addieren Sie die Winkel, bevor Sie cos und sin nehmen.