Hands-on Robot LearningWeek 02 · Essentials (whirlwind recap)

Inverse kinematics

We know where the gripper should go. What should the joints do?

A two-link planar armℓ₁ = 0.62 · ℓ₂ = 0.44
Selected solutionOther solutionPosition workspace

Try this. Move the target toward the outer boundary. What happens to the two solutions?
Geometry and assumptions

These are illustrative link lengths in arbitrary units, not SO-101 dimensions. The arm moves in a plane; links have zero thickness and collisions are ignored. We constrain position (x, y), not gripper orientation. Joint angles are shown modulo 360°.

x = ℓ₁ cos q₁ + ℓ₂ cos(q₁ + q₂)
y = ℓ₁ sin q₁ + ℓ₂ sin(q₁ + q₂)
cos q₂ = (x² + y² − ℓ₁² − ℓ₂²) / (2ℓ₁ℓ₂)
det J = ℓ₁ℓ₂ sin q₂

Without joint limits, the reachable positions form an annulus: |ℓ₁ − ℓ₂| ≤ √(x² + y²) ≤ ℓ₁ + ℓ₂. The two branches coincide at both boundaries, where det J = 0. Near a singularity, a small Cartesian motion can require a large joint motion. The symmetric elbow limits used here exclude both branches together.