EE 451 - Kinematics & Inverse Kinematics H.I. Bozma October 27, 2014

Outline
Forward & Inverse kinematics
EE 451 - Kinematics & Inverse Kinematics
H.I. Bozma
Electric Electronic Engineering
Bogazici University
October 27, 2014
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Problem Statement
I
I
Kinematics: Given c ∈ C, find a map f : C → W s.t.
w = f (c) where w ∈ W
Inverse Kinematics: Given w ∈ W, find a map
f −1 : W → C s.t. c = f −1 (w )
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Robotic Systems
I
A set of links connected by joints
I
Simple joints: Single DOF qi where joint variable qi
θi ∈ S 1
if joint i is revolute
qi =
di ∈ R >0 if joint i is prismatic
I
Complex joints: More DOF at a joint
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Simple Joints: General Robot Topology
I
n joints → n + 1 links
I
Joints: 1, . . . , n
I
Links: 0, . . . , n
– Connects link i − 1 to link i
Joint i { – Location is fixed wrt link i − 1
– When actuated, link i moves
I
I
Link 0 – The first link
Stationary robots
Mobile robots
H.I. Bozma
→
→
Fixed
Moving
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Analysis Procedure - Systematic Analysis
I
I
I
I
I
Attach a coordinate frame oi xi yi zi rigidly to each link i
Thus, coordinates of link i are constant when expressed wrt
ith frame
Frame associated with 0 th link – Inertial Frame
Ai (qi ) – The homogeneous transformation of oi xi yi zi wrt
oi−1 xi−1 yi−1 zi−1
Tij - Homogeneous transformation matrix of oj xj yj wrt oi xi yi zi

 Ai+1 Ai+2 . . . Aj−1 Aj if i < j
i
I
if i = j
Tj =

if j > i
(Tij )−1
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Conventions
I
4 Parameters – 3 fixed, 1 variable
I
ai - Link length
I
αi - Link twist
I
di - Link offset
I
θi - Joint angle
I
Ai = Rz,αi Trz,ai Trx,di Rx,θi
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Transformation Ai
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Assumptions - DH1 and DH2
x1 perpendicular to z0
x1 intersects z0
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Parameters – Summary
z0 - Axis of actuation of joint 1!
Parameter Explanation
a1
Distance along x1
d1
Distance along z0 from
α1
Angle from z0 to z1 wrt x1
θ1
Angle from x0 to x1 wrt z0
H.I. Bozma
between z0 and z1
o0 to inters. of x1 and z0
} Right-Hand Rule
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Transformation Matrix

cos θi
 sin θi
Ai = 
 0
0
− sin θi cos αi
cos θi cos αi
sin αi
0
sin θi sin αi
− cos θi sin αi
cos αi
0
H.I. Bozma

ai cos θi
ai sin θi 


di
1
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Assigning Coordinate Frames
I
Choice zi – Axis of actuation for joint i + 1
I
Other axes – Right hand rule (Satisfy DH Assumptions)
I
When joint i is actuated → link i and oi xi yi zi move
I
I
Second frame - Set up so that DH Assumptions are satisfied
(in regards to the succeeding frame)
Base frame – Frame 0
I
I
I
I
Origin o0 - Any point on z0
Choose x0 , y0 so that o0 x0 y0 zo is right-handed
Iterative process – Define Frame i wrt Frame i − 1,
i = 1, . . . n − 1
Frame n – End effector or tool frame - on xn yn zn
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example:
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Parameters for a 2 DOF planar robotic system.
Link i
1
2
ai
a1
a2
H.I. Bozma
αi
0
0
di
0
0
θi
θ1
θ2
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Iterative Process - Axes zi−1 and zi
I
zi−1 and zi – not coplanar
I
zi−1 and zi – parallel
I
zi−1 and zi – intersect
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
zi−1 and zi – not coplanar
I
I
xi - ∃ unique line from zi−1 to zi , perpendicular to both
oi - Where xi intersects zi
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
zi−1 and zi – parallel
I
oi - Anywhere along zi
I
xi - Arbitrary
I
I
xi - Normal through oi−1
oi - Point of intersection of xi with zi
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
zi−1 and zi – intersect
I
oi - Intersection of zi−1 and zi
I
xi - Orthogonal to the plane defined by zi−1 and zi
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Frame Setup – Summary
zi - Axis of actuation of joint i + 1!
zi−1 and zi
Case
xi
oi
Non-coplanar
Line from zi−1 xi intersects zi
(oi−1 xi−1 yi−1 )
to zi
Parallel
Normal
xi intersects zi
(oi−1 xi−1 yi−1 )
through oi−1
Intersects
Normal to plane zi−1 intersects
(oi−1 xi−1 yi−1 )
of zi−1 and zi
zi
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
DH Parameters – Summary
zi - Axis of actuation of joint i + 1!
Parameter
Explanation
ai
Distance along xi from the intersection(xi ,zi−1 ) to oi
di
Distance along zi−1 from the intersection(xi ,zi−1 ) to oi−1
αi
Angle from zi−1 to zi wrt xi
θi
Angle from xi−1 to xi wrt zi−1
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 1
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 2 – 3 DOF RRR
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 2 – 3 DOF RRR Links, Frames & Parameters
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 4 – 3 DOF RRP Scara Robot
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 4 – 3 DOF RRP Scara Robot
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 5 – 3 DOF PPP Cartesian Manipulator
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example – 3 DOF RPP Cartesian Manipulator
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 6 – 3 DOF RPP Cylindrical Manipulator
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example 6 – 3 DOF RPP Cylindrical Manipulator
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Comparative Workspaces
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
End Effector – Gripper Case
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Gripper Parameters
I
Origin on – Symmetrically between the fingers of the gripper
I
zn - Approach direction a
I
yn - Sliding direction s
I
xn - Normal direction n
I
Many manipulator systems →
I
I
I
zn−1 and zn coincide.
on−1 and on - translated by dn amount
Joint n - Rotation by θn around zn−1
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Inverse Kinematics Problem
R d
∈ SE (3), find joint variables
0 1
c = [q1 , . . . , qn ]T ∈ C, such that
Given H =
Tn0 (q1 , . . . , qn ) = H
where
Tn0 (q1 , . . . , qn ) = A1 (q1 ) . . . An (qn )
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
General Approach

h11 h12 h13 h14
 h21 h22 h23 h24 

Noting that H = 
 h31 h32 h33 h34 ,
h41 h42 h43 h44
where h41 = h42 = h43 = 0 and h44 = 1,
→ n unknowns in 12 nonlinear equations.

I
Closed-form solutions: Preferable (real-time, nonuniqueness),
but not possible in general!
I
I
I
I
Existence?
Uniqueness?
Difficult to derive even in case of existence!
Numerical solutions:
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Nonuniqueness
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Efficient & Systematic Techniques
6 DOF with a gripper - exploit kinematic structure
I
Decouple the problem into simpler problems:
I
I
Inverse position kinematics - Wrist position o ∝ q1 , q2 , q3
Inverse orientation kinematics -Wrist orientation R (Tool
frame)
Assume: Find a solution and then check for constraints on ranges
of joints!
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example - PUMA Robot
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Kinematic Decoupling - 6 DOF with Gripper
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
6 DOF with Gripper with Frames
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Spherical Wrist
T63 = A4 A5 A6

cθ4 cθ5 cθ6 − sθ4 sθ6 −cθ4 cθ5 sθ6 − sθ4 cθ6 cθ4 sθ5 cθ4 sθ5 d6
 sθ4 cθ5 cθ6 + cθ4 sθ6 −sθ4 cθ5 sθ6 + cθ4 cθ6 sθ4 sθ5 sθ4 sθ5 d6
= 

−sθ5 cθ6
sθ5 sθ6
cθ5
cθ5 d6
0
0
0
1
= Rz,θ4 Ry ,θ5 Rz,θ6
Euler Angles – Know how to solve for θ4 , θ5 and θ6
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example - 3DOF RRR
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Example – 3DOF RRR Projection onto x0 , y0 plane.
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Singularity - oc intersects z0
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
RRR Robot with Shoulder Offset
Either d2 = d or d3 = d.
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Left Arm – Right Arm
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics
Outline
Forward & Inverse kinematics
Introduction
Robotic Systems
Kinematic Analysis
Denavit-Hartenberg (DH) Convention
Robot Topology Examples
End Effector
Inverse Kinematics
Finding Link 2 & 3 Parameters
H.I. Bozma
EE 451 - Kinematics & Inverse Kinematics