Vous êtes sur la page 1sur 30

Introduction to ROBOTICS

Velocity Analysis
Jacobian

University of Bridgeport

1
Kinematic relations

1  X=FK(θ) x 
  y
 2  
 3  z 
   X  
 4   
 5   
  θ =IK(X)  
 6   
Task Space
Joint Space

Location of the tool can be specified using a joint space or a cartesian space
description
Velocity relations
• Relation between joint velocity and cartesian
velocity.
• JACOBIAN matrix J(θ)
1  X  J ( )  x 
   y 
 2   
3   z 
   
 4   x 
   y 
 5    J 1 ( ) X  
6   z 
Joint Space Task Space
Jacobian
• Suppose a position and orientation vector of a
manipulator is a function of 6 joint variables: (from
forward kinematics)
X = h(q)

x   q1   h1 (q1 , q2 ,, q6 ) 
y q  h (q , q ,  , q )
    2  2 1 2 6 

z   q3   h3 (q1 , q2 ,, q6 ) 
X     h(   ) 61  

 
q
  4  h4 ( q1 , q 2 ,  , q 6 ) 
   q5   h5 (q1 , q2 , , q6 ) 
     
  
 6
q  
 6 1 2
h ( q , q ,  , q 6 
)  61
Jacobian Matrix
Forward kinematics

X 61  h(qn1 )

 d dh(q) dq dh(q)
X 61  h(qn1 )   q
dt dq dt dq
 x 
 y   q1 
  q 
 z   dh(q)   2  X 61  J 6n q n1
   dq    
 x    6n
 y    J
dh(q)
 
 z 
q n  n1 dq
Jacobian Matrix
 x 
 y 
   q1 
 z   dh(q)  q 2 
     Jacobian is a function of

 x   dq  6n   
q, it is not a constant!
 y   
 q n  n1
 
 z   h1 h1 h1 
 q 
q2 qn 
 1 
 dh(q)   h2 h2

h2 
J      q1 q2 qn 
 dq  6n      
 h h6 h6 
 6  
 q1 q2 qn  6n
Jacobian Matrix
 x 
 y  Linear velocity Angular velocity
   q1 
 z  V   x    x    q 
q n1   2 

X     
 x    V   y  
   y    
 y   
   z   z   
  q n  n1
 z 

The Jacbian Equation


X  J 6n q n1
Example
• 2-DOF planar robot arm
– Given l1, l2 , Find: Jacobian
 x  l1 cos1  l2 cos(1   2 )  h1 (1 , 2 ) 
 y    l sin   l sin(    )   h ( , )
  1 1 2 1 2   2 1 2 

  x  1 
Y     J 

 y   2 

 h1 h1 
   2   l1 sin 1  l2 sin( 1   2 )  l2 sin( 1   2 )
J  1 
 h2 h2   l1 cos1  l2 cos(1   2 ) l2 cos(1   2 ) 
 1  2 
Singularities
• The inverse of the jacobian matrix cannot be
calculated when
det [J(θ)] = 0

• Singular points are such values of θ that


cause the determinant of the Jacobian to
be zero
• Find the singularity configuration of the 2-DOF
planar robot arm
determinant(J)=0 Not full rank

 x 
X     J  1 
 y  
 2 V (x , y)

 l1 sin 1  l2 sin( 1   2 )  l2 sin( 1   2 )


J  
 1
l cos 1  l 2 cos( 1   2 ) l 2 cos( 1   2 
) l2
Y
2 =0
Det(J)=0
1 l1
2  0 x
Find jacobian
Jacobian Matrix
• Inverse Jacobian
q5
 J11 J12  J16   q 
1

J  
q 
J 22  J 26  q 
2

X  Jq   21
3
 
      q 
4

  q  5

 J 61 J 62  J 66  q 
6

q1
q  J X
1

• Singularity
– rank(J)<n : Jacobian Matrix is less than full rank
– Jacobian is non-invertable
– Boundary Singularities: occur when the tool tip is on the surface
of the work envelop.
– Interior Singularities: occur inside the work envelope when two
or more of the axes of the robot form a straight line, i.e., collinear
Jacobian Matrix
 ax  bx 
• If A   a y  , B  by 
 az   bz 

• Then the cross product


i j k  a y bz  az by 
 
A  B  ax ay az   (ax bz  az bx ) 
bx by bz  ax by  a y bx 
Remember DH parmeter
ci -c isi s isi a i ci 
 s ci c i -s i ci a isi 
Ai   i
 0 s i c i di 
 
 0 0 0 1 

• The transformation matrix T

T0i  A1 A2 ..... Ai
Jacobian Matrix
J  J1 J 2 .... J n 
Jacobian Matrix
2-DOF planar robot arm
Given l1, l2 , Find: Jacobian

• Here, n=2,
(x , y)

2
l2

1 l1
ci -c isi s isi a i ci 
 s ci c i -s i ci a isi 
Ai   i
 0 s i c i di 
 
 0 0 0 1 

Where (θ1 + θ2 ) denoted by θ12 and

0
Z0  Z1  0
1 

0  a1 cos 1   a1 cos 1  a2 cos(1   2 ) 


O0  0 , O1   a1 sin 1  , O2   a1 sin 1  a2 sin(1   2 ) 
17
0  0   0 
Jacobian Matrix
2-DOF planar robot arm
Given l1, l2 , Find: Jacobian

• Here, n=2
(x , y)
 z0  (o2  o0 )   z1  (o2  o1 ) 
J1    , J2   
 z0   z1  2
l2

1 l1
Jacobian Matrix
 z0  (o2  o0 ) 
J1   
 z 0 
0   a1 cos 1  a2 cos(1   2 ) 
Z 0  (o2  o0 )  0    a1 sin 1  a2 sin(1   2 ) 
1   0 
 i j k
  0 0 1 
 a1 cos 1  a2 cos(1   2 ) a1 sin 1  a2 sin(1   2 ) 0 
 a1 sin 1  a2 sin(1   2 ) 
  a1 cos 1  a2 cos(1   2 ) 
 0 
Jacobian Matrix
 z1  (o2  o1 ) 
J2   
 z1 
0   a2 cos(1   2 ) 
Z1  (o2  o1 )  0    a2 sin(1   2 ) 
1   0 
 i j k
  0 0 1 
 a2 cos(1   2 ) a2 sin(1   2 ) 0 
 a2 sin(1   2 ) 
  a2 cos(1   2 ) 
 0 
Jacobian Matrix
 a1 sin 1  a2 sin(1   2 ) 
 a cos   a cos(   )   a2 sin(1   2 ) 
 1 1 2 1 2   a cos(   ) 
 0   2 1 2 

J1     0 
 0  J2   
 0 
 0 
   0 
 1   
 1 

The required Jacobian matrix J


J   J1 J2 
Stanford Manipulator
The DH parameters are:
ci -c isi s isi a i ci 
 s ci c i -s i ci a isi 
Ai   i
 0 s i c i di 
 
 0 0 0 1 
Stanford Manipulator

T01  A1 0   s1  c1s2  c1s2 


c1c2  s1 c1s2 d 2 s1  z0  0 z1   c1  z2   s1s2  z3   s1s2 
s c d 2c1     
T02  A1 A2   1 2
c1 s1s2
1   0   c2   c2 
  s2 0 c2 0 
 
 0 0 0 1 
0  d 2 s1   d3c1s2  d 2 s1 
    d c  O  d s s  d c 
c1c2  s1 c1s2 d3c1s2  d 2 s1  O0  O1  0 2  2 1  3  3 1 2 2 1 
O
s c   
c1 s1s2 d3 s1s2  d 2c1  0  0   d3c2 
T03  A1 A2 A3   1 2
  s2 0 c2 d3c2 
 
 0 0 0 1 
Stanford Manipulator
T4 =
T04  A1 A2 A3 A4
[ c1c2c4-s1s4, -c1s2, -c1c2s4-s1*c4, c1s2d3-sin1d2]
[ s1c2c4+c1s4, -s1s2, -s1c2s4+c1c4, s1s2d3+c1*d2]
T05  A1 A2 A3 A4 A5 [-s2c4, -c2, s2s4, c2*d3]
[ 0, 0, 0, 1]
T06  A1 A2 A3 A4 A5 A6

 c1c2 s4  s1c4   d3c1s2  d 2 s1 


z4   s1c2 s4  c1c4  O4   d3 s1s2  d 2c1 
   d3c2 
s2 s4
Stanford Manipulator
T5 =

[ (c1c2c4-s1s4)c5-c1s2s5, c1c2s4+s1c4, (c1c2c4-s1s4)s5+c1s2c5,


c1s2d3-s1d2]
[ (s1c2c4+c1s4)c5-s1s2s5, s1c2s4-c1c4, (s1c2c4+c1s4)s5+s1s2c5,
s1s2d3+c1d2]
[ -s2c4c5-c2s5, -s2s4, -s2c4s5+c2c5, c2d3]
[ 0, 0, 0, 1]

c1c2c4 s5  s1s4 s5  c1s2c5  c1c2c4 s5  s1s4 s5  c1s2c5 


z5   s1c2c4 s5  c1s4 s5  s1s2c5  z5   s1c2c4 s5  c1s4 s5  s1s2c5 
  s2c4 s5  c2c5    s2c4 s5  c2c5 
Stanford Manipulator
T5 =

[ (c1c2c4-s1s4)c5-c1s2s5, c1c2s4+s1c4, (c1c2c4-s1s4)s5+c1s2c5,


c1s2d3-s1d2]
[ (s1c2c4+c1s4)c5-s1s2s5, s1c2s4-c1c4, (s1c2c4+c1s4)s5+s1s2c5,
s1s2d3+c1d2]
[ -s2c4c5-c2s5, -s2s4, -s2c4s5+c2c5, c2d3]
[ 0, 0, 0, 1]

c1c2c4 s5  s1s4 s5  c1s2c5   d3c1s2  d 2 s1 


z5   s1c2c4 s5  c1s4 s5  s1s2c5  O5   d3 s1s2  d 2c1 
 d3c2 
  s2c4 s5  c2c5 
Stanford Manipulator
T6 = [ c6c5c1c2c4-c6c5s1s4-c6c1s2s5+s6c1c2s4+s6s1c4, -
c5c1c2c4+s6c5s1s4+s6c1s2s5+c6c1c2s4+c6s1c4, s5c1c2c4-s5s1s4+c1s2c5,
d6s5c1c2c4-d6s5s1s4+d6c1s2c5+c1s2d3-s1d2]
[ c6c5s1c2c4+c6c5c1s4-c6s1s2s5+s6s1c2s4-s6c1c4, -s6c5s1c2c4-
s6c5c1s4+s6s1s2s5+c6s1c2s4-c6c1c4, s5s1c2c4+s5c1s4+s1s2c5,
d6s5s1c2c4+d6s5c1s4+d6s1s2c5+s1s2d3+c1d2]
[ -c6s2c4c5-c6c2s5-s2s4s6, s6s2c4c5+s6c2s5-s2s4c6, -s2c4s5+c2c5, -
d6s2c4s5+d6c2c5+c2d3]
[ 0, 0, 0, 1]

d6s5c1c2c4  d6s5s1s4  d6c1s2c5  c1s2d3  s1d2


O6  d6s5s1c2c4  d6s5c1s4  d6s1s2c5  s1s2d3  c1d2
 d6s2c4s5  d6c2c5  c2d3 
Stanford Manipulator
 z0  (o6  o0 )   z1  (o6  o1 ) 
J1    , J2   
Joints 1,2 are revolute
 z0   z1 

 z2 
J3    Joint 3 is prismatic
0

 z3  (o6  o3 )   z4  (o6  o4 )   z5  (o6  o5 ) 


J4    , J5    , J6   
 z3   z 4   z5 
The required Jacobian matrix J

J   J1 J 2 J3 J 4 J5 J 6 
Inverse Velocity
– The relation between the joint and end-effector velocities:

X  J (q )q

where j (m×n). If J is a square matrix (m=n), the joint


velocities:
q  J 1 (q) X

– If m<n, let pseudoinverse J+ where J   J T [ JJ T ]1

q  J  (q ) X
Acceleration
– The relation between the joint and end-effector velocities:

X  J (q )q

– Differentiating this equation yields an expression for the


acceleration:
d
X  J (q )q  [ J (q )]q
dt
– Given X of the end-effector acceleration, the joint
acceleration q
d
J (q)q  X  [ J (q )]q
dt
1 d
q  J (q)[ X  J (q)]q]
dt

Vous aimerez peut-être aussi