Sie sind auf Seite 1von 52

WEEK 4: ROBOTICS

PROF. (DR.) DILIP KUMAR PRATIHAR


MECHANICAL ENGINEERING DEPARTMENT, IIT KHARAGPUR

1
Topic 2: Robot Kinematics

PROF. (DR.) DILIP KUMAR PRATIHAR


MECHANICAL ENGINEERING DEPARTMENT, IIT KHARAGPUR

2
Example 2

3
Example 2

4
Forward Kinematics

5
6
7
8
9
Inverse Kinematics

10
11
12
13
14
15
An Example Z2 Z3
c

X2 X3
Y2 Y3
b Y1
Z1

X1

a Z0 Y0

X0

16
D-H parameters’ table:

Frame 𝜽𝒊 𝒅𝒊 𝜶𝒊 𝒂𝒊
1 𝜽𝟏 a* 0 0
2 0 b -90 0
3 𝜽𝟑 0 0 c

a*: fixed offset

17
Another Example Z2
c
Z3

X2 X3
Y2 Y3
b Y1
Z1

X1

a Z0 Y0

X0

18
D-H parameters’ table:

Frame 𝜽𝒊 𝒅𝒊 𝜶𝒊 𝒂𝒊
1 0 a 0 0
2 𝜽𝟐 b* -90 0
3 𝜽𝟑 0 0 c

b*: fixed offset

19
TOPIC 3: TRAJECTORY PLANNING

PROF. (DR.) DILIP KUMAR PRATIHAR


MECHANICAL ENGINEERING DEPARTMENT, IIT KHARAGPUR

20
Aim: To determine time history of position, velocity and
acceleration of end-effector of a manipulator, while moving from
an initial position to a final position through some
intermediate/via points.

21
Points Cartesian scheme Joint-space scheme
S (XS,YS) (θ1S, θ2S)
1 (X1,Y1) (θ11, θ21)
2 (X2,Y2) (θ12, θ22)
3 (X3,Y3) (θ13, θ23)
G (XG,YG) (θ1G, θ2G)

22
Trajectory Planning

Cartesian scheme Joint-space scheme


•Computationally expensive,
as inverse kinematics problem
has to be solved, on-line

23
Joint-Space Scheme
•To fit a smooth (continuous) curve through (θ1S, θ11, θ12, θ13, θ1G)
•First and second order derivatives must be continuous.

Various Trajectory Functions


•Cubic polynomial
•Fifth-order polynomial
•Linear trajectory function

24
POLYNOMIAL TRAJECTORY FUNCTION
Case-1
,

Initial and final values of joint angle are known, and angular
velocities at the beginning and end of the cycle are kept equal to
zero.
θf At t  ti  0;   i , & 0
At t  t ;    , & 0
f f
θ

θi

ti=0 tf t

25
Let us consider cubic polynomial

 (t )  C0  C1t  C2t 2 C3t 3


where C0 , C1, C2 , C3 are the coefficients.

Differentiate with respect to time to get angular velocity


&(t )  C1  2C2t  3C3t 2

26
Apply the initial conditions to angular displacement
and velocity equations. We get,
C0  i
C1  0
C0  C1t f  C2t 2f  C3t 3f   f
C1  2C2t f  3C3t 2f  0

Solving above equations, We get

 (t)  i  3(t  ) t 2  2(t  ) t 3


f
2
i f
3
i

f f

27
Case-2
Initial and final values of joint angle are known and angular
velocities at the beginning and end of the cycle are assumed to
have non zero values.

At t  ti  0;   i ,   i
& &
At t  t f ;    f , & &f

Let us consider a third order polynomial of the form:


(t)  C0  C1t  C2 t 2 C3t 3
where C0 , C1, C2 , C3 are the coefficients.

28
Differentiate with respect to time to get angular velocity
&(t )  C1  2C2t  3C3t 2

Apply the initial conditions to angular displacement and


velocity equations. We get,
C0  i
C1  &
i

C0  C1t f  C2t 2f  C3t 3f   f


C1  2C2t f  3C3t 2f  &f

29
Solving above equations, We get

C0  i ,

C1  &
i,

3( f  i ) 2 & 1 &


C2   i   f ,
t 2f tf tf
2( f  i ) 1 & &
C3    ( f  i ).
t 3f 2
tf

30
Case-3
Initial and final values of joint angle are known and angular
velocities and accelerations at the beginning and end of the cycle
are assumed to have non zero values.

At t  ti  0;   i , & & i ,   i
&
& & &
At t  t f ;    f , & &f , & & &
&
f

Let us consider a fifth-order polynomial as follows:


(t)  C0  C1t  C2t 2 C3t3  C4t 4  C5t 5
where C0 , C1, C2 , C3 , C4 and C5 are the coefficients.

31
Differentiate with respect to time once to get angular
velocity and twice to get angular acceleration

32
Apply the initial conditions to angular displacement, velocity
and acceleration equations. We get,

33
Solving above equations, We get
C0  i ,
.
C1  i ,
..
C2  1
2 i . . .. ..
20( f i ) (8 f 12 i )t f (3i f )t f2
C3  2t3f
. . .. ..
30( i f )(14 f 16 i )tf (3i 2f )tf2
C4  2t f4
. . .. ..
12(f  i )  6(f  i )t f  (i  f )t f2
C5 
2t 5f

34
A Numerical Example
• A single-link robot with a revolute joint is motionless at θ = 20⁰.
It is desired to move the joint in a smooth manner to θ = 80⁰ in
4.0 seconds. Find a suitable cubic polynomial to generate this
motion and bring the manipulator to rest at the goal.
Solution:

cubic polynomial

 (t )  C0  C1t  C2t 2 C3t 3 ------- (1)

35
Conditions:

At time t  ti  0,
  i  20o ,
& 0;
At time t  t f =4.0 s,
   f  80o ,
& 0;

36
3( f  i ) 2( f  i )
 (t )  i  t2  t3
t 2f t 3f
3(80  20) 2 2(80  20) 3
 20  2
t  3
t
(4.0) (4.0)

 20 11.25t 2 1.875t 3

37
LINEAR TRAJECTORY FUNCTION

f


i

ti  0 tf t

(Pure Linear Trajectory Function)


Note: Infinite acceleration and declaration.

38
(Modified Linear trajectory function with
parabolic blends)

39
A Numerical Example
• A linear trajectory function with parabolic blends at its two
ends is to be obtained to satisfy the following conditions given
below. At time t  ti  0,
  i  20.0o ,
& 0.0;
At time t  t f =12.0 s,
   f  74.0o ,
& 0.0;

40
Total cycle time tc = tf - ti =12.0 s

Time duration at each of the blend portion tb =3.0 s

Magnitude of acceleration/deceleration

&
& 2.0 degree/s2

Determine angular displacement and velocity at two junctions of


parabolic blends with the straight portion of trajectory function.

41
Solution:
At point A

Angular displacement

1 1
 A  i  &
& tb2  20.0   (2.0)  (3.0)2
2 2
 29.0o

42
Angular velocity

&
A  i    tb  0.0  2.0  3.0
& & &

 6.0 degree/s

At point B: From the symmetry of the trajectory function,

 f B   A i
74.0   B  29.0  20.0

B  65.0o

43
Angular velocity in the linear portion of trajectory function

B  A

t f  2tb

65.0  29.0 36.0


   6.0 degree/s
12.0  2  3.0 6.0

To maintain continuity of the trajectory function at point B, &B


Should be equal to the velocity of the linear portion, that is,
6.0 degree per second.

44
SINGULARITY CHECKING THROUGH JACOBIAN

Let us consider six functions and each of which is a function of six


Independent variables.

y1  f1 (x1 , x 2 , x3 , x 4 , x5 , x 6 )
y2  f2 (x1 , x 2 , x3 , x 4 , x 5 , x 6 )
:
:
y6  f6 (x1 , x 2 , x3 , x 4 , x 5 , x 6 )
In vector notation: Y  F(X)

45
Now,
f1 f f
y1  x1  1 x2  ....  1 x6
 x1  x2  x6
f f f
y2  2 x1  2 x 2  ....  2 x6
 x1  x2  x6
:
:
f6 f f
y6  x1  6 x 2  ....  6 x 6
 x1  x2  x6

46
In vector notation:  Y  J(X)X
where J(X) is Jacobian.
 f1 f1 f1 
 x .... 
 x2  x6
 1

 f 2 f 2 f 2 
 x .... 
 1  x2  x6 
J  . 
 
. 
 f 6 f 6 f 6 
 .... 
  x1  x2  x6 

 

47
Now,
Y X
lim  lim J(X)
t 0 t t 0 t
Y & J(X)X
&

In Robotics,
V  J()&
Joint
Cartesian
Velocity
Velocity Jacobian

48
TWO DOF SERIAL MANIPULATOR
Px  L1 cos 1  L2 cos(1  2 )
Px
 L1 sin 1  L2 sin(1  2 )
1
Px
 L2 sin(1  2 )
2

Py  L1 sin 1  L2 sin(1  2 )
Py
 L1 cos 1  L2 cos(1  2 )
1
Py
 L2 cos(1  2 )
2

49
 L1S1  L2S12 L2S12 
Jacobian J()   
 L1C1  L2C12 L2C12 
Now, & J1 () V

J1 () should exist, that is, J()  0


For Singularity Checking

J()  0

 L1 L 2 S2 0
Now,
L1  0,L2  0,
S2  0

51
So,
2  00 or 1800

When
2  00 ; Fully- Stretched
2  1800 ; Folded-back Situation

52

Das könnte Ihnen auch gefallen