You are on page 1of 32

Introduction to ROBOTICS

Velocity Analysis

Jacobian

University of Bridgeport

Kinematic relations

 

1

2

3

4

5

6

 

X=FK(θ)

Kinematic relations              1

θ =IK(X)

Kinematic relations              1

Joint Space

X

  • x

y

z

 

 

Task 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

2

X  J (    ) 
X  J (
 
)

  • x

y

z

3

4

5

6

 

   J  1 (  )
 J
 1
(
)
 

  • x  

 

X

y

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

x

y

z

 

 

h (

 

q

1

q

2

q

3

q

4

q

5

q

6

 

)

6

1

 

h

1

h

2

h

3

h

4

h

5

h

6

(

q

1

,

(

q

1

,

(

q

1

,

(

q

1

,

(

q

1

,

(

q

1

,

q

2

,

,

q

2

,

,

q

2

,

,

q

2

,

,

q

2

,

,

q

2

,

,

q

6

q

6

q

6

q

6

q

6

q

6

)

)

)

)

)

)

 

6

1

Jacobian Matrix

Forward kinematics

  • X 61

h q

(

n

1

)

  • x

y

z

  • x

y

z

Jacobian Matrix Forward kinematics X 6  1  h q ( n  1 )

X

6

1

d

dt

h ( q )  n  1 X   61
h ( q
) 
n  1
X
61

  dh q ( )     dq    6 
 dh q
(
) 
dq
6
 n

q

q

  • 1

q

  • 2   

Jacobian Matrix Forward kinematics X 6  1  h q ( n  1 )
dh ( q ) J  dq
dh ( q )
J 
dq
n n  1
n
n  1

dh q dq dh q

(

)

(

)

dq dt

dq

q

J

6

n

q

n

1

Jacobian Matrix

x

y

z

   q   1     q  Jacobian is a
q 
1
q 
Jacobian is a function of
 dh q
(
) 
2
q, it is not a constant!
dq
x
6
 n
q 
y
n
n  1
h
 h
 h
1
1
1
z
q
 q
 q
1
2
n
 h
 h
 h
2
2
2
dh q
(
)
J  
 q
 q
 q
1
2
n
dq
6
 n
 h
 h
 h
6
6
6
 q
 q
 q
1
2
n
6

n

Jacobian Matrix

X

x

y

z

x

y

z

V

Linear velocity

  x    V  y     z  
 
x 
V  y 
z
 

Angular velocity

 

x

y

z

q

n 1

q

1

q

2

q

n

n 1

The Jacbian Equation

X

J

6

n

q

n

1

Example

2-DOF planar robot arm

Given l 1 , l 2 , Find: Jacobian

(x , y)

 2 l 2 l  1 1
 2
l
2
l
 1
1

x

 

y

l

1

cos(

1

sin(

1

)

2

2

)

 

1

,

2

 

1

,

2

)

)

1

cos

l

1

sin

l

2

1

l

2

h (

1

h (

2

x

 

y

1

Y

J

2

Example • 2-DOF planar robot arm – Given l , l , Find: Jacobian (x ,

h

1

1

h

2

1

h

1

2

h

2

2

l

1

sin

1

l

2

sin(

1

l

2

cos(

1

2

)

2

)

l

2

l

2

sin(

1

1

2

)

2

)

J  

 

l

1

1

cos(

cos

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

• Find the singularity configuration of the 2-DOF planar robot arm determinant(J)=0 Not full rank 

Not full rank

   x      1 X   J  
 x 
1
X 
 J
y 
 
2
l
sin
l
sin(
1
1
2
1
J 
l
cos
 l
cos(
1
1
2
1

Det(J)=0

2

0

V (x , y)   )  l sin(    )  2
V
(x , y)
)
l
sin(
) 
2
2
1
2
)
l
cos(
)
2
2
1
2
l
2
Y
 2
=0
l
 1
1
x

Jacobian Matrix

Pseudoinverse

Let A be an mxn matrix, and let

of A. If A is of full rank, then

A

A

be the pseudoinverse

can be computed as:

A

A

T

A

1

[

AA

T

]

1

[

T

A A

]

1

A

T

m

n

m

n

m

n

Jacobian Matrix

Example: Find X s.t.

1

1

0

1

2

0

x

3    

2

A

A

T

[

AA

T

]

1

1

0

2

1

1

0

5

1

1

2

1

1

4

  • 1

1

5

  • 9

4

2

Matlab Command: pinv(A) to calculate A +

x

A b

   5 1   13   9  16   
  
5
1
13
9
 16

Jacobian Matrix

Inverse Jacobian

X

Jq

J

11

J

21

J

61

q J X

1

Singularity

J

12

J

22

J

62

J

16

J

26

J

66

q

1

q

2

q

3

q

4

q

5

q

6

Jacobian Matrix • Inverse Jacobian  X  Jq       

q

5

q 1
q
1

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

Singularity

At Singularities:

the manipulator end effector cant move in certain directions.

Bounded End-Effector velocities may correspond to unbounded joint velocities.

Bounded joint torques may correspond to unbounded End-Effector forces and torques.

Jacobian Matrix

If

A

a

x

a

y

a

z

,

B

b

x

b

y

b

z

Then the cross product

 

i

j

k

A

B

a

x

a

y

a

z

 

b

x

b

y

b

z

a b

 

a b

 

  

y

z

(

a b

 

z

y

a b

)

x

a b

x

y

z

z

a b

y

x

x

Remember DH parmeter

A

i

 

c

i

s

i

0

0

-c

 

i

s

i

c

 

i

c

i

s

i

0

s

 

i

s

i

-s

 

i

c

i

c

i

0

a c

i

i

a s

i

i

d

i

1

The transformation matrix T

i

T A A

0

1

2

.....

A i
A
i

Jacobian Matrix

J  J  J .... J  1 2 n
J  J
J
....
J
1
2
n
Jacobian Matrix J  J  J .... J  1 2 n

Jacobian Matrix

2-DOF planar robot arm Given l1, l2 , Find: Jacobian

Here, n=2,

(x , y)  2 l 2 l  1 1
(x , y)
 2
l
2
l
 1
1
A i       c  i s  i 0 0

A

i

c

i

s

i

0

0

-c

 

i

s

i

c

 

i

c

i

s

i

0

s

 

i

s

i

-s

 

i

c

i

c

i

0

a c

i

i

a s

i

i

d

i

1

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

A i       c  i s  i 0 0

Z

0

Z

1

 

0

  • 0

1

 

O

0

 

0

0

0

 

,

O 1
O
1

a

1

a

1

cos

1

sin

1

0

,

O

2

a

1

a

1

cos

sin

1

1

a

2

cos(

1

a

2

sin(

1

0

)

2

2

)

19

Jacobian Matrix

2-DOF planar robot arm Given l1, l2 , Find: Jacobian

Here, n=2

J

1

z

0

(

)

o

2

z

o

0

  • 0

,

J

2

z

1

Jacobian Matrix 2-DOF planar robot arm Given l1 , l2 , Find: Jacobian • Here, n=2

(

o

2

o

1

z

(x , y)

)

  2 l 2 l  1 1
 2
l
2
l
 1
1

  • 1

Jacobian Matrix 2-DOF planar robot arm Given l1 , l2 , Find: Jacobian • Here, n=2

Jacobian Matrix

J

1

z

0

(o

2

z

0

o )

0

Z

0

(

o

2

o

0

)

 

0

0

1

 

a

1

a

1

cos

sin

1

1

a

2

cos(

1

a

2

sin(

1

0

2

)

2

)

 

a

1

cos

1

i

0

a

2

cos(

1

2

)

j

0

a

1

sin

1

a

2

sin(

 1
1

 2
2

)

a

1

sin

1

a

2

sin(

1

a

1

cos

1

a

2

cos(

1

0

2

)

2

)

k

1

0

Jacobian Matrix

 

z

(o

o )

 

Z

J

  • 2

1

(

o

2

o

1

1

)

2

z

1

 

0

0

1

 

1

a

2

cos(

a

2

sin(

1

1

0

2

2

)

)

 

 

i

0

j

0

k

1

a

2

cos(

1

2

)

a

2

sin(

1

 

)

0

a

a

2

sin(

2

cos(

0

1

1

2

2

)

)

Jacobian Matrix

J

1

a

1

sin

1

a

2

sin(

1

a

1

cos

1

a

2

cos(

1

0

0

0

1

2

)

2

)

J

2

a

2

sin(

1

2

)

a

2

cos(

1

2

)

0

0

0

1

The required Jacobian matrix J

J J J

1

2

Stanford Manipulator

The DH parameters are:  c  i  s   i A i 
The DH parameters are:
 c
i
s
i
A
i
 
0
0

-c

 

i

s

i

c

 

i

c

i

s

i

0

s

 

i

s

i

-s

 

i

c

i

c

i

0

a c

i

i

a s

i

i

d

i

1

Stanford Manipulator The DH parameters are:  c  i  s   i A

Stanford Manipulator

Stanford Manipulator 1 T  A 0 1   T 0 2  A A
 

1

T A

0

 

1

 

 

T

0

2

A A

1

2

c c

1

2

s c

1

2

 

s

0

2

s

c

1

0

0

1

c s

1

2

s s

1

2

c

2

0

 

 

 

3

T

0

A A A

1

2

3

c c

1

s c

1

 

s

0

2

2

2

s

c

1

0

0

1

c s

1

s s

1

c

2

0

2

2

d s

2

1

d c

2

1

0

1

z

0

 

0

0

1

 

z

1

d

3

c s

1

2

d s

2

1

d

3

s s

1

2

d c

2

1

d c

3

2

1

O

0

O

1

s

1

c

1

0

z

2

c s

1

2

s s

1

2

c

2

z

3

c s

1

2

s s

1

2

c

2

 

0

0

0

O

 

2

d s

2

1

d c

2

1

0

O

3

d

3

c s

1

2

d s

2

1

d

3

s s

1

2

d c

2

1

d c

3

2

Stanford Manipulator

4

T A A A A

0

1

2

3

4

5

T A A A A A T A A A A A A

0

6

0

1

2

3

4

5

1

2

3

4

5

6

T4 =

[ c1c2c4-s1s4,

-c1s2, -c1c2s4-s1*c4, c1s2d3-sin1d2]

[ s1c2c4+c1s4,

-s1s2, -s1c2s4+c1c4, s1s2d3+c1*d2]

[-s2c4, -c2, s2s4, c2*d3]

[

0,

0, 0, 1]

z

4

 

c c

1

2

s

4

s c

1

2

s

4

s s

2

4

s c

1

4

c c

1

4

O

4

d

3

c s

1

2

d s

2

1

d

3

s s

1

2

d c

2

1

d c

3

2

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]

z

5

c c

1

2

c

4

s

5

s s

1

4

s

5

c s

1

2

c

5

s c

1

2

c

4

s

5

c s

1

4

s

5

s s

1

2

c

5

s c s

2

4

5

c c

2

5

z

5

c c

1

2

c

4

s

5

s s

1

4

s

5

c s

1

2

c

5

s c

1

2

c

4

s

5

c s

1

4

s

5

s s

1

2

c

5

s c s

2

4

5

c c

2

5

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]

z

5

c c

1

2

c

4

s

5

s s

1

4

s

5

c s

1

2

c

5

s c

1

2

c

4

s

5

c s

1

4

s

5

s s

1

2

c

5

s c s

2

4

5

c c

2

5

O

5

d

3

c s

1

2

d s

2

1

d

3

s s

1

2

d c

2

1

d c

3

2

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]

O

6

d6s5c1c2c4

d6s5s1s4

d6c1s2c5

c1s2d3

d6s5s1c2c4

d6s5c1s4

d6s1s2c5

s1s2d3

d6s2c4s5

d6c2c5

c2d3

s1d2

c1d2

Stanford Manipulator

J

1

z

0

(

o

6

z

0

o

0

)

,

J

2

z

1

(

o

6

z

1

o

1

)

Joints 1,2 are revolute

J

3

z

2

 

0

Joint 3 is prismatic

J

4

z

3

(

o

6

z

3

o

3

)

,

J

5

z

4

(

o

6

z

4