Sei sulla pagina 1di 27

KINEMATICS

ANALYSIS
OF
ROBOTS
(Part 4)
Kinematics Analysis of Robots IV

This lecture continues the discussion on the analysis of the


forward and inverse kinematics of robots.

After this lecture, the student should be able to:


Solve problems of robot kinematics analysis using transformation
matrices
Example: A 3 DOF RRR Robot

Inverse Kinematics if no restriction on the orientation of point P.


This is useful if we are concerned only on the position of P

A=3 B=2 C=1


Z0, Z1

Y2 Y3
Y0 , Y 1

P
X0, X1 X2 X3
Z2 Z3
Example: A 3 DOF RRR Robot

In this case we are not given the following matrix for the
description of the orientation and position of point P:
nx ox ax px
n py 0 1 2
1T 2T 3T 03T
oy ay
y
nz oz az pz

0 0 0 1

Instead, we need to find 1, 2, and 3 given only the location


of P w.r.t. to the base frame:

px
p p y
0

p
1 z
1

Example: A 3 DOF RRR Robot

We know that
3
p 0 p
0

3T
1 1

cos( ) cos( ) cos( ) sin( ) sin( ) ( A B cos( )) cos( ) C


1 2 3 1 2 3 1 2 1

p sin( ) cos( ) sin( ) sin( ) cos( ) ( A B cos( )) sin( ) 0
3

T
0 1 2 3 1 2 3 1 2 1

1 sin( ) cos( ) B sin( ) 0


3
0

2 3 2 3 2

0 0 0 1 1
cos( )[ A B cos( ) C cos( )] p
1 2 2 3 x

sin( )[ A B cos( ) C cos( )] p
3
p
T
0 1
2 2 3 y

1 B sin( ) C cos( ) p
3


2 2 3 z

1
Example: A 3 DOF RRR Robot

Equate elements:
p x cos(1 )[ A B cos( 2 ) C cos( 2 3 )]
px
cos(1 )
A B cos( 2 ) C cos( 2 3 )

p y sin(1 )[ A B cos( 2 ) C cos( 2 3 )]


py
sin(1 )
A B cos( 2 ) C cos( 2 3 )

py
1 tan
1

px
Be Careful!
Example: A 3 DOF RRR Robot

Be careful when using your calculator to find inverse tangent!

y
y tan( )
x
x

2nd quadrant 1st quadrant Your calculator can


(x=-ve, y=+ve) (x=+ve, y=+ve) only give the angle
in the 1st quadrant.
You have to adjust
3rd quadrant 4th quadrant the answer from
(x=-ve, y=-ve) (x=+ve, y=-ve) the calculator
Example: A 3 DOF RRR Robot

p x cos(1 )[ A B cos( 2 ) C cos( 2 3 )]


px
A B cos( 2 ) C cos( 2 3 )
cos(1 )

p y sin(1 )[ A B cos( 2 ) C cos( 2 3 )]


py
A B cos( 2 ) C cos( 2 3 )
sin(1 )
px
If cos(1)0, let A
cos(1 )

Otherwise, let py
A
sin(1 )
Example: A 3 DOF RRR Robot

We now have B cos( 2 ) C cos( 2 3 )


B 2 cos 2 ( 2 ) C 2 cos 2 ( 2 3 ) 2 BC cos( 2 ) cos( 2 3 ) 2
From the comparison of the 3rd row elements:
B sin( 2 ) C sin( 2 3 ) p z
B 2 sin 2 ( 2 ) C 2 sin 2 ( 2 3 ) 2 BC sin( 2 ) sin( 2 3 ) p z2
Combining these equations, we get
B 2 C 2 2 BC cos( 3 ) 2 p z2
2 p z2 B 2 C 2
cos( 3 )
2 BC
sin( 3 ) 1 cos 2 ( 3 )
sin( 3 )
3 tan
1

cos( 3 )
Example: A 3 DOF RRR Robot
Using sin(1 2 ) sin(1 ) cos( 2 ) cos(1 ) sin( 2 )
cos(1 2 ) cos(1 ) cos( 2 ) sin(1 ) sin( 2 )
B cos( 2 ) C cos( 2 3 )
B cos( 2 ) C[cos( 2 ) cos( 3 ) sin( 2 ) sin( 3 )]
[ B C cos( 3 )] cos( 2 ) [C sin( 3 )]sin( 2 )
B sin( 2 ) C sin( 2 3 ) p z
B sin( 2 ) C[sin( 2 ) cos( 3 ) cos( 2 ) sin( 3 )] p z
[ B C cos( 3 )]sin( 2 ) [C sin( 3 )] cos( 2 ) p z
Let a [ B C cos( 3 )], b [C sin( 3 )]
a cos( 2 ) b sin( 2 )
a sin( 2 ) b cos( 2 ) p z
Example: A 3 DOF RRR Robot
a cos( 2 ) b sin( 2 )
a sin( 2 ) b cos( 2 ) p z
We can now solve the above equations to get
ap z b
sin( 2 ) 2
a b2
b sin( 2 )
If a0, then cos( 2 )
a
p z a sin( 2 )
If b0, then cos( 2 )
b

sin( 2 )
2 tan 1

cos( 2 )
Example: A 3 DOF RRR Robot

A=3 B=2 C=1


Z0, Z1

Y2 Y3
Y0, Y 1

P
X0, X1 X2 X3
Z2 Z3

5
p 0
0
Now find 1, 2, and 3 to move point P to
1 1
1

Example: A 3 DOF RRR Robot

p y 0 1 p y
1 tan 0
px 5 px

px
Now cos(1)0, let A 2
cos(1 )
2 p z2 B 2 C 2
cos( 3 ) 0
2 BC
sin( 3 ) 1 cos 2 ( 3 ) 1
sin( 3 )
3 tan 1
90
cos( 3 )
I.e. Assume elbow down
Example: A 3 DOF RRR Robot

a [ B C cos( 3 )] 2
b [C sin( 3 )] 1
apz b 2 2
sin( 2 ) 0
a b
2 2
5
b sin( 2 )
Now a0, then cos( 2 ) 1
a

sin( 2 )
2 tan 1
0
cos( 2 )

Compare this with the results form the previous lecture!


The difference is that now we are not concerned with the
orientation of point P.
Example: A 3 DOF RPR Robot

Link and Joint Assignment

Link (1)
Link (2) Link (3)
Prismatic joint <2>

Revolute joint <1>


Revolute joint <3>
Link (0)
Example: A 3 DOF RPR Robot

Frame Assignment

Z1

X1

Y1

X1

Z1
Example: A 3 DOF RPR Robot

Frame Assignment

Z0, Z1
Y2

X2

Z2 Z2
Y0, Y1
X0, X1
Y2
Example: A 3 DOF RPR Robot

Frame Assignment

Z0, Z1
Y2 Y3

X2 X3

Z2 Z3
Y0, Y1
X0, X1
Y3
Example: A 3 DOF RPR Robot

Frame Assignment
1
Z0, Z1
Y2 Y3

d2 X2 X3
3

Z2 Z3
Y0, Y1
X0, X1
Example: A 3 DOF RPR Robot
Tabulation of D-H parameters
Z0, Z1 Y2 Y3

X2 X3

Z2 Z3
Y0, Y1
X0, X1

0 = (angle from Z0 to Z1 measured along X0) = 0


a0 = (distance from Z0 to Z1 measured along X0) = 0
d1 = (distance from X0 to X1 measured along Z1)= 0
1 = variable (angle from X0 to X1 measured along Z1)
1 = 0 (at home position) but 1 can change as the arm moves
Example: A 3 DOF RPR Robot
Tabulation of D-H parameters
Z0, Z1 Y2 Y3

X2 X3

Z2 Z3
Y0, Y1
X0, X1

1 = (angle from Z1 to Z2 measured along X1) = -90


a1 = (distance from Z1 to Z2 measured along X1) = 0
d2 = variable (distance from X1 to X2 measured along Z2)
2 = variable (angle from X1 to X2 measured along Z2) = 180
Example: A 3 DOF RPR Robot
Tabulation of D-H parameters A
Z0, Z1 Y2 Y3

X2 X3

Z2 Z3
Y0, Y1
X0, X1

2 = (angle from Z2 to Z3 measured along X2) = 0


a2 = (distance from Z2 to Z3measured along X2) = 0
d3 = (distance from X2 to X3 measured along Z3) = A
3 = variable (angle from X2 to X3 measured along Z3)
3= 0 (at home position) but 3 can change as the arm moves
Summary of D-H parameters
Link i Twist i Link Link offset Joint angle i
length ai di
i=0 0 0

i=1 -90 0 0 1
(1=0 at home
position)
i=2 0 0 d2 2=180

i=3 A 3
(3=-0 at home
position)
Example: A 3 DOF RPR Robot
Tabulation of Transformation Matrices from the D-H table
cos( i ) sin( i ) 0 ai1
cos( ) sin( ) cos( ) cos( ) sin( ) d sin( )
i 1
T i 1 i i 1 i i 1 i i 1

sin( i1 ) sin( i ) sin( i1 ) cos( i ) cos( i 1 ) d i cos( i 1 )
i


0 0 0 1

0 0, a0 0, d1 0

cos(1 ) sin(1 ) 0 0
sin( ) cos( ) 0 0
0
T 1 1

0 1 0
1
0
0 0 1
0
Example: A 3 DOF RPR Robot
Tabulation of Transformation Matrices from the D-H table
1 90 , a1 0, 2 180
1 0 0 0
0 0 1 d2
2T
1
0 1 0 0
0 0 0 1

2 0, a2 0, d3 A

cos( 3 ) sin( 3 ) 0 0
sin( ) cos( ) 0 0
2
T 3 3

0 A
3
0 1
0 1
0 0
Example: A 3 DOF RPR Robot

Once all the transformation matrices are obtained, you can then
proceed to get the overall transformation matrix for the forward
kinematics.

After that, given the position and orientation of the point P on


the gripper, you can proceed to compare the terms of the
matrices to get the inverse kinematics. For the inverse
kinematics, you will be solving for 1, d2, and 3

Try it out as Homework.


Summary

This lecture continues the discussion on the analysis of the


forward and inverse kinematics of robots.

The following were covered:


Problems of robot kinematics analysis using transformation
matrices

Potrebbero piacerti anche