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.