Lecture 10 Forward Kinematics -...

70
Lecture 10 Forward Kinematics Alli Nilles Modern Robotics Chapter 4 October 1, 2019

Transcript of Lecture 10 Forward Kinematics -...

Page 1: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Lecture 10

Forward Kinematics

Alli Nilles

Modern Robotics Chapter 4October 1, 2019

Page 2: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Admin

Page 3: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Admin

I am not KDC!

Homework 4 should be demonstrated individually to your TA in lab this

week or next. Next week is the last week of Lab 3.

Homework 5 is due this Friday.

Lab 2 is due this week.

Page 4: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Admin

I am not KDC!

Homework 4 should be demonstrated individually to your TA in lab this

week or next. Next week is the last week of Lab 3.

Homework 5 is due this Friday.

Lab 2 is due this week.

Page 5: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Admin

I am not KDC!

Homework 4 should be demonstrated individually to your TA in lab this

week or next. Next week is the last week of Lab 3.

Homework 5 is due this Friday.

Lab 2 is due this week.

Page 6: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Admin

I am not KDC!

Homework 4 should be demonstrated individually to your TA in lab this

week or next. Next week is the last week of Lab 3.

Homework 5 is due this Friday.

Lab 2 is due this week.

Page 7: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

What is “Forward Kinematics”?

Kinematics: a branch of classical mechanics that describes motion of bodies

without considering forces. AKA “the geometry of motion”

Page 8: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

What is “Forward Kinematics”?

Kinematics: a branch of classical mechanics that describes motion of bodies

without considering forces. AKA “the geometry of motion”

Forward kinematics: a specific problem in robotics. Given the individual state of

each joint of the robot (in a local frame), what is the position of a given point on

the robot in the global frame?

Page 9: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

What is “Forward Kinematics”?

Kinematics: a branch of classical mechanics that describes motion of bodies

without considering forces. AKA “the geometry of motion”

Forward kinematics: a specific problem in robotics. Given the individual state of

each joint of the robot (in a local frame), what is the position of a given point on

the robot in the global frame?

Page 10: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Assumptions

Page 11: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Assumptions

Our robot is a kinematic chain, made of rigid links connected by movable

joints

No branches or loops (will discuss later)

All joints have one degree of freedom and are revolute or prismatic

Page 12: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Assumptions

Our robot is a kinematic chain, made of rigid links connected by movable

joints

No branches or loops (will discuss later)

All joints have one degree of freedom and are revolute or prismatic

Page 13: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Assumptions

Our robot is a kinematic chain, made of rigid links connected by movable

joints

No branches or loops (will discuss later)

All joints have one degree of freedom and are revolute or prismatic

Page 14: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Assumptions

Our robot is a kinematic chain, made of rigid links connected by movable

joints

No branches or loops (will discuss later)

All joints have one degree of freedom and are revolute or prismatic

Page 15: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Page 16: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Definition 3.24 from Modern Robotics: a screw axis is written as

where either

Page 17: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Definition 3.24 from Modern Robotics: a screw axis is written as

where either

Page 18: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Definition 3.24 from Modern Robotics: a screw axis is written as

where either

where , where is a point on the axis of the

screw and is the pitch of the screw ( for a pure rotation

about the screw axis). OR

Page 19: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Definition 3.24 from Modern Robotics: a screw axis is written as

where either

where , where is a point on the axis of the

screw and is the pitch of the screw ( for a pure rotation

about the screw axis). OR

and

Page 20: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Review on Screw Motions

Definition 3.24 from Modern Robotics: a screw axis is written as

where either

where , where is a point on the axis of the

screw and is the pitch of the screw ( for a pure rotation

about the screw axis). OR

and

where the pitch of the screw is infinite and the motion is a

translation along the axis defined by .

Page 21: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Screw Motions as Matrix Exponential

The screw axis can be expressed in matrix form as

where is the skew symmetric form.

Page 22: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Screw Motions as Matrix Exponential

The screw axis can be expressed in matrix form as

where is the skew symmetric form.

To express a screw motion given a screw axis, we use the matrix exponential

Page 23: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Screw Motions as Matrix Exponential

The screw axis can be expressed in matrix form as

where is the skew symmetric form.

To express a screw motion given a screw axis, we use the matrix exponential

Page 24: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

But why?!?

Page 25: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

But why?!?

Outside the scope of this course…

“The exponential map is a map from the Lie algebra of a Lie group to the

group itself”

Page 26: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

But why?!?

Outside the scope of this course…

“The exponential map is a map from the Lie algebra of a Lie group to the

group itself”

Page 27: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

But why?!?

Outside the scope of this course…

“The exponential map is a map from the Lie algebra of a Lie group to the

group itself”

You can think of the Lie algebra as related to a tangent space, so a screw vector

gives us a description of instantaneous tangent motion, and the exponential

function “integrates” this motion over a displacement .

Page 28: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Actual Form of Matrix Exponential

Page 29: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Actual Form of Matrix Exponential

Page 30: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Actual Form of Matrix Exponential

Page 31: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Modelling Robot Joints as Screw Motions

case 1:

Page 32: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Modelling Robot Joints as Screw Motions

case 1:

Page 33: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

where , where is

a point on the axis of the screw and

is the pitch of the screw ( for a

pure rotation about the screw axis).

Modelling Robot Joints as Screw Motions

case 1:

So for revolute joints, is axis of

rotation and

Page 34: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

where , where is

a point on the axis of the screw and

is the pitch of the screw ( for a

pure rotation about the screw axis).

So for revolute joints, is axis of

rotation and

Modelling Robot Joints as Screw Motions

case 1:

Page 35: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Modelling Robot Joints as Screw Motions

case 2:

Page 36: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

and

Modelling Robot Joints as Screw Motions

case 2:

Page 37: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

and

where the pitch of the screw is infinite

and the motion is a translation along

the axis defined by .

Modelling Robot Joints as Screw Motions

case 2:

prismatic joints defined by axis of

movement

Page 38: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

and

where the pitch of the screw is infinite

and the motion is a translation along

the axis defined by .

prismatic joints defined by axis of

movement

Modelling Robot Joints as Screw Motions

case 2:

Page 39: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Page 40: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Page 41: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Page 42: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Page 43: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Choose a fixed, global base frame

Choose an “end effector” frame fixed to the robot

Put all joints in “zero position”

Let be the configuration of in the frame when robot

is in zero position

Page 44: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Choose a fixed, global base frame

Choose an “end effector” frame fixed to the robot

Put all joints in “zero position”

Let be the configuration of in the frame when robot

is in zero position

Page 45: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Choose a fixed, global base frame

Choose an “end effector” frame fixed to the robot

Put all joints in “zero position”

Let be the configuration of in the frame when robot

is in zero position

Page 46: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Approach

Let each joint have an associated parameter that defines its configuration

(rotation angle for revolute joints, translation amount for prismatic).

Initialization:

Choose a fixed, global base frame

Choose an “end effector” frame fixed to the robot

Put all joints in “zero position”

Let be the configuration of in the frame when robot

is in zero position

Page 47: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Formula

For each joint , define the screw axis.

Page 48: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Formula

For each joint , define the screw axis.

For each motion of a joint, define the screw motion.

Page 49: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Formula

For each joint , define the screw axis.

For each motion of a joint, define the screw motion.

This form composes nicely through multiplication, giving us the Product of

Exponentials (PoE) formula!

Page 50: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Product of Exponentials Formula

For each joint , define the screw axis.

For each motion of a joint, define the screw motion.

This form composes nicely through multiplication, giving us the Product of

Exponentials (PoE) formula!

Page 51: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Visualizing the Formula

Page 52: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

Page 53: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

Page 54: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

Page 55: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

Page 56: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

For each joint:

Page 57: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

For each joint:

Page 58: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

For each joint:

Page 59: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

All axes:

For each joint:

Page 60: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 1

Form for each joint:

And compose with

Page 61: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 2

Page 62: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 2

First find :

Page 63: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 2

First find :

For joint 1:

Page 64: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 2

First find :

For joint 1:

For joint 2:

Page 65: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Example 2

First find :

For joint 1:

For joint 2:

For joint 3:

Page 66: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Next Time

Page 67: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Next Time

Product of exponentials in the end-effector frame

Modelling robots in the Universal Robot Description Format

Different kinds of joints

What if my robot isn’t a kinematic chain??

Page 68: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Next Time

Product of exponentials in the end-effector frame

Modelling robots in the Universal Robot Description Format

Different kinds of joints

What if my robot isn’t a kinematic chain??

Page 69: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Next Time

Product of exponentials in the end-effector frame

Modelling robots in the Universal Robot Description Format

Different kinds of joints

What if my robot isn’t a kinematic chain??

Page 70: Lecture 10 Forward Kinematics - publish.illinois.edupublish.illinois.edu/ece470-intro-robotics/files/2019/10/... · 2019-10-10 · What is “Forward Kinematics”? Kinematics: a

Next Time

Product of exponentials in the end-effector frame

Modelling robots in the Universal Robot Description Format

Different kinds of joints

What if my robot isn’t a kinematic chain??