cs225a-2020 · apr 7: introduction & course review may 7: project proposal (presentation) apr...

43
CS225A Experimental Robotics Oussama Khatib

Upload: others

Post on 26-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

CS225A

Experimental Robotics

Oussama Khatib

Page 2: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

ASIMO

Page 3: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Kinematics

Page 4: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Operational Coordinates

A set of     independent configuration parameters0m

01 2, , , mx x x

number of degrees of freedomof the end‐effector.

0 :m

Operational point1 :nO

10n{0}

Page 5: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

0n m

Redundancy

Degrees of redundancy: 0n m

A robot is said tobe redundant if

Page 6: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

degrees of redundancy/task:taskn mtaskn m

Task Redundancy

Page 7: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

• Forward Kinematics

• Inverse Kinematics

Page 8: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Denavit‐Hartenberg (DH) Parameters

1iR

1iz

1iy

ix

iR

1ix

iz

ii ia

1i

1iLink

1ia

ijoint

iLink

1ijoint

Page 9: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Homogeneous Transformation

( 1) ( 1) 1 1, , ,i i i i i i i iT T a

( 1)

( 1) ( 1) ( 1) ( 1)( 1)

( 1) ( 1) ( 1) ( 1)

cos sin 0sin cos cos cos sin sinsin sin cos sin cos cos

0 0 0 1

i i i

i i i i i i ii i

i i i i i i i

a

T

Page 10: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

0( 1) 01 1 12 2 ( 1) ( 1)( ) ( ) ( ) ( )n n n n n nT q T q T q T q T

Geometric ModelForward Kinematics

1nR

10n0R

Page 11: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

( 1) ( 1)0( 1)

( ) ( )( )

0o n o n

n

R q qT q

I

m equations

( )x G q

( )( )

p

r

x qx

x q

Geometric ModelForward Kinematics

1nR

10n0R

Page 12: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Representations

p

r

xx

x

•Cartesian•Spherical•Cylindrical•….

•Euler Angles•Direction Cosines•Euler Parameters

1nR

10n0R

Page 13: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Position Representations

is obtained from( )px q 0( 1) ( )n q

, ,r •Spherical

•Cylindrical , , z

z

r10n

x

y

•Cartesian , ,x y z

Page 14: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Orientation Representation

is obtained from( )rx q 0( 1) ( )nR q

0( 1)nR

1nR

10n0R

Page 15: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Direction Cosines

11 12 13

0( 1) 21 22 23

31 32 33

n

r r rR r r r

r r r

0( 1) 1 2 3( ) ( ) ( ) ;nR r q r q r q

1

2

3

( )( )( )

r

r qx r q

r q

0( 1)nR

1nR

10n0R

Orientation Representation

Page 16: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Euler Angles

0z x

0( 1)nR R R R

( 1)nx z

( 1)nz

0x

0z

( 1)ny

x

0y

( 1)nx

( 1)nz

Page 17: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

0( 1) ( )n

c c s c s c s s c c s sR q s c c c s s s c c c c s

s s s c c

( )( )( )

r

qx q

q

11 12 13

0( 1) 21 22 23

31 32 33

n

r r rR r r r

r r r

0x

0z

( 1)ny

x

0y

( 1)nx

( 1)nz

Euler Angles

Page 18: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Singularity of the representation

213 23 33( ) sgn arccos 1 ;q r r r

33 1r

33( ) arccos ;q r

231 32 33( ) sgn arccos 1 ;q r r r

k:(integer)k 33 1r

or are defined‐

Euler Angles

0x

0z

( 1)ny

x

0y

( 1)nx

( 1)nz

YB

XA

YA

ZB

XB

( )

( )

ZA

Page 19: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Quaternion

Rotations:Product of two plane symmetries

Euler Parameters

Page 20: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

wv

u2

cos 2u v sin 2u v w

Euler Parameters

Page 21: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Normality condition

0 cos 2 ;

2 2 2 20 1 2 3 1

1 1 sin 2 ;w 2 2 sin 2 ;w 3 3 sin 2 ;w

Euler Parameters

Page 22: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Rotation Matrix

2 20 1 1 2 0 3 1 3 0 2

2 20( 1) 1 2 0 3 0 2 2 3 0 1

2 21 3 0 2 2 3 0 1 0 3

2 1 2 2

( ) 2 2 1 2

2 2 2 1

nR q

11 12 13

0( 1) 21 22 23

31 32 33

n

r r rR r r r

r r r

Page 23: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Sign Determination

0 1 0 2 0 3 1 2 1 3 2 3, , , , and

0 32 23 11 22 33sgn 1 ;2

r r r r r

1 13 31 11 22 33sgn 1 ;2

r r r r r

2 21 12 11 22 33sgn 1 ;2

r r r r r

3 11 22 33 1 ;2

r r r

where 1

Page 24: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Lemma: For all rotations, at least one of theEuler Parameters has a magnitude larger than or equal to 1/2.

Algorithm

with

Page 25: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Basic Jacobian

F Ix

H K( 6 1)

vJ q qxn nxG J

( ) (( ) 0 6 1)

{0}

angular velocity

linear velocity

v

Page 26: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Jacobian for a Task X

( )xx J q q

0( ) ( ) ( )xJ q E x J q

p

r

xx

x

For a representation

0 ( )v

J q q

Basic Jacobian

The corresponding Task Jacobian

Decomposed

Page 27: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

00

p p vx

rr

J E JJEJ J

0( ) ( ) ( )xJ q E x J q

0 ( )v

J q q

Jacobian and Basic Jacobian

Page 28: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Position Representations

3( )P pE x ICartesian Coordinates ( , , )x y z

cos sin 0

( ) sin cos 0

0 0 1

P pE x

Cylindrical Coordinates ( , , )z Using ( ) ( cos sin )T Tx y z z

Page 29: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

cos sin sin sin cos

( ) sin cos 0sin sincos cos sin cos sin

p pE x

Spherical Coordinates ( , , )

( ) ( cos sin sin sin cos )T Tx y z Using

Page 30: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Euler Angles

Singularity of the representationfor k

1

; ( ) 0

0

r r r

s c c cs s

x E x c ss cs s

Page 31: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Revolute Joint i i iZ q

i i iV Z q Prismatic Joint

jVi

The Jacobian Explicit Form

Page 32: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Revolute

Linear Vel: jVAngular Vel:

jV

i inP

inP

i inP

Prismatic

none

Effector Linear Velocity

Effector Angular Velocity

1[ ( )]

n

i i i i ini

v V P

1i

n

ii

Effector

v

i

i

i

i i iV Z q

i i iZ q

i

jV

The Jacobian Explicit Form

Page 33: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

1( ) i

n

i ii

Z q

1[ ( )]

n

i i i i ini

iv Z P qZ

Revolute

Linear Vel: jVAngular Vel:

jV

i inP

inP

i inP

Prismatic

none

Effector

i i iV Z q

i i iZ q

v

i

i

i

Effector Linear Velocity

Effector Angular Velocity

i

jV

The Jacobian Explicit Form

Page 34: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

1( ) i

n

i ii

Z q

1

ˆ( )n

i i i i iini

v P qZ Z

Revolute

Linear Vel: jVAngular Vel:

jV

i inP

inP

i inP

Prismatic

none

Effector

i i iV Z q

i i iZ q

v

i

i

i

Effector Linear Velocity

Effector Angular Velocity

i

jV

The Jacobian Explicit Form

Page 35: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

1

21 1 1 1 1 2 2 2 2 2( ) ( )n n

n

qq

v Z Z P Z Z P

q

vv J q

1

21 1 2 2 n n

n

qq

Z Z Z

q

J q

The Jacobian Explicit Form

Page 36: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

1

21 1 1 1 1 2 2 2 2 2

ˆ ˆn n

n

qq

v Z Z P Z Z P

q

vv J q

1

21 1 2 2 n n

n

qq

Z Z Z

q

J q

The Jacobian Explicit Form

Page 37: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

vxyz

xxq

qxq

qxq

qPP P P

nn

F

HGGI

KJJ

. . .

1

12

2

1 2

P P Pv

n

x x xJq q q

v

w

JJJ

Matrix       (direct differentiation)vJ

The Jacobian Explicit Form

Page 38: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Vector Representation Jxq

xq

xq

Z Z Z

P P P

n

n n

FHGG

IKJJ

1 2

1 1 2 2

. . .

In {0}

0

0

1

0

2

0

10

1 20

20

Jxq

xq

xq

Z Z Z

P P P

n

n n

F

HGG

I

KJJ

. . .

The Jacobian Explicit Form

Page 39: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

J in Frame {0}

01

0

2

0 0

1 10

2 20 0

J qx

qx

qx

R Z R Z R Z

P Pn

P

n n

F

HGG

I

KJJ

( ) ( ) ( )

.( . ) .( . ) .( . )

0iZ 0 ;i

i iR Z001

iiZ Z

Page 40: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Stanford Scheinman Arm

Page 41: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

J F

HGG

I

KJJ1 13Z P 2 23Z P 3Z

2Z1Z 4Z 5Z 6Z

0 0 0

0

Z6

Z0 X6X0

d3d2

Y6Y0

Page 42: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

0 0 0

01 2 3

0 0 0 0 01 2 4 5 6

0 0 0

0

P P Px x xJ q q q

Z Z Z Z Z

c d s s d c c d c ss d c s d s c d s s

s d cs c s c c s s c c c c s s s s c s c

c s s s c s c c s c c s c s s s s cc s s s c s c c

L

N

MMMMMMM

O

Q

P1 2 1 2 3 1 2 3 1 2

1 2 1 2 3 1 2 3 1 2

2 3 2

1 1 2 1 2 4 1 4 1 2 4 5 1 4 5 1 2 5

1 1 2 1 2 4 1 4 1 2 4 5 1 4 5 1 2 5

2 2 4 2 4 5 5 2

0 0 00 0 0

0 0 0 00 00 01 0 0

PPPPPP

Stanford Scheinman Arm Jacobian

Page 43: cs225a-2020 · Apr 7: Introduction & Course Review May 7: Project Proposal (Presentation) Apr 9: Simulation and Graphics May 12: Individual Group Meetings Apr 10: Software Setup (Special

Jx

Velocity/Force Duality

T FJ