top of page

Humanoid: Inverse Kinematics

Inverse kinematics is the method of determining joint values of a kinematic linkage for a given position of the end effector. In this case the leg motor joint values are determined for the given foot position.

The following method uses geometric relations to find the joint angle values. In the figure the waist, ankle & foot positions are specified by the coordinates (xw, hw), (xa, ha) & (xf, hf) respectively. l1, l2, l3 are the various leg portion lengths. Both foot & ankle positions are described with respect to waist position. For simplicity it is assumed the foot remains parallel to the ground at all times hence the foot & ankle both will follow the same trajectory at different vertical positions. Hence

From waist & ankle coordinates θ4 can be found as

l4 is the distance between waist & ankle

l1 & l2 are corresponding leg lengths which are known, θ1, θ2, θ3 can be determined from cosine rule as

Finally leg joint values are obtained as

bottom of page