unc chapel hill m. c. lin comp790-072 robotics: an introduction kinematics & inverse kinematics

31
UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

Upload: fernanda-rolland

Post on 14-Dec-2015

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

COMP790-072Robotics: An Introduction

Kinematics & Inverse Kinematics

Page 2: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Forward Kinematics

Page 3: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

What is f ?

Page 4: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

What is f ?

Page 5: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Other Representations

Separate Rotation + Translation:

T(x) = R(x) + d– Rotation as a 3x3 matrix– Rotation as quaternion– Rotation as Euler Angles

Homogeneous TXF: T=H(R,d)

Page 6: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Forward Kinematics

As DoF increases, there are more transformation to control and thus become more complicated to control the motion.

Motion capture can simplify the process for well-defined motions and pre-determined tasks.

Page 7: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Forward vs. Inverse Kinematics

Page 8: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Inverse Kinematics (IK)

As DoF increases, the solution to the problem may become undefined and the system is said to be redundant. By adding more constraints reduces the dimensions of the solution.

It’s simple to use, when it works. But, it gives less control.

Some common problems:– Existence of solutions– Multiple solutions– Methods used

Page 9: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Numerical Methods for IK

Analytical solutions not usually possible– Large solution space (redundancy)– Empty solution space (unreachable goal)

f is nonlinear due to sin’s and cos’s in the rotations.– Find linear approximation to f -1

Numerical solutions necessary– Fast– Reasonably accurate– Yet Robust

Page 10: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

The Jacobian

Page 11: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

The Jacobian

Page 12: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

The Jacobian

Page 13: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Computing the Jacobian

To compute the Jacobian, we must compute the derivatives of the forward kinematics equation

The forward kinematics is composed of some matrices or quaternions

Page 14: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Matrix Derivatives

Page 15: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Rotation Matrix Derivatives

Page 16: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Angular Velocity Matrix

Page 17: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Page 18: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Page 19: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Computing J+

Fairly slow to compute– Breville’s method: J+(JJT)-1

• Complexity: O(m2n) • ~ 57 multiply per DOF with m = 6

Instability around singularities– Jacobian loses rank in certain configur.

Page 20: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Jacobian Transpose

Use JT rather than J+

– Avoid excessive inversion– Avoid singularity problem

Page 21: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Principles of Virtual Work

Work = force x distance Work = torque x angle

Page 22: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Jacobian Transpose

Essentially we’re taking the distance to the goal to be a force pulling the end-effector.

With J-1, the solution was exact to the linearized problem, but this is no longer so.

Page 23: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Jacobian Transpose

Page 24: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Jacobian Transpose

In effect this JT method solves the IK problem by setting up a dynamical system that obeys the Aristotilean laws of physics: F = m v ; = I and the steepest descent method.

The J+ method is equivalent to solving by Newtonian method

Page 25: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Pros & Cons of Using JT

+ Cheaper evaluation+ No singularities- Scaling Problems- J+ has minimal norm at every step and JT doesn’t

have this property. Thus joint far from end-effector experience larger torque, thereby taking disproportionately large time steps

- Use a constant matrix to counteract

- Slower Convergence than J+

- Roughly 2x slower [Das, Slotine & Sheridan]

Page 26: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Cyclic Coordinate Descend (CCD)

Just solve 1-DOF IK-problem repeatedly up the chain

1-DOF problems are simple & have analytical solutions

Page 27: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

CCD Math - Prismatic

Page 28: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

CCD Math - Revolute

Page 29: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

CCD Math - Revolute

You can optimize orientation too, but need to derive orientation error and minimize the combination of two

You can derive expression to minimize other goals too.

Shown here is for point goals, but you can define the goal to be a line or plane.

Page 30: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

Pros and Cons of CCD

+ Simple to implement

+ Often effective

+ Stable around singular configuration

+ Computationally cheap

+ Can combine with other more accurate optimizations

- Can lead to odd solutions if per step not limited, making method slower

- Doesn’t necessarily lead to smooth motion

Page 31: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics

UNC Chapel Hill M. C. Lin

References