Recap D-H Just a quick reminder with another example.

Post on 17-Jan-2016

220 views 1 download

Transcript of Recap D-H Just a quick reminder with another example.

Recap D-H

Just a quick reminder with another example

6 DOF revolute robot

6 DOF revolute robot

6 DOF revolute robot

1 234 5 6 234 6 1 5 6 1 234 5 6 234 6 1 5 6 1 234 5 1 5 1 234 4 23 3 2 2

1 234 5 6 234 6 1 5 6 1 234 5 6 234 6 1 5 6 1 234 5 1 5 1 234 4 23 3 2 2

234 5 6 234 6 234 5 6 234 6 234 5

C C C C S S S S C C C C S S C S S S C C S S C C C a C a C a

S C C C S S C S S S C C S S C C S S S C S C C S C a C a C a

S C C C S S C S C C S S

234 4 23 3 2 2

0 0 0 1

S a S a S a

Inverse Kinematic solution

As previously, to solve for the 6 angles, successively premultiply both matrices with An

-1 matrices, starting with A1

-1 . At each stage it is possible to yield useful results… …from large matrices and complex trig simplification

due to many coupled angles. Hence, results summarised here. If you really want to know read Niku p87-93 (76-80)

• (who obtained it from Paul, R.P. “Robot Manipulators, Mathematics, Programming & Control” MIT Press, 1981)

Summary for 6 d.o.f revolute robot

Don’t panic this is all in the Kinematics Data sheet!

zyx

xy

yxz

zyx

zyx

yx

nCnSnCSS

aSaCC

aCSpCpaSaSpaaCaSaaCS

aaaSpaCSpCpCaa

aCaSaCS

CpSp

2341123466

1155

42341133423423323

23

223322

23

22

24234

24234113323

23411234234

111

2

Jacobian & Differential Motions

Look at velocity relationships rather than position.

Robot Dynamics

Previously we have only considered static robot mechanisms but they move!

Need to consider the velocity relationships between different parts of the robot mechanism.

Like the engineering dynamics you have already studied, we consider small movements i.e. a differential motion which is over a small period of time.

Consider a 2 DOF Mechanism

1

2VA

VB (if VA = 0)VB/A

VB = VA + VB/A

2 DOF mechanism

This equation can be expanded and written in matrix form:

2 DOF mechanism Or differentiate the equations that describe

the location of point B:

If you didn’t understand the last slide…

All dx, dy and dθ should be:

Hence:

ly respective and ,dt

d

dt

dy

dt

dx

dt

ddt

d

lll

lll

dt

dydt

dx

B

B

2

1

21221211

21221211

coscoscos

sinsinsin

Jacobian

It is a representation of the geometry of the elements of a mechanism in time.

In robotics, it relates joint velocities to Cartesian velocities of a point of interest e.g. the end-effector.

Joint differential motionsEnd-effector differential motions

displacement motions

rotation motions

Jacobian dx, dy, dz (in [D]) represent the differential

motions of the end-effector along the x-, y-, z-axes respectively.

δx, δy, δz (in [D]) represent the differential rotations of the end-effector along the x-, y-, z-axes respectively.

Joint differential motionsEnd-effector differential motions

displacement motions

rotation motions

Jacobian

[Dθ] represents the differential motions of the joints

If matrices [D] and [Dθ] are divided by dt, they will represent the velocities.

Joint differential motionsEnd-effector differential motions

displacement motions

rotation motions

Jacobian Matrix compared with kinematics and with an alternative notation

6

5

4

3

2

1

6

5

4

3

2

1

z

y

x

Joint Space World Space

Forward

Inverse

Kinematics

Jacobian Matrix: Relationship between joint space velocity with world space velocity

z

y

x

z

y

x

Jacobian Matrix

Jacobian

z

y

x

z

y

x

1

2

1

6

)(

nn

n

q

q

q

dq

qdf

nn

n

n

n

q

f

q

f

q

f

q

f

q

f

q

fq

f

q

f

q

f

dq

qdfJ

6

6

2

6

1

6

2

2

2

1

2

1

2

1

1

1

6

)(

Jacobian is a function of q, a joint variable (e.g. length or angle), it is not a constant!

Example 1

J, the Jacobian of a robot at a particular time is given. Calculate the linear and angular differential motions of the robots “Hand” frame for the given joint differential motions Dθ

Example 1

z

y

x

dz

dy

dx

JDD

DJ

2.0

1.0

0

1.0

1.0

0

2.0

0

0

1.0

1.0

0

100000

000100

002000

000010

000101

010002

2.0

0

0

1.0

1.0

0

,

100000

000100

002000

000010

000101

010002

Differential Motions of a Frame

Differential motions of a frame – relate to differential motions of the robot

Differential translation

Trans (dx, dy, dz)

1000

100

010

001

dz

dy

dx

Differential Rotations

1000

0100

001

001

,Rot

1000

010

0010

001

,Rot,

1000

010

010

0001

,Rot

z

z

zz

y

y

yyx

xxx

Approximate:

sin δx ≈ δx (in radians)

cos δx ≈ 1

Differential Rotation @ some random Axis k̂

1000

01

01

01

1000

01

01

01

1000

0100

001

001

1000

010

0010

001

1000

010

010

0001

,Rot,Rot,Rot,Rot

xy

xz

yz

zyxzxy

xzyxzyx

yz

z

z

y

y

x

x

zzyyxxdk

Any order SAME ANSWERvelocities “commutative”

Neglect higher order differentials, e.g. δxδy→0

Example 2

Find total differential transformation from 3 small rotations: δx = 0.1, δy = 0.05, δz = 0.02 radians.

1000

011.005.0

01.0102.0

005.002.01

1000

01

01

01

,Rotxy

xz

yz

dk

Differential Transformations of a Frame

If you have an original frame T

TIdkdzdydxdT

TTdkdzdydxdT

TdkdzdydxdTT

,Rot,,Trans

,Rot,,Trans

,Rot,,Trans

Unit or Identity matrix I

Differential Transformations of a Frame

[dT ] expresses the change in the frame after the differential transformation:

Idkdzdydx

TdT

,Rot,,Trans

Differential operator

Differential Transformations of a Frame

Differential operator Δ

0000

0

0

0

1000

0100

0010

0001

1000

01

01

01

1000

100

010

001

,Rot,,Trans

dzxy

dyxz

dxyz

xy

xz

yz

dz

dy

dx

Idkdzdydx

This is not a transformation nor a frame, merely an operator.

Example 3 (part A)

Example 3A - solution

Differential Change – Example 3B

Find the location & orientation of frame B

Differential changes between frames

Differential operator Δ

Is relative to a fixed reference frame, UΔ Define a differential operator TΔ relative to the

current frame T. As TΔ relative to the current frame T, we need

to post-multiply (as we did in lecture 1).

Idkdzdydx ,Rot,,Trans

TTTdT

Differential changes between frames

1000

1

aP

oP

nP

zyx

zyx

zyx

aaa

ooo

nnn

T

T

T

T

TT

TTTT

TT

1

11

0000

0

0

0

dzxy

dyxz

dxyz

After some long derivation:

TΔ is made to look like Δ matrix where:

0000

0

0

0

dzxy

dyxz

dxyz

TTT

TTT

TTT

T

dpadzaz

dpodyoy

dpndxnx

TT

TT

TT

Example 3 Again Part C

Find BΔ: From Boriginal matrix

From the differential operator OR differential transformation description

Example 3C continued

Example 3 – part D, alternative

Alternatively BΔ can be found using:

Same result as before!

Differential Motion of robot From earlier slide:

How are differential motions accomplished by the robot?

Joint differential motionsEnd-effector differential motions

displacement motions

rotation motions

To Calculate the Jacobian

Next lecture!

Jacobian Matrix Inverse Jacobian

Singularity• rank(J)<min{6,n}, • Jacobian Matrix is less than full rank• Jacobian is non-invertible• Occurs when two or more of the axes of the robot form a

straight line, i.e., collinear

• Avoid it

666261

262221

161211

JJJ

JJJ

JJJ

qJY

6

5

4

3

2

1

q

q

q

q

q

q

YJq 1

5q

1q