Download as pdf or txt
Download as pdf or txt
You are on page 1of 56

Artificial Intelligence & Neuro Cognitive Systems

Fakultät für Informatik

Forward Kinematics
Serial link manipulators

Dr.-Ing. John Nassour

01.11.2016 J.Nassour 1
Suggested literature
• Robot Modeling and Control
• Robotics: Modelling, Planning and Control

01.11.2016 J.Nassour 2
Reminder: Right Hand Rules
Cross product

01.11.2016 J.Nassour 3
Reminder: Right Hand Rules
𝒛
A right-handed coordinate frame
𝒙 𝒙×𝒚
𝒙
𝒚

𝒛 𝒚
The first three fingers of your right hand which
indicate the relative directions of the x-, y- and
z-axes respectively.

01.11.2016 J.Nassour 4
Reminder: Right Hand Rules

Rotation about a vector


Wrap your right hand around the vector with
your thumb (your x-finger) in the direction of 𝝎
the arrow. The curl of your fingers indicates
the direction of increasing angle.

+
01.11.2016 J.Nassour 5
Kinematics
The problem of kinematics is to describe the motion of
the manipulator without consideration of the forces and
torques causing that motion.

The kinematic description is therefore a geometric one.

01.11.2016 J.Nassour 6
Forward Kinematics
Determine the position and orientation of the
end-effector given the values for the joint
variables of the robot.
Joint n-1
Link 2
Joint 3

Link n-1
Link 1 Joint 2 Joint n
End-Effector

Joint 1 Robot Manipulators are composed of


links connected by joints to form a
Base kinematic chain.
01.11.2016 J.Nassour 7
Robot Manipulators
Revolute joint (R): allows a relative rotation about a single axis.
Prismatic joint (P): allows a linear motion along a single axis
(extension or retraction).
Prismatic joint
Link i

Revolute joint

Spherical wrist: A three degree of freedom rotational


joint with all three axes of rotation crossing at a point
is typically called a spherical wrist.
Base
01.11.2016 J.Nassour 8
The Workspace Of A Robot
The total volume its end - effector could sweep as the robot
executes all possible motions. It is constrained by the geometry of
the manipulator as well as mechanical limits imposed on the
joints. Prismatic joint
Link i

Revolute joint

Base
01.11.2016 J.Nassour 9
Robot Manipulators
Symbolic representation of robot joints

e.g. A three-link arm with three revolute joints was denoted by RRR.

Joint variables, denoted by 𝜽 for a revolute joint and 𝒅 for the prismatic joint,
represent the relative displacement between adjacent links.

01.11.2016 J.Nassour 10
Articulated Manipulators (RRR)

01.11.2016 J.Nassour 11
Articulated Manipulators (RRR)
Also called: Anthropomorphic Manipulators

Three joints of the rotational type (RRR).


It resembles the human arm.
The second joint axis is perpendicular to the first one.
The third joint axis is parallel to the second one.
The workspace of the anthropomorphic robot arm,
encompassing all the points that can be reached by the
robot end point.

01.11.2016 J.Nassour 12
Elbow Manipulator (RRR)

Workspace

Structure

01.11.2016 J.Nassour 13
Spherical Manipulator

The Stanford Arm

01.11.2016 J.Nassour 14
Spherical Manipulator RRP
Two rotation and one translation (RRP).
The second joint axis is perpendicular to the first one and
the third axis is perpendicular to the second one.

Workspace

Structure

01.11.2016 J.Nassour 15
Spherical Manipulator RRP
Two rotation and one translation (RRP).
The second joint axis is perpendicular to the first one and
the third axis is perpendicular to the second one.
The workspace of the robot arm has a spherical shape as in
the case of the anthropomorphic robot arm.

Workspace

Structure

01.11.2016 J.Nassour 16
Spherical Manipulator RRR

Workspace?

Structure

01.11.2016 J.Nassour 17
SCARA Manipulator
Two joints are rotational and one is translational (RRP).
The axes of all three joints are parallel.

Workspace

01.11.2016 J.Nassour 18
SCARA Manipulator
Two joints are rotational and one is translational (RRP).
The axes of all three joints are parallel.
The workspace of SCARA robot arm is of cylindrical shape.

Workspace

01.11.2016 J.Nassour 19
Cylindrical Manipulator

Workspace

One rotational and two translational (RPP).


The axis of the second joint is parallel to the first axis.
The third joint axis is perpendicular to the second one.

01.11.2016 J.Nassour 20
Cylindrical Manipulator

Workspace

One rotational and two translational (RPP).


The axis of the second joint is parallel to the first axis.
The third joint axis is perpendicular to the second one.

01.11.2016 J.Nassour 21
The Cartesian Manipulators

Workspace
Three joints of the translational type (PPP).
The joint axes are perpendicular one to
another.

01.11.2016 J.Nassour 22
The Cartesian Manipulators

Workspace
Three joints of the translational type (PPP).
The joint axes are perpendicular one to
another.

01.11.2016 J.Nassour 23
Configuration Parameters
A set of position parameters that describes the full
configuration of the system.

Base
01.11.2016 J.Nassour 24
Configuration Parameters
A set of position parameters that describes the full
configuration of the system.

9 parameters/link

Base
01.11.2016 J.Nassour 25
Generalized Coordinates
A set of independent configuration parameters

𝟑 𝒑𝒐𝒔𝒊𝒕𝒊𝒐𝒏𝒔
𝟔 𝒑𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓𝒔/𝒍𝒊𝒏𝒌
𝟑 𝒐𝒓𝒊𝒆𝒏𝒕𝒂𝒕𝒊𝒐𝒏𝒔

01.11.2016 J.Nassour 26
Generalized Coordinates
A set of independent configuration parameters

𝟑 𝒑𝒐𝒔𝒊𝒕𝒊𝒐𝒏𝒔
𝟔 𝒑𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓𝒔/𝒍𝒊𝒏𝒌
𝟑 𝒐𝒓𝒊𝒆𝒏𝒕𝒂𝒕𝒊𝒐𝒏𝒔

𝐿𝑖𝑛𝑘 2

𝐿𝑖𝑛𝑘 1
𝐿𝑖𝑛𝑘 𝑛

6n parameters for n moving links

Base
01.11.2016 J.Nassour 27
Generalized Coordinates
A set of independent configuration parameters

𝟑 𝒑𝒐𝒔𝒊𝒕𝒊𝒐𝒏𝒔
𝟔 𝒑𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓𝒔/𝒍𝒊𝒏𝒌
𝟑 𝒐𝒓𝒊𝒆𝒏𝒕𝒂𝒕𝒊𝒐𝒏𝒔

𝐿𝑖𝑛𝑘 2

𝐿𝑖𝑛𝑘 1
𝟓 𝑪𝒐𝒏𝒔𝒕𝒓𝒂𝒊𝒏𝒕 𝐿𝑖𝑛𝑘 𝑛

6n parameters for n moving links

Base
01.11.2016 J.Nassour 28
Generalized Coordinates
A set of independent configuration parameters

𝟑 𝒑𝒐𝒔𝒊𝒕𝒊𝒐𝒏𝒔
𝟔 𝒑𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓𝒔/𝒍𝒊𝒏𝒌
𝟑 𝒐𝒓𝒊𝒆𝒏𝒕𝒂𝒕𝒊𝒐𝒏𝒔

𝐿𝑖𝑛𝑘 2

𝐿𝑖𝑛𝑘 1
𝟓 𝑪𝒐𝒏𝒔𝒕𝒓𝒂𝒊𝒏𝒕 𝐿𝑖𝑛𝑘 𝑛

6n parameters for n moving links


5n constraints for n joints

Base
01.11.2016 J.Nassour 29
Generalized Coordinates
A set of independent configuration parameters

𝟑 𝒑𝒐𝒔𝒊𝒕𝒊𝒐𝒏𝒔
𝟔 𝒑𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓𝒔/𝒍𝒊𝒏𝒌
𝟑 𝒐𝒓𝒊𝒆𝒏𝒕𝒂𝒕𝒊𝒐𝒏𝒔

𝐿𝑖𝑛𝑘 2

𝐿𝑖𝑛𝑘 1
𝟓 𝑪𝒐𝒏𝒔𝒕𝒓𝒂𝒊𝒏𝒕 𝐿𝑖𝑛𝑘 𝑛

6n parameters for n moving links


5n constraints for n joints
D.O.F: 6n - 5n = n
Base
01.11.2016 J.Nassour 30
Generalized Coordinates

D.O.F: n joints + ?

01.11.2016 J.Nassour 31
Generalized Coordinates
The robot is free to move forward/backward, up/down,
left/right (translation in three perpendicular axes) combined
with rotation about three perpendicular axes, often termed
pitch, yaw, and roll.

01.11.2016 J.Nassour 32
Generalized Coordinates
The robot is free to move forward/backward, up/down,
left/right (translation in three perpendicular axes) combined
with rotation about three perpendicular axes, often termed
pitch, yaw, and roll.

D.O.F: n joints + 6

01.11.2016 J.Nassour 33
Operational Coordinates
End-effector configuration parameters are a set of 𝒎 parameters (𝒙𝟏 , 𝒙𝟐 , 𝒙𝟑 , . . , 𝒙𝒎)
that completely specify the end-effector position and orientation with respect to the
frame 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎 .

𝒐𝒏+𝟏 is the operational point. 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎

A set (𝒙𝟏 , 𝒙𝟐 , 𝒙𝟑 , . . , 𝒙𝒎𝟎 ) of


independent configuration
Parameters 𝒎𝟎 : number of
degree of freedom of the
end-effector.

𝒐𝒏+𝟏 𝒙𝒏+𝟏 𝒚𝒏+𝟏 𝒛𝒏+𝟏

01.11.2016 J.Nassour 34
Operational Coordinates
Is also called Operational Space

𝒙
𝒚 𝜶

𝒚
Base
01.11.2016 J.Nassour
𝒙 35
Joint Coordinates
Is also called Joint Space

𝜽2

𝜽2
𝜽3 𝜽3
𝜽1

𝜽1

Base
01.11.2016 J.Nassour 36
Joint Space -> Operational Space
Determine the position and orientation of the end-
effector given the values for the joint variables of the
robot.
𝜽2

𝜽3
𝜽1

𝒚
Base
01.11.2016 J.Nassour
𝒙 37
Redundancy
A robot is said to be redundant if 𝒏 > 𝒎𝟎 .
Degree of redundancy: 𝒏 − 𝒎𝟎
how many solutions exist?

𝒎𝟎 = 𝟑
𝒏 = 𝟒

Base
01.11.2016 J.Nassour 38
Redundancy
A robot is said to be redundant if 𝒏 > 𝒎𝟎 .
Degree of redundancy: 𝒏 − 𝒎𝟎
how many solutions exist?

𝒎𝟎 = 𝟑
𝒏 = 𝟒

Base
01.11.2016 J.Nassour 39
Redundancy
A robot is said to be redundant if 𝒏 > 𝒎𝟎 .
Degree of redundancy: 𝒏 − 𝒎𝟎
how many solutions exist?

𝒎𝟎 = 𝟑
𝒏 = 𝟒

Base
01.11.2016 J.Nassour 40
Redundancy
A robot is said to be redundant if 𝒏 > 𝒎𝟎 .
Degree of redundancy: 𝒏 − 𝒎𝟎
how many solutions exist?

𝒎𝟎 = 𝟑
𝒏 =𝟑
Base
01.11.2016 J.Nassour 41
Redundancy
A robot is said to be redundant if 𝒏 > 𝒎𝟎 .
Degree of redundancy: 𝒏 − 𝒎𝟎
how many solutions exist?

𝒎𝟎 = 𝟑
𝒏 =𝟑
Base
01.11.2016 J.Nassour 42
Kinematic Arrangements
The objective of forward kinematic analysis is to determine the cumulative effect of the
entire set of joint variables, that is, to determine the position and orientation of the end
effector given the values of these joint variables.

We assume that each joint has one D.O.F

The action of each joint can be described by one real number:


the angle of rotation in the case of a revolute joint or
the displacement in the case of a prismatic joint.

When joint 𝒊 is actuated, link 𝒊 moves.

𝒒𝒊 is the joint variable

01.11.2016 J.Nassour 43
Kinematic Arrangements
The objective of forward kinematic analysis is to determine the cumulative effect of the
entire set of joint variables, that is, to determine the position and orientation of the end
effector given the values of these joint variables.

We assume that each joint has one D.O.F

The action of each joint can be described by one real number:


the angle of rotation in the case of a revolute joint or
the displacement in the case of a prismatic joint.

Spherical wrist 3 D.O.F


spherical wrist:
RRR
Links’ lengths = 0

01.11.2016 J.Nassour 44
Kinematic Arrangements
To perform the kinematic analysis, we attach a coordinate frame rigidly to each link.
In particular, we attach 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 to 𝒍𝒊𝒏𝒌 𝒊.
This means that, whatever motion the robot executes, the coordinates of any point 𝒑 on
link 𝒊 are constant when expressed in the 𝒊𝒕𝒉 coordinate frame 𝒑𝒊 = 𝒄𝒐𝒏𝒔𝒕𝒂𝒏𝒕.
When 𝒋𝒐𝒊𝒏𝒕 𝒊 is actuated, 𝒍𝒊𝒏𝒌 𝒊 and its attached frame, 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 , experience a resulting
motion.

𝒑
𝒍𝒊𝒏𝒌 𝒊

𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊

The frame 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎 , which is attached to the


𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
robot base, is referred to as the reference frame.
Base
01.11.2016 J.Nassour 45
Kinematic Arrangements
To perform the kinematic analysis, we attach a coordinate frame rigidly to each link.
In particular, we attach 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 to 𝒍𝒊𝒏𝒌 𝒊.
This means that, whatever motion the robot executes, the coordinates of any point 𝒑 on
link 𝒊 are constant when expressed in the 𝒊𝒕𝒉 coordinate frame 𝒑𝒊 = 𝒄𝒐𝒏𝒔𝒕𝒂𝒏𝒕.
When 𝒋𝒐𝒊𝒏𝒕 𝒊 is actuated, 𝒍𝒊𝒏𝒌 𝒊 and its attached frame, 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 , experience a resulting
motion.

𝒍𝒊𝒏𝒌 𝒊 𝒑

𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊

The frame 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎 , which is attached to the


𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
robot base, is referred to as the reference frame.
Base
01.11.2016 J.Nassour 46
Kinematic Arrangements
To perform the kinematic analysis, we attach a coordinate frame rigidly to each link.
In particular, we attach 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 to 𝒍𝒊𝒏𝒌 𝒊.
This means that, whatever motion the robot executes, the coordinates of any point 𝒑 on
link 𝒊 are constant when expressed in the 𝒊𝒕𝒉 coordinate frame 𝒑𝒊 = 𝒄𝒐𝒏𝒔𝒕𝒂𝒏𝒕.
When 𝒋𝒐𝒊𝒏𝒕 𝒊 is actuated, 𝒍𝒊𝒏𝒌 𝒊 and its attached frame, 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 , experience a resulting
motion.

𝒍𝒊𝒏𝒌 𝒊

𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊

The frame 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎 , which is attached to the


𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
robot base, is referred to as the reference frame.
Base
01.11.2016 J.Nassour 47
Joint And Link Labelling

01.11.2016 J.Nassour 48
Joint And Link Labelling

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame

01.11.2016 J.Nassour 49
Joint And Link Labelling

Joint variable 𝜽1
Link 1
Joint 1

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame

01.11.2016 J.Nassour 50
Joint And Link Labelling
Joint variable 𝜽2

𝒐𝟏 𝒙𝟏 𝒚𝟏 𝒛𝟏
Joint 2 Link 2
Joint variable 𝜽1
Link 1
Joint 1

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame

01.11.2016 J.Nassour 51
Joint And Link Labelling
Joint variable 𝜽3
Joint variable 𝜽2

𝒐𝟏 𝒙𝟏 𝒚𝟏 𝒛𝟏 Joint 3
Joint 2 Link 2 Link 3
Joint variable 𝜽1 𝒐𝟐 𝒙𝟐 𝒚𝟐 𝒛𝟐
Link 1
Joint 1

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame

01.11.2016 J.Nassour 52
Joint And Link Labelling
Joint variable 𝜽3
Joint variable 𝜽2

𝒐𝟏 𝒙𝟏 𝒚𝟏 𝒛𝟏 Joint 3
Joint 2 Link 2 Link 3
Joint variable 𝜽1 𝒐𝟐 𝒙𝟐 𝒚𝟐 𝒛𝟐 𝒐𝟑 𝒙𝟑 𝒚𝟑 𝒛𝟑
Link 1
Joint 1

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame

Do we need a specific way to orientate the axes?

01.11.2016 J.Nassour 53
Transformation Matrix
Suppose 𝑨𝒊 is the homogeneous transformation matrix that describe the position and the
orientation of 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 with respect to 𝒐𝒊−𝟏 𝒙𝒊−𝟏 𝒚𝒊−𝟏 𝒛𝒊−𝟏 .
𝑨𝒊 is derived from joint and link 𝑖.
𝑨𝒊 is a function of only a single joint variable.
Joint variable 𝜽3
Joint variable 𝜽2
𝑨𝒊 = 𝑨𝒊 (𝒒𝒊 )

𝒐𝟏 𝒙𝟏 𝒚𝟏 𝒛𝟏 Joint 3
𝒊−𝟏
𝑨𝒊 (𝒒𝒊 ) = 𝑹 𝒊 𝒐 𝒊−𝟏𝒊 Joint 2 Link 2 Link 3
𝟎 𝟏
Joint variable 𝜽1 𝒐𝟐 𝒙𝟐 𝒚𝟐 𝒛𝟐 𝒐𝟑 𝒙𝟑 𝒚𝟑 𝒛𝟑
Link 1
Joint 1

𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎
Link 0 (fixed)
Base frame
01.11.2016 J.Nassour 54
Transformation Matrix
The position and the orientation of the end effector (reference frame 𝒐𝒏 𝒙𝒏 𝒚𝒏 𝒛𝒏 ) with
respect to the base (reference frame 𝒐𝟎 𝒙𝟎 𝒚𝟎 𝒛𝟎 ) can be expressed by the transformation
matrix:

𝑹 𝟎 𝒐 𝒏𝟎
𝐇= 𝑻 𝒏𝟎 = 𝑨𝟏 𝒒𝟏 … 𝑨𝒏 (𝒒𝒏 ) = 𝒏
𝟎 𝟏
The position and the orientation of a reference frame 𝒐𝒋 𝒙𝒋 𝒚𝒋 𝒛𝒋 ) with
respect to a reference frame 𝒐𝒊 𝒙𝒊 𝒚𝒊 𝒛𝒊 can be expressed by the transformation matrix:

𝑨𝒊+𝟏 𝑨𝒊+𝟐 … 𝑨𝒋−𝟏 𝑨𝒋 𝑖𝑓 𝒊 < 𝒋


𝑻 𝒋𝒊 = 𝑰 𝑖𝑓 𝒊 = 𝒋
𝒋
(𝑻 𝒊)−𝟏 𝑖𝑓 𝒊 > 𝒋

01.11.2016 J.Nassour 55
Transformation Matrix

𝑨𝒊+𝟏 𝑨𝒊+𝟐 … 𝑨𝒋−𝟏 𝑨𝒋 𝑖𝑓 𝒊 < 𝒋


𝑻 𝒋𝒊 = 𝑰 𝑖𝑓 𝒊 = 𝒋
𝒋
(𝑻 𝒊)−𝟏 𝑖𝑓 𝒊 > 𝒋

if 𝒊 < 𝒋 then

𝑹 𝒋𝒊 𝒐 𝒋𝒊
𝑻 𝒋𝒊 = 𝑨𝒊+𝟏 𝑨𝒊+𝟐 … 𝑨𝒋−𝟏 𝑨𝒋 =
𝟎 𝟏
𝒋−𝟏
The orientation part: 𝑹 𝒋𝒊 = 𝑹 𝒊+𝟏𝒊 … 𝑹 𝒋

𝒋−𝟏
The translation part: 𝒐 𝒋𝒊 = 𝒐 𝒋−𝟏𝒊+𝑹 𝒋−𝟏𝒊 𝒐 𝒋

01.11.2016 J.Nassour 56

You might also like