0% found this document useful (0 votes)
9 views53 pages

Module II

The document discusses robot kinematics, focusing on the configuration, degrees of freedom (dof), and configuration space (C-space) of robots. It introduces key concepts such as joint types, Gruebler's formula for calculating dof, and the distinction between open-chain and closed-chain mechanisms. Additionally, it covers configuration and velocity constraints, as well as the relationship between task space and workspace in robotics.

Uploaded by

ripfoc92
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views53 pages

Module II

The document discusses robot kinematics, focusing on the configuration, degrees of freedom (dof), and configuration space (C-space) of robots. It introduces key concepts such as joint types, Gruebler's formula for calculating dof, and the distinction between open-chain and closed-chain mechanisms. Additionally, it covers configuration and velocity constraints, as well as the relationship between task space and workspace in robotics.

Uploaded by

ripfoc92
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

IC102P

Foundation Design Practicum


Introduction to Robotics

Dr. Amit Shukla


Chairperson, Centre of AI and Robotics, CAIR@IIT Mandi
Affiliate Faculty – Centre for HCI – TIH iHUB IIT Mandi
Indian Institute of Technology Mandi, Himachal Pradesh, India

Dr. Amit Shukla, Robotics & Control, IIT Mandi 1


Session 2
Robot Kinematics

2
Dr. Amit Shukla, Robotics & Control, IIT Mandi 2
A robot is mechanically constructed by connecting a set of bodies, called links, to each
other using various types of joints. Actuators, such as electric motors, deliver forces or
torques that cause the robot’s links to move. Usually an end effector, such as a gripper or
hand for grasping and manipulating objects, is attached to a specific link.

the most fundamental question one can ask about a robot is, where is it?
The answer is
given by the
robot’s.

CONFIGURATION
(A specification of the Positions of all points of the robot. Since the robot’s
links are rigid and of a known shape, only a few numbers are needed to
represent its configuration)

Dr. Amit Shukla, Robotics & Control, IIT Mandi 3


Dr. Amit Shukla, Robotics & Control, IIT Mandi 4
Definition:-

configuration: a specification of the positions of all points of a mechanism:


The configuration of a robot is a complete specification of the position of every point
of the robot.

degrees of freedom (dof): # of real #s required to describe a configuration:


The minimum number n of real-valued coordinates needed to represent the
configuration is the number of degrees of freedom (dof) of the robot.

configuration space (C-space): the dof-dimension space of all configurations


The n-dimensional space containing all possible configurations of the robot is called the
configuration space (C-space). The configuration of a robot is represented by a point
in its C-space.

dof of a planar body: m = 3; dof of a spatial body: m = 6

Dr. Amit Shukla, Robotics & Control, IIT Mandi 5


2.1 Degree of freedom of the rigid body

Dr. Amit Shukla, Robotics & Control, IIT Mandi 6


Degree of freedom of the rigid body
Important concepts, symbols, and equations (cont.)

• mechanism dof = Σ (body freedoms) – Σ (independent constraints from joints)

• joint types:

• Grübler’s formula: dof

Dr. Amit Shukla, Robotics & Control, IIT Mandi 7


2.2.1 ROBOT JOINTS

Revolute joint Prismatic joint Helical joint

Cylindrical joint Universal joint Spherical joint


Dr. Amit Shukla, Robotics & Control, IIT Mandi 8
2.2.2Gr𝐮bler’s
̈ formula

Dr. Amit Shukla, Robotics & Control, IIT Mandi 9


Gr𝐮bler’s
̈ formula:-
The number of degrees of freedom of a mechanism with links and joints can be calculated
using Grubler’s
̈ formula.

dof

Proposition:- Consider a mechanism


consisting of
N= links, where ground is also regarded as
a link
J= number of joints,
m= be the number of DOF of a rigid body
(m = 3 for planar mechanisms and m = 6
for spatial mechanisms)
fi be the number of freedoms provided by
joint i, and ci be the number of constraints
provided by joint i
Dr. Amit Shukla, Robotics & Control, IIT Mandi 10
Definition:-

coin on a plane coin in space

Dr. Amit Shukla, Robotics & Control, IIT Mandi 11


Gr𝐮bler’s
̈ formula:-

open-chain mechanisms(serial mechanisms) and closed-chain mechanisms.

A closed-chain mechanism is any mechanism that has a closed loop. A person standing with
both feet on the ground is an example of a closed-chain mechanism.

An open-chain mechanism is any mechanism without a closed loop; an example is your


arm when your hand is allowed to move freely in space.

This formula holds only if all joint constraints are independent. If they are not independent,
then the formula provides a lower bound on the number of degrees of freedom.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 12


Gr𝐮bler’s
̈ formula:-
Four-bar linkage and slider–crank mechanism
dof

N = 4 (3 links and 1 ground) N = 4 (3 links and 1 ground)


J = 4 (4 Revolute) J = 4 (3 Revolute and 1 Prismatic)
m = 3 m = 3
fi = 1, where i = 1,2,3,4 fi = 1, where i = 1,2,3,4
By Grübler’s formula By Grübler’s formula
DOF = 3(4-1-4)+ 4 = 1 DOF = 3(4-1-4)+ 4 = 1
Dr. Amit Shukla, Robotics & Control, IIT Mandi 13
Gr𝐮bler’s
̈ formula:- Example 2.4

N = k + 1 (k links + ground)
N = 5 (4 links+ ground)
J = k joints
J=5
fi = 1 (for each)
fi = 1(for each)
dof = 3((k + 1) − 1 − k) +k = k
dof = 3(5 − 1 − 5) + 5 = 2.

Figure 2.5: (a) k-link planar serial chain. Figure 2.5: (b) Five-bar planar linkage.

N=6 N=6
J=7 J=7
fi = 1(for each) fi = 1 (for each)
dof = 3(6 − 1 − 7) + 7 dof = 3(6 − 1 − 7) + 7
= 1. = 1.

Figure 2.5: (c) Stephenson six-bar linkage Figure 2.5: (d) Watt six-bar linkage

Dr. Amit Shukla, Robotics & Control, IIT Mandi 14


Gr𝐮bler’s
̈ formula:-
Example 2.8 (stewart–gough platform)

• consists two platforms – the lower one stationary and


regarded as ground, the upper one mobile – connected by six
universal–prismatic–spherical (UPS) legs.
• N = 14 (6 universal joints (each with 2-DOF, fi = 2), 6
prismatic joints (each with 1-DOF, fi = 1), and 6 spherical
joints (each with 3-DOF, fi = 3)), J = 18, m = 6

DOF = 6(14 − 1 − 18) + 6(1) + 6(2) + 6(3) = 6.

• In some versions of the Stewart–Gough platform the six


universal joints are replaced by spherical joints. By Grϋbler’s
formula that mechanism will have 12 dof, replacing each
universal joint by a spherical joint introduces an extra degree
of freedom in each leg.
• The Stewart–Gough platform is a popular choice for car and
airplane cockpit simulators.
Dr. Amit Shukla, Robotics & Control, IIT Mandi 15
2.4 CONFIGURATION AND VELOCITY CONSTRAINTS

Dr. Amit Shukla, Robotics & Control, IIT Mandi 16


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS

Robots containing one or more closed loops, usually an implicit representation is


more easily obtained than an explicit parametrization.

Figure 2.10: The four-bar linkage

Dr. Amit Shukla, Robotics & Control, IIT Mandi 17


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS

The four links always form a closed loop can be expressed by the following three equations:

These equations are sometimes referred to as loop-closure equations. For the four-bar
linkage they are given by a set of three equations in four unknowns.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 18


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS

for general robots containing one or more closed loops, the configuration space can be
implicitly represented by the column vector θ = [θ1 · · · θn]! ∈ 𝑅" and loop-closure
equations of the form,

A set of k independent equations, with k ≤ n. Such constraints are known as


holonomic constraints
ones that reduce the dimension of the C-space. The C-space can be viewed as a surface
of dimension n−k (assuming that all constraints are independent) embedded in Rn.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 19


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS

Suppose that a closed-chain robot with loop-closure equations g(θ) = 0,


g : 𝑅" → 𝑅# , is in motion, following the time trajectory θ(t). Differentiating
both sides of g(θ(t)) =0 with respect to t, we obtain

Dr. Amit Shukla, Robotics & Control, IIT Mandi 20


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS
Which can we write as

Here, the joint-velocity vector 𝜃̇$ denotes the derivative of 𝜃$ with respect to time
t, 𝜕g(𝜃)/𝜕𝜃 ∈ 𝑅#×" , and 𝜃,𝜃̇ ∈ 𝑅" . The constraints can be written:

A(𝜃)𝜃̇ = 0

where A( 𝜃 ) ∈ 𝑅#×" Velocity constraints of this form are called Pfaffian


constraints. For the case of A(𝜃) = 𝜕 g(𝜃)/𝜕𝜃, one could regard g(𝜃) as being the
“integral” of A(𝜃); for this reason, holonomic constraints of the form g(𝜃) = 0 are
also called integrable constraints – the velocity constraints that they imply can
be integrated to give equivalent configuration constraints.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 21


2.4 CONFIGURATION AND VELOCITY CONSTRAINTS
disk rolling upright on a plane

A Pfaffian constraint that is integrable is called a holonomic constraint

A Pfaffian constraint that is nonintegrable is called a nonholonomic constraint


Dr. Amit Shukla, Robotics & Control, IIT Mandi 22
2.5 task space and workspace

Dr. Amit Shukla, Robotics & Control, IIT Mandi 23


2.5 task space and workspace

Configuration Workspace Task Space


Space
The configuration of Specification of the A space in which the
a robot is a configurations that robot’s task can be
specification of the the end-effector of naturally expressed.
position of all points the robot can reach.
of the robot, and the The decision of how
space of all Primarily depends on to define the task
configurations of the the robot’s structure, space is driven by
robot is called the C- independent of the the task,
space task. independently of the
robot.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 24


Chapter 3
Rigid Body Motion

3
Dr. Amit Shukla, Robotics & Control, IIT Mandi 25
A free vector is a geometric quantity with a length and a direction.
we say that v is coordinate free it refers to a physical quantity in the underlying
space, and it does not care how we represent it.

Figure 3.1: The point p exists in physical


space, and it does not care how we represent
it. If we fix a reference frame {a}, with unit
coordinate axes 𝑥0& and 𝑦0& , we can represent p
as 𝑃& = (1, 2). If we fix a reference frame
{b} at a different location, a different
orientation, and a different length scale, we
can represent p as 𝑃& = (4,−2).

• one stationary fixed frame, or space frame, denoted {s}


• one frame has been attached to some moving rigid body, body frame, denoted{b}

Dr. Amit Shukla, Robotics & Control, IIT Mandi 26


Important concepts, symbols, and equations

• We often define a fixed space frame {s} and a body frame {b} attached to the
body of interest. All frames are instantaneously stationary.

• Right-handed frames, and right-hand rule for positive rotation.

nal
ogo i al
t h ec
or sp

• Special orthogonal group SO(3): matrices R in ℝ3×3 where RTR = I, det R = 1.


R is a rotation matrix. Implicit representation with 9 numbers for 3 dof.
Modern Robotics, Lynch and Park, Cambridge University Press 27
3.1 Rigid-Body Motions in the Plane

Dr. Amit Shukla, Robotics & Control, IIT Mandi 28


3.1 Rigid-Body Motions in the Plane

The simplest way to describe the orientation


of the body frame {b} relative to the fixed
frame {s} is by specifying the angle 𝜃.
Another (admittedly less simple) way is to
specify the directions of the unit axes 𝑥0' and
𝑥0' of {b} relative to {s}, in the form

Figure 3.3: The body frame {b} is expressed


in the fixed-frame coordinates {s} by the
vector p and the directions of the unit axes 𝑥0'
and 𝑦0' . In this example, p=(2,1) and 𝜃=60˚,
so 𝑥0' =(cos𝜃,sin𝜃)=(0.5, 1/√2) and 𝑦0' =(-sin𝜃,
cos 𝜃)=(-1/√2, 0.5).

Dr. Amit Shukla, Robotics & Control, IIT Mandi 29


3.1 Rigid-Body Motions in the Plane

point p can be represented as a column


vector P ∈ 𝑅( of the form.

The two vectors 𝑥0' and 𝑦0' can also be


written as column vectors and Figure: Mathematical description of position and orientation.
packaged into the following 2 × 2
matrix P: The fixed frame {s} and body frame {b}, the unit
axes {𝑥,
! 𝑦, ̂ always satisfy 𝑥! ×𝑦! = 𝑧.̂ Denote the
! 𝑧}
unit axes of the fixed frame by {𝑋(! , 𝑌(! , 𝑍+! } and the
unit axes of the body frame by {𝑋(" , 𝑌(" , 𝑍+" } . Let p
denote the vector from the fixed-frame origin to
The matrix P is an example
of a rotation matrix. the body-frame origin. In terms of the fixed-frame
coordinates, p can be expressed as

Dr. Amit Shukla, Robotics & Control, IIT Mandi 30


3.1 Rigid-Body Motions in the Plane

The axes of the body frame can also be expressed as

Defining p ∈ 𝑅) and R ∈ 𝑅)×) as

12 parameters given by (R, p) that describe the position and orientation of the rigid body
relative to the fixed frame.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 31


Important concepts, symbols, and equations (cont.)

• Uses of a rotation matrix:

1. Represent an orientation. Rab represents orientation of {b} in {a}.


2. Change the reference frame of a vector or frame.
subscript cancellation:

3. Rotate a vector or frame. R = Rcd = Rot(ŵ, 𝜃), axis ŵ expressed in {c}.


p’c = Rcd pc (no subscript cancellation)
Rab’ = RRab (after rotating about axis in {a})
Rab’’ = RabR (after rotating about axis in {b})

Modern Robotics, Lynch and Park, Cambridge University Press 32


3.2.1 Rotation Matrices
3.2.1.2 Uses of Rotation Matrices

there are three major uses for a rotation matrix R:


(a) to represent an orientation;
(b) to change the reference frame in which a vector or a frame is represented
(c) to rotate a vector or a frame.

Figure 3.7: The same space and the same point p represented in three different
frames with different orientations (point (a)).

Dr. Amit Shukla, Robotics & Control, IIT Mandi 33


Figure 3.7: 3.7:
Figure The same spacespace
The same and the
and same pointpoint
the same p represented in three
p represented di↵erent
in three di↵erent
Figure 3.7: The same space and the same point p represented in three di↵erent
3.2.1 Rotation Matrices
Figure 3.7: The same The
Figure
frames 3.7:
with
frames di↵erent
with
frames same
Figure space
3.7:
orientations.
di↵erent
space
with and and
the The
orientations.
di↵erent same the space
same
point
orientations.same pointthe
and p represented
p representedsame
in three pin represented
three di↵erent
pointdi↵erent in three di↵erent
3.2.1.2
frames
ames with Uses
with
di↵erent of Rotation
di↵erent
frames Matricesorientations.
orientations.
with di↵erent
orientations.
AA point
point pp in
A point in the
the
p inspace
A point space
the
p inspace isalso
isthe also shown.
is also
space shown.alsoNot
isshown. Not
shown
Not
shown. shown
shown
Not is ashown isa afixed
isfixed fixed
space
is a space
fixedspace
frame frame
space frame
{s},{s}, {s},
frame {s}, which is
A pointaligned
which is with
pAinpoint
which
the pwhich
isin
aligned
space {a}.the
with
aligned
A The{a}.
space
with
isispoint
aligned
also orientations
is
The
p {a}.
shown. in
with also
The
the{a}.
Notshown.
orientations ofisthe
orientations
space The
shown Notisthree
of
also ashown
the
orientations of three
the
shown.
fixed frames
is
three
of a frames
frames
Not
the
space relative
fixed
shown
three
frame space
relative is to
relative
frames{s}, {s}
{s}
frame
ato to {s}
fixed
relativecanto be
{s},
space written
{s}frame {s},
which iscan becan
which
aligned written
bealigned
iswith written
can be
{a}.which with
written
The is {a}.
aligned Thewith
orientations orientations
of{a}.
the Thethree oforientations
the three
frames frames
relative of the to relative
three
{s} frames to {s}relative to {s}
can be written 2 2
can1 be2 3written 3 23 2 2 3 3 2
3 2 2 3 3 3
an be written 1 0 0 0 10 0 0 0 01 010 0 1 0 0 0 1 10 0 1 0
𝑅!"
2 R=a =R4a 0=314 2 45 3
2 2
5 𝑅 45= 2 4 33 4 5 3
2
2
5 4
5 𝑅 42 =33 4 5 2 ,3 5
5 3
R1a0= 0
0 01 0,0 R 1 , =!#
0R =1
, R 1
0 = 0 1 0
, 0R , R
=
0 =, 0 !$
R 0 0= 0 01 1
0 , 1 ,
1 0 0 0b 1 10 00 0b
b 1 0 c00 c
11 0c00 1 0 0 1 0
4 R = 40 500 011R 0 0 0= 15 4
4 ,0 R 01 = 1 040 15 05 , 001R0 = 01 045 , 11Rc 0=1 4010055,0 001Rc 0=
4 0 14 500, 0 1 5,
Ra = 0 1 0 , R b = 1 0 0 , R c = 0 0
a a b b 1 ,
0 location
and 0the 0 location
1location 0 1 the of 0 00ppoint
0point in11 0 0 these 1 can 10 written
be00can 101 written 0 0 1 0 0
and the and the of theofpoint pthe
in these thesein frames
pframes canframes
be written
be
and the location of2the2 3 point 3 2 p in 3
2 these
2 3 frames
23 32can2 be 3 written
23 can 3
and the location and
nd the location of the point p 1in these ofthe
the location
point1 p of
in
frames
1 the
these pointframesp
1can1be written in 1 these
can be frames
0 0 written 0 be written
2 pa = 3 p4a = 12 4 5pa,13 =
2 5p4, =
b 1 p3
5
4b2 , 24
= 1pb53=1, 4 3
25p, 1=p5
c c42
3, 42
= 1pc5= 1. 453. 1 5 .2
3 3
1 1 1 1 1 10 0
04 05 1 0 4 4 0 50 5 00 4 4 1 5 5 1 4
𝑝! = 𝑝p"a== 4 1 p5a ,= pb 1= 4,𝑝p#a1p= b5=, 1pc 1
= =, 4p, b = 1pc5=. 1 1, 𝑝$p. c== 1 5.
Note Note
that {b} Note
that is{b}
0that is {b}
obtainedobtained 0obtained
isby by0rotating
rotating by{a} 0 about
{a}0 about
rotating {a}
ẑa by1about by 0,90
ẑa 90 ẑand
a by, 1and 90 {c}
{c} ,isand {c}1is obtained
is obtained
obtained
by rotating
by rotating by
{b} {b} about
rotating
about {b}by
ŷ about
ŷb by90 ŷ.b90by. 90 .
b
Note thatNote
{b} isthat {b}Note
obtained is by that
obtained
rotating {b} isrotating
by{a} obtained
about {a} ẑabyby rotating
about90 , ẑand a by{a} {c}90about
is, and ẑa{c}
obtained by is , and {c} is obtained
90obtained
by{b}
y rotating rotating
Representing
Representingabout {b} byby
Representing
ŷan rotating
about
an 90
b orientation b. {b}
ŷan by
orientation about
90
orientation
When
ŷb by
. When When 90we
we write
we write
. write
Rc , R weRare
wec , are c , we
implicitly are implicitly
implicitly referring
referring referring
theto
to thetoorientation the orientation
orientation of frameof frame {c} of relative
frame {c}
{c} relative to relative
the the to
to fixed fixedtheframe
frame fixed
{s}.frame
{s}.We We {s}.
can beWe
can becan
more more be more
Dr. Amit Shukla, Robotics & Control, IIT Mandi 34
explicit
Representing
explicit explicit
about
about this an about
this
Representing by this
writing
orientation
by writing by writing
an it as R it as
:
orientation
it as RscWhen : wesc are R
we :
are we
werepresenting
sc Whenare
representing
write Rc , we representing
we
the the
write
are frame
R the
implicitly
frame ,
{c}
c frame
{c}
we of
are {c}
the of the
implicitly
of referring
the referring
3.2.1 Rotation Matrices
3.2.1.2 Uses of Rotation Matrices

Representing an orientation:
𝑅$ - orientation of frame {c} relative to the fixed frame {s} (explicitly).
𝑅*+ - orientation of frame {c} relative to the fixed frame {s} (implicitly).

(The inverse of a rotation matrix R ∈ SO(3) is also a rotation matrix, and


it is equal to the transpose of R, i.e., 𝑅,- = 𝑅! )

Dr. Amit Shukla, Robotics & Control, IIT Mandi 35


p pp
3.2.1 Rotation Matrices ẑa ẑb x̂c
ŷb
3.2.1.2 Uses of Rotation Matrices Figure 3.7: The same space
Figureand the same
3.7: The point
same p represented
ẑc space and the
frames with di↵erent orientations. ŷc
frames with di↵erent orientations.
Changing the reference frame: x̂a {a} ŷa {b} {c}
A point p in the space isAalso point x̂p
b in the
shown. Notspace
shownis is a fixed
also shown
which p
p is aligned with {a}.which
The orientations
is {a}.pthree
of the
aligned with The fram
orien
can be written can be written
Figure 3.7: The same2 space and3the same 2 point2 p represented
3 3 in three
2 2di↵e
A rotation matrix is just a frames with di↵erent
collection orientations.
of 3-unit 1 vectors,
0 0 so the reference 0 1 1 0 0frame
0 of a 0 0
vector can also be changed by a rotation Ra = 4matrix
0 1 using0 5, R Ra4=14 00version
a b modified
= 1 0 05 5
, of
,RcRthe44
b = 01
=
subscript cancellation rule: A point p in the space0 is 0also1 shown. Not shown
0 00is 0a1fixed
1 space frame 10
which is aligned with {a}. The orientations of the three frames relative to
and the
can be written location of the point
and
𝑅!#pthe these𝑝frames
in location#
of thecan be written
point p in the
2 3 22 3 32 32 2 3 2 3 32
1 0 0 10 1 0 1 0 1 1 00
Ra = 4 0 1 0 5 ,pa𝑝 b =
R!= =441 15 , 0 pb0=54, Rc1p= 54=
a =,4 5 ,4 1pb15=,54
0 p1c 0=
0 0 1 00 0 1 0 1 00 0 1

and the Note


locationthatof {b}
the point p in these
is obtained frames can
that {b}
by rotating
Note beabout
{a}
is writtenẑa by rotating
obtained 90 , an
by rotating {b} 2 about3 2 rotating
ŷb by
by 903 . {b} about
2 3 by 90 .

1 IIT Mandi
Dr. Amit Shukla, Robotics & Control, 1 0 b 36
p = 4 1 5, p = 4 1 5, p = 4 1 5.
x̂s ŷs ẑb 90 x̂b
3.2.1 Rotation Matrices ẑb
3.2.1.2 Uses of Rotation Matrices Rsb = Rsb R
8body
Rsb represents some {b} relative to {s}, rotate {b} by about a unit axis 𝜔, i.e.,frame
by a rotation
rotation
R = Rot(𝜔,
8 𝜃). ẑb
Figure 3.9: The rotation operator R =
Figure 3.9: (Top) Rot(
The𝑧̂ ,rotation
90°) gives the R
operator orientation
= Rot(ẑ, 90of) the
gives the
right-hand
the right-hand frame frameframe.
in the left-hand in the(Bottom)
left-hand Onframe.
the left are
(Bottom)
frame {s} and a body On which
frame {b}, the leftcanare shown aas
be expressed fixed
Rsb . The
0
rotates {b} by 90 frame
about the{s}fixed-frame
and a body axisframe {b},
ẑs to {b which
}. The quantit
00
canbody-frame
{b} by 90 about the be expressed axis ẑbasto𝑅{b
*' The quantity
. }.
𝑅𝑅*' rotates {b} by 90° about the fixed-
frame axis 𝑧*̂ to {b’}. The quantity 𝑅𝑅*'
frame after a rotation by ✓ about !ˆb = ! ˆ (the rotation axis ! ˆ is co
rotates {b} by 90° about the body-frame
{b}),
in the body frameaxis representations of these new frames can
𝑧'̂ to {b’’}.
as

Rsb0 = rotate by R in {s} frame (Rsb ) = RRsb


Rsb00 = rotate by R in {b} frame (Rsb ) = Rsb R.

In other words, premultiplying by R = Rot(ˆ


Dr. Amit Shukla, Robotics & Control, IIT Mandi! , ✓) yields
37 a rota
3.3 Rigid-Body Motions and Twists
3.3.1 Homogeneous Transformation Matrices

Dr. Amit Shukla, Robotics & Control, IIT Mandi 38


3.3 Rigid-Body Motions and Twists
3.3.1 Homogeneous Transformation Matrices
Definition 3.13. The special Euclidean group SE(3), also known as the group of
rigid-body motions or homogeneous transformation matrices in 𝑅3 , is the set of
all 4×4 real matrices T of the form where R ∈ SO(3) and p∈ 𝑅3 is a column vector.

(a rotation matrix R∈SO(3) to represent the


orientation of the body frame {b} in the
fixed frame {s} and a vector p ∈ 𝑅 3 to
represent the origin of {b} in {s}. Rather
than identifying R and p separately, we
package them into a single matrix.)
Dr. Amit Shukla, Robotics & Control, IIT Mandi 39
3.3 Rigid-Body Motions and Twists
3.3.1 Homogeneous Transformation Matrices
Important concepts, symbols, and equations

• The special Euclidean group SE(3) is a matrix Lie group also known as the
group of rigid-body motions or homogeneous transformation matrices in ℝ3 .

• The inverse of T ∈ SE(3) is

Dr. Amit Shukla, Robotics & Control, IIT Mandi 40


3.3 Rigid-Body Motions and Twists
3.3.1 Homogeneous Transformation Matrices

Definition 3.14. The special Euclidean group SE(2) is the set of all 3×3 real matrices T
of the form

where R ∈ SO(2), p ∈ 𝑅2 , and 0 denotes a row vector of two zeros.


A matrix T ∈ SE(2) is always of the form,

where θ ∈[0,2𝜋).

Dr. Amit Shukla, Robotics & Control, IIT Mandi 41


3.3 Rigid-Body Motions and Twists
3.3.1.1 Properties of Transformation Matrices
Proposition 3.15. The inverse of a transformation matrix T ∈ SE(3) is also a
transformation matrix, and it has the following form:

Proposition 3.16. The product of two transformation matrices is also a


transformation matrix.
Proposition 3.17. The multiplication of transformation matrices is associative, so
that ( 𝑇- 𝑇( 𝑇) = 𝑇- (𝑇( 𝑇) ), but generally not commutative:𝑇- 𝑇( ≠ 𝑇( 𝑇- .

Proposition 3.18. Given T = (R,p)∈SE(3) and x,y∈ 𝑅3 , the following hold:


• ∥ 𝑇𝑥 − 𝑇𝑦 ∥=∥ 𝑥 − 𝑦 ∥, where ∥. ∥ denotes the standard Euclidean norm in 𝑅3 , i.e., ∥ 𝑥 ∥
=√(𝑥 ! 𝑥).
• ⟨Tx-Tz,Ty-Tz⟩= ⟨x-z,y-z⟩ for all z∈ 𝑅3 , where ⟨. , . ⟩ denotes the standard Euclidean inner
product in 𝑅3 , ⟨x, y⟩ = (𝑥 ! 𝑦).
Dr. Amit Shukla, Robotics & Control, IIT Mandi 42
3.3 Rigid-Body Motions and Twists
3.3.1 Homogeneous Transformation Matrices

• Three uses of HT matrices:

1. Represent a configuration. Tab represents frame {b} relative to {a}.


2. Change the reference frame of a vector or frame.

v should be written in
homogeneous coordinates,
v = [v1 v2 v3 1]T.

3. Displace a vector or frame. T = (R, p) = Trans(p) Rot(𝜔,𝜃)


)

Dr. Amit Shukla, Robotics & Control, IIT Mandi 43


3.3 Rigid-Body Motions and Twists
3.3.1.2 Uses of Transformation Matrices

Representing a configuration:-The fixed frame {s} is coincident with {a}.the frames


{a}, {b}, and {c}, represented by Tsa=(Rsa,Psa), Tsb=(Rsb, Psb), and Tsc=(Rsc,Psc),
respectively, can be expressed relative to {s} by the rotations

The location of the origin of each frame relative to {s} can be written

Figure 3.14: Three reference frames in space, and a point v that can be represented in {b} as 𝜗b=(0,0,1.5).

Dr. Amit Shukla, Robotics & Control, IIT Mandi 44


3.3 Rigid-Body Motions and Twists
3.3.1.2 Uses of Transformation Matrices

Space-frame transformation:

Tsb’’ = T Tsb = Trans(p) Rot(𝜔,𝜃)


) Tsb

2. translate {b’} by p 1. rotate {b} by 𝜃 about


in {s} to get {b’’} 𝜔
8 in{s} to get {b’}

Body-frame transformation:

Tsb’’ = Tsb T = Tsb Trans(p) Rot(𝜔,𝜃)


)
1. translate {b} by p 2. rotate {b’} by 𝜃 about
in {b} to get {b’} 𝜔
8 in{b’} to get {b’’}

Dr. Amit Shukla, Robotics & Control, IIT Mandi 45


3.3 Rigid-Body
94 Motions and Twists 3.3. Rigid-Body Motions and Twists
3.3.1.2 Uses of Transformation Matrices
x̂b
ŷb
{b} x̂b {b }
ẑs x̂b
ẑb 1
ẑb 2
1 ŷb
ŷb {b} ẑs
{s}
x̂s ŷs
ẑb
x̂b
{s}
2
x̂s ŷs
ŷb {b } ẑb

Figure 3.15: Fixed-frame and body-frame transformations corresponding to ! ˆ =


(0, 0, 1), ✓ = 90 , and p = (0, 2, 0). (Left) The frame {b} is rotated by 90 about ẑs
and then translated by two units in ŷs , resulting in the new frame {b0 }. (Right) The
frame {b} is translated by two units in ŷb and then rotated by 90 about its ẑ axis,
resulting in the new frame {b00 }.

Dr. Amit Shukla, Robotics & Control, IIT Mandi 46


frame (this rotation will cause the origin of {b} to move if it is not coincident
Homogeneous transformations

P
• pB
pA RFB
‘affine’ relationship
pAB OB

RFA O pA = pAB + RAB pB


A

pA RAB pAB pB linear


pA,hom = = = TAB pB,hom relationship
1 0 0 0 1 1

vector in homogeneous 4x4 matrix of


coordinates homogeneous transformation
Robot Kinematics

Dr. Amit Shukla, Robotics & Control, IIT Mandi 48


Robot Kinematics

Dr. Amit Shukla, Robotics & Control, IIT Mandi 49


Dr. Amit Shukla, Robotics & Control, IIT Mandi 50
Dr. Amit Shukla, Robotics & Control, IIT Mandi 51
Dr. Amit Shukla, Robotics & Control, IIT Mandi 52
Dr. Amit Shukla, Robotics & Control, IIT Mandi 53

You might also like