Stapsgewijze berekening van de gezamenlijke hoekpunten in 3dof omgekeerde kinematica
Inverse kinematica is een methode die wordt gebruikt om de gezamenlijke hoeken van een robotarm te bepalen op basis van een gewenste positie van zijn eindeffector. In een 3 graden vrijheid (3DOF) systeem, waarbij deze hoeken worden berekend, gaat het om geometrische en trigonometrische principes. Dit artikel geeft een stap-voor-stap handleiding voor het uitvoeren van deze berekeningen.
Begrijpen van de Robot configuratie
Voordat met berekeningen wordt begonnen, is het essentieel om de structuur van de robot te begrijpen, inclusief verbindingslengtes en gewrichtstypen. Typisch een 3DOF robot heeft drie rotatiegewrichten, die elk bijdragen aan de algemene positie van de eindeffector in 3D ruimte.
Stap 1: Bepaal de doelpositie
Identificeer de gewenste positie van de eindeffector, vertegenwoordigd door coördinaten (x, y, z). Deze coördinaten dienen als basis voor het berekenen van de gezamenlijke hoeken.
Stap 2: Bereken de basisgewrichtshoek (θ1)
De eerste gezamenlijke hoek, θ1, is typisch de rotatie rond de verticale as. Het kan worden berekend met behulp van de projectie van de doelpositie op het XY-vlak:
θ1 = atan2(y, x)
Stap 3: Bereken de polspositie
Trek de bijdrage van het eerste gewricht af om de polspositie te vinden, dat is het punt waar de laatste twee gewrichten werken. Dit houdt in dat de planaire afstand wordt berekend:
r = sqrt(x2 + y2) - link1 length
en de verticale afstand:
s = z - link0 height
Stap 4: Bereken de Elleboog en Schouderhoeken
Met behulp van de Wet van Cosinus, berekenen de hoeken aan de elleboog en schouder gewrichten.
- D = (r2 + s2 - link2 length2 - link3 length2) / (2 * link2 length * link3 length)
Dan, de elleboog hoek:
θ3 = acos(D)
En de schouder hoek:
θ2 = atan2(s, r) - atan2(link3 length * sin(θ3), link2 length + link3 length * cos(θ3))
Stap 5: De Joint Angles afronden
Converteer alle berekende hoeken naar graden indien nodig. Controleer de hoeken binnen de gezamenlijke grenzen van de robot alvorens ze toe te passen.