FORC · Lecture 3

Jacobian control and differential inverse kinematics

Simeon Nedelchev

Full notes, practice, and references

Task velocity

p˙=Jp(q)v\dot p=J_p(q)v

The Jacobian maps generalized velocity to tool velocity in a declared frame.

Differential IK

b=p˙⋆+Kp(p⋆−p)b=\dot p^\star+K_p(p^\star-p)
v=Jp⊤(JpJp⊤+λ2I)−1bv=J_p^\top(J_pJ_p^\top+\lambda^2I)^{-1}b

Damping trades tracking accuracy for smaller commands.

Jp(0,0)=[0021]J_p(0,0)=\begin{bmatrix}0&0\\2&1\end{bmatrix}

Vertical motion is locally available.

Horizontal motion needs a change of configuration.

Limits

Damping does not impose a speed constraint.

Joint limits and collisions require explicit treatment.

MuJoCo connection

mj_jacSite gives translational and rotational blocks.

mj_integratePos provides configuration perturbations for finite differences.

Practice question

What happens to task error as damping grows?

Compare speed, error, and the smallest singular value.

Reading: MIT differential IK

Reading

Return to the notes