In this project we derive the forward and inverse kinematics of a lynx robot based on the assumption that the robot's initial state is the home position or zero pose i.e. all joint angles as 0.
Step1) Forward kinematics
The forward kinematics are derived based on a RH coordinate system where + rotation is CCW:
here the last three rotations are arbitrary rotations to reach the wrist coordinate.
Step 2) Inverse kinematics
The process of deriving the inverse kinematics is based on deriving the full symbolic forward kinematics based on symbolic variables theta1 and theta3. We can solve for both values of theta 3 using the orientation segment of the full transformation:
From the elements of R(2,2) and R(2,3) which can be simplified into:
R(2,2) = -sin(theta3) x (-cos(theta1)) and R(2,3) = -cos(theta3) x (-cos(theta1))
Using this information we can solve for theta3 as such:
if cos(theta1) > 0 then tan(R(2,2) , R(2,3)) = theta3
else tan(-R(2,2) , -R(2,3)) = theta3
The values for theta1 can be calculated using R(1,1) and R(2,1) where
tan(R(1,1) , R(2,1)) = theta1
To solve for the prismatic joint variable d2 we use the z component of the translational component of the complete homogenous transformation matrix and the calculated value for theta3:
The result verifies the derivation process (click on the image to see animation):