Advanced Robotics - C01 - Gmarani.org

jadesoreΤεχνίτη Νοημοσύνη και Ρομποτική

13 Νοε 2013 (πριν από 3 χρόνια και 9 μήνες)

110 εμφανίσεις

1

C01



2009.01.20

Advanced Robotics for Autonomous Manipulation



Department of Mechanical Engineering

ME 696


Advanced Topics in Mechanical Engineering


C01: Geometry of robotics structures

2

Summary


1.
Vectors

(definitions

and

operations)

2.
Coordinate

systems

3.
Rotation

matrices

4.
Representation

of

rotation

matrices

5.
Transformation

matrices

6.
Geometry

of

robotics

structures





C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example



ME696
-

Advanced Robotics

Vectors: definitions

3

Point


Point

in

a

Cartesian

system
:

Spherical

reference

system
:

Line

segment
:

a

part

of

a

line

that

is

bounded

by

two

distinct

end

points
.

Oriented

line

segment
:





Given

two

oriented

line

segments

[P
-
Q]

and

[P`
-
Q`],

they

are

equipollent

if

they

have

the

same

direction,

length

and

orientation
.

Given

an

oriented

segment

[P
-
Q],

a

correspondent

free

vector

is

the

whole

class

of

line

segments

equipollent

to

[P
-
Q]
.

Note

the

difference

with

the

bound

vector
.


ME696
-

Advanced Robotics


C01



3
2
1
,
,
c
c
c
P





,
,
r

P
i

j

k

p
1

p
3

P

Q

P`

Q`


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Vectors: operations

4

Dot (scalar) product




Properties
:




Cross

(vector)

product





Properties
:


ME696
-

Advanced Robotics


C01

)
cos(
2

v
v
v
v
1
2
1


v
1


v
2




v
v
v
v
2
1
2
1



v
a
b
v
a
v
b






(
)
)
sin(
2

v
v
v
v
1
2
1





v
1


v
1


v
1

v
2

v
v
v
v
1
2
2
1




v
a
b
v
a
v
b






(
)

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Coordinate systems

5

Coordinate systems


In

geometry

and

kinematics,

coordinate

systems

are

used

not

only

to

describe

the

(linear)

position

of

points,

but

also

to

describe

the

angular

position

of

axes,

planes,

and

rigid

bodies
.

In

the

latter

case,

the

orientation

of

a

second

(typically

referred

to

as

"local")

coordinate

system,

fixed

to

the

node,

is

defined

based

on

the

first

(typically

referred

to

as

"global"

or

"world"

coordinate

system)
.



ME696
-

Advanced Robotics


C01

O
a

< a >

< 0 >

k

i

j

i

i

j

j

k

k

< b >

O
b


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Coordinate systems

6

Coordinate systems












< a >


{ O
a
,
i
a
,
j
a
,
k
a

}

< b >


{ O
b
,
i
b
,
j
b
,
k
b

}


Any vector can be uniquely expressed w.r.t either <a> and <b>:


v =
c
1

i
a

+ c
2

j
a

+
c
3

k
a

v =
h
1

i
b

+ h
2

j
b

+
h
3

k
b


ME696
-

Advanced Robotics


C01

O
a

< a >

< 0 >

k

i

j

i

i

j

j

k

k

< b >

O
b


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Coordinate systems

7

Orthogonal systems










The reference frame < a >


{
O
a
,
i
a
,
j
a
,
k
a

} is
orthogonal

with right
-
handed orientation if:




orthogonal

with left
-
handed orientation:





If
i

,

j

,

k

are also of unit length the frame are
orthonormal
.



ME696
-

Advanced Robotics


C01

k
i
j
i
j
a
a
a
a
a




,
.
0
k
i
j
i
j
a
a
a
a
a





,
.
0
O
a

< a >

i

j

k


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Algebraic vector

8

Algebraic vector













Given 2 free vectors
v

and
w
in an
orthonormal
-
right
-
handed reference
system we have:



Dot product:



Cross product: where:


ME696
-

Advanced Robotics


C01

a
c
c
c
v













1
2
3
3
b
h
h
h
v













1
2
3
3
O
a

< a >

i

i

j

j

k

k

< b >

O
b

P

Q

v
w
v
w


a
T
a


a
a
a
(
)
v
w
v
w





a
c
c
c
c
c
c
v















0
0
0
3
2
3
1
2
1

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

9

Position of reference systems











Given two
orthonormal

reference systems <a> and <b>, the Rotation
Matrix of <b> with respect to <a> is defined by:



Properties:



ME696
-

Advanced Robotics


C01



b
a
a
b
a
b
a
b
R





i
j
k
3
3
a
b
T
a
b
i
j

0
a
b
T
a
b
i
k

0
a
b
T
a
b
j
k

0
a
b
T
a
b
i
i

1
a
b
T
a
b
j
j

1
a
b
T
a
b
k
k

1
b
a
b
a
T
R
R


1
det(
)
b
a
R


1
O
a

< a >

i

i

j

j

k

k

< b >

O
b

R
b
a

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

10

Change of reference system











Problem statement:

Given a free vector
v

with known projection
w.r.t
. the frame <b>, we
want to compute the projection
w.r.t
. the frame <a>:





Hence:



similarly:


ME696
-

Advanced Robotics


C01

b
b
b
b
b
b
b
z
y
x
k
j
i
v



a
b
a
b
b
a
b
b
a
b
x
y
z
v
i
j
k



a
b
a
b
R
v
v

b
a
b
a
R
v
v

O
a

< a >

i

i

j

j

k

k

< b >

O
b

R
b
a

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

11

Change of reference system for the cross
-
product operator











ME696
-

Advanced Robotics


C01



a
c
c
c
c
c
c
v















0
0
0
3
2
3
1
2
1


a
a
a
(
)
v
w
v
w





b
b
b
(
)
v
w
v
w













a
b
b
a
b
b
a
b
b
b
a
b
b
a
T
a
R
R
R
R
v
w
v
w
v
w
v
w











a
b
a
b
b
a
T
R
R
v
v




C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

12

Concatenation of rotation matrices











Problem statement:


Given n reference systems, we want to compute the rotation matrix
between 2 frames <h> and <k> such as:



Algorithm:

1)
Identify an oriented path from <k> to <h>

2)
Pre
-
multiply the vector
k
v

with all the rotation matrices encountered
(if the arrow is not opposite the rotation matrix is transposed)




ME696
-

Advanced Robotics


C01

?
< 0 >
< 1 >
< i >
< j >
< k >
< h >
h
k
h
k
R
v
v

h
h
j
T
j
i
T
k
i
k
R
R
R
v
v

k
h
h
j
T
j
i
T
k
i
R
R
R
R


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Representation of rotation matrices

13

Exponential representation






Problem statement:

The frame <b>, initially coincident with <a>, is rotated of an angle
theta around the axis specified by v.




Expanding the exponential we have:


ME696
-

Advanced Robotics


C01

k
a

i
a

j
a

i
b

j
b

k
b



b
a
O
O



b


a
v



b
a
R
R
e



(
,
)
v
v




e
v
v
p
c
v
v
p
v
s
v
v
p
v
s
v
v
p
v
s
v
v
p
c
v
v
p
v
s
v
v
p
v
s
v
v
p
v
s
v
v
p
c
x
x
x
y
z
x
z
y
x
y
z
y
y
y
z
x
x
z
y
y
z
x
z
z
v








































c
s
sin
p







cos(
),

(
),

cos(
).




1
R
R
(
,
)
(
,
)
v
v




R
R
k
(
,
)
(
,
)
v
v





2
R
k
I
(
,
)
v
v
2




C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Representation of rotation matrices

14

Exponential representation






Special cases:







ME696
-

Advanced Robotics


C01

k
a

i
a

j
a

i
b

j
b

k
b



b
a
O
O



b


a
v

R
sin
sin
(
,
)
cos(
)
(
)
(
)
cos(
)
i

















1
0
0
0
0
R
sin
sin
(
,
)
cos(
)
(
)
(
)
cos(
)
j

















0
0
1
0
0
R
sin
sin
(
,
)
cos(
)
(
)
(
)
cos(
)
k

















0
0
0
0
1

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

15

Roll
-
Pitch

Yaw (Euler)



ME696
-

Advanced Robotics


C01

j
0

i
0

z
0k

a

(yaw)

b

(pitch)

g

(roll)

k
1



k
0

j
1

i
1

i
2

j
2



j
1

k
2

j
3

k
3

i
3



i
2

g

a

b



a


b
1


b
2


b












b
a
R
R
R
R
e
e
e





k
j
i
k
j
i
,
,
,
a
b
g
a
b
g

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Rotation matrices

16

Roll
-
Pitch

Yaw (Euler)



ME696
-

Advanced Robotics


C01













b
a
R
R
R
R
e
e
e





k
j
i
k
j
i
,
,
,
a
b
g
a
b
g
b
a
R


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Transformation matrices

17

Change of reference system for points in space










Problem statement:

Given a generic point P in the space, compute its coordinates
w.r.t
. the
frames <a> and <b>





We have:


ME696
-

Advanced Robotics


C01

k

i

j

i

i

j

j

k

k



P




0
O
a


a
a
P
b
P


b
O
b
a
a
a
P
P
O


(
)
b
b
b
P
P
O


(
)
a
b
a
P
P
(
)

a
a
b
b
a
b
P
O
R
P



C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Transformation matrices

18

Change of reference system for points in space











Point P in <b>: Representation of P in homogeneous coordinates:






Transformation matrix:



ME696
-

Advanced Robotics


C01

k

i

j

i

i

j

j

k

k



P




0
O
a


a
a
P
b
P


b
O
b
b
b
b
b
P
x
y
z











b
b
b
b
P
x
y
z













1
b
a
b
a
a
b
T
R
O













0
0
0
1
a
a
b
b
a
b
P
O
R
P


a
b
a
b
P
T
P


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Geometry of robotics structures

19

Multibody

systems


















ME696
-

Advanced Robotics


C01

Link

Giunto




i
1


i



i
1

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Geometry of robotics structures

20

Denavit
-
Hartenberg


















ME696
-

Advanced Robotics


C01


C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


Geometry of robotics structures

21

Multibody

systems


















ME696
-

Advanced Robotics


C01



1
0
,


1
1
,


1
2
,


3
2
,


3
1
,


1
3
,


2
1
,


2
2
,


2
3
,


2
4
,


2
5
,


1
4
,


1
5
,


1
6
,

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example




Simulation Environment

Robotics Developer Studio

22

RDS: Simple application
example


5 Degrees of freedom
linear chain.

Link 1

Link 2

Link 3

Joint 1

Joint 2

Joint 3

Link 5

Joint 5

r
2
oj

C
ontents


1. Vectors


2. Coordinate sys.


3.
Rotation
Matrices


4.
Representation


5.
Transformation

M.


6.
Geometry


7. Example


End of presentation