IK

For rotational joint

Notation

  • Joint configurations: , where each is called joint angle.
  • where end effectors represented as , and each .
  • Target positions for end effectors
  • , where each
  • Joint angles represented as column vector
  • End effector positions can be represented as a function:
  • IK problem: find ‘s such that

Jacobian represents the instantaneous linear approximation of position as a function of as

For an initial position and target position , we seek to find the value of for updating the value of joint angles as . We define the instantaneous velocities of end effectors as . Applying Taylor’s expansion to initial position , we obtain .

Jacobian (instantaneous rate of change in end effectors), thus gives an iterative method to approximate the movement in the end effectors as a function of change of angle joints. Next question: How do we compute the Jacobian?

  1. Write end effector coordinates as a function of by multiplying transformation matrices successively for each joint, and then take the partial derivative with respect to each joint angle , and evaluating at current value of angle joints.
  2. Use the dot product to obtain the tangent vector to the direction of rotation. Let be a unit vector pointing to along current axis of rotation, and be the position of the joint, then the instantaneous rate of change of position of end-effector with respect to joint is obtained by the cross product .

Final step is to compute the inverse of the Jacobian to get , but generally Jacobian is neither a square matrix or non-singular, and even if inverse is available, may have numerical errors if J is nearly singular. Alternate formulation for jacobian is obtained by setting . This can be interpreted as trying to move the target positions towards the end effectors, rather than moving the end effectors towards the target position.

When does the alternate Jacobian formulation give an advantage?

“To reduce oscillations or overshoot when target positions are too far away to be reached by end effectors.” - Introduction to Inverse Kinematics with Jacobian Transpose, Pseudoinverse and Damped Least Squares methods

Why does Jacobian reach near singularity when arms stretch out to try to reach target position too far away?

Solution is to move the target positions closer to end effector position by clamping the value to a maximum, , where if , otherwise .
Choosing value of d is another heuristic, that changes with the inverse methods.

Inverse Methods

  • Jacobian Transpose
  • Pseudoinverse method
  • Damped Least Squares
  • Selectively Damped Least Squares

Resources

Motors & Sensors

  • image sensor, ultrasound sensor
    • Sonair
    • How does ultrasound sensor work?
    • how does lidar work?
    • why is lidar so expensive?
    • can you make ultrasound work at the same accuracy as lidar?
    • what pixxel is doing is creating imaging sensors to map earth for satellites? doesn’t on-ground robots require same setup?
  • Actuators, motors
    • What kind of motors are needed by current robots?
    • what kind will be required by future robots?
    • Will all sensors and motors be manufactured inhouse by these robot startups or exported to a manufacturer?
    • what’s the role of opensource drivers here?

Resources

MuJoCo

Physical Engineering

Graphics

Robot planning and Perception and Machine Learning

RL in robotics

Simulator

Datasets

Packages

VLA

WAM

Foundation models

Papers

Companies

Academic Labs