Você está na página 1de 88

# Robot Kinematics

## Basic Robot Configurations:

Cartesian: PPP

Cylindrical: RPP

Spherical: RRP

Hand coordinate:
Articulated: RRR

SCARA: RRP
(Selective Compliance Assembly Robot Arm)

## n: normal vector; s: sliding vector;

a: approach vector, normal to the
tool mounting plate

Robot Kinematics
Definition:
the analytical study of the geometry of motion of a robot
arm:
with respect to a fixed reference co-ordinate system
without regard to the forces or moments that cause
the motion.

## Motion is composition of elementary

Terminology:
Workspace: volume of space which can be reached by the
end effector
Dextrous workspace: volume of space where the end
effector can be arbitrarily oriented
Reachable workspace: volume of space which the robot can
reach in at least one orientation

Objective:
To derive a method to compute the position
and orientation of the manipulators endeffector relative to the base of the
manipulator as a function of the joint
variables.

Degrees of Freedom
The degrees of freedom of a rigid body is defined as
the number of independent movements it has.

The number of :
Independent position variables
needed to locate all parts of the
mechanism,
Different ways in which a robot
arm can move,
Joints
Humans have 4 DOF for each fingers. The human finger has 3 joints

## DOF of a Rigid Body

In a plane

In space

Degrees of Freedom
3D Space = 6 DOF

3 position
3 orientation

In robotics:
DOF = number of independently driven joints

positioning accuracy
As DOF
computational complexity
cost
flexibility
power transmission is more difficult

A manipulator may be thought of as a set of
bodies (links) connected in a chain by joints.

## The Six Possible Lower Pair Joints

Higher Pair
A higher pair joint is one which contact
occurs only at isolated points or along a
line segments

Robot Joints
Revolute Joint
1 DOF ( Variable - )

Spherical Joint
3 DOF ( Variables - 1, 2, 3)

Prismatic Joint
1 DOF (linear) (Variables - d)

Types of Kinematics
1. Forward/Direct kinematics
z

## Given joint variables

q (q1 , q2 , q3 , q4 , q5 , q6 ,qn )

Y ( x, y, z, O, A, T )
End-effector position and orientation, -Formula?

y
x

2. Inverse kinematics
End effector position
and orientation

( x, y, z, O, A, T )

q (q1 , q2 , q3 , q4 , q5 , q6 ,qn )

## Joint variables -Formula?

Forward Kinematics

Joint space

Inverse Kinematics

Cartesian space

Where am I

Cartesian space
Where should I be

Joint space

## Robot Reference Frames

WF is a universal coordinate frame.
JF is used to specify movements of each
individual joint of the robot.

World frame
Joint frame
Tool frame

## HF specifies movements of the robots hand

relative to a frame attached to the hand

z
z

y
x
y

T
x

Vector Algebra
Properties:

Dot Product

## Let x and y be arbitrary vectors in R 3 and be the angle

from x to y , then

x y x y cos
Properties of orthonormal coordinate frame
Mutually perpendicular

i j 0

i k 0

k j 0

Unit vectors

| i | 1

| j | 1

| k | 1

## 2.3.1 Representation of a Point in Space

A point P in space :

## 3 coordinates relative to a reference frame

P a x i by j c z k

## 2.3.2 Representation of a Vector in Space

A Vector P in space :

## 3 coordinates of its tail and of its head

__

P a x i by j c z k

x
y
__
P
z

w

## normal, orientation, approach vector

nx ox a x

F n y o y a y
nz oz a z
Fig. 2.5 Representation of a frame at the origin of the reference frame

## normal, orientation, approach vector

nx
n
y

F
nz

0
Fig. 2.6 Representation of a frame in a frame

ox
oy

ax
ay

oz
0

az
0

Px

Py
Pz

## 2.3.5 Representation of a Rigid Body

An object can be represented in space by attaching a frame
to it and representing the frame in space.

nx
n
y
Fobject
nz

0
Fig. 2.8 Representation of an object in space

ox a x Px

o y a y Py
oz a z Pz

0 0 1

## 2.4 HOMOGENEOUS TRANSFORMATION MATRICES

A transformation matrices must be in square form.

## It is much easier to calculate the inverse of square matrices.

To multiply two matrices, their dimensions must match.

nx
n
y
F
nz

ox a x Px

o y a y Py
oz a z Pz

0 0 1

## A transformation is defined as making a movement in space.

A pure translation.
A pure rotation about an axis.
A combination of translation or rotations.

## 2.5.1 Representation of a Pure Translation

1
0
T
0

0
Fig. 2.9 Representation of an pure translation in space

0 0 dx

1 0 dy
0 1 dz

0 0 1

## 2.5.2 Representation of a Pure Rotation about an Axis

Assumption : The frame is at the origin of the reference frame and parallel to
it.

1 0
Rot ( x, ) 0 C
0 S

C
Rot ( y, ) 0
S

Pxyz RPuvw

C
Rot ( z, ) S
0

0
S
C

S
0
0 C

0
1

S
C
0

0
0
1

## 2.5.3 Representation of Combined Transformations

A number of successive translations and rotations.

Rz(90)

RY(90)

P(2,7,3)

Rz(90)

T(4,-3,7)

RY(90)

T(4,-3,7)

P(2,7,3)
Fig. 2.13 Effects of three successive transformations
Fig. 2.14 Changing the order of transformations will

Example 2

## Fig. 2.15 Transformations relative to the current frames.

Example 1
A point auvw (4,3,2) is attached to a rotating frame,
the frame rotates 60 degree about the OZ axis of
the reference frame. Find the coordinates of the
point relative to the reference frame after the
rotation.

## a xyz Rot ( z,60)auvw

0.5 0.866 0 4 0.598

0.866
0.5
0 3 4.964
0
0
1 2 2

Example 2
A point axyz (4,3,2) is the coordinate w.r.t.
the reference coordinate system, find the
corresponding point auvw w.r.t. the rotated
OU-V-W coordinate system if it has been
rotated 60 degree about OZ axis.

T

0.866 0 4 4.598
0.5

## 0.866 0.5 0 3 1.964

0
0
1 2 2

Combined Transformations

## Matrix multiplications do not commute

Rules:
if rotating coordinate O-U-V-W is rotating about

## principal axis of OXYZ frame, then Pre-multiply the

previous (resultant) rotation matrix with an
appropriate basic rotation matrix
if rotating coordinate OUVW is rotating about its own
principal axes, then post-multiply the previous
(resultant) rotation matrix with an appropriate basic
rotation matrix

Example 3
Find the rotation matrix for the following operations:

C 0
0 1
- S 0
CC
S
SC

S C S
0 S C
C 0
0
SS CSC
CC

0 1 0
0
0 0 C S
1 0 S C
CSS SC

CS

SSC CS CC SSS

## Pre-multiply if rotate about the OXYZ axes

Post-multiply if rotate about the OUVW axes

Example 4
Find the homogeneous transformation matrix (T)
for the following operations:
Translation of a along OX axis
Translation of d along OZ axis
C S
S C

0
0

0
0

T Tz , Tz ,d Tx,aTx, I 44
0 0 1
0 0 0
1 0 0

0 1 0

0 0 0 1
1 0 0 0
0 1 d 0

0 0 1 0

0 0 a 1 0
0
1 0 0 0 C S
0 1 0 0 S C

0 0 1 0 0
0

0
0
0

Example 5

Can you find the answer by observation based on the geometric interpretation
of homogeneous transformation matrix?

TP Tcart

1
0

0 0 Px

1 0 Py
0 1 Pz

0 0 1

2

## Linear translations and 1 rotation

translation of r along the x-axis
translation of l along the z-axis

C S 0 rC
S C 0 rS
R

TP Tcyl
0
0 1 l

0
0
0
1

2

## Rotations and 1 Translation

translation of r along the z-axis
rotation of along the z-axis

## TP Tsph (r , , l ) Rot(z, )Rot( y, )Trans(0,0, )

C C S S C rS C
C S C S S rS S
R

TP Tsph
S
0
C
rC

0
0
1
0

Articulated Robot
3

## Fig. 2.21 Articulated Coordinates.

Orientation Representation
Euler Angles Representation ( , , )

## Many different types

Description of Euler angle representations
Euler Angle I

of

Rotations

Sequence

Euler Angle II

Roll-Pitch-Yaw

Euler Angle I

Sequence of Rotations

w'=z
w'"=
w"

v'"
v "
v'
y
u'"

u'=u"
x

Euler Angle I
cos

Rz sin
0

Rw''

sin
cos
0

0
0
1

0 , Ru ' 0 cos
0 sin
1

cos sin 0

sin cos 0
0

0
1

sin ,
cos

Euler Angle I
Resultant eulerian rotation matrix:

R Rz Ru ' Rw''
cos cos

## sin sin cos

sin cos
cos sin cos

sin sin

cos sin
sin cos cos
sin sin
cos cos cos
cos sin

sin sin

cos sin

cos

Orientation Representation
Description of Roll Pitch Yaw
Roll: Rotation of about a -axis (z-axis of the moving frame)
Pitch: Rotation of about o -axis (y-axis of the moving frame)
Yaw: Rotation of about n -axis (x-axis of the moving frame)

## Resultant Rotation matrix ?

The Denavit-Hartenberg
(D-H) Representation

A link is considered as a rigid body which
defines the relationship between two
neighboring joint axes of a manipulator.z zn+1n
zn

an

n+1

xn
Joint n+1
Joint n

x n+1
xn

## The Kinematics Function of a Link

The kinematics
function of a link is to
maintain a fixed
relationship between
the two joint axes it
supports.
This relationship can
be described with
two parameters: the
twist

4 parameters are associated with each link. You
can align the two axis using these parameters.

a0
n

## the length of the link.

the twist angle between the joint axes.

Joint parameters:
n the angle between the links.
dn the distance between the links

Axis i

Axis i1

i-1

Joint Parameters
A joint axis is established at the connection of two links.
This joint will have two normals connected to it one for
which is the distance between the links (the
displacement, along the joint axes between the links).
The joint angle n between the normals is measured in a
plane normal to the joint axis.

Link offset (dn ) & Joint angle (qn )

Axis i
Axis i-1

i-1

di

For Revolute Joints: a, , and d.
are all fixed, then i is the.
Joint Variable.

## For Prismatic Joints: a, , and .

are all fixed, then di is the.
Joint Variable.
(Joint-Angle i) are known as the Denavit-Hartenberg Link Parameters.

.
.
.
.
.
.

1

## First and Last Links in the Chain

a0= n=0.0
0= n=0.0
If joint 1 is revolute: d0= 0 and 1 is arbitrary
If joint 1 is prismatic: d0= arbitrary and 1 = 0

In order to describe the location of each link
relative to its neighbors we define a frame
The Z axis is coincident with the joint axis i.
The origin of frame is located where ai
perpendicular intersects the joint i axis.
The X axis points along ai( from i to i+1).
If ai = 0 (i.E. The axes intersect) then Xi is
perpendicular to axes i and i+1.

## The Y axis is formed by right hand rule.

Base frame (0) is arbitrary

## Make life easy

Coincides with frame {1} when joint parameter is 0

Revolute joint n:
Xn = Xn-1 when n = 0
Origin {n} such that dn=0

Prismatic joint n:
Xn such that n = 0
Origin {n} at intersection of joint axis n and Xn when dn=0

Joint n

Joint n-1

Joint n+1

zn

zn-1

xn

yn-1

an-1
xn-1

zn+1

dn

yn

an

xn+1
yn+1

parameters as possible to become zero!
The reference vector z of a link-frame is always on a joint
axis.
The parameter di is algebraic and may be negative. It is
constant if joint i is revolute and variable when joint i is
prismatic.
The parameter ai is always constant and positive.
a i is always chosen positive with the smallest possible
magnitude.

## The Kinematics Model

The robot can now be kinematically modeled by

T T1T2T3 Ti Tn

0
n

Where
0 T is the pose of the end-effector relative to
n
base;
Ti is the link transform for the ith joint;
and
n is the number of links.

## The Denavit-Hartenberg (D-H)

Representation
In the robotics literature, the DenavitHartenberg (D-H) representation has been
used, almost universally, to derive the
kinematic description of robotic
manipulators.

## The Denavit-Hartenberg (D-H) Representation

The appeal of the D-H representation lies in
its algorithmic approach.
The method begins with a systematic
approach to assigning and labeling an
orthonormal (x,y,z) coordinate system to
each robot joint. It is then possible to relate
one joint to the next and ultimately to
assemble a complete representation of a
robot's geometry.

Denavit-Hartenberg
Parameters
Axis i
i

Axis i1
di

i-1

ai = the distance from zi to zi+1.
measured along xi.

## i = the angle between zi and zi+1.

di = the distance from xi-1 to xi.
measured along z i.
i = the angle between xi-1 to xi.

## General Transformation Between

Two Bodies
In D-H convention, a general transformation
between two bodies is defined as the product
of four basic transformations:
A translation along the initial z axis by d,
A rotation about the initial z axis by ,
A translation along the new x axis by a, and.
A rotation about the new x axis by .

## A General Transformation in D-H

Convention
frames:

i 1
i

Tz , Tz ,d Tx,aTx, I 44

Denavit-Hartenberg Convention
D1. Establish the base coordinate system. Establish a right-handed
orthonormal coordinate system ( X 0 , Y0 , Z 0 ) at the supporting base
with Z 0 axis lying along the axis of motion of joint 1.
D2. Initialize and loop Steps D3 to D6 for I=1,2,.n-1
D3. Establish joint axis. Align the Zi with the axis of motion (rotary
or sliding) of joint i+1.
D4. Establish the origin of the ith coordinate system. Locate the
origin of the ith coordinate at the intersection of the Zi & Zi-1 or at
the intersection of common normal between the Zi & Zi-1 axes and
the Zi axis.
D5. Establish Xi axis. Establish X i (Zi1 Zi ) / Zi 1 Zi
or along
the common normal between the Zi-1 & Zi axes when they are
parallel.
D6. Establish Yi axis. Assign Yi (Zi X i ) / Zi X i
to complete
the right-handed coordinate system.

Denavit-Hartenberg Convention
D7. Establish the hand coordinate system
D8. Find the link and joint parameters : d,a,,

## D-H transformation for adjacent coordinate

frames:
i 1

Tz , Tz ,d Tx,aTx, I 44

Example
Z3

Z1

Z0
Y0

Joint 3

O3

Y1

X3

d2
Joint 1

O0 X0

Joint 2

O1 X1 O2 X2
Y2

a0

a1
Joint i

ai

di

a0

-90

a1

d2

Example
Ti i 1

C i
S
i
0

C i S i
C i C i

S i S i
S i C i

S i
0

C i
0

ai C i
ai S i
di

Example

Joint i

ai

di

a0

-90

a1

d2

cos 0

1 sin 0
T 0
0

0
cos1

2 sin1
T 1
0

cos 2
sin
2
T 23
0

sin 0
cos 0
0
0

0 a0 cos 0
0 a0 sin 0
1
0

0
1

0
0

sin 1
cos 1

1
0

0
0

sin 2
cos 2
0
0

a1 cos 1
a1 sin 1
0

0
0
1 d2

0 1
0
0

Example (3.3):

Example (3.3):
c1
s c
1
0
0

1
s1s 0

0
c 2
s
2
1

2
0

s1
c1c 0
c1s 0
0

s 2
c 2
0
0

0
s 0
c 0
0

0 L1
0 0
1 0

0 1

a0 c1 s1
s 0 d1 s1 c1

c 0 d1 0
0

1 0
0
c3
s
3
2

3
0

s3 0 L2
c3 0 0
0
1 0

0
0 1

0
0
1
0

0
0
0

Example (3.3):

## c123 s123 0.0 l1c1 l2 c12

s

c
0
.
0
l
s

l
s
123
123
1 1
2 12
B
0

.
W
3
0.0 0.0 1.0
0.0

0
0
0
1

Example:SCARA Robot

Example:SCARA Robot
The location of the sliding axis Z2 is arbitrary, since it is a
free vector. For simplicity, we make it coincident with Z3 .
thus 2 and d2 are arbitrarily set.
The placement of O3 and X3 along Z3 is arbitrary, since
Z2 and Z3 are coincident. Once we choose O3, however,
then the joint displacement d3 is defined.
We have also placed the end link frame in a convenient
manner, with the Z4 axis coincident with the Z3 axis and
the origin O4 displaced down into the gripper by d4.

Joint i

-90

d2

a2

d3

4
5

4
5

90
-90

a3
0

d4
0

ai(mm) di(mm)

d4

x4

x3
a3

y3

z4
x6

x5
y5

Spherical joint

z6

## Example: Puma 560

Different Configuration

PUMA 560 robot arm link coordinate parameters

Joint i

-90

431.8 149.09

90

-20.32

4
5

4
5

-90
90

0
0

433.07
0

56.25

ai(mm) di(mm)
0

## The Tool Transform

A robot will be frequently picking up objects or tools.
Standard practice is to to add an extra homogeneous
transformation that relates the frame of the object or
tool to a fixed frame in the end-effector.

Kinematic Calibrations
How one knows the DH parameters?
Certainly when robots are built, there are design
specifications. Yet due to manufacturing tolerances,
these nominal parameters will not be exact.
The process of kinematic calibration determines
these nominal parameters experimentally.
Kinematic calibration is typically accomplished
with an external metrology system, although
alternatives that do not require a metrology system
exist.

Thank You

baburao@karunya.edu / 9790604475