slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Inverse Kinematics PowerPoint Presentation
Download Presentation
Inverse Kinematics

Loading in 2 Seconds...

play fullscreen
1 / 66

Inverse Kinematics - PowerPoint PPT Presentation


  • 79 Views
  • Uploaded on

Inverse Kinematics. Set goal configuration of end effector calculate interior joint angles. Analytic approach – when linkage is simple enough, directly calculate joint angles in configuration that satifies goal. Numeric approach – complex linkages

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Inverse Kinematics' - donald


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Inverse Kinematics

Set goal configuration of end effector

calculate interior joint angles

Analytic approach – when linkage is simple enough, directly calculate joint angles in configuration that satifies goal

Numeric approach – complex linkages

At each time slice, determine joint movements that take you in direction of goal position (and orientation)

slide2

Forward Kinematics - review

Articulated linkage – hierarchy of joint-link pairs

Pose – linkage is a specific configuration

Pose Vector – vector of joint angles for linkage

Degrees of Freedom (DoF) – of joint or of whole figure

Types of joints: revolute, prismatic

  • Tree structure – arcs & nodes
    • Recursive traversal – concatenate arc matrices
    • Push current matrix leaving node downward
    • Pop current matrix traversing back up to node
slide3

Inverse Kinematics

End Effector

L1

q3

q2

L3

L2

q1

Goal

slide4

Inverse Kinematics

Underconstrained – if fewer constraints than DoFs

Many solutions

Overconstrained – too many constraints

No solution

Reachable workspace – volume the end effector can reach

Dextrous workspace – volume end effector can reach in any orientation

slide5

Inverse Kinematics - Analytic

Given arm configuration (L1, L2, …)

Given desired goal position (and orientation) of end effector: [x,y] or [x,y,z, y1,y2, y3]

Analytically compute goal configuration (q1,q2)

Interpolate pose vector from initial to goal

slide7

Analytic Inverse Kinematics

Multiple solutions

Goal

(X,Y)

slide8

Analytic Inverse Kinematics

L2

180- q2

L1

(X,Y)

q1

qT

slide9

Analytic Inverse Kinematics

L2

180- q2

L1

(X,Y)

q1

Y

qT

X

slide11

Analytic Inverse Kinematics

L2

(X,Y)

L1

180- q2

q1

qT

Y

X

slide13

Iterative Inverse Kinematics

When linkage is too complex for analytic methods

At each time step, determine changes to joint angles that take the end effector toward goal position and orientation

Need to recompute at each time step

slide14

Inverse Jacobian Method

a2

d2=EF-J2

End Effector

a2 x d2

q2

- Compute instantaneous effect of each joint

- Linear approximation to curvilinear motion

- Find linear combination to take end effector towards goal position

slide15

Inverse Jacobian Method

Instantaneous linear change in end effector for ith joint

= (EF - Ji) x ai

slide16

Inverse Jacobian Method

What is the change in orientation of end effector induced by joint i that has axis of rotation ai

and position Ji?

Angular velocity

slide17

Inverse Jacobian Method

Solution only valid for an

instantaneous step

Angular affect is really

curved, not straight line

Once a step is taken, need

to recompute solution

slide18

Set up equations

yi: state variable

xi : system parameter

fi : relate system parameters to state variable

Inverse Jacobian Method

- Mathematics

slide19

Matrix Form

Inverse Jacobian Method

- Mathematics

slide20

Inverse Jacobian Method

- Mathematics

Use chain rule to differentiate equations to relate changes in system parameters to changes in state variables

slide21

Inverse Jacobian Method

- Mathematics

Matrix Form

slide22

Change in position (and orientation) of end effector

Change in joint angles

Linear approximation that relates change in joint angle to change in end effector position (and orientation)

Inverse Jacobian Method

slide25

= (S - J1) x a1

= w1

Inverse Jacobian Method

slide27

The Matrices

N DoFs

V – desired linear and angular velocities

3x1, 6x1

J – Jacobian

Matrix of partials

3xN, 6xN

N x 1

q – change to joint angles (unknowns)

slide29

LU decomposition

Solving using the Pseudo Inverse

slide30

A solution of this form

When put into this formula

Like this

After some manipulation, you can show that it…

…doesn’t affect the desired configuration

Adding a Control Term

But it can be used to bias

The solution vector

slide31

Desired angles and corresponding gains are input

‘z’ is H differentiated

Form of the Control Term

Bias to desired angles

(not the same as hard joint limits)

Where the deviation is large, you bump up the solution vector in such a way that you don’t disturb the desired effect

slide32

Include this in equation

Isolate vector of unknown

Rearrange to isolate the inverse

Some Algebraic Manipulation

slide33

LU decomp.

Solving the Equations

slide34

Control Term

Use to bias to desired mid-angle

Does not enforce joint angles

Does not address “human-like” or “natural” motion

Only kinematic control – no forces involved

slide35

Other ways to numerically IK

Jacobian transpose

Alternate Jacobian – use goal position

HAL – human arm linkage

Damped Least Squares

CCD

slide36

Jacobian Transpose

Use projection of effect vector onto desired movement

slide39

Alternate Jacobian

G

Use the goal postion instead of the end-effector!!??

!?

slide40

substitution

Solve

Damped Least Squares

G

slide41

Hueristic Human-Like Linkage (HAL)

7 DoF linkage

RA (q1,q2 ,q3) , RB ( q4), RC(q5,q6 ,q7)

3 DoF

G

Decompose into simpler subproblems

1 DoF

Set hand position and rotation based on relative position of Goal to shoulder

3 DoF

Fix wrist position – use as Goal

slide42

L

L1

L2

Hueristic Human-Like Linkage (HAL)

s

Set q4 based on distance between shoulder and wrist

w

e

Assume axis of elbow is perpendicular to plane defined by s, e, w use law of cosines

slide43

Hueristic Human-Like Linkage (HAL)

s

q4

w

e

Elbow lies on circle defined by w, s & q4

Determine elbow position based on heuristics

For example:

project forearm straight from hand orientation

if arm intersects torso or a shoulder angle exceeds joint limit (or exceeds comfort zone) –

Clamp to inside of limits

slide44

Hueristic Human-Like Linkage (HAL)

s

q4

w

e

From e and s, determine RA

From e and w and hand orientation, determine RB

slide45

Cyclic-Coordinate Descent

Traverse linkage from distal joint inwards

Optimally set one joint at a time

Update end effector with each joint change

At each joint, minimize difference between end effector and goal

Easy if only trying to match position; heuristic if orientation too

Use weighted average of position and orientation.

slide47

Cyclic-Coordinate Descent

Rotational joint:

.

slide48

Cyclic-Coordinate Descent

Rotational joint:

.

slide49

Cyclic-Coordinate Descent

Rotational joint:

.

slide50

Cyclic-Coordinate Descent

Rotational joint:

.

slide51

Cyclic-Coordinate Descent

Translational joint:

..

slide52

IK w/ constraints

Chris Welman, “Inverse Kinematics and Geometric Constraints for Articulated Figure Manipulation,” M.S. Thesis, Simon Fraser University, 2001.

Basic idea:

Constraints are geometric, e.g., point-to-point, point-to-plan, specific orientation, etc.

Assume starting out in satisfied configuration

Forces are applied to system

Detect, and cancel out, force components that would violate constraints.

slide53

IK w/ constraints

Point-on-a-plane constraint

Fa

Fc

Ft

Given: geometric constraints & applied forces

Determine: what constraints will be violated & what (minimal) forces are needed to counteract the components of the applied forces responsible for the violations.

slide54

Constraints

To maintain constraints, need:

Notation:

.

slide55

Constraints

IK Jacobian

.

Generalized force

Constraint Jacobian

slide56

example constraint

Geometric constraint on point that is function of pose

Usually sparse

.

slide57

Computing the constraint force

Applied force

Yet to be determined constraint force

To counteract ga’s affect on constraints:

g should lie in the nullspace of JcK

.

slide58

Computing the constraint force

The system is usually underconstrained

Restrict gc to move the system in a direction it may not go

Solve linear system to find Lagrange multiplier vector.

.

slide59

Solving for Lagrange Multipliers

gradient

Shortest distance from A to B passing through a point P

Direction of gradients are equal

A

Constrain P to lie on g

B

g

Points on ellipse are set of points for which sum of distances to foci is equal to some constant

slide60

Solving for Lagrange Multipliers

Use truncated SVD with backsubstitution on

diagonal

Nullspace basis.

Range basis

slide62

Feedback term

Spring that penalizes deviation from constraints.

slide63

Implementation

Handles on skeletons

Point handle

orientation handle

Center-of-mass handle

Each handle must know how to its value from q

Each handle must know how to compute the Jacobian.

slide64

Constraints on handles

Constraining a point handle to a location

Constraining a point handle to a plane

Constraining a point handle to a line

Constraining an orientation handle to an orientation

.

slide65

Dataflow approach

Constraint function block

Knows how to compute

Its function in term of x

Knows its Jacobian wrt x

..

slide66

Example network

Jc

C

c1

c2

h4

h2

h1

h3

..

q