L17

advertisement
INTRODUCTION
TO
DYNAMICS
ANALYSIS
OF
ROBOTS
(Part 5)
Introduction to Dynamics Analysis of Robots (5)
This lecture continues the discussion on the analysis of the
instantaneous motion of a rigid body, i.e. the velocities and
accelerations associated with a rigid body as it moves from one
configuration to another.
After this lecture, the student should be able to:
•Solve problems of robot instantaneous motion using joint
variable interpolation
•Calculate the Jacobian of a given robot
•Investigate robot singularity and its relation to Jacobian
Summary of previous lecture
Jacobian for translational velocities

vP / 0

vP / 0
 v14

vx   1
v
 v y    24
   1
 vz   v
 34
 1
v14
v14 


1 
 2
 n  1 
 
 

v24
v24  2 

 J (T )  2 

 2
 n    
 
v34
v34   
 n 

 n 
 2
 n 
1 
1 
1 
vx 
 ax 
 
 
  



(T )  2 
(
T
)
(
T
)
2




 vy  J
 aP / 0  a y  J    J  2 
 
 



 vz 
 az 
 
 
  


 n
 n
 n 
Instantaneous motion of robots
So far, we have gone through the following exercises:
Given the robot parameters, the joint angles and their rates of
rotation, we can find the following:
1. The linear (translation) velocities w.r.t. base frame of a
point located at the end of the robot arm
2. The angular velocities w.r.t. base frame of a point located
at the end of the robot arm
3. The linear (translation) acceleration w.r.t. base frame of a
point located at the end of the robot arm
4. The angular acceleration w.r.t. base frame of a point
located at the end of the robot arm
We will now use another approach to solve the angular
velocities problem.
Jacobian for Angular Velocities
In general, the position and orientation of a point at the end of the arm
can be specified using
 v11 v12 v13 v14 
n 1
n
T  T T T T
0
P
 v11 v12
R(t )  v21 v22

v31 v32
v13 
v23 ,

v33 
0
1
1
2
n
P
v11 v21
RT (t )  v12 v22

v13 v23
v
v22 v23 v24 
21


v31 v32 v33 v34 


0
0
1
0
v31 
 v11 v12
v32 
R (t )  v21 v22


v33 
v31 v32
v13  v11 v21 v31 
v23  v12 v22 v32 


v33  v13 v23 v33 
 11  12  13 
 v11 v12
 (t )   21  22  23   R RT (t )  v21 v22



 31  32  33 
v31 v32
3
 3
  v1i v1i  v1i v2i
i 1
 11  12  13   i31
3




 23   v2i v1i  v2i v2i
 21 22
  i 1
i 1
 31  32  33   3
3
  v3i v1i  v3i v2i
 i 1
i 1


v
v
 1i 3i 
i 1

3
 v2iv3i 
i 1

3
 v3iv3i 
i 1
3
v13 
v23 

v33 
Jacobian for Angular Velocities
 11  12


 21 22
 31  32
 3
  v1i v1i
 13   i31
 23    v2i v1i
  i 1
 33   3
  v3i v1i
 i 1
3
 v1iv2i
i 1
3
 v2iv2i
i 1
3
 v3iv2i
i 1


v
v
 1i 3i 
i 1

3
 v2iv3i 
i 1

3
 v3iv3i 
i 1
3
3


v
v

3i 2 i 

i

1
 1   32   3
 v31v21  v32v22  v33v23 

(t )   2    13     v1i v3i    v11v31  v12v32  v13v33 
     i 1

 
3   21   3
  v21v11  v22v12  v23v13 
  v2i v1i 
 i 1

vij  f (1 , 2 ,, n )  vij 
dvij
dt

vij d1 vij d 2
v d

   ij n
1 dt  2 dt
 n dt
vij  vij 
vij 
vij 

1 
2 
n
dt 1
 2
 n
dvij
Jacobian for Angular Velocities
1  v31v21  v32v22  v33v23
 v

 v

v
v
v
v
1   31 1  31 2    31 n v21   32 1  32 2    32 n v22
 2
 n 
 2
 n 
 1
 1
 v

v
v
  33 1  33 2    33 n v23
 2
 n 
 1
 v

 v

v
v
v
v
1   31 v21  32 v22  33 v23 1   31 v21  32 v22  33 v23 2  
1
1
 2
 2 
 1

  2
 v

v
v
  31 v21  32 v22  33 v23 n
 n
 n
  n

Similarly:
 2  v11v31  v12v32  v13v33
 v

 v

v
v
v
v
 2   11 v31  12 v32  13 v33 1   11 v31  12 v32  13 v33 2  
1
1 
 2
 2 
 1
  2
 v

v
v
  11 v31  12 v32  13 v33 n
 n
 n 
  n
Jacobian for Angular Velocities
Similarly:
3  v21v11  v22v12  v23v13
 v

 v

v
v
v
v
3   21 v11  22 v12  23 v13 1   21 v11  22 v12  23 v13 2  
1
1 
 2
 2 
 1
  2
 v

v
v
  21 v11  22 v12  23 v13 n
 n
 n 
  n
 v31
v32
v33 

v

v

v23 

21
22







1
1
 1   1

  v

v
v
(t )   2     11 v31  12 v32  13 v33 
   
 1
 1 
1
 3  
  v21
v23 
v22
   v11   v12   v13 

1
1
 1
 v

 v31

v
v
v
v

v21  32 v22  33 v23    31 v21  32 v22  33 v23  
 2
 2 
 n
 n   1 
  2
  n
 
 v11
 v11
v13 
v13   2 
v12
v12

v31 
v32 
v33   
v31 
v32 
v33  












 2

 n
  
2
2
n
n
 
 v21
 v21
v23 
v23   n 
v22
v22

v11 
v12 
v13   
v11 
v12 
v13  












 2

 n

2
2
n
n
Jacobian for angular velocities


P / 0  J ( A)
Example: Jacobian for Angular Velocities
A=3
B=2
Z0, Z1
What is the Jacobian
for angular
velocities of point
“P”?
Y2
C=1
Y3
Y0, Y 1
X0, X1
X2
Z2
X3
P
Z3
Given:
T
n
P
cos(1 ) cos( 2   3 )  cos(1 ) sin(  2   3 ) sin( 1 ) ( A  B cos( 2 )  C cos( 2   3 )) cos(1 )
 sin(  ) cos(   )  sin(  ) sin(    )  cos( ) ( A  B cos( )  C cos(   )) sin(  ) 
1
2
3
1
2
3
1
2
2
3
1 

sin(  2   3 )
cos( 2   3 )
1
B sin(  2 )  C sin(  2   3 )




0
0
0
1


Example: Jacobian for Angular Velocities
J ( A) 
 v31
v32
v33 

v

v

v23 
21
22

1
1

 1

  v
v
v
   11 v31  12 v32  13 v33 

1
1 
 1
v22
v23 
  v21

v

v

   11  12  v13 

1
1
 1
 v31

v
v

v21  32 v22  33 v23 
 2
 2 
  2
 v11

v
v

v31  12 v32  13 v33 
 2
 2 
  2
 v21

v
v

v11  22 v12  23 v13 
 2
 2 
  2
v31  sin(  2   3 )
v32  cos( 2   3 )
v31
0
1
v32
0
1
v31
v
 cos( 2   3 )  31
 2
 3
v32
v
  sin(  2   3 )  32
 2
 3
 v31

v
v

v21  32 v22  33 v23 
 3
 3 
  3
 v11

v
v

v31  12 v32  13 v33  
 3
 3 
  3

 v21

v
v

v11  22 v12  23 v13  
 3
 3  
  3
v33  1
v33 v33 v33


0
1  2  3
Example: Jacobian for Angular Velocities
v11  cos(1 ) cos( 2   3 )
v12   cos(1 ) sin(  2   3 )
v13  sin( 1 )
v11
  sin( 1 ) cos( 2   3 )
1
v12
 sin( 1 ) sin(  2   3 )
1
v13
 cos(1 )
1
v11
v
  cos(1 ) sin(  2   3 )  11
 2
 3
v12
v
  cos(1 ) cos( 2   3 )  12
 2
 3
v13
v
 0  13
 2
 3
v21  sin( 1 ) cos( 2   3 )
v22   sin( 1 ) sin(  2   3 )
v21
 cos(1 ) cos( 2   3 )
1
v22
  cos(1 ) sin(  2   3 )
1
v21
v
  sin( 1 ) sin(  2   3 )  21
 2
 3
v22
v
  sin( 1 ) cos( 2   3 )  22
 2
 3
v23   cos(1 )
v23
 sin( 1 )
1
v23
v
 0  23
 2
 3
Example: Jacobian for Angular Velocities
 v

v
v
J ( A) (1,1)   31 v21  32 v22  33 v23   0
1
1 
 1
 v

v
v
J ( A) (1,2)   31 v21  32 v22  33 v23 
 2
 2 
  2
 cos( 2   3 ) sin( 1 ) cos( 2   3 )  sin(  2   3 ) sin( 1 ) sin(  2   3 )  0
J ( A) (1,2)  sin( 1 )
 v

v
v
J ( A) (1,3)   31 v21  32 v22  33 v23 
 3
 3 
  3
 cos( 2   3 ) sin( 1 ) cos( 2   3 )  sin(  2   3 ) sin( 1 ) sin(  2   3 )  0
J ( A) (1,3)  sin( 1 )
Example: Jacobian for Angular Velocities
 v

v
v
J ( A) (2,1)   11 v31  12 v32  13 v33 
1
1 
 1
  sin( 1 ) cos( 2   3 ) sin(  2   3 )  sin( 1 ) sin(  2   3 ) cos( 2   3 )  0  0
 v

v
v
J ( A) (2,2)   11 v31  12 v32  13 v33 
 2
 2 
  2
  cos(1 ) sin(  2   3 ) sin(  2   3 )  cos(1 ) cos( 2   3 ) cos( 2   3 )  0   cos(1 )
 v

v
v
J ( A) (2,3)   11 v31  12 v32  13 v33 
 3
 3 
  3
  cos(1 ) sin(  2   3 ) sin(  2   3 )  cos(1 ) cos( 2   3 ) cos( 2   3 )  0   cos(1 )
Example: Jacobian for Angular Velocities
 v

v
v
J ( A) (3,1)   21 v11  22 v12  23 v13 
1
1 
 1
 cos(1 ) cos( 2   3 ) cos(1 ) cos( 2   3 )  cos(1 ) sin(  2   3 ) cos(1 ) sin(  2   3 )  sin( 1 ) sin( 1 )
J ( A) (3,1)  1
 v

v
v
J ( A) (3,2)   21 v11  22 v12  23 v13 
 2
 2 
  2
  sin( 1 ) sin(  2   3 ) cos(1 ) cos( 2   3 )  sin( 1 ) cos( 2   3 ) cos(1 ) sin(  2   3 )  0  0
 v

v
v
J ( A) (3,3)   21 v11  22 v12  23 v13 
 3
 3 
  3
  sin( 1 ) sin(  2   3 ) cos(1 ) cos( 2   3 )  sin( 1 ) cos( 2   3 ) cos(1 ) sin(  2   3 )  0  0
Example: Jacobian for Angular Velocities
What is

3 / 0

3/ 0
sin(1 ) 
0 sin(1 )
J ( A)  0  cos(1 )  cos(1 )


0
0
1

after 1 second if all the joints are rotating at
t
i  ,
i  1,2,3
6
sin( 1 )  0
0.5
0.5 
0 sin( 1 )
J ( A)  0  cos(1 )  cos(1 )  0  0.866  0.866

 

0
0
0
0 
1
 1
0.5
0.5  0.5236  0.5236 
0


  P / 0  J ( A)  0  0.866  0.866 0.5236   0.9069


 

0
0  0.5236  0.5236 
1
The answer is similar to that obtained previously using another
approach! (refer to the example on relative angular velocity)
Clarification
Why


3 / 0   P / 0
v1  r1
v1  r2
r1
r2
  
Note: every point on the link will rotate at the same angular
velocity! However, the linear velocities at different points on the
link are not the same!
Getting the Angular Acceleration

P/0
1 
1 
1 
 1 
 x 
 
 
 

  2   J ( A)  2    P / 0   y   J ( A)  2   J ( A)  2 
 
 



 3 
 z 
 
 
  


 n
 n
 n 
If the joint angular acceleration for 1, 2, …, n are 0s then

 P/0
1 
 x 
 
  y   J ( A)  2 
 

 z 
 
 n 
Example: Getting the Angular Acceleration
A=3
B=2
Z0, Z1
Y2
Example:
The 3 DOF
RRR Robot:
X2
Z2
What is
 3/ 0
Y3
Y0, Y 1
X0, X1

C=1
X3
P
Z3
after 1 second if all the joints are rotating at
i 
t
6
,
i  1,2,3
Getting the Angular Acceleration
sin(1 ) 
0 sin(1 )
J ( A)  0  cos(1 )  cos(1 )


0
0
1

0 cos(1 )1 cos(1 )1 
J ( A)  0 sin(1 )1 sin(1 )1 
0

0
0
All the joints angular acceleration for 1, 2, …, n are 0s:
 x  0 0.4534 0.4534 0.5236 0.4749

 P / 0   y   0 0.2618 0.2618 0.5236  0.2742
  

 

0
0  0.5236  0 
 z  0
The answer is similar to that obtained previously using another
approach! (refer to the example on relative angular acceleration)
Transformation between Joint variables and the general
motion of the last link
We can combine the Jacobians for the linear and angular
velocities to get:
 J (T ) 
J   ( A) 
J 
 vx 
v 
1 
1 


y
 

 
(T )   

  2 
J
 vP / 0   v z 
2

  J
  ( A) 

   J   
 P / 0   1 
 
 
 2 

 n
 n 
 
3 
Example: Transformation between Joint variables and the
general motion of the last link
A=3
B=2
Z0, Z1
Y2
Example:
The 3 DOF
RRR Robot:
C=1
Y3
Y0, Y 1
X0, X1
X2
Z2
X3
Z3
What is the Jacobian for the 3 DOF RRR robot?
P
Example: Transformation between Joint variables and the
general motion of the last link
J (T )
 ( A  B cos( 2 )  C cos( 2   3 )) sin(1 )  ( B sin( 2 )  C sin( 2   3 )) cos(1 )  C cos(1 ) sin( 2   3 )
  ( A  B cos( 2 )  C cos( 2   3 )) cos(1 )  ( B sin( 2 )  C sin( 2   3 )) sin(1 )  C sin(1 ) sin( 2   3 ) 




0
B cos( 2 )  C cos( 2   3 )
C cos( 2   3 )
J ( A)
sin(1 ) 
0 sin(1 )
 0  cos(1 )  cos(1 )


0
0
1

 J (T ) 
J   ( A) 
J 
 ( A  B cos( 2 )  C cos( 2   3 )) sin(1 )  ( B sin( 2 )  C sin( 2   3 )) cos(1 )  C cos(1 ) sin( 2   3 )
 ( A  B cos( )  C cos(   )) cos( )  ( B sin( )  C sin(   )) sin( )  C sin( ) sin(   ) 
2
2
3
1
2
2
3
1
1
2
3 



0
B cos( 2 )  C cos( 2   3 )
C cos( 2   3 )


0
sin(

)
sin(

)
1
1




0
 cos(1 )
 cos(1 )


1
0
0


Jacobian and Singularities
We know that

vP / 0
 v14

vx   1
v
 v y    24
   1
 vz   v
 34
 1
1 
 
 2   J (T ) 1 v
P/0

 
 n 
v14
v14 


1 
 2
 n  1 
 
 

v24
v24  2 

 J (T )  2 

 2
 n    
 
v34
v34   
 n 

 n 
 2
 n 
 v14
 
 1
v
  24
 1
 v
 34
 1
v14
v14 

 2
 n 

v24
v24 

 2
 n 
v34
v34 


 2
 n 
1
vx 
v 
 y
 vz 
The above is true only if the Jacobian is invertible. From algebra,
we now that a matrix cannot be inverted if its determinant is zero
(i.e. the matrix is singular)
Example: Jacobian and Singularities
A=3
B=2
Z0, Z1
Y2
Example:
The 3 DOF
RRR Robot:
C=1
Y3
Y0, Y 1
X0, X1
X2
Z2
X3
Z3
Investigate the singularities of the 3 DOF RRR robot
P
Example: Jacobian and Singularities
J (T )
 ( A  B cos( 2 )  C cos( 2   3 )) sin(1 )  ( B sin( 2 )  C sin( 2   3 )) cos(1 )  C cos(1 ) sin( 2   3 )
  ( A  B cos( 2 )  C cos( 2   3 )) cos(1 )  ( B sin( 2 )  C sin( 2   3 )) sin(1 )  C sin(1 ) sin( 2   3 ) 




0
B cos( 2 )  C cos( 2   3 )
C cos( 2   3 )
det( J
(T )
 ( Bs1s2  Cs1s23 )  Cs1s23
)  ( A  Bc 2  Cc23 ) s1
Bc 2  Cc23
Cc23
 ( Bc1s2  Cc1s23 )  Cc1s23
 ( A  Bc 2  Cc23 )c1
Bc 2  Cc23
Cc23
det( J (T ) )  ( A  Bc 2  Cc23 ) s1{ Bs1s2Cc23  C 2 s1s23c23  BCs1c2 s23  C 2 s1s23c23}
 ( A  Bc 2  Cc23 )c1{ BCc1s2c23  C 2c1s23c23  BCc1c2 s23  C 2c1s23c23}
det( J (T ) )  ( A  Bc2  Cc23 ) s1{ Bs1s2Cc23  BCs1c2 s23}
 ( A  Bc2  Cc23 )c1{ BCc1s2c23  BCc1c2 s23}
Example: Jacobian and Singularities
det( J (T ) )  ( A  Bc2  Cc23 ) s1{ Bs1s2Cc23  BCs1c2 s23}
 ( A  Bc2  Cc23 )c1{ BCc1s2c23  BCc1c2 s23}
det( J (T ) )  ( A  Bc2  Cc23 ){ Bs12 s2Cc23  BCs12c2 s23  BCc12 s2c23  BCc12c2 s23}
det( J (T ) )  ( A  Bc 2  Cc23 ){BCc2 s23  BCs2c23}
det( J (T ) )  ( A  Bc 2  Cc23 ) BC ( s3 )
 ( A  Bc 2  Cc23 )  0  det( J (T ) )  0
s3  0  det( J (T ) )  0
Under these two conditions, we cannot determine the joint
angular velocities using the Jacobian
Summary
This lecture continues the discussion on the analysis of the
instantaneous motion of a rigid body, i.e. the velocities and
accelerations associated with a rigid body as it moves from one
configuration to another.
The following were covered:
•Robot instantaneous motion using joint variable interpolation
•The Jacobian of a given robot
•Robot singularity and its relation to Jacobian
Download