inverse kinematics problem: input: the desired position and orientation of the tool output: the set...

15
Inverse Kinematics Problem: Input: the desired position and orientation of the tool Output: the set of joints parameters

Post on 19-Dec-2015

222 views

Category:

Documents


3 download

TRANSCRIPT

Inverse Kinematics

Problem:

Input: the desired position and orientation of the tool

Output: the set of joints parameters

Dextrous workspace – the volume ofspace which the robot end-effectorcan reach with all orientations

Reachable workspace – the volume of space which the robot end-effector can reach in at least one orientation

If L1=L2 then the dextrous space = {origin} and the reachable space = full disc of radius 2L1

If then the dextrous space is empty and the reachable space is a ring bounded by discusses with radiuses |L1- L2| and L1+L2

The dextrous space is a subset of the reachable space

Workspaces

21 LL

Solutions A manipulator is solvable if an algorithm can determine the

joint variables. The algorithm should find all possible solutions.

There are two kinds of solutions: closed-form and numerical (iterative)

• Numerical solutions are in general time expensive

We are interested in closed-form solutions:

• Algebraic Methods

• Geometric Methods

Kinematics equations of this arm:

The structure of the transformation:

Algebraic Solution

1000

0.00.10.00.0

0.0

0.0

12211123123

12211123123

03

slslcs

clclsc

TTBW

1000

0.00.10.00.0

0.0

0.0

ycs

xsc

TBW

We are interested in x, y, and (of the end-effector) By comparison of the two matrices above we obtain:

And by further manipulations:

and ……

Algebraic Solution (cont.)

12211

12211

123

123

slsly

clclx

ss

cc

21

22

21

22

2 2 ll

llyxc

222 1 cs

Algebraic Solution by Reduction to Polynomial

2

2

2

1

2sin

1

1cos

2tan

u

uu

u

u

The actual variable is u :

Example 1

1 0 0 L1

2 L2 0

3 0 0

1i1ia id I

190 902 90 3d

Kinematic Equations of The Arm

1000

L100

00cs

00sc

T1

11

11

01

1000

00sc

0100

L0cs

T22

222

12

1000

0010

d100

0001

T 323

1000

sdLs0c

csdsLcscss

ccdcLccssc

T23122

2131221121

2131221111

03

22

11

c)cos(

)cos(

c

Target

By comparison we get:

1000z

y

x

RT ),,(B

W

231

21312

21312

sdLz

csdsLy

ccdcLx

Kinematic Equations - Solution

)cdL(yx)cdL(yx 232222

23222

)arctan(tg xy

1xy

1

123

222

23

Lzsd

Lyxcd

))Lz()Lyx(d 21

22

223

23

23

2

2

cd

sd

cs

2 )tan(

Example 2

1i1ia id I

1

90 2

3

1 0 0 L1

2 0 0

3 L2 0 0

4 L3 0 04

Example 2 (cont.)

1000

0100

00cs

00sc

T 11

11

01

1000

00cs

0100

00sc

T22

22

12

1000

0100

00cs

L0sc

T 33

233

23

1000

0100

00cs

L0sc

T 44

344

34

1000

0100

0010

L001

T

4

4EE

Example 2 (cont.)

1000

sLsLsL0cs

csLcsLcsL

ccLccLccL

T234423322234234

234142313212

234142313212

0EE

1000

z0cs

y

x

T0EE

0ZZ

cZY

sZX

0EE

0EE

0EE

)3(

)2(

)1(

234423322

2344233221

2344233221

sLsLsLz

cLcLcLsy

cLcLcLcx

(*)234

234

ss

cc

Example 2 (cont.)

)arctan( xy

1

)4(cLyxcLcL)2()1( 234422

2332222

)5(sLzsLsL)3( 234423322

32

23

22

22344

2222344

LL2

LL)cLyx()sLz(3

22 c)5()4(

32

23

22

24

2224

LL2

LL)cLyx()sLz(

3c

)arctan(3

3

cs

3

233 c1s

Example 2 (cont.)

332

33

1

2

arctan

arctan2

cLLsLll

cLyxcLcLl 422

233221

sLzsLsLl 4233222

(*)),,( 324 f

ba

)sin()sin(

Lllo

3

2/12

2

2

133

)(*)sin()180sin()sin(