Sei sulla pagina 1di 84

ROBOT KINEMATICS

Outline
Design of Robot Manipulators

AICTE Sponsored SDP

Kinematics
Degrees of Freedom
Types of Kinematics
Homogeneous Transformations
Geometric Approach
Forward and Inverse Kinematics of Planar and Spatial Robots

Algebraic Approach (D-H Representation)


Forward and Inverse Kinematics of Planar and Spatial Robots

Case Studies
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

AICTE Sponsored SDP

Design of Robot manipulators


Depends upon
Application
Configuration
Work Volume
Payload
Inertia Force
Centre of Gravity
Speed
Kinematics

20-12-2010

WORK VOLUME or WORK ENVELOPE:

AICTE Sponsored SDP

The space within which the robot can manipulate its wrist end is known as work
volume.This avoids the complication of different sizes of end effectors that might
be attached to robots wrist.This is determined by the following physical
characteristics
of the
robot. configuration, Size of the body,arm and
Robots
Physical
wrist components,The limits of robots joint movement

According to physical configuration ,a robot is


classified as
WORK VOLUME
Spherical
Cylindrical
Cartesian or Rectangular
Partial sphere
Cylinder

CONFIGURATION
Jointed arm
Cylindrical
Cartesian
Polar
SCARA

AICTE Sponsored SDP

Payload
Plays a vital role in the design of manipulators
It is the load carried by the robot at the wrist
end of the robot when its arm is fully
stretched or fully extended
It includes the end effector weight also
The Payload to Weight ratio should be in the
ratio of 1:200

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

AICTE Sponsored SDP

Inertia force
Another important parameter influencing the
design & performance of robot
Depends upon the payload,speed and
acceleration of the robot while in motion
It always acts in the direction opposite to that
of the motion of the manipulator

20-12-2010

AICTE Sponsored SDP

Centre of Gravity
It is the point where the entire weight of the
robot is said to be concentrated
Plays a important role in the design of
manipulators especially in Bipedal robots,
humanoid robots and articulated robots
Depends upon the weight of the links,
actuators, joints, transmission elements and
payload
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

AICTE Sponsored SDP

Speed
It is defined as how quickly the robot will
move from one position to the next
Higher speed affects the stability of the robot
Pneumatic actuators give maximum speed
compared to hydraulic and electrical actuators

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

Dynamics

AICTE Sponsored SDP

It is the branch of physical science which deals with


bodies which are in motion
Divided into
Kinetics
Kinematics

Kinetics deals with the inertia force of the body


Both play vital role in the area of robotics
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

Kinematics

AICTE Sponsored SDP

It is the branch of dynamics which deals with the


relative motion existing between members
Motion of one body with respect to another body
Relative Position
Relative Motion
Relative Velocity
Relative Acceleration
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

10

Planar and Spatial Robots

AICTE Sponsored SDP

Planar
The robots configured in such a way that the
workspace of the robot is limited to a plane are called

as planar robots

Spatial Robots
The robots whose end effector has access to any point
in space (of course limited to the work volume)
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

11

Degrees of freedom

AICTE Sponsored SDP

Degree of Freedom is the number of independent


relative motion in the form of translation and rotation
The body in space has got the maximum of 6 degrees

of motion(3 translatory & 3 rotary motions)


Each Translatory has 1 DOF and each Rotary has 1 DOF

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

12

Degrees of freedom

AICTE Sponsored SDP

Positioning
Positioning the end effector in the 3D space, requires three DoF,
either obtained from rotations or translations

Reference
frame origin

x
y
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

13

Degrees of freedom

AICTE Sponsored SDP

Orientation
Orienting the end effector in the 3D space, requires three additional
DoF to produce the three rotations.
roll

tilt
pan

Reference
frame origin

x
y
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

14

Basic Joints

AICTE Sponsored SDP

Rotational Joint
1 DOF

Prismatic
Joint
1 DOF
(linear)

Twist Joint
1 DOF

3 DOF

20-12-2010

Revolving
Joint
1 DOF

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

15

AICTE Sponsored SDP

Degrees of Freedom of Robots

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

16

AICTE Sponsored SDP

An Example - The PUMA 560

There are two more


joints on the end
effector (the gripper)

The PUMA 560 has SIX revolute joints


A revolute joint has ONE degree of freedom ( 1 DOF) that is
defined by its angle
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

17

AICTE Sponsored SDP

Types of Kinematics

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

18

AICTE Sponsored SDP


20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

19

Homogenous Transformation
A matrix H will be considered such that an operator which
AICTE Sponsored SDP

transforms a point (attached with a frame) or a vector X, into


another point or vector then

Y=HX
If Y is a 4x1 column matrix and H, a 4x4 column matrix and 4x1
column matrix then y is obtained by pre-multiplying the X column
matrix by a 4x4 transformation matrix H.
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

20

Translation

AICTE Sponsored SDP

We define the translation and transformation as


Trans (a, b, c) as the operator that moves the
point defined by the original vector X to a new

point Y whose location is given by vector


addition of X and translation1vector
by
0 0 defined
a

the component (A, B, C). The0matrix


by
1 0is bdefined

H
0 0 1 c
Trans (a, b, c)
=

0 0 0 1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

21

Rotation Matrices in 3D
Homogeneous Representation
AICTE Sponsored SDP

Rotation around the XAxis

Rotation around the Y-Axis

Rotation around the ZAxis


20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

22

Homogenous Transformation in 3D

AICTE Sponsored SDP

H is a 4x4 matrix that can describe a translation,


0 0 or
Px
1 rotation,
0 1 0 P
both in one matrix O
y
H
0 0 1 Pz

0 0 0 1

Y
N
P
A
X

Translation without
rotation

N
X
Z
20-12-2010

Rotation without
translation INDUSTRIAL ROBOTICS -

Rotation part:
Could be rotation around z-axis, x-axis,
y-axis or a combination of the three.

n x
n
H y
n z

TECHNOLOGY, PROGRAMMING AND

ox
oy

ax
ay

oz
0

az
0

0
0
0

1
23

An Important Point to Remember

AICTE Sponsored SDP

The rotation and translation part can be combined


into a single homogeneous matrix IF and ONLY IF
both are relative to the same coordinate frame.

Generally defined with Respect to the so called


World Reference Frame, usually placed at the base of

the Robot

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

24

Forward and Inverse kinematics


of robot for position

Forward Kinematics

AICTE Sponsored SDP

The Situation:
You have a robotic arm that starts out
with the xo-axis.
You tell the first link to move by
the second link to move by 2.

aligned

1 and

The Quest:

What is the position of the


robotic arm?

end of the

Solution:
Geometric Approach
This might be the easiest solution for the simple situation. However, notice
that the angles are measured relative to the direction of the previous link.
(The first link is the exception. The angle is measured relative to its initial
position.) For robots with more links and whose arm extends into 3
dimensions the geometry gets much more tedious.

Algebraic Approach
Involves coordinate transformations.
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

26

Types of robot co ordinates

AICTE Sponsored SDP

One may position a point in space based on the


following co ordinates

Cartesian (rectangular or Gantry)


Cylindrical
Spherical
Articulated

AICTE Sponsored SDP

Cartesian Co ordinate
There are 3 linear movements along the 3
major axes (X,Y,Z)
Positioning of the hand of the robot is
accomplished by moving the 3 linear joints
along the 3 axes
The transformation matrix representing the
motion to a point P is a simple Translational
transformation matrix since there are no
rotations

Cartesian Co ordinate
o
z

AICTE Sponsored SDP

a
P
Pz

y
Px
Py
X

AICTE Sponsored SDP

The transformation matrix representing the forward kinematic


equation of the position of the hand of the robot in cartesian
co ordinate system will be

RT =
P

Where RTP = Transformation between the


reference frame and the origin of the hand P

CYLINDRICAL CO ORDINATES

It includes 2 linear translation & 1 rotation .


The sequence is ,
A translation of r along x axis.
A rotaion of along Z axis.
A translation of l along Z axis.

The total transformation caused by the three transformation that relates the origin of hand
frame to the reference frame is obtained as,
RT
p = T cyl ( r,,l) = Trans (0,0,l) Rot ( Z, ) Trans (r,0,0)
C S 0 rC
RT
S C 0 rS
p=

Where Px = r cos ; Py = r sin ; Pz = l.

CYLINDRICAL CO ORDINATES
n

AICTE Sponsored SDP

a
P
l

SPHERICAL CO-ORDINATES

This system consists of 1 linear & 2 rotations.

The sequence is ,

A translation of r along Z axis.


A rotation of along Y axis.
A rotation of along Z axis.

The total transformation caused by the three transformation is


RT
p = T sph ( r, , ) = Rot ( Z, ) Rot (y, ) Trans (0,0,r)

RT
p=

SPHERICAL CO-ORDINATES

AICTE Sponsored SDP

SPHERICAL CO-ORDINATES

RTp =

First three columns represents the orientation of the frame and last column
Represent the position of the origin.

AICTE Sponsored SDP


20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

36

One DOF Planar Robot


Direct Kinematics
L Link Length
AICTE Sponsored SDP

x = L . cos
y = L . Sin

= Angle of
Rotation
(x, y)

Inverse Kinematics

L . sin

=
20-12-2010

tan-1(y/x)

x
L . cos

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

37

Two DOF Planar Robot Direct


Kinematics

y = L1 . sin1 + L2 . sin(1+ 2)

L2 . sin(1+ 2)

x = L1 . cos1 + L2 . cos(1+ 2)

(x, y)

L1 .
sin1

AICTE Sponsored SDP

1
x

L1 .
cos1
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

L2 . cos(1+ 2)
38

AICTE Sponsored SDP

Two DOF Planar Robot - Inverse


Kinematics

INVERSE KINEMATICS
Position of end of arm in world
space in link vectors
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

39

AICTE Sponsored SDP

Two DOF Planar Robot - Inverse


Kinematics

Squaring on both sides and adding

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

40

Two DOF Planar Robot - Inverse


Kinematics
AICTE Sponsored SDP

Also

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

41

Two DOF Robot(spatial) TR


Configuration
The direct kinematics
Forward Kinematics

equations of the TR
robot configuration are
X = [L1 cos] cos
Y = L1 sin
Z = [L1 cos] sin

AICTE Sponsored SDP

X, Y, Z

z
20-12-2010

Inverse Kinematics
Tan = (Z/X)
Sin = (Y/ L)

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

42

AICTE Sponsored SDP

Three DOF TRR Configuration Robot


Direct Kinematics

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

43

Three DOF TRR Configuration Robot


Direct Kinematics

AICTE Sponsored SDP

The direct kinematic equations of the TRR


robot configuration are

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

44

Three DOF TRL Configuration Robot


Direct Kinematics
The direct kinematics equations of TRL configuration
robot is
AICTE Sponsored SDP

90 -
L1 sin

X, Y, Z
x

z
20-12-2010

X = (L1cos + Lsin) cos


Y = L1sin - Lcos)
Z = (L1cos + Lsin)sin

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

45

AICTE Sponsored SDP

Four DOF TRLR Configuration Robot


Direct Kinematics

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

46

AICTE Sponsored SDP

Four DOF TRLR Configuration Robot


Direct Kinematics
The direct kinematic equations of the TRLR
robot configuration

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

47

AICTE Sponsored SDP


20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

48

The Denavit-Hartenberg
Transformation
In 1955 Denavit and Hartenberg published a paper in ASME journal
AICTE Sponsored SDP

which was later used to represent and model robots and to derive
their equations of motion.
The method can be used for any robot configuration, regardless of

its sequence or complexity


Although the direct modeling is straight forward, it is important to
understand D-H representation because many techniques (such as

calculation of Jacobian, force analysis) have been developed for use


with its results.

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

49

AICTE Sponsored SDP

D-H Representation

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

50

D-H Representation
Rotate about the z-axis an angle of n+1. This will make xn and xn+1

AICTE Sponsored SDP

parallel to each other. This is true because an and an+1 are both
perpendicular to zn and rotating zn an angle of n+1 will make them
parallel (and thus coplanar)

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

51

D-H Representation
Translate along the zn-axis a distance of dn+1 to make xn and

AICTE Sponsored SDP

xn+1 collinear. Since xn and xn+1 were already parallel and


normal to zn, moving along zn will lay them over each other.

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

52

D-H Representation
Translate along the xn-axis a distance of an+1 to
bring the origins of xn and xn+1 together. At this
AICTE Sponsored SDP

point, the two origins of the two reference frames


will be at the same location.

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

53

D-H Representation
Rotate zn-axis about xn+1 axis an angle of
n+1 to align zn-axis with zn+1-axis. At this
AICTE Sponsored SDP

point frames n and n+1 will be exactly the


same and we will have transformed from
one frame to the next.

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

54

AICTE Sponsored SDP

D-H Representation

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

55

AICTE Sponsored SDP

The general transformation matrix by D-H is


given by
Cn 1 Sn 1Cn 1 Sn 1Sn 1 an 1Cn 1
Sn 1 Cn 1Cn 1 Cn 1Sn 1 an 1Sn 1

An 1
0
Sn 1
Cn 1
dn 1

0
0
0
1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

56

AICTE Sponsored SDP

D-H Representation
So in general once we know the individual
transformations, the total transformation
between the base of the robot and the hand will
be

Where n is the joint number.


For a six DOF robot, there will be six A matrices.
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

57

Direct Kinematics of(Planar) 1DoF R


y
#
Kinematics
d
a

Configuration
X, Y, Forward
1

AICTE Sponsored SDP

L1

L1

General D-H transformation matrix

Cn 1 Sn 1Cn 1 Sn 1Sn 1 an 1Cn 1


Sn 1 Cn 1Cn 1 Cn 1Sn 1 an 1Sn 1

An 1
0
Sn 1
Cn 1
dn 1

0
0
0
1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

C1 S 1
S 1 C1
A1
0
0

0
0

0 C1L1
0 S 1L1
1
0

0
1
58

AICTE Sponsored SDP

Two DOF Planar Robot Direct


Kinematics
d
a

L11

L22

(x, y)

C1 S 1
S 1 C1
A1
0
0

0
0

0 C1L1
0 S 1L1
1
0

0
1

C 2 S 2
S 2 C2
A2
0
0

0
0

0 C 2 L 2
0 S 2 L 2
1
0

0
1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

1
x

59

AICTE Sponsored SDP

Transformation between base and hand is RTH =


A1A2

(C1C 2 S 1S 2) (C1S 2 S 1C 2)
( S 1C 2 C1S 2) ( S 1S 2 C1C 2)
A1 A2

0
0

0
0

0 (C1C 2 L 2 S 1S 2 L 2 C1L1)
0 ( S 1C 2 L 2 C1S 2 L 2 S 1L1)

1
0

0
1

n x
n
H y
n z

The above matrix is in the form


0

ox

ax

oy

ay

oz

az

Px
Py
Pz

Px = L2(C1C2- S1S2) + L1C1


Py = L2(S1C2 +C1S2) +L1S1
Pz = 0
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

60

AICTE Sponsored SDP

Frame Assignments

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

61

AICTE Sponsored SDP

TRR Configuration robot forward


kinematics using D-H matrix

General D-H transformation matrix

Cn 1 Sn 1Cn 1 Sn 1Sn 1 an 1Cn 1


Sn 1 Cn 1Cn 1 Cn 1Sn 1 an 1Sn 1

An 1
0
Sn 1
Cn 1
dn 1

0
0
0
1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

62

AICTE Sponsored SDP

D-H Representation of a 3DOF TRR


configuration Robot

x3

D-H Parameters

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

63

AICTE Sponsored SDP

C 1
S1
A1
0

S1

0 C1
0

0
C 2 S 2
S 2 C2
0
A2

0
0
0

1
0
0

0 C 2 L1
C 3 S 3
S 3 C3
0 S 2 L1
A3
0
0
1
0

0
0
1
0

0 C 3 L 2
0 S 3 L 2
1
0

0
1

C1C 2 C1S 2 S 1 C1C 2 L1


S 1C 2 S 1S 2 C1 S 1C 2 L1

A1 A2
S2
C2
0
S 2 L1

0
0
0
1

Total transformation between the base of the robot and the


hand is RTH=
C1C 2 C1S 2 S 1 C1C 2 L1
S 1C 2 S 1S 2 C1 S 1C 2 L1

A1 A2 A3
S2
C2
0
S 2 L1

0
0
0
1

INDUSTRIAL ROBOTICS 20-12-2010

TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

C 3 S 3
S 3 C3

0
0

0
0

0 C 3 L 2
0 S 3 L 2
1
0

0
1
64

AICTE Sponsored SDP

(C1C 2C 3 C1S 2 S 3) (C1C 2 S 3 C1C 3 S 2) S 1 (C1C 2C 3 L 2 C1S 2S 3 L 2 C1C 2 L1)


( S 1C 2C 3 S1S 2 S 3) ( S 1S 3C 2 S 1S 2C 3) C1 ( S 1C 2C 3 L 2 S 1S 2 S 3 L 2 S 1C 2 L1)

A1 A2 A3
( S 2C 3 C 2 S 3)

( S 2 S 3 C 2C 3)
0
( S 2C 3 L 2 C 2 S 3 L 2 S 2 L1)

0
0
0
1

n x
The above matrix is in the form n y
H
n z

ox

ax

oy

ay

oz

az

Px
Py
Pz

Px= [L2(C2C3-S2S3) +C2L1]C1


PY = [L2(C2C3-S2S3) +S2L1]S1
PZ = L2(S2C3+C2S3) +S2L1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

65

AICTE Sponsored SDP

D-H Representation of a 6DOF Robot


Frame Assignments

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

66

AICTE Sponsored SDP

Frame Assignments

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

67

AICTE Sponsored SDP

D-H Parameters

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

68

AICTE Sponsored SDP

Transformation Matrices

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

69

D-H Representation

AICTE Sponsored SDP

The final transformation matrix is


given by

Note for the sake of simplicity the following


trignometric function is used
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

70

Matrix Inversion

AICTE Sponsored SDP

The following steps are taken for calculating the inverse


of a matrix
Calculate the determinant of the matrix
Transpose the matrix
Replace each element of the transposed matrix by its own
minor (adjoint matrix)

Divide the adjoint matrix by the determinant


A-1 = adj [A] / det [A]
20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

71

Matrix Inversion - Example

AICTE Sponsored SDP

Consider

1
Rot (x, ) 0
0

0
cos
sin

sin
cos
0

1. Applying the process to the rotation matrix


for finding the value of
= 1(cos2 + sin2 )+0 = 1
2. Transpose the rotation
0
0
1 matrix
Rot (x, ) 0
0
T

20-12-2010

cos
sin

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

sin
cos

72

AICTE Sponsored SDP

Matrix Inversion - Example

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

73

AICTE Sponsored SDP

Matrix Inversion Alternative Method

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

74

AICTE Sponsored SDP

Matrix Inversion Alternative Method

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

75

AICTE Sponsored SDP

Matrix Inversion Alternative Method

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

76

Inverse Kinematics of a 2DOF RR Robot

AICTE Sponsored SDP

20-12-2010

L1

L2

To find the set of angles,


the position and orientation of
the end effector is given in a
n x o x a x Px
matrix of the form

ny

H
n z

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND

oy

ay

oz

az

Py
Pz

77

C1 S 1
S 1 C1
A1
0
0

0
0

C 2 S 2
S 2 C2
A2
0
0

0
0

0 C1L1
0 S 1L1
1
0

0
1

AICTE Sponsored SDP

(C1C 2 S 1S 2) (C1S 2 S 1C 2)
( S 1C 2 C1S 2) ( S 1S 2 C1C 2)
A1 A2

0
0

0
0

0 C 2 L 2
0 S 2 L 2
1
0

0
1

0 (C1C 2 L 2 S 1S 2 L 2 C1L1)
0 ( S 1C 2 L 2 C1S 2 L 2 S 1L1)

1
0

0
1

To solve for the angles we will successfully premultiply the two matrices starting with
A1-1
A1-1

20-12-2010

n x
n
y
n z

ox

ax

oy

ay

oz

az

Px
Py
Pz

(A1-1) (A1A2)

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

A2

78

AICTE Sponsored SDP

To find A1-1
C1 S 1
S 1 C1
AT
0
0

0
0

0 C1L1
0 S 1L1
1
0

0
1

P..n = Px.nx + Py.ny+Pz.nz


P.o = Px.ox + Py.oy+Pz.oz
P.a = Px.ax+Py.ay+Pz.az

20-12-2010

n x
o
1
H
x
a x

ny

nz

oy

oz

ay

az

C1 S 1
S 1 C1
A1
0
0

0
0

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

P.n
P.o
P.a

0 L1

0 0
1 0

0 1

79

AICTE Sponsored SDP

C1 S 1
S 1 C1

0
0

0
0

0 L1
0 0
1 0

0 1

n x
n
y
n z

ox

ax

oy

ay

oz

az

Px
Py
Pz

C 2 S 2
S 2 C2

0
0

0
0

0 C 2 L 2
0 S 2 L 2
1
0

0
1

axC1 ay S 1 PxC1 PyS 1 L1


nxC1 nyS 1 oxC1 oy S 1
n S 1 nyC1 oxS 1 o C1 a S 1 a C1 PxS 1 PyC1
y
x
y
x

nz
oz
az
Pz

0
0
0
1

INDUSTRIAL ROBOTICS 20-12-2010

TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

80

AICTE Sponsored SDP

axC1+ayS1=0
-axS1+ayC1=0
nxC1+nyS1=C2
oxC1+oyS1= -S2
PxC1+PyS1-L1=C2L2
-PxS1+PyC1=S2L2
-nxS1+nyC1=S2
-oxS1+oyC1=C2
Pz=0
az=1
20-12-2010

(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

81

AICTE Sponsored SDP

To
Find
The
value
of
theta
2
Concider eqn no. (5)& eqn. no (6)

PxC1+PyS1-L1=C2L2 (5)
(PxC1+PyS1) = (C2L2-L1)
(A)
( -PxS1+PyC1)=S2L2
(B)
Squaring both sides and adding eqn (A)& (B)
(PxC1+PyS1)2 = (C2L2-L1)2
( -PxS1+PxC1) 2 = (S2L2) 2
Px2 +Py2 = L12 + L22 +2L1L2C2
From the above equation

C2 =

20-12-2010

Px2 +Py2 - L12 + L22 / 2L1L2

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

82

AICTE Sponsored SDP

To find the value of theta 1


Concider eqn no. (5)
PxC1+PyS1-L1=C2L2 (5)
Divide eqn.(5) by C1
Px+PyS1/C1 -L1/C1 = C2 L2 /C1
Px = C2 L2 /C1 -PyS1/C1 + L1/C1
Substituting (A) in eqn.(6)
-PxS1+PyC1=S2L2
(6)
-(C2 L2 /C1 -PyS1/C1 + L1/C1) S1+PyC1=S2L2
Multiply eqn. (B) by C1
-(C2 L2 PyS1 + L1) S1+PyC12=S2L2C1
-(C2 L2S1 PyS12 + L1S1) +PyC12=S2L2C1
C1 =( -C2 L2S1 +Py- L1S1) / S2L2
20-12-2010

(A)

(B)

(X)

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

83

AICTE Sponsored SDP

From eqn.(6)
( -PxS1+PyC1)=S2L2

C1= (S2L2+PxS1) / Py
(y)
Comparing (x) & (y)
(S2L2+PxS1) / Py =( -C2 L2S1 +Py- L1S1) / S2L2
By solving the set of equations Theta 1 can be calculated as

Py[L1+L2C2]-PxL2S2 / Px[L1+L2C2]+PyL2S2 = S1/C1

20-12-2010

INDUSTRIAL ROBOTICS TECHNOLOGY, PROGRAMMING AND


APPLICATIONS

84

Potrebbero piacerti anche