Arm Inverse Kinematics
Amanuel M
SiTE - AAiT
Objective
Our end goal:- Build an arm robot that can pick up an item and places it in another
place
● Step 1 - Determine the current or starting state
● Step 2 - Determine a new joint position that will put the end-effector at a
desired place
End Effectors
● The end-effector will have a the tool-frame or end-effector frame
● The unit vectors along the x, y, and z axes are labeled as n, s, and a,
respectively.
○ a is the approach direction
○ s direction is the sliding direction
○ n is the direction normal to the plane formed by a and s
a
s
End Effectors
End Effectors - on a 3DoF
End Effectors
End Effectors
End Effectors
Inverse Kinematics
Compute the FK:
Θ: 30”
R = 1.0
Compute the IK:
X = .866
Y = 0.5
R = 1.0
Find Θ
Inverse Kinematics
Compute the FK:
Θ1: 30”
L1 = 1.0
Θ2: 30”
L2 = 1.0
Find x, y
Compute the IK:
X = 1.5
Y = 1.5
L1 = 1.0
L2 = 1.0
Find Θ 1 and Θ2
Inverse Kinematics
● Existence of a solution
● Multiple Solutions
(x’,y’)
Desired
Location
Inverse Kinematics
Methods
● Closed Form
○ Algebraic Solution
○ Geometrical Solution
● Numerical Solutions
○ Gradient Descent
○ Cyclic Coordinate Descent
○ Neural Networks
○ Any Optimization Method
Inverse Kinematics - Geometric Solution
Directly find analytical solution that provides an explicit formula for the joint
variables in terms of the end-effector pose.
(x,y)
Inverse Kinematics - Geometric Solution
Formulate the IK for 3-dof arm non-planar robot
Inverse Kinematics - Algebraic Solution
Directly find analytical solution that provides an explicit formula for the joint
variables in terms of the end-effector pose.
(x,y)
Inverse Kinematics - Numerical Solution
● Iteratively minimize the error from Red to Green
vector
● Minimize the distance between P0 and P1 (the
current status vs the target status)
● Gradient Descent
P0(x0,y0)
○ Formulate the current status using FK
Error ○ Formulate the error using L2 norm
○ Find the gradient of the error with respect to the angles
P1(x1, y1) ○ For all angle, update them in a direction where gradient slope
is the lowest.
Inverse Kinematics - Numerical Solution
● Gradient Descent for a single variable
● Gradient Descent for a single link arm
● Gradient Descent for a two link arm
Use Coordinate Descent instead of the plain Gradient Descent
Inverse Kinematics - Neural Network
● From the simulation or an actual robot, collect pairs of joint - end-effector pose
pairs
● Train a giant neural network to predict the joints from a given end effector
position