Table of Contents
Inverse kinematics on menetelmä, jota käytetään määrittämään yhteisen kulmat robotti käsivarsi perustuu haluttuun asentoon sen loppuefektori. Vuonna 3 astetta vapautta (3DOF) järjestelmä, laskettaessa nämä kulmat liittyy geometrinen ja trigonometrinen periaatteet. Tämä artikkeli tarjoaa vaiheittainen opas suorittaa näitä laskelmia.
Robottiasetusten ymmärtäminen
Ennen laskelmien aloittamista on tärkeää ymmärtää robotin rakennetta, mukaan lukien linkinpituudet ja niveltyypit. Tyypillisesti 3DOF-robotilla on kolme rotaationiveltä, joista jokainen vaikuttaa kokonaisasentoon 3D-avaruudessa.
Vaihe 1: Määritä kohde
Määritetään pääteefektorin haluttu sijainti, jota edustavat koordinaatit (x, y, z). Nämä koordinaatit toimivat yhteisen kulman laskentaperusteena.
Vaihe 2: Laske perus-Joint Angle (θ1)
Ensimmäinen nivelkulma, θ1, on tyypillisesti pyörimiskulma pystyakselin ympäri. Se voidaan laskea käyttäen projektiota kohdeasennosta XY-tasolle:
θ1 = atan2(y, x)
Vaihe 3: Laske ranneasento
Vähennä panos ensimmäisen yhteisen löytää ranne asento, joka on kohta, jossa kaksi viimeistä niveltä toimivat. Tämä edellyttää laskettaessa planar etäisyys:
]r = sqrt(x2 + y2) - linkki1 length
ja pystyetäisyys:
s = z - linkki0 korkeus
Vaihe 4: Laske kyynärpää ja olkapää kulmat
Kosineiden lain avulla lasketaan kulmat kyynärpäässä ja olkanivelissä.
- D = (r2 + s2 - linkki2 length2 - linkki3 length2) / (2 * linkki2 length * linkki3 length)[]
sitten kyynärpääkulma:
]θ3 = acos(D)
Ja olkapään kulma:
θ2 = atan2(s, r) - atan2(link3 length * sin(θ3), link2 length + link3 length * cos(θ3))[
Vaihe 5: Viimeistele yhteiset kulmat
Muunna kaikki lasketut kulmat asteiksi tarvittaessa. Varmista kulmat ovat robotin nivelrajojen sisällä ennen niiden soveltamista.