100% found this document useful (1 vote)
364 views

Spatial Mechanisms Lecture Notes

This document provides lecture notes on spatial mechanisms for the course EMT 2431. It introduces various kinematic pairs that allow three-dimensional motion. The course aims to teach determining linkage arrangements, solving problems using transformation matrices, and performing kinematic analysis of spatial mechanisms. Topics covered include planar transformations, rigid body transformations using rotation and translation matrices, modeling of joints, and vector analysis of spatial mechanisms. Examples and assignments are provided to demonstrate applying these concepts.

Uploaded by

Erico Eric
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
100% found this document useful (1 vote)
364 views

Spatial Mechanisms Lecture Notes

This document provides lecture notes on spatial mechanisms for the course EMT 2431. It introduces various kinematic pairs that allow three-dimensional motion. The course aims to teach determining linkage arrangements, solving problems using transformation matrices, and performing kinematic analysis of spatial mechanisms. Topics covered include planar transformations, rigid body transformations using rotation and translation matrices, modeling of joints, and vector analysis of spatial mechanisms. Examples and assignments are provided to demonstrate applying these concepts.

Uploaded by

Erico Eric
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/ 77

EMT 2431: Spatial Mechanisms

Compiled by:

Wawira Nyaga

Students are reminded not to treat these lecture notes as comprehensive and solely sufficient
for their studies. These notes are aimed at providing a quick reference and a brief guidance
for the students, NOT a substitute for attending regular classes and reading recommended
textbooks.
Expected Outcomes

At the end of this course, you should be able to;

• determine the linkage arrangement for 3D motion

• solve problems in spatial mechanisms using 3D transformation matrices

• carry out forward kinematic analysis and computer simulation of a given spatial
mechanism

Course Outline

Introduction: Possible link connection types allowing for three dimensional motion, rev-
olute, prismatic slides, helix pair cylindrical pair, spherical and plane joints, agitation
mechanism, Hookes joint, universal joint. Degrees of freedom. Planar finite transforma-
tions using complex analysis. Identity transformation. Planar matrix operator for finite
rotation. Homogeneous coordinates and finite planar translation. Concatenation of finite
displacements. Rotation about an axis away from the origin. Rigid body transforma-
tion. Spatial transformations: Rotation, translation, rotation matrix with axis through
the origin. Analysis of spatial mechanisms; 4x4 transformation matrix. Link and joint
modeling with elementary matrices, spherical joint, Eulerian rotation transformation.
Modeling of spatial mechanisms. Computer simulation.

Reference Textbooks

1. George N. S, Arthur G. E., (1988) Advanced mechanism design: Analysis and


synthesis, Prentice Hall, volume 2

2. Sandier B.Z (1999) Robotics Designing the Mechanisms for Automated Machinery
Academic Press, 2nd Ed.

3. Marghitu D.B. (2009) Mechanisms and Robots Analysis with MATLAB, Springer-
Verlag London Limited

4. John J. Craig (2005), Introduction to Robotics Mechanics and Control, Pearson


Education International, 3rd Ed

i
Contents

Expected Outcomes i

Course Outline i

Reference Textbooks i

1 Introduction 1

1.1 Kinematic Pairs used in Spatial Mechanisms . . . . . . . . . . . . . . . . 1

1.2 Degree of Freedom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Planar Finite Transformation using Complex Analysis 5

2.1 Identity Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Planar Matrix Operator for Finite Rotation . . . . . . . . . . . . . . . . 7

2.3 Homogeneous Coordinates and Finite Planar Translation . . . . . . . . . 8

2.4 Concatenation of Finite Displacement . . . . . . . . . . . . . . . . . . . . 9

2.5 Rotation About an Axis not Through the Origin . . . . . . . . . . . . . . 11

3 Rigid-Body Transformations 14

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.2 Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.2.1 Rotational Matrix with Axis Through the Origin . . . . . . . . . 16

3.2.2 Assignment 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2.3 Coordinate transformation . . . . . . . . . . . . . . . . . . . . . . 24

3.2.4 Composite rotation algorithm . . . . . . . . . . . . . . . . . . . . 24

3.3 Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4 Homogeneous coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.5 The 4 × 4 Translation and Rotation Matrix for Axis Through the Origin 26

ii
3.5.1 Screw displacement of a point through axis that does not pass
through the origin . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.6 Practical-Exercise 1 (Simulation) . . . . . . . . . . . . . . . . . . . . . . 35

4 Analysis of Spatial Mechanisms 36

5 Link and Joint Modeling with Elementary Matrices 41

5.0.1 Tutorial Questions . . . . . . . . . . . . . . . . . . . . . . . . . . 45

6 Vector Algebra 47

6.1 Vector Sum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.2 Dot Product (Scalar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.3 Cross Product (vector) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.4 Unit Vectors: i, j, k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.5 Vector Differentiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

7 Vector Analysis of Spatial Mechanisms 49


d
7.1 Motion in the Stationary Coordinate System i.e dt
(i, j, k) =0. . . . . . . 49

7.2 Motion of a Rigid Body about a Fixed Axis (without translation) . . . . 50

7.3 Moving Coordinate Systems . . . . . . . . . . . . . . . . . . . . . . . . . 50

7.4 Kinematics of a Typical Four-Bar Spatial Linkage . . . . . . . . . . . . . 54

7.5 Assignment 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

7.6 Practical-Exercise 2 (Simulation) . . . . . . . . . . . . . . . . . . . . . . 70

iii
List of Figures

1 Spatial Kinematic Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 Plane Slider-Crank Mechanism . . . . . . . . . . . . . . . . . . . . . . . 3

3 Example 1.1 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

4 Two coplanar positions of a link pinned to ground . . . . . . . . . . . . . 5

5 Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

6 Concatenation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

7 Coordinate systems for each vector representing a planar four bar linkage 12

8 Illustration of transformation steps representing the movement of point A


from position 1 to 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

9 Unit vector and its direction cosine . . . . . . . . . . . . . . . . . . . . . 15

10 Screw displacement of point P about axis which goes through the origin . 17

11 Screw displacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

13 Screw displacement not through axis . . . . . . . . . . . . . . . . . . . . 29

14 Example 3.6 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

15 Example 3.6 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

16 Practical Exercise Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 36

17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

19 Revolute Joint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

20 Cylindrical Joint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

21 Screw Joint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

22 Spherical Joint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

iv
25 Position vector of a point in Cartesian coordinate . . . . . . . . . . . . . 49

26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

27 Example 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

28 Typical four-bar spatial linkage . . . . . . . . . . . . . . . . . . . . . . . 55

29 Vector representation of the linkage in Fig 28 . . . . . . . . . . . . . . . . 55

30 Example 6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

31 Example 6.2 solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

32 Example 6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

33 Example 6.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

34 Example 6.3 Solution b . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

36 Assignment 2(a) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

37 Assignment 2(b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

38 Practical Exercise 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

v
1 Introduction

1.1 Kinematic Pairs used in Spatial Mechanisms

Although most mechanical linkages have planar motion, there are many cases where
three-dimensional (or spatial) movement is required. The revolute and prismatic (slider)
joints are quite familiar from planar linkages. They both allow single degree of freedom
of motion between the links they connect. In spatial mechanisms the axes of these joints
need not be parallel or perpendicular to the axes of other joints. Thus the general spatial
motions may be obtained with these joints.

Another single-degree-of-freedom joint is helix (screw) joint. In this joint there is a linear
relationship between the axial translation and the angle of rotation of the screw relative to
the nut. The cylindrical pair has no coupling between the sliding and rotational positions
so that the this pair permits two degrees of freedom of relative motion. The spherical
and plane joints allow three degrees of freedom of relative motion- three rotations for
spherical and two translations and one rotation for the planar joint. These joint pairs
and three-dimensional links may be combined in countless combinations to yield spatial
mechanisms.

Figure 1: Spatial Kinematic Pairs

1
1.2 Degree of Freedom

Recall in planar mechanisms, Gruebler’s equation was used to determine the degrees of
freedom. For movement in three dimensions a different equation is required for deter-
mining degrees of freedom. Let

F = degree of freedom of the mechanism

n= number of links in the mechanism (including the fixed link; all links are considered
as rigid bodies having at least two joints: if several machine parts are assembled
as a rigid part, the assembly is considered as a single link)

j= number of joints in the mechanism; each joint is assumed as binary (ie., connecting
two links); joints connecting more than two links will be treated as was done with
Gruebler’s equation (i.e., a separate joint between each two links); thus a joint
connecting 3 links would count as two joints

fi = degrees of freedom of the ith joint, this is the number of degrees of freedom of the
relative motion between the connected links

λ= degrees of freedom the space within which the mechanism operates; for plane motion
and for motion on a curved surface λ = 3 and for spatial motions λ = 6

LIN D = number of independent circuits or closed loops in the mechanism

The following degree-of-freedom equations then apply to a large class of mechanisms:

j
X
F = λ(n − j − 1) + fi (1)
i=1

LIN D = j − n + 1 (2)

Combining (1) and (2), have


X
fi = F + λLIN D (3)

For example, for the plane slider-crank mechanism shown in Fig 2,

n=j=4

X
fi = 1 + 1 + 1 + 1 = 4 λ = 3

2
Figure 2: Plane Slider-Crank Mechanism

Hence F = 3(4 − 4 − 1) + 4 = 1

In the application of these equations certain rules need to be kept in mind:

1. Joints connecting n links, where n > 2, are called multiple joints and are counted
as (n − 1) binary joints.

2. Certain linkages commonly thought of having one degree of freedom may have an F
value greater than 1. This can occur in spatial linkages, for example, having links
with two joints of types spherical-spherical (S − S), spherical-cylindrical (S − C),
and spherical-planar (S − PL ). Such links can have a ”redundant“ or ”passive“
freedom of rotation about the axis connecting the joints, which is independent of
the motion of the mechanism as a whole (e.g., see Ex. ??.1),

3. Some highly significant mechanisms do not obey the general degree-of-freedom


equations given above. These are mechanisms that depend on special dimensions
or proportions for their mobility. Mechanisms with mixed plane/spatial portions
(variable λ) are usually exceptional. In spatial linkages, special cases are often
associated with parallel, intersecting, or perpendicular joint axes. There are no
simple rules that will predict whether a mechanism obeys Eq. 1 ). Here experi-
ence is very helpful, and the presence of one or more of the above-listed special
characteristics is a signal to be watchful.

Examples 1.1

Determine the degrees of freedom of the swash plate drive of Fig. 3.

Solution:

3
Figure 3: Example 1.1 Problem

n = j=4

X
fi = 1 + 3 + 3 + 1

Since λ = 6, then from Eq. (3), F = 2. One would anticipate that this mechanism has a
single degree of freedom (say the rotation of link 2 if the swash plate mechanism is used
as a hydraulic motor). The second degree of freedom is the rotation of link 3 about an
axis through the center of the sphere and normal to the face of the swash plate. This
passive degree of freedom does not interfere with the desired input-output kinematic
relationship of the drive (although it certainly plays a role in the lubrication and wear
of the mating surfaces).

4
2 Planar Finite Transformation using Complex Anal-
ysis

Consider two finitely separated positions A1 and A2 of a rigid link shown that rotate
about the origin O.

Figure 4: Two coplanar positions of a link pinned to ground

Define the position vectors of the points as A1 and A2 respectively. Then we seek a
transformation that rotate the link A1 by θ12 to a new position A2 . We assume an
unknown operator R12 whose product with A1 yield A2

A2 = R12 A1 (4)

This can be re-arranged by complex division

A2
R12 = (5)
A1

The complex vector A1 and A2 can be written as

A1 = |A1 |(cos θ1 + i sin θ1 )


A2 = |A2 |(cos θ2 + i sin θ2 )

5
Substituting in Eq. 40
|A2 | (cos θ2 + i sin θ2 )
R12 = = (6)
|A1 | (cos θ1 + i sin θ1 )

Since the initial position is known and we wish to rotate the link through a known angle
θ1−2 then we strive to express Eq. 40 in terms of these known values. Now since the link
is rigid and rotates about the origin then the length remains constant hence

|A1 | = |A2 |

Next we rationalize the denominator by multiplying through by the complex conjugate


of the denominator to get

A2 (cos θ2 + i sin θ2 ) (cos θ1 − i sin θ1 )


R12 = × (7)
A1 (cos θ1 + i sin θ1 ) (cos θ1 − i sin θ1 )

Adopting the shorted notation cθ = cos θ and sθ = sin θ. Expanding Eq. 46 and
regrouping we have

R12 = cθ2 cθ1 + sθ2 sθ1 + i(cθ1 sθ2 − cθ2 sθ1 ) (8)

Now from Fig. 4 we have θ2 = θ1 + θ12 and using this in Eq. 47 yields

R12 = c(θ1 + θ12 )cθ1 + s(θ1 + θ12 )sθ1 + i[s(θ1 + θ12 )cθ1 − c(θ1 + θ12 )sθ1 ] (9)

Now from the trigonometric identities

cos(α − β) = cos α cos β + sin α sin β


and
sin(α − β) = sin α cos β − sin β cos α

and letting α = (θ1 + θ12 ) and β = θ1 hence Eq. 9 reduces to

R12 = cos θ12 + i sin θ12 (10)

Hence using Eulers equation we have

R12 = eθ12 (11)

This shows that the transformation describing the displacement is independent of the

6
actual position of the link but dependent solely on the angle of rotation from initial
position.

2.1 Identity Matrix

Consider a 2 × 2 identity matrix when used in transformation its effect is to leave the
vector un-changed
" #( ) " # ( )
1 0 x 1x + 0y x
= = (12)
0 1 y 0x + 1y y

Note that the second entry in the first row of the transformation represents the contri-
bution of y to the new value of x. Similarly, the first entry in the second row represents
the contribution of x to the new value of y. Thus with 2 × 2 matrix operator, both final
values are functions of each initial value.

2.2 Planar Matrix Operator for Finite Rotation

From the complex operator it was seen that the finite operator does not depend on either
the initial or final position of the vector but only on the angle θ12 . But the coordinates
of the final vector are each a function of both the real and imaginary coordinates of
the initial vector. In matrix notation, it follows logically that there must be a similar
arrangement.
Let R(θ12 ) be a 2 × 2 matrix, whose product with A1 , yields A2
( ) " #( )
x2 r11 r12 x1
= (13)
y2 r21 r22 y1

where x1 , y1 and x2 , y2 are the coordinate of A1 and A2 respectively, both expressed in


the same coordinate system. Expanding Eq. 13 by the way of matrix multiplication
yields

x2 = r11 x1 + r12 y1 (14)


y2 = r21 x1 + r22 y1

Expanding similar vectors in complex form and using the operator of Eq. 10 yields

Real2 + iImaginary2 = <2 + i℘m2 = (cos θ12 + i sin θ12 )(<1 + i℘m1 )

7
when this is expanded

<2 = cos θ12 <1 + i2 sin θ12 ℘m1 (15)


℘m2 = sin θ12 <1 + cos θ12 ℘m1

comparing Eqs (14) and (15) yields


" #
cos θ12 − sin θ12
[R( θ12 ) = (16)
sin θ12 cos θ12

2.3 Homogeneous Coordinates and Finite Planar Translation

When a particle undergoes pure translation, the vector coordinates representing its lo-
cation in a coordinate system will change. Consider the slider pivot of Fig. 5. It has
undergone a pure translation (represented by ∆A) from its initial position at A1 to a
final position at A2 . We seek a transformation T whose product with A1 yields A2 :

A2 = [T ]A1

Figure 5: Translation

Using vector addition, it should be obvious that

A2 = A1 + ∆A

or
x2 = x1 + ∆x

and
y2 = y1 + ∆x

8
One way that this translation can be represented is by using the 2 × 2 matrix with an
additional column tacked on (representing ∆A) and converting A1 from a 2 × 1 column
vector to a 3 × 1 homogeneous column vector, which we will designate by [A1 ]:
 
" # " # x1
x2 1 0 ∆x
=  y1  or A2 = [T ][A1 ]
 
y2 0 1 ∆y
1

Multiplying this out yields


" # " #
x2 x1 + 0y1 + ∆x
=
y2 0x1 + y1 + ∆y

which is what we wanted. But note that A2 represented by its coordinates x2 and y2
only is a 2 × 1 column matrix rather than a 3 × 1 homogeneous column matrix like [A1 ].
To remedy this, we may expand the 2 X 3 translation operator to a 3 × 3 matrix, keeping
everything homogeneous coordinates:
 
1 0 ∆x
[T ] =  0 1 ∆y 
 

0 0 1

2.4 Concatenation of Finite Displacement

Suppose that a pivot or a particle goes through a ”rotation” describing a circular path
around the origin of a coordinate system and then a straight-line translation, both dis-
placements being expressed in one and the same coordinate system. Can a single operator
describe this motion? Consider the links of Fig. 6. The slider 2 on link 1, initially lo-
cated by A1 with respect to a fixed coordinate system attached to the center of rotation
of link 1, rotates and translates to its final position at A2 .

Since positional kinematics is concerned only with the initial and final positions, this
motion may be considered as a rotation to A01 , followed by a translation to A2 by ∆A.
Mathematically, we could represent this in two steps by

[A01 ] = [R][A1 ]
[A2 ] = [T ][A01 ]

9
Figure 6: Concatenation

Or we could combine these two equations, yielding

[A2 ] = [T ][R][A1 ]

If both the translation and the rotation operators are expressed as 3 × 3 matrices, an
operation called concatenation may be performed. Concatenation is basically a matrix
operation in which two or more transformations are combined by premultiplying the
first operator by the second, the product of these two by the third, and so on, to reduce
the number of operators to a single operator. For example the above operation can be
represented by one single operator [D] given by

  
1 0 ∆x cos θ − sin θ 0
[D] =  0 1 ∆y   sin θ cos θ 0 
  

0 0 1 0 0 1
 
cos θ − sin θ ∆x
=  sin θ cos θ ∆y 
 

0 0 1

Thus, for the case of planar motion consisting of a rotation followed by a translation,
both expressed in the same coordinate system, the final position of a vector representing
a particle or a pivot may be found using a single 3 × 3 matrix operator when both the
initial and final positions are expressed in homogeneous coordinates.

Note:
• note that if θ = 0 (no rotation), cos θ = 1, ± = sin θ = 0, [D] reduces to the

10
translation operator.

• if ∆x = 0 and ∆y = 0 (no translation), [D] reduces to the rotation operator.

• If there is no rotation (0 = 0) and no translation (∆x = ∆y = 0), then [D] reduces


to the identity matrix

Thus [D] is an operator representing four possible finite planar displacements of a point:
(1) no motion, (2) pure rotation about the origin, (3) pure translation, and (4) rotation
about the origin followed by translation, all defined in the same coordinate system.
For the fifth case, when translation occurs first and is followed by rotation, the concate-
nation is (using c = cos and s = sin)
    
cθ −sθ 0 1 0 ∆x cθ −sθ cθ∆x − sθ∆y
 sθ cθ 0   0 1 ∆y  =  sθ cθ sθ∆x + cθ∆x 
    

0 0 1 0 0 1 0 0 1

This is different from [D] for case 4

2.5 Rotation About an Axis not Through the Origin

Rotation of a link (vector) pivoted about the origin can be interpreted as a rotation of a
free vector with respect to a fixedly oriented coordinate system with the origin attached
to the tail of the free vector. An example of this is the case of synthesis of mechanism
where the loop closure equation were applied to the vector representing the linkages.
This involved the head-to-tail addition of the vector, each vector being a free-vector
with its own origin and own coordinate system as shown in Figure 7. Note that the
joints 1 and 4 are fixed. Here we note that each of these coordinate system have axes
that are parallel to the global coordinate system i.e all coordinate systems have axes
parallel to each other.
Now since the link 3 have a vector Z3 whose tail is on a free coordinate system, we wish
to find its rotation about a fixed co-ordinate e.g x1 , y1 or x2 , y2 etc. Consider a point
A1 located in the fixed x, y coordinate system in Fig. 8a by the vector A1 . Now let
the point A1 describe the arc θ about point Q at a vector Q. We seek a single operator
that will describe the absolute motion of point A. We may construct a free vector a1
emanating from point Q to the particle initially at A1 . If point Q (and the tail of a1 is
translated back to the origin, a1 becomes a vector that is free to rotate about the origin.
This step, shown in Fig. 8b, is represented mathematically by

{a01 } = [T (−Q)]{a1 }

11
Figure 7: Coordinate systems for each vector representing a planar four bar linkage

Figure 8: Illustration of transformation steps representing the movement of point A from


position 1 to 2

Next the vector a01 can be rotated about the origin by angle θ to give a02 as shown in
figure 8c
{a02 } = [R(θ)]{a01 }

Finally, the point Q0 (at origin) is translated with a02 attached back by translation oper-
ator as shown
{A2 } = [T (+Q]{a02 }

12
All these steps may be concatenated to form the single 3 × 3 matrix operator as follows

{A2 } = [D(θ, Qx , Qy )]{A1 }

where

[D] = [T (+Q)][R(θ)][T (−Q)]

   
1 0 Qx cos θ − sin θ 0 1 0 −Qx
=  0 1 Qy   sin θ cos θ 0   0 1 −Qy 
   

0 0 1 0 0 1 0 0 1
  
1 0 −Qx cos θ − sin θ −Qy cos θ + Qy sin θ
=  0 1 −Qy   sin θ cos θ −Qx sin θ − Qy cos θ 
  

0 0 1 0 0 1
 
cos θ − sin θ Qx − (Qx cos θ − Qy sin θ)
[D] =  sin θ cos θ Qy − (Qx sin θ + Qy cos θ) 
 

0 0 1

13
3 Rigid-Body Transformations

In rigid body the distance of any point from the rest of the points in a rigid body
remain constant. For example, the general planar motion of three points of a planar
rigid body, from their initial positions (A, B, C) to their final positions (A’, B’, C’),
can be represented by
    
A0x Bx0 Cx0 d11 d12 d13 Ax Bx Cx
 0
 Ay By0 Cy0  =  d21 d22 d23   Ay By Cy  (17)
   

1 1 1 d31 d32 d33 1 1 1

3.1 Introduction

Spatial transformations can basically be defined as rotations or translations. These may


be defined as passing through the origin or not. This section will enable us know how to
carry out various transformations in a 3-D space.

3.2 Rotation

All points on a rigid body undergoing pure rotation describes arcs in plane perpendic-
ular to a fixed line. i.e the axis of rotation. In planar x − y system the axis is always
perpendicular to the x − y plane, thus parallel to the z-axis. In the general spatial case,
motion is not constrained to the xy plane and the axis of rotation may be oriented in
any direction. Therefore, the location and direction of the axis must be incorporated
into the spatial rotation operator.

An axis in space may be specified is by defining the location of a point on the axis and a
unit vector in the positive direction along the axis. If, in deriving a spatial rotation op-
erator, we specify that the axis must pass through the origin and if the three coordinates
of the unit vector are used explicitly in the operator, the axis will be fully incorporated
into the operator.

Using a unit vector to define a rotation allows the establishment of sign convection for
the rotation. In a planar system, if the thumb of the right-hand points in the positive
z direction (i.e., toward the observer), the fingers curl in a counterclockwise direction.
Adopting this right hand rule, the right hand thumb points in the direction of the unit
vector of the axis, a positive rotation about the axis is in the direction of the curled

14
fingers. Considering a unit vector given by the symbol û where the ’hut’ above indicates
that it’s a unit vector (i.e magnitude of 1). Referring to Fig. 9, the three coordinates
are the direction cosine of the line given by

ux = cos α
uy = cos β (18)
uz = cos γ

where α, β and γ are angle of the vector measured from the positive branch of the x, y, z
axes respectively.

Figure 9: Unit vector and its direction cosine

A unit vector û pointing from a point A on an axis in space toward point B anywhere
on that same axis may be found by normalizing the vector AD:

B−A
u = −→
|AB|
Bx − Ax
ux = −→
|AB|
By − Ay
uy = −→
|AB|
Bz − Az
uz = −→
|AB|

15
where
−→
|AB| = [(Bx − Ax )2 + (By − Ay )2 + (Bz − Az )2 ]1/2

hence the magnitude of a unit vector û is

|u| = [u2x + u2y + u2z ]1/2

3.2.1 Rotational Matrix with Axis Through the Origin

Consider the motion of a point P shown in figure 10. Pint P rotates about a point A on
the axis through the origin. The axis is described by a unit vector û, which is equivalent
to describing the slope of this line in space. The coordinate of û are the direction cosine
of the axis

ux = cos α
uy = cos β (19)
uz = cos γ

where α, β and γ are measured from positive x, y and z coordinate axes respectively to
the vector û erected at the origin.

Note that
u2x + u2y + u2z = 1 cos2 α + cos2 β + cos2 γ = 1

To drive the general expression for point P 0 in terms of P , û and θ, we for instance take
the coordinate as
P = [0, 1, 3]T A = [0, 2, 2]T

So that axis in the yz plane is described by

û = [0, cos 45, cos 45]

Particle P rotates around the axis by an angle θ12 = 45o (measured positive using the
right hand rule with the thumb pointing in the same direction as û at a radius:

P = [P − A] = 2

16
For a general derivation, we seek a spatial rotation operator R12 such that

r2 = R12 r1

where r1 for this case is P

Figure 10: Screw displacement of point P about axis which goes through the origin

Define a vector through the origin to point A as a, where a is the projection of r1 onto
the axis defined by a unit vector û. Since a and r1 form two sides of the right triangle
P OA then its magnitude is |a| = |r1 cos ∠P OA which is the dot product of r1 and û
Since a is in the same direction and sense as û and since |û| = 1, a is found to be

a = (r1 .û)û (20)

Also needed are two unit vectors defining the direction of the components of ∆r12 in the
plane of rotation. These are the centripetal (∆rc ) and the tangential (∆rt ) component.
To define this we also define an orthonormal coordinates systems which is established
at A with mutually perpendicular unit vectors m̂, ŝ and û. The unit vector ŝ may be
−→
found by normalizing the vector P A, which is a − r1 . To normalize this vector, divide it

17
by its magnitude, the radius (P ), therefore, ŝ is defined as

a − r1
ŝ = (21)
P

Since m̂, ŝ and û are orthonormal, m̂ may be defined as

m̂ = ŝ × û = −û × ŝ (22)

Figure 11: Screw displacement

The vector components now can be shown in Figure 11. Here the magnitude

|∆rt | = P sin θ12


|∆rc | = P − P cos θ12 = P (1 − cos θ12 )

Since m̂ and ŝ are unit vectors, the two components of ∆r12 are found to be

∆rt = P sin θ12 m̂ ∆rc = P versθ12 ŝ (23)

where versθ12 , 1 − cos θ12 and where vers is the short form of versine. substituting for
the unit vectors s and m in Equation 23

(a − r1 ) × u
∆rt = P sin θ12 (ŝ × û) = P sin θ12
P

18
and
a − r1
∆rc = P versθ12
p

which simplifies to
∆rt = sin θ12 [(a × û) − (r1 × û)]

∆rc = versθ12 (a − r1 ) (24)

Since a and û are in the same direction, a × û = 0 and because −r1 × û = û × r1 , ∆r1
can be further simplified to

∆rt = sin θ12 (û × r1 ) (25)

substituting for a in equation 24 yields

∆rc = versθ12 [(r1 .û)û − r1 ] (26)

Hence the rotation of r1 and r2 can be described by displacement vector ∆r12 , where
∆r12 = r2 − r1 or

r2 = r1 + ∆r12
= r1 + (∆rt + ∆rc )
r2 = r1 + sin θ12 (û × r1 ) + versθ12 [(r1 .û) û − r1 ] (27)

Hence, we now require a rotational matrix R12 (û, θ12 which yield the product, r2 =
R12 (û, θ12 )r1

In this equation we require to factor out the vector r1 and hence find matrices which
when added up will yield the 3 × 3 spatial rotational operator R12 (u, θ12 )

[r2 ] = [M1 ] [r1 ] + [M2 ] [r1 ] + [M3 ] [r1 ]

The first matrix will be


 
1 0 0
[M1 ][r1 ] = [r1 ], M1 =  0 1 0 
 

0 0 1

19
Next, the second matrix

i j k

(û × r1 ) = det = ux uy uz



r1x r1y r1z

This determinant is equal to

= i(uy r1z − uz r1y ) − j(ux r1z − uz r1x ) + k(ux r1y − uy r1x ) (28)
¯ ¯ ¯
= {(uy r1z − uz r1y ), (uz r1x − ux r1z ), (ux r1y − uy r1x )} (29)

This cross product can also be found by multiplying 3 × 3 matrix with r1


    
m11 m12 m13 r1x m11 r1x + m12 r1y + m13 r1z
 m21 m22 m23   r1y  =  m21 r1x + m22 r1y + m23 r1z  (30)
    

m31 m32 m33 r1z m31 r1x + m32 r1y + m33 r1z

Comparing equations 45 and 30 gives,

m11 = 0 m12 = −uz m13 = uy


m21 = uz m22 = 0 m23 = −uz
m31 = −uy m32 = ux m33 = 0

Hence the cross product is given by


  
0 −uz uy r1x
û × r1 =  ux 0 −ux   r1y  (31)
  

−uy ux 0 r1z

Finally the dot product


 
ux (r1x ux + r1y uy + r1z uz ) − r1x
[(r1 .û)û − r1 ] =  uy (r1x ux + r1y uy + r1z uz ) − r1y 
 

uz (r1x ux + r1y uy + r1z uz ) − r1z

20
Now factoring out r1 , we have,
 
r1x u2x + r1y ux uy + r1z ux uz
=  r1x ux uy + r1y u2y + r1z uy uz − r1y 
 

r1x ux uz + r1y uy uz + r1z u2z − r1z

 
r1x (u2x − 1) + r1y ux uy + r1z ux uz
=  r1x ux uy + r1y (u2y − 1) + r1z uy uz 
 

r1x ux uz + r1y uy uz + r1z (u2z − 1)

This dot product can be found by matrix multiplication


    
u11 u12 u13 r1x u11 r1x + u12 r1y + u13 r1z
 u21 u22 u23   r1y  =  u21 r1x + u22 r1y + u23 r1z 
    

u31 u32 u33 r1z u31 r1x + u32 r1y + u33 r1z

Similarly comparing this yields


 
u11 = (u2x − 1) u12 = ux uy u13
 u21 = ux uy u22 = (u2y − 1) u23
 

2
u31 = ux uz u32 = uy uz u33 = (uz − 1)

Hence dot product


  
u2x − 1 ux uy ux uz r1x
[(r1 .û)û − r1 ] =  ux uy u2y − 1 uy uz   r1y 
  

ux uz uy uz u2z − 1 r1z

Hence adding this together yields


         
 r2x
 
 1 0 0 r1x 0 −uz uy  r1x
 
  r1x
 

r2y =  0 1 0   r1y +sin θ12  uz 0 −ux  r1y +versθ12 [−] r1y
    
     
r2z 0 0 1 r1z −uy ux 0 r1z r1z
     

where  
u2x − 1 ux uy ux uz
[−] =  ux uy u2y − 1 uy uz 
 

ux uz uy uz u2z − 1

21
That is,
       
 r2x
 
 
 1 0 0 0 −u z u y 
 r1x 

r2y =  0 1 0  + sin θ12  uz 0 −ux  + versθ12 [−] r1y
   
 
  
 
r2z 0 0 1 −uy ux 0 r1z
   

Hence, the three matrices can be added together to yield the operator
 
u2x vθ12 + cθ12 ux uy vθ12 − uz sθ12 ux uz vθ12 + uy sθ12
[R12 (û, θ12 )] =  ux uy vθ12 + uz sθ12 u2y vθ12 + cθ12 uy uz vθ12 − ux sθ12  (32)
 

ux uz vθ12 − uy sθ12 uy uz vθ12 + ux sθ12 u2z vθ12 + cθ12

Example 3.1

Using the spatial 3 × 3 matrix rotational operator Equation 32, find the operators rep-
resenting the rotation about the x, y, and z-axes

Solution:
Rotation about x-axis. We have,

ux = 1, uy = uz = 0

The general rotational spatial matrix reduces to


 
1 0 0
R12 (û, θ12 ) =  0 1 − vθ12 sθ12 
 

0 sθ12 1 − vθ12

But vθ12 = 1 − cos θ12 , therefore, 1 − vθ12 = 1 − (1 − cos θ12 ) = cos θ12

i.e  
1 0 0
[R12 (û, θ12 )] =  0 cθ12 −sθ12 
 

0 sθ12 cθ12

Note that this rotation about the x-axis all points move within a plane perpendicular to
the x-axis, hence the x-coordinate remain unchanged such that the matrix operator is of
the form
{a0 } = [R(θ12 , ux )]{a}

22
      
0
a
 x 
  1 0 0  ax
 
 ax
0 =  0 cθ −sθ  ay =  ay cos θ − az sin θ 
ay
   

 0   
az 0 sθ cθ az ay sin θ + az cos θ
  

Similarly for rotation about y-axis

ux = uz = 0 uy = 1

 
cos θ 0 sin θ
[R(θ12 , uy )] =  0 1 0 
 

− sin θ 0 cos θ

Finally for rotation about z-axis (x-y plane rotation) we have

ux = uy = 0 uz = 1

 
cos θ − sin θ 0
[R(θ12 , uz )] =  sin θ cos θ 0 
 

0 0 1

Example 3.2

Determine the combined rotational matrix for a rotation of a free vector in the fixed
Oxyz system by the following rotations in this order α about the z-axis, β about the
y-axis, and γ about the x-axis

Solution:

 
cos α − sin α 0
R(α, ux ) =  sin α cos α 0 
 

0 0 1
 
cos β 0 sin β
R(β, uy ) =  0 1 0 
 

− sin β 0 cos β
 
1 0 0
R(γ, uz ) =  0 cos γ − sin γ 
 

0 sin γ cos γ

23
concatenating these matrices in the given order results in

R(θ, û) = [R(γ, uz )][R(β, uy )][R(α, ux )]


 
cβcα −cβsα sβ
=  cαsβsγ + cγsα −sαsβsγ + cγcα −sγcβ 
 

−cαsβcγ + sγsα sαsβcγ + sγcα cγcβ

3.2.2 Assignment 1

1. Using the results of example 3.2, determine û and θ for the specific case where
α = β = γ = 30o

2. Given three points on a planar rigid body (A = 0.866 + 5i, B = 1 + i, C = 1.5 + i)


and its motion given by θ = 90o , ∆X = 1, and ∆Y = 0.5. Find the final positions
(A0 , B 0 , C 0 ). Make a step-by-step scale drawing of the transformation.

3. Points A, B and C are on rigid body that is rotated by 300 about an axis that
passes through the origin pointing toward point D. If the coordinate of these points

are: A = [2, 2, 1]T , B = [2, 2, 0]T and D = [2, 2, 2 2]T . Find the new coordinates
of points A0 , B 0 and C 0

3.2.3 Coordinate transformation

If Pxyz = RPuvw and Puvw = QPxyz , then Q = R−1 = RT


Therefore: QR = RT R = R−1 .R = 1, but RA RB 6= RB RA

3.2.4 Composite rotation algorithm

Using composite rotations (multiple rotations), we can establish an arbitrary single ori-
entation.

1. Initialize the rotation matrix to R = 1, which corresponds to the orthonormal


coordinate frame F(fixed coordinate frame) and M(mobile coordinate frame) being
coincident.

2. If the mobile coordinate frame M is to be rotated by an amount ϕ about the k-th


unit vector of the fixed coordinate frame F, then premultiply R by Rk (ϕ)

24
3. If the mobile coordinate frame M is to be rotated by an amount ϕ about its own
k-th unit vector, then postmultiply R by Rk (ϕ)

4. If there are more fundamental rotations to be performed go to step 2, else stop.


The resulting composite rotation matrix R maps mobile M coordinates into fixed
F coordinates

3.3 Translation

Recall in planar systems, the motion included two translational degree of freedom. It
is desired that a matrix operator operating on a vector would add the ∆x and ∆y
translations to the coordinates of that vector.
This is accomplished by combining ∆x and ∆y with a 3 × 3 identity matrix and using
homogeneous rotation to represent the vector. A spatial translation operator may be
formed, using thesame  logic, by including the three translational degrees of freedom
 ∆x 
 
defined by [D] = ∆y in a 4 × 4 identity matrix and using the 4 × 1 homogeneous
 
∆z
 
rotation to represent the vector D. Thus the translation operator is
 
1 0 0 ∆x
 
 0 1 0 ∆y 
[T ] =  

 0 0 1 ∆z 

0 0 0 1

The homogeneous representation of a simple vector locating point A in 3-D space with
respect to a x, y, z coordinate system is
 


 xA 



 y 
A
rA = {rA } =


 zA 



 1 

Example 3.3

A point P is to be translated by ∆x = −1, ∆y = −2 and ∆z = 2. If the initial position


is P1 = [1, 4, 2]T . Find P2 .

Solution:

25
    
  1 0 0 −1   1   o 
P2x
  
  
 
 

  0 1 0 −2   4   2 
 P2y  =  =
 
 0 0 1 2  2   4 
P2z
 
 
 
 

   
0 0 0 1  1   1 

Hence, P2 = [0, 2, 4]

3.4 Homogeneous coordinates

During coordinate transformations, instead of using both rotation matrix (3X3) and a
translation vector (3X1), the homogeneous coordinates system seeks to use a single 4X4
matrix. This way the computation is simplified. For a variety of reasons, it is desirable
to keep transformation matrices in square form, either 3X3 or 4X4. For instance, it is
much easier to calculate the inverse of square matrices than rectangular matrices and in
order to multiply two matrices, their dimensions must match, such that the number of
columns of the first matrix must be the same as the number of rows of the second matrix.
In four dimensional space of homogeneous coordinates, representing both position and
rotation of the frame, the transformation is expressed as:

A
P =B B
AH P

Matrix H is called homogeneous transformation operator (matrix). A homogeneous


transformation matrix is therefore a 4X4 matrix that maps a position vector in homo-
geneous coordinates from one coordinate system to another. The physical meaning of
homogeneous transformations is depicted below.

Example 3.4

For the following Assembly workspace shown in figure 12, describe point P with respect
to the base frame. For given (x4p , y4p , z4p ) with respect to frame {4}. Note drawn to
scale

Solution:
To be solved in class.

3.5 The 4×4 Translation and Rotation Matrix for Axis Through
the Origin

When a combination of 3 × 3 rotation matrix through the origin with a 4 × 4 translation


matrix is required, we expand the 3 × 3 rotation matrix R(u, θ) to a 4 × 4 matrix by

26
Figure 12:

adding a 4th row and a 4th identity column.


Finally this new 4 × 4 rotation matrix is premultiplied by 4 × 4 translation matrix to get
a screw operator for an axis through the origin
    
1 0 0 ∆x r11 r12 r13 0 r11 r12 r13 ∆x
    
 0 1 0 ∆y 
  r21 r22 r23
 0   r21 r22 r23 ∆y 
[S12 ] = [T ][R(θ, u)] =  = 

 0 0 1 ∆z  

 r31 r32 r33 0  
  r31 r32 r33 ∆z  
0 0 0 1 0 0 0 1 0 0 0 1
(33)

The resulting screw matrix in Equation 33 can be expressed in symbolic form by parti-
tioning the matrix " #
R(θ, u) D
s12 =
0 I

where R(θ, u), [D] and [I] carry the usual meaning.
Note [D] = Dû or ∆x = |D|ux , ∆y = |D|uy and ∆z = |D|uz .

Example 3.5

A particle P describes a 450 arc in space from an initial position at (0, 1, 3) about an
axis through the origin with unit vector û = [0, cos 45, cos 45]T . The particle is also

27
 
 0 
  √
translated parallel to this axis by [D] = 1 = 2û. Find the rotation matrix R(θ, u)

 
1

and the final position of the particle.

Solution:
ux = 0 uy = 0.707 uz = 0.707 and θ12 = 45o . Then
 
0.707 −0.500 0.500
[R(û, θ) =  0.500 0.854 0.146 
 

−0.500 0.146 0.854

The screw matrix hence


 
0.707 −0.500 0.500 0
 
 0.500 0.854 0.146 1 
s12 = 

 −0.500 0.146 0.854 1 

0 0 0 1

{P2 } = [s12 ]{P1 }


  
0.707 −0.500 0.500 0  0 
 
  

 0.500 0.854 0.146 1  1 

= 
 −0.500 0.146 0.854 1

 2 
  


 1 
0 0 0 1 
 
0.5
 
 2.146 
= 
 2.854 

 
1

Hence, [P ] = [0.5, 2.146, 2.854]T

3.5.1 Screw displacement of a point through axis that does not pass through
the origin

Let a point P (x, y, z) be a point on the screw axis which does not pass through the
origin. Let point Q1 undergo a screw displacement to Q2

28
Figure 13: Screw displacement not through axis

To perform this transformation, we first translate P to the origin and obtain


 
1 0 0 −x
 
0 1 0 −y 
[Q01 ] = 

 [Q]

 0 0 1 −z 

0 0 0 1

we then obtain Q001 from Q01 by applying the rotation operator


 
r11 r12 r13 0
 
r21 r22 r23 0
[Q001 ]
  0
=  [Q1 ]

 r31 r32 r33 0 

0 0 0 1

Next, we translate P back to its original position and obtain Q000


1

 
1 0 0 x
 
0 1 0 y
[Q000
  00
1] =  [Q1 ]

 0 0 1 z 

0 0 0 1

29
Finally, we translate parallel to the screw axis to obtain Q2
 
1 0 0 ∆ux
 
 0 1 0 ∆uy 
 [Q000
[Q2 ] =  1]

 0 0 1 ∆uz 

0 0 0 1

Concatenating these four matrices in their proper order results in the general screw
displacement matrix with its axis passing through the point (x, y, z)
    
1 0 0 ∆ux 1 0 0 x r11 r12 r13 0 1 0 0 −x
    
 0 1 0 ∆uy 
 0 1 0
 y  r21 r22 r23 0  0 1 0 −y 
[s12 ] =    

 0 0 1 ∆uz 
 0 0 1
 z 
 r31 r32 r33 0 
 0 0 1 −z 

0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
 
r11 r12 r13 ∆ux + x − (r11 x + r12 y + r13 z)
 
 r21 r22 r23 ∆uy + y − (r21 x + r22 y + r23 z) 
[s12 ] =  

 r31 r32 r33 ∆uz + z − (r31 x + r32 y + r33 z) 

0 0 0 1

Example 3.6

A certain point Q1 is translated to a point Q2 by the screw matrix s12 given below
 
−0.748 0.263 0.612 −3.17
 
 0.608 −0.093 0.788 5.99 
s12 = 

 0.263 0.963 −0.092 4.94 

0 0 0 1

If this screw matrix is for a motion not through the origin find the û, θ, the ∆ and also
the point P at which the screw matrix intersects the yz-plane

Solution:
As for the case of rotational matrix [R(θ, u)] the diagonal of the screw vector gives

1
θ = arccos (r11 + r22 + r33 − 1)
2
1
= arccos (−0.784 − 0.093 − 0.092 − 1)
2
0
θ = 165

30
Also we have,

r32 − r23
ux = = 0.333
2 sin θ
r13 − r31
uy = = 0.667
2 sin θ
r21 − r12
uz = = 0.667
2 sin θ

To determine the point at which the screw axis intersects the yz plane, we set x equal
to zero, and solve the three equations simultaneously for D, y and z

∆(0.333) − (0.263)y − (0.612)z = −3.17


∆(0.667) + (1.093)y − (0.788)z = 5.99
∆(0.667) − (0.963)y + (1.092)z = 4.96

The screw axis intersect the yz plane at (0, 6, 6)

∆ = 6.25

FFFTo fully understand the concept of rotating an object about an arbitrary axis, the
following outline gives step by step procedure used to accomplish this transformation.
(Note the procedure is similar to the one explained above)
1. Translate the given axis so that it will pass through the origin.

2. Rotate the axis about x-axis (or y-axis) so that it will lie in the xz-plane (angle α).

3. Rotate the axis about the y-axis so that it will coincide with the z-axis (angle ϕ).

4. Rotate the geometric object about the z-axis (angle θ).

5. Reverse of step 3.

6. Reverse of step 2.

7. Reverse of step 1.

We will illustrate this procedure by the following example.

Example 3.6

Rotate the rectangle shown in figure 14, 300 ccw about the line EF and find the new
coordinates of the rectangle

Solution:
We will make use of the seven-step procedure outlined above and write the applicable

31
Figure 14: Example 3.6 Problem

transformation matrix in each step. After we have generated all the transformation
matrices, we will solve for the new coordinates of the rectangle at the end of the 7th step.

• Translate the given axis so that it will pass through the origin
Translation of the line EF to origin is given as,
   
0 0 0 1 1 0 0 0
   

 2 0 0 1   0 1 0 0 
[P ]1 = [P ][Tt ], where[P ] =   and [Tt ] =  

 2 2 0 1 


 0 0 1 0 

0 2 0 1 0 −2 −2 1

• Rotate the axis so that it will lie in the xz-plane


The line EF is now rotated an angle α, about the x-axis so that it will lie in the
xz-plane. The angle α is calculated with trigonometric relations, shown in the
figure 15.
(To view this, use the projection such that the vector will appear on the left wall)

c c
cos α = =p = 4/(4.4721) = 0.8944
d (b2 + c2)

b
sin α = = 2/(4.4721) = 0.4472
d

Now, [P ∗ ]2 = [P ][Tt ][Tr ]α , where,

32
Figure 15: Example 3.6 Solution

   
1 0 0 0 1 0 0 0
   
 0 cos α sin α 0   0 0.8944 0.4472 0 
[Tr ]α =  = 

 0 − sin α cos α 0  
  0 −0.4472 0.8944 0 

0 0 0 1 0 0 0 1

• Rotate the line so that it will coincide with the z-axis


We will now rotate the line an angle ϕ about the y-axis so that it will coincide
with the z-axis. The value of the angle ϕ is calculated from the trigonometry of
the figure shown.

a 1 1
sin ϕ = =p = = 0.2182
L 2 2 2
(a + b + c ) (4.5825)

d 4.4721
cos ϕ = = = 0.9759
L 4.5825
Now the point matrix at this step is [P ∗ ]3 = [P ∗ ]2 [Tr ]ϕ , and

   
cos ϕ 0 − sin ϕ 0 0.9759 0 −0.2182 0
   
 0 1 0 0   0 1 0 0 
[Tr ]ϕ =  = 

 sin ϕ 0 cos ϕ 0  
  0.2182 0 09759 0  
0 0 0 1 0 0 0 1

• Rotate the Geometric Object about the z-axis


Up to this point we have translated and rotated the rectangle so that its original
position is changed and the line is coincident with the z-axis. To understand the
effect of these steps, imagine that the rectangle and the line are frozen in space in
a box. Now, move (translate) the line to the origin so that the new coordinates of

33
the point E are (0, 0, 0), rotate the box about the x-axis, so that the line EF lies
in the xz-plane, finally, rotate the box about the y-axis so that it coincides with
the z-axis. The noteworthy point in this analogy is that the transformation carried
out in steps 1 through 3, affect both the coordinates of the line as well as that of
the rectangle. Now we are ready to carry out the rotation of the rectangle about
line EF . Since the axis of rotation is now coincident with the z-axis, we can apply
the equation of rotation about the z-axis, defined earlier. Therefore,

   
cos θ sin θ 0 0 0.866 0.5 0 0
   
 − sin θ cos θ 0 0   −0.5 0.866 0 0 
[Tr ]θ =  = 

 0 0 1 0  
  0 0 1 0 

0 0 0 1 0 0 0 1

• Reverse of Step 3
In this step we will rotate the frozen box an angle −ϕ, about the y-axis. Since
cos(−ϕ) =cos ϕ, and sin(−ϕ) = − sin(ϕ), the transformation matrix is,

   
cos(−ϕ) 0 − sin(−ϕ) 0 0.9759 0 0.2182 0
   
 0 1 0 0   0 1 0 0 
[Tr ]−ϕ = = 

 sin(−ϕ) 0 cos(−ϕ) 0  
  −0.2182 0 0.9759 0 

0 0 0 1 1 0 0 1

• Reverse of Step 2
Rotate the box an angle −α about the x-axis. The transformation matrix is,
   
1 0 0 0 1 0 0 0
   
 0 cos(−α) sin(−α) 0   0 0.8944 −0.4472 0 
[Tr ]−α = = 

 0 − sin(−α) cos(−α) 0  
  0 0.4472 0.8944 0 
0 0 0 1 0 0 0 1

• Reverse of Step 1
In this final step, we will translate the box so that the corner E will move back to
its original coordinates (0, 2, 2). The transformation matrix is,

 
1 0 0 0
 
 0 1 0 0 
[T−t ] =  

 0 0 1 0 

0 2 2 1

This completes all the seven steps that are necessary to rotate the rectangle about
the line EF . The new coordinates of the rectangle are given by the equation,

34
[P ∗ ] = [P ][Tt ][Tr ]α [Tr ]ϕ [Tr ]θ [Tr ]−ϕ [Tr ]−α [T−t ]

The concatenated transformation matrix is,


 
0.9312 0.1634 −0.3256 0
 
 −0.1743 0.9846 −0.0044 0 
[T ]c = [Tt ][Tr ]α [Tr ]ϕ [Tr ]θ [Tr ]−ϕ [Tr ]−α [T−t ] =  

 0.3199 0.0609 0.9454 0 

−0.2913 −0.0909 0.1179 1

and

  
0 0 0 1
0.9312 0.1634 −0.3256 0
  
2   −0.1743 0.9846 −0.0044 0 
0 0 1
[P ∗ ] = [P ][T ]c

= 
   
 2 2
 0 1
  0.3199 0.0609 0.9454 0 

0 2 0−0.2913 −0.0909 0.1179 1
1
 
−0.2913 −0.0909 0.1179 1
 
 1.5712 0.2359 −0.5334 1 
=  
 1.2226
 2.2051 −0.5421 1 

−0.6399 1.8783 0.1092 1

3.6 Practical-Exercise 1 (Simulation)

The following dimensions are given for the inverted slider-crank mechanism (shown in
Fig. 16): AC=0.15 m and BC=0.2 m. The length AD is selected as 0.35 m (AD =
AC + BC). The driver link 1 rotates with a constant speed of n = n1 = 30 rpm. Write
MATLAB program to find the velocities and the accelerations of the mechanism when
the angle of the driver link 1 with the horizontal axis is φ = φ1 = 60o .

35
Figure 16: Practical Exercise Problem

4 Analysis of Spatial Mechanisms

The 4 × 4 transformation matrices introduced in previous sections are adopted to model


spatial mechanisms for the purposes of analysis. The analysis begin by establishing a
local cartesian coordinate system for each link. The location and orientation of the
local coordinate system on each link is arbitrary; however, it is usually chosen at a joint
center. The modeling task then becomes one of describing how the coordinate systems
of connected links move relative to one another. Consequently, transformation matrices
must be defined describe to relative motions.
For instance, let point P be attached to link 2 (see Fig. 17) and its location be defined
in the local coordinate system x2 , y2 , z2 embedded in the moving link 2, by the vector
P2 . To find the location of P with respect to the global coordinate system x1 , y1 , z1
embedded in the fixed link 1, namely P1 , after link 2 has been rotated by the angle θz ,
we must account for the fact that system x2 , y2 , z2 has been obtained from x1 , y1 , z1 by
combined rotation and translation. In this section necessary transformation matrices for
various spatial link shapes and joint motion are derived to accomplish the transformation
as follows
P1 = T12 P2

The matrix operator T12 is constructed to obtain P1 from P2 . P2 is defined in the x2 , y2


coordinate system. Also note x2 , y2 coordinate system is obtained from x1 , y1 by rotation
through the angle θz about z1 . Therefore, the argument of P2 expressed in the x01 , y10
system is increased by θ2 from its argument in the x2 , y2 system. Hence (P2 )0 = [R(θ2 )]P2

Note that x01 , y10 came from x1 , y1 by a translation L1x . Thus, the x coordinate of any
vector in the x01 , y10 system is increased by L1x when the vector is expressed in the x1 , y1

36
Figure 17:

system. As a result,
P0 = [T (L1x ](P2 ) = [T (L1x ][R(θz )]P2

So we see that the operator T12 is obtained by the concatenation of a rotation and a
translation matrix in that order.

T12 = [T (L1x )][R(θz )]

Elementary 4 × 4 Transformation Matrices

There are seven elementary forms of 4 × 4 transformation matrices which when used
in suitable combination, describes most joints found in mechanisms (spatial or planar).
They can also be used to describe complex link shapes between the joints
The seven matrices are shown schematically in Figure 18. These matrices are intended
for transforming a position vector Pj of point P embedded in the Oj , xj , yj , zj coordinate
system to the vector Pi locating the same point P in the Oi , xi , yi , zi coordinate system.

Case 1: System xj , yj , zj is obtained from xi , yi , zi by translationD = [a, b, c, ]T followed


by rotation about its translated origin at (a, b, c) by the angle θz around û =
[ux , 0, 0]T . Thus for this case, the transformation to obtain Pi from Pj is: Pi =
Ttj Pj where,  
1 0 0 a
 
 0 cos θx − sin θx b 
Tij (a, b, c, θx ) = 
 0 sin θ

 x cos θx c 

0 0 0 1

37
Figure 18:

Case 2: Similar to case 1, except the rotation is θy . Here Pi = T2ij Pj , where


 
cos θy 0 sin θy a
 
 0 1 0 b 
T2ij (a, b, c, θy ) = 

 − sin θy 0 cos θy c 

0 0 0 1

Case 3: is also similar to case 1 except for rotation about the z axis. Again, Pi = T3ij Pj ,

38
where  
cos θz − sin θz 0 a
 
 sin θz cos θz 0 b 
T3ij (a, b, c, θz ) = 

 0 0 1 c 

0 0 0 1

Case 4: The system xj , yj , zj is obtained from xi , yi , zi by translation D = [a, b, c]T


followed by a screw motion in the x direction. Now Pi = T4ij Pj , where
 
1 0 0 a + θ2π
zk

 
 0 cos θx − sin θx b 
T4ij (a, b, c, θx , k) = 

 0 sin θx cos θx c 

0 0 0 1

and where k is the lead of the screw.

Case 5: is similar to case 4, except that the screw motion of the coordinate system takes
place in the y direction. Here Pi = T5ij Pj , where
 
cos θy 0 sin θy a
b + θ2π
yk
 
 0 1 0 
T5ij (a, b, c, θy , k) = 

 − sin θy 0 cos θy c 

0 0 0 1

Case 6: applies when the screw motion in the z direction of the coordinate system
follows its a, b, c translation. Thus Pi = T6 ijPj
 
cos θz − sin θz 0 a
 
 sin θz cos θz 0 b 
T6ij (a, b, c, θz , k) = 

 0 0 1 c + θ2π
zk 

0 0 0 1

Case 7: applies when the system xj , yj , zj is obtained from xi , yi , zi by translation D =


[a, b, c]T only. For this case Pi = T7ij Pj where
 
1 0 0 a
 
 0 1 0 b 
Tij7 (a, b, c) = 

 0 0 1 c 

0 0 0 1

39
It is important to note that the translations and rotations in these matrices describe
relative motion of a coordinate system moving from coincidence with the ith system to
coincidence with the j th system.

40
5 Link and Joint Modeling with Elementary Matri-
ces

Some illustrative examples demonstrating the use of the elementary matrices for model-
ing links and joints of mechanisms are shown in this section.

1. Revolute joint
Perhaps the most common joint is the revolute. Figure 19 shows an example of two
connected links numbered i and j. Before the joint can be modeled, local coordinate
systems on the two links must be defined. In the figure these coordinate systems
are denoted as (x` , y` , z` ) and (xm , ym , zm ).

Figure 19: Revolute Joint

Link i and the revolute joint ij in figure 19 is described using a type 3 (Case 3)
elementary matrix, since the rotation is about a z axis. Prior to the rotation of
this joint, there is a translation in the y` direction of length L. Therefore, the
description of the ith link with the ij joint is
 
cos φz − sin φz 0 0
 
3
 sin φz cos φz 0 L 
s`,m (φz ) = T`,m (0, L, 0, φz ) = 

 0 0 1 0 

0 0 0 1

The symbol s`,m (φz ) is used to represent a general 4 × 4 transformation matrix,


the quantities in parenthesis following the symbol s denote the relative motion
variables in the matrix. Suppose we know the location of point P of link j with
respect to coordinate system xm , ym , zm embedded in link j. Let this position
vector be denoted as Pm . Now if we want to know the position of P with respect

41
to the x` , y` , z` system of link i, namely P ` , we obtain it by

P ` = s`,m (φz )P m (34)

This notion indicates that, while P m is a constant (because it is embedded in the


rigid link j). P ` is a function of φz and therefore changes as link j rotates relative
to link i.

2. Cylindrical joint
Figure 20 shows a cylindrical joints between links m and n. To describe link m
and this joint, two elementary matrices are required. One matrix describes the
translation along link m and the translation along the axis of the joint. A second
matrix covers the rotation of the joint. Thus the link m and the cylindrical joint
between links m and 11 shown in Fig. 20 are defined as follows:

Figure 20: Cylindrical Joint

7 2
sj,` (B, ψy ) = Tjk (A, B, 0)Tk,` (0, 0, 0, ψy )
  
1 0 0 A cos ψy 0 sin ψy 0
  
 0 1 0 B  0 1 0 0 
=  
 0 0 1 0   − sin ψ

  y 0 cos ψy 0 

0 0 0 1 0 0 0 1
 
cos ψy 0 sin ψy A
 
 0 1 0 B 
sj,` (B, ψy ) = 
  (35)
 − sin ψy 0 cos ψy 0 

0 0 0 1

42
With this,
P j = sj,` (B, ψy )P ` (36)

Note that for this case B and ψy represent the degrees of relative freedom in this
joint.

3. Screw joint The screw axis is in the zj direction so case 6 matrix, describes this
joint. This matrix is written as
 
cos θz − sin θz 0 A
 
 sin θz cos θz 0 B 
Sij (θz ) = Tij6 (A, B, θz , k) = 

 0 0 1 C + kθ

z 

0 0 0 1

and in figure 21,


P i = Sij (θz )P j

Figure 21: Screw Joint

Note that for this joint two of the constant translations are in the negative direc-
tions of xi and yi ; consequently, A and B would have negative values. Also, the
screw joint has rotated by a little less than 270? . This leaves the xj axis pointing in
nearly the negative direction of the yi axis and the rotation has caused a transla-
tion in the direction of the screw of kθz /2π. Thus, if this joint were reverse-rotated
from its current position by the amount θz , the xj , yj , zj coordinate system would
be parallel to xi , yi , zi and its origin would be a distant C above the xi , yi plane.
The single degree of relative freedom in this joint is θ, because k, the lead of the

43
screw, is constant. For a right-hand screw, k is positive; for a left-hand screw, k is
negative.

4. Spherical joint A common joint appearing in many spatial mechanisms is the


spherical joint. This joint allows freedom of rotation around all three axes of one
link relative to another. Typically, these rotations are described using Euler angles
For the purpose of discussion, the spherical joint is represented by its kinematic
equivalent of 3 rotational joints whose axes of rotation intersects at the center of
spherical joint. The transformation matrices defining this joints are;

Si` = Tij3 (0, Li , 0, θzj )Tjk


1 3
(0, 0, 0, ψxj )Tk` (0, 0, 0, φzk )

Figure 22: Spherical Joint

The first matrix defines the translation of the coordinate system along the yi axis
by distance Li followed by a rotation θzj about an axis parallel to the zi axis. This
defines the xj yj zj coordinate system. The second matrix defines a rotation of the
jth system about the xj axis by the angle ψxj ,which locates the xk yk zk coordinate
system. The final matrix represents a rotation of the kth system about zk by the
angle φzk , which defines the final x` y` z` coordinate system. Upon concatenation,

44
the following operator is found.

Si` (0, Li , 0, θzj , ψxj , φzk ) =


 
cθzj cφzk − sθzj cψxj sφzk −cθzj sφzk − sθzj cψxj cφzk sθzj sψxj 0
 
 sθzj cφzk + cθzj cψxj sφzk −sθzj sφzk + cθzj cψxj cφzk −cθzj sψxj Li 
 

 sψxj sφzk sψxj cφzk cψxj 0 
0 0 0 1

With this
P i = Si` (θzj , ψxj , φzk )P `

5.0.1 Tutorial Questions

1. If in figure 23, A1 = 0.707 + 0.707i

(a) Find A2 , if θ12 = 165o . Use the matrix rotation operator method.
(b) What is θ1 ?
(c) What is θ2 ?

Figure 23:

2. (a) Determine the transformation operator for the screw joint mechanism in Fig.
24, which will transform a vector Pj expressed in the jth moving system to
the vector Pi expressed in the ith ”fixed” system.
(b) Find Pi for the screw joint mechanism of Fig. 24 if Pj = (0, 2, 0)T , θzj = 180o ,
A = 2, B = −3, C = 2, and the lead k = 0.125.

45
Figure 24:

3. A frame {B} is described as initially coincident with frame {A}. Then frame
{B} is rotated about vector A k = [0.707, 0707, 0.0], passing through the point
A
P = [1.0, 2.0, 3.0] by an amount θ = 30o . Give the frame description of {B}.
Superscript A refers to frame {A}

46
6 Vector Algebra

Vector: Vector quantity has both magnitude and direction eg. Velocity, acceleration,
force
Scalar: Scalar quantity has magnitude only, eg Mass, volume, work.

6.1 Vector Sum

A+B =B+A

A + (B + C) = (A + B) + C

A − B = A + (−B)

6.2 Dot Product (Scalar)

A.B + |A||B| cos θ where |A| represents the magnitude of a vector A

A.(B + C) = A.B + A.C

A.B = B.A

If A.B = 0 either one of the vectors A, B is zero or A and B are perpendicular to each
other.

6.3 Cross Product (vector)

A × B, where the magnitude =|A||B| sin θ and direction given by the right hand rule.

A × (B + C) = A × B + A × C (37)

A × B = −B × A (38)

If A × B = 0, either one of the vectors A and B is zero or A and B are parallel.

6.4 Unit Vectors: i, j, k

i × j = k, j × i = −k

j × k = i, k × j = −i

47
k × i = j, i × k = −j

i×i=j×j=k×k=0

If A = ax i + ay j + az k and B = bx i + by j + bz k, then

• A + B = (ax + bx )i + (ax + by )j + (az + bz )k



i j k

• A × B = (ay bz − az by )i + (az bx − ax bz )j + (ax by − ay bx )k = ax ay az


bx by bz

• A.B = ax bx + ay by + az bz

Note

• A.(A × B) = B.(A × B) = 0

ax ay az

• A.(B × C) = B.(C × A) = C.(A × B) = bx by bz


cx cy cz

• A × (B × C) = (A.C)B − (A.B)C

• (A × B) × C = (A.C)B − (B.C)A

6.5 Vector Differentiation

For vector function of time A(t), B(t), C(t), and scalar function of time m(t)

dA A(t+∆t)−A(t)
• dt
= lim∆t→0 ∆t

d dA dB
• dt
(A + B) = dt
+ dt

d dA dB
• dt
(A × B) = dt
×B+A× dt

d dA
• dt
(A.B) = dt
.B + A. dB
dt

d dm
• dt
(mA) = dt
A + m dA
dt

d dA dB dC
 
• dt
[A × (B × C)] = dt
× (B × C) + A × dt
×C +A× B× dt

48
7 Vector Analysis of Spatial Mechanisms

d
7.1 Motion in the Stationary Coordinate System i.e dt (i, j, k) =0

Consider any point P in space relative to a fixed point O as shown in figure 25. To reach
P we must use a straight line r directed from O to P . This is the position vector. A vector
may be expressed conveniently in terms of its components and the three unit vectors i,
j and k, whose directions are those of the axes of the cartesian frame of reference Ox,
Oy, and Oz.

Figure 25: Position vector of a point in Cartesian coordinate

If x, y and z are the directed lengths of the projections of the vector r on these axes, we
then have the following vector equation:

r = xi + yj + zk (39)

Furthermore, if the particle is moving along the space curve AB then x, y, and z must
be functions of time, i.e
x = x(t) y = y(t) z = z(t)

Hence, the vector equation for the position of the particle at any instant may be written
as:
r = x(t)i + y(t)j + z(t)k (40)

The magnitude of the position vector r, denoted by |r| or simply r, is


p
r= x2 + y 2 + z 2

49
The velocity of the particle is obtained by differentiating Eq. 40 with respect to time:

ṙ = ẋ(t)i + ẏ(t)j + ż(t)k

i̇ = j̇ = k̇ = 0, since the axes are Cartesian axes, fixed in space and of constant magni-
tude. Similarly, the acceleration of the particle is

r̈ = ẍ(t)i + ÿ(t)j + z̈(t)k

7.2 Motion of a Rigid Body about a Fixed Axis (without trans-


lation)

A point, which is fixed in the body rotating with ω about an axis that is fixed in a
stationary coordinate system is described by a vector R.
The velocity of P is

Ṙ = vP = ω × R = (ωx i + ωy j + ωz k) × (Rx i + Ry j + Rz k)

= (ωy Rz − ωz Ry )i + (ωz Rx − ωx Rz )j + (ωx Ry − ωy Rx )k

Direction: (thumb × Index) = third f inger


The acceleration of P is,

a = vP = ω̇ × R + ω × Ṙ = α × R + ω × (ω × R) = at + an

7.3 Moving Coordinate Systems

The velocity of point P


     
di dj dk
vP = Ṙ = Ṙo + ṙ = Ṙox I + Ṙoy J + Ṙoz K + ṙx i + ṙy j + ṙz k + rx + ry + rz
dt dt dt

By using R = ω × R ⇒ (di/dt) = ω × i

vP = Ṙ = Ṙo + ṙr + ω × r

50
Figure 26:

Where:

• ω is the angular velocity of the xyz coordinate system,

• r is the position vector of P in xyz’

• Ṙ is the absolute velocity of P in XY Z,

• Ṙo is the velocity of the origin o of xyz, and

• ṙr is the velocity of point P relative to xyz.

51
The acceleration of point P

aP = R̈ = R̈o + α × r + ω × (ω × r) + r̈r + 2ω × ṙr

= R̈o + r̈r + at + an + ac

Where:

• ω and α are the angular velocity and angular acceleration of the moving system
(oxyz) in the OXY Z system

• r is the position vector of P in the oxyz system,

• ṙr is the velocity of point P relative to the oxyz system

Note
If the oxyz system has no translation relative to the OXY Z system (Ṙo = 0), the point
P is fixed in the body whose coordinate system is oxyz (ṙr = 0), and the body rotates
with ω and α in the OXY Z system, the velocity and acceleration of point P become,

vP = Ṙ = ω × r and aP = R̈ = α × r + ω × (ω × r)

For planar motion ω = ωk, α = αk, r = rx i + ry j Normal acceleration: an = v 2 /R =

Rω 2 = vω (Direction- Toward the center of curvature)


Tangential acceleration: at = Rα (Direction- Tangential to the path)
Coriolis acceleration: ac = 2vr ω

Example 7.1

52
Two sliders A and B are constrained to move in slots at right angles to each other, as
shown in Fig. 27, and are connected by the rigid link AB of length 450mm. At the
instant when θ = 30o slider A is moving with a velocity of 0.6m/s and acceleration of
1.2m/s2 in the direction shown. Calculate the velocity and acceleration of the slider B
at that instant and the angular velocity and acceleration of the link AB

Figure 27: Example 6.1

Solution 7.1

rB/A = −0.45 cos 30i + 0.45 sin 30j = −0.39i + 0.225j


vB = −vB j vA = 0.6i ω = ωk

vB = vA + ω × rB/A
−vB j = 0.6i + ωk × (−0.39i + 0.225j)
= 0.6i − 0.39ωj − 0.225ωi

Comparing like terms


0.6 − 0.225ω = 0 (41)

0.39ω − vB = 0 (42)

From Eqn. 41

0.6
ω= = 2.67
0.225
∴ ω = (2.67k)rad/s

53
And from Eqn. 42

vB = 0.39 × 2.67 = 1.04


vB = (−1.04j)m/s

To obtain acceleration

aB = aA + α × rB/A + Ω × (Ω × rB/A )
aB = −aB j aA = 1.2i α = αk

−aB j = 1.2i + αk × (−0.39i + 0.225j) + 2.67k × [2.67k × (−0.39i + 0.225j)]


= 1.2i + −0.39αj − 0.225αi + 2.67k × [−1.04j − 0.6i]
= 1.2i + −0.39αj − 0.225αi + 2.78i − 1.6j
= (3.98 − 0.225α)i − (1.6 + 0.39α)j + 2.67k

Comparing the like terms, i.e. i, j and k

3.98 − 0.225α = 0 (43)

1.6 − 0.39α = −aB (44)

From Eqn. 43
α = 17.69rad/s2 (α = 17.69k)rad/s2

And Eqn. 44
−aB = 1.6 + 0.39(17.69) = 8.5 aB = (−8.5j)m/s2

7.4 Kinematics of a Typical Four-Bar Spatial Linkage

Figure 28 shows a four-bar RSSR spatial linkage in which the input crank Ao A rotates
about the y-axis so that A moves in a circular path in the x − z plane. The output link
Bo B rotates about an axis parallel to the x-axis in the x − y plane and oscillates through
an angle ∆ψ in a plane parallel to the y − z plane giving the coupler AB motion in three
dimensions.
To analyse such a linkage we replace the links by the vectors a, b, c and d as shown in
fig. 29 Writing the vector or loop equation for the linkage we have

a+b=c+d (45)

54
Figure 28: Typical four-bar spatial linkage

Figure 29: Vector representation of the linkage in Fig 28

Which upon differentiating becomes

ȧ + ḃ = ċ

since d is a vector of constant magnitude and direction. If ω1 is the input angular velocity
of the link Ao A, then in vector form we have

ω 1 = ω1 j

Similarly, the output angular velocity of the link Bo B is

ω o = ωo i

Let vA be the velocity of point A as a point on Ao A, then,

vA = ω 1 × a = ω1 j × a

55
Also, if vB is the velocity of point B as a point on Bo B, then

vB = ωo × c = ωo i × c

But the velocity of vB of point B on the coupler AB is given by

vB = vA + vBA = vA + Ω × b

where Ω is the angular velocity of the coupler AB which can be expressed in terms of
its components ωx , ωy , and ωz , i.e

Ω = ωx i + ωy j + ωz k

Hence,
Ω × b = vB − vA = ωo i × c − ω1 j × a (46)

Since vBA , i.e., the velocity of B on AB as seen by an observer at A, is perpendicular to


the coupler AB then by taking the ’dot’ (scalar) product of vBA with b we must have

vBA .b = 0

Substituting for vBA yields


(ωo i × c − ω1 a).b = 0 (47)

To solve for ωo we need to express a, b and c in terms of the unit vectors i, j, k, the
input angle φ and the output angle ψ. Referring to figure 29

a = a sin φi + a cos φk
c = −c sin ψj + c cos ψk (48)
d = xo i + yo j

xo and yo are the coordinates of Bo .

Solving for b in equation 45 we get,

b=c+d−a

and substituting for a, c, and d from eq. 48 yields

56
b = (xo − a sin φ)i + (yo − c sin ψ)j + (c cos ψ − a cos φ)k (49)

Substituting Eq. 49 in Eq. 46 and performing the dot product will yield an expression
for the output angular velocity ωo .
An alternative approach is to consider the length b = AB of the coupler and make use
of the fact that since the link is rigid ḃ = 0, as follows. From Eq. 49,

b2 = (xo − a sin φ)2 + (yo − c sin ψ)2 + (c cos ψ − a cos φ)2

Differentiating yields

0 = (xo − a sin φ)(−a cos φφ̇) + (yo − c sin ψ)(−c cos ψ)ψ̇
+(c cos ψ − a cos φ)(−c sin ψ ψ̇ + a sin φφ̇)

Expanding and collecting terms the angular velocity ωo of the output is given by

a(xo cos φ − c sin φ cos ψ)


ωo = (50)
c(a cos φ sin ψ − yo cos ψ)

Example 7.2

Figure 30 shows a crank Ao A rotating in the x − z plane at a constant angular velocity


ω1 = 10 rad/s and driving the slider B on the rod P Q by means of the link AB. The
rod is in the y − z plane and parallel to Ao y. Calculate the velocity of the slider and the
angular velocity of the link AB when φ = 90o .

Figure 30: Example 6.2

Solution 7.2

57
When φ = 90o the mechanism is in the position shown in Fig. 31

vB = vBj
vA = ω1 j × a
= 10j × 50i = −500k

• Velocity of the slider: Let Ω be the angular velocity of the link AB, then we have

vB = vA + vBA = vA + Ω × b

where b = RB − a = 150j + 75k − 50i


Hence,
i j k

vB j = −500k + ωx ωy ωz


−50 150 75

vB j = (75ωx − 150ωz )i + (−75ωx − 50ωz )j + (150ωx + 50ωy )k − 500k

Equating the coefficients of the unit vectors, we get

75ωy − 150ωz = 0 (51)


−75ωx − 50ωz = vB (52)
150ωx + 50ωy = 500 (53)

Solving the above equations simultaneously, we get,

vB = −250 mm/s

That is, the collar is moving towards P at that particular instant.

• Angular velocity of link AB: From observation of mechanism, the slider cannot
rotate about A0 B = R, so that the projection Ω on R must be zero, i.e., Ω.R = 0.
From Fig. 31 we see that
R + RB = d

Hence
R = 50i + 150j − 150j − 75k = 50i − 75k

and
(ωx i + ωy j + ωz k).(50i − 75k) = 0

58
Figure 31: Example 6.2 solution

i.e.,
50ωx − 75ωz = 0 (54)

Solving Eqs. 51 to 54 yields

vB = −250 mm/s ωx = 57.7 rad/s ωy = 76.9 rad/s ωz = 38.5 rad/s

Example 7.3 Figure 32 shows a four-bar spatial linkage where the input and output
shafts are at 90o to each other. Double revolutes are used at A and B. The input
shaft at Ao has a constant angular velocity ω1 in a clockwise direction looking along
the shaft towards Ao . Links dimensions are; Ao A = a = 102 mm; AB = b = 381 mm;
Bo B = c = 254 mm; Ao Bo = d = 315 mm.

(a) Obtain expression for angular velocity ratio and for the acceleration.

(b) When the input speed is 240 rev/min, calculate, the angular velocity of the coupler
AB for φ = 60o .

(c) Calculate the angular acceleration of the coupler AB when the input is rotating at
1200 rev/min and accelerating at 3000 rev/min/s in the sense of ω1 at the instant
when φ = 0.

Solution 7.3

• Output velocity and acceleration:


Figure 33 shows the linkage with the links expressed as vectors given by

a = −a cos φi + sin φk
b = −c cos ψi + c sin ψj
c = −di

59
Figure 32: Example 6.3

Since a + b = c + d, then
b=c+d−a

Substituting for c, d, and a we get

b = (−c cos ψ − d + a cos φ)i + (c sin ψ)j − (a sin φ)k (55)

For the velocity of B we have vB = vA + vBA

∴ vBA = vB − vA = −ωo × c − ω1 × a
= −(ωo k × c + ω1 j × a)

where ωo is the angular velocity of the output link BBo .


Since vBA is perpendicular to AB then

vBA .b = 0

Hence
(ωo k × c + ω1 j × a).b = 0

but vB = −ωo k × c = −ωo k × (c cos ψi + c sin ψj) = ωo c cos ψj + ωo c sin ψi


and vA = ω1 j × a = ω1 j × (−a cos φi + a sin φk) = ωa cos φk + ω1 a sin φi
It follows that

vBA = (ωo c sin ψ − ω1 a sin φ)i + ωo c cos ψj − ω1 a cos φk

Upon performing the dot product with b we get

−ωo c2 sin ψ cos ψ + (ω1 a sin φ − ωo c sin ψ)(a cos φ − c cos ψ − d) − ω1 a2 sin φ cos φ = 0

60
which upon expanding and solving for velocity ratio yields

ωo a sin φ(d + c cos ψ)


= (56)
ω1 c sin ψ(d − a cos φ)

In order to solve for this ratio we need the value of the output angle ψ. From Eq.
55 we have
b2 = (−c cos ψ + a cos φ − d)2 + c2 sin2 ψ + a2 sin2 φ (57)

Expanding and solving for cos ψ yields

b2 − a2 − c2 − d2 + 2ad cos φ
cos ψ = (58)
2c(d − a cos φ)

To obtain an expression for the acceleration αo of the output BBo it is best to


differentiate Eq. 56
Let

u = a sin φ(d + c cos ψ)


v = c sin ψ(d − a cos φ)

then
u
ω0 = ω1 (59)
v
Differentiating (59) with respect to time, we get

vu0 − uv 0 2 u
αo = ω1 + α1 (60)
v2 v

We also note that


dψ dψ dφ u
ωo = = = ω1
dt dφ dt v

Hence
u
u0 = a cos φ(d + c cos ψ) − ac sin φ sin ψ
u v
0
v = c cos ψ(d − a cos φ) + ac sin φ sin ψ
v

• Angular velocity of the coupler


There are two situation to consider

61
Figure 33: Example 6.3 Solution

(a) The magnitude only of the angular velocity of the coupler

vBA = vB − vA
= −ωo × c − ω × a
= (ωo c sin ψ − ω1 a sin φ)i + ωo c cos ψj − ω1 a cos φk

The magnitude vBA is given by


p
vBA = (ωo c sin ψ − ω1 a sin φ)2 + (ωo c cos ψ)2 + (ω1 a cos φ)2

If Ω is the magnitude of the angular velocity of the coupler then

vBA
Ω=
b

Since we already have expressions for ψ and ωo we can readily calculate Ω.


When φ = 60o , ψ = 88.42o , ωo = 10.7 rad/s, b = 0.381 m.
Substitution in the above equation yields
v
u o 2
Ω=
1 u t (10.7 × 0.254 sin 88.42 − 25.1 × 0.102 sin 60 ) +
0.381 (10.7 × 0.254 cos 88.42)2 + (25.1 × 0.102 cos 60)2

Hence Ω = 3.61 rad/s


(b) The components of the angular velocity of the coupler parallel to the axes We
have
Ω × b = vB − vA (61)

62
Substituting for b, vB and vA we get

i j k
(ωo c sin ψ − ω1 a sin φ)i
ωx ωy ωz =



(a cos φ − c cos ψ − d) (c sin ψ) (−a sin φ)

+ωo c cos ψj − ω1 a cos φk

Expanding the determinant and equating the coefficients of i, j, and k yields


the following equation
  
0 −a sin φ −c sin ψ ωx
a sin φ 0 (a cos φ − c cos ψ − d) ωy 
  

c sin ψ −(a cos φ − c cos ψ − d) 0 ωz


  (62)
ωo c sin ψ − ω1 a sin φ
= ωo c cos ψ
 

−ω1 a cos φ

i.e.,AΩ = B
An examination of these equations reveals that the matrix A is singular, i.e
the determinant of the matrix is zero, hence this equation has either an infinite
number of solutions or none at all. To obtain the angular velocity Ω we can
proceed as follows. Let us consider Eq. 61. ie

Ω × b = vBA

If we pre-multiply by b we get

b × (Ω × b) = b × vBA

b × (Ω × b) = (b.b)Ω − (b.Ω)b (63)

The first term of Eq. (63) equals b2 Ω and the second term is zero because the
components of Ω taken along body axes i.e axes fixed to the coupler AB at A
(Fig. 34) are perpendicular to b, except for ωy0 which is along AB and may
be equated to zero since any spin of AB about its own axis does not affect
the output motion of the mechanisms. Thus we have

b2 Ω = b × vBA = b × (vB − vA )

63
Substituting for Ω, b, vB and vB and solving for Ω yields

i j k
1
(ωx i + ωy j + ωz k) = 2 (a cos φ − c cos ψ − d) c sin ψ −a sin φ

b


(ωo c sin ψ − ω1 a sin φ) ωo c cos ψ −ω1 a cos φ

Equating the coefficients of i, j, and k and using the numerical values of case
(a) we find
ωx = −2.239 rad/s, ωy = −2.685 rad/s, and ωz = −1.013 rad/s
p √
Hence Ω = ωx2 + ωy2 + ωz2 = 2.2392 + 2.6852 + 1.0132 = 3.64 rad/s
Which is close to that obtained for case (a)

Figure 34: Example 6.3 Solution b

• For acceleration of a point P on a link AP , we have

aP = aA + α × R + ω × (ω × R)

where
aA =acceleration of link A
α=angular acceleration of the link
ω=angular velocity of the link
R=length of the link

– Point A on link Ao A

a = −a cos φi + a sin φk
= −0.102i since φ = 0

64
vA = ω1 j × a
= 125.7j × (−0.102i)
= 12.82k

aA = α1 j × a + ω1 j × (ω1 j × a)
| {z } | {z }
Tangential Centripetal

But ω1 j × a = vA
We have ω1 j × vA = 125.7j × 12.82k = 1611i
Hence aA = 1611i + 32.05k
– Position B on link Bo B

c = −c cos ψi + c sin ψj
= −0.254 cos 70.64i + 0.254 sin 70.64j
= −0.0842i + 0.240j

Since 70.64o when φ = 0

vB = −ωo k × c
= 0 since ωo /ω1 = 0 when φ = 0

aB = −αo k × c − ωo k × vB = −αo k × c

i j k
(64)
= 0 0 −αo = 0.240αo i + 0.0842αo j


−0.0842 0.240 0

– Point B on link AB
b = c + d − a = (−c cos ψ − d + a cos φ)i + c sin ψj − a sin φk
Substituting values we get

b = (−0.254 cos 70.64 − 0.314 + 0.102)i + 0.254 sin 70.64j


= −0.296i + 0.240j
aBA = αc × b + ωc × (ωc × b) = αc × b + ωc × vBA

65
where

ωc = angular velocity of the coupler = ωx i + ωy j + ωz k


αc = angular acceleration of the coupler = αx i + αy j + αz k


i j k

ωx i + ωy j + ωz k = −0.296 0.24 0



0 0 −12.82

Hence ωx = −21.2, ωy = −26.13, and ωz = 0

vBA = −ω1 a cos φk = −125.7 × 0.102k = −12.82k




i j k

ωc × vBA = −12.2 −26.13 0 = 335i − 272j (65)


0 0 −12.82



i j k
αc ×b = αx αy αz = −0.240αz i−0.296αz j+(0.240αx +0.296αy )k


−0.296 0.240 0
(66)
Writing the vector equation for the acceleration of the point B on AB we have

aB = aA + aBA

i.e.,
anB + atB = anA + atA + anBA + atBA (67)

Before we can solve for αc we need to introduce the condition that αc .b = 0


to eliminate any possible spin of the coupler about its axis. This leads to the
following equation:

(αx i + αy j + αz k).(−0.296i + 0.240j) = 0


−0.296αx + 0.240αy = 0 (68)

Substituting Eqs.(64) and (66) into Eq. (67), we get

0.240αo i + 0.0842αo j =
1611i + 32.05k − 0.240αz i − 0.296αz j + 0.2400αx k + 0.296αy k + 335i − 272j

66
Equating the coefficients of i, j, and k, yields

0.240αo + 0.240αz = 1611 + 335 = 1946 (69)


0.0842αo + 0.296αz = −292 (70)
0.240αx + 0.296αy = −32.05 (71)
−0.296αx + 0.240αy = 0 (72)

Solving Eqs. (69) to (72), we have;

αo = 12.607 rad/s, αz = −4497 rad/s, αx = −53 rad/s2

Hence at the instant when φ = 0, the angular acceleration of the output


αo = −12, 607 rad/s2 , and that of the coupler αc = −53i − 65.3j − 4497k
rad/s2
The output acceleration is given by

Example 7.4

At a given instant (Figure 35), the satellite dish has an angular motion ω1 = 6rad/s and
ω̇1 = 3rad/s2 about the z axis.At this same instant θ = 25◦ , the angular motion about
the x axis is ω2 = 2rad/s, and ω̇2 = 1.5rad/s2 . Determine the velocity and acceleration
of the signal horn A at this instant.

Figure 35:

Solution 7.4

Angular Velocity- Coordinates of the fixed frame and the rotating frame are coincident

67
at this instant, thus expressing the angular velocity in terms of unit vectors i,j and k.

ω = ω1 + ω2 = (2i + 6k)rad/s

Angular Acceleration- ω2 is observed to have a constant direction from the rotating


xyz frame but has a change in direction wrt the fixed XYZ, rotating at Ω = ω1 = 6k
rad/s

Using

Ȧ = (Ȧ)xyz + Ω × A
ω̇2 = (ω̇2 )xyz + ω1 × ω2
= 1.5i + 6k × 2i = (1.5i + 12j)rad/s2

Since ω1 is always directed along the Z-axis (Ω = 0) then

ω̇1 = (ω̇1 )xyz + 0 × ω1


= (3k)rad/s2

The angular acceleration of the satellite is ∴

α = ω̇1 + ω̇2
= (1.5i + 12j + 3k)rad/s2

Signal Horn A-Vector rA is given as

rA = OA cos θj + OA sin θk
= 1.4 cos 25j + 1.4 sin 25k
= (1.27j + 0.59k)m

The velocity of A is given as

vA = v0 + ω × rA
= 0 + (2i + 6k) × (1.27j + 0.59k)
= (−7.6i − 1.18j + 2.54k)m/s

68
And Acceleration of horn A

aA = a0 + α × rA + ω × (ω × rA )
= (1.5i + 12j + 3k) × (1.27j + 0.59k) + (2i + 6k) × [(2i + 6k) × (1.27j + 0.59k)]
= (10.4i − 51.6j − 0.46k)m/s2

7.5 Assignment 2

(a) At the instant shown (Figure 36), the motor rotates about the z axis with an angular
velocity of ω1 = 3rad/s and angular acceleration of ω̇1 = 1.5rad/s2 . Simultaneously,
shaft OA rotates with an angular velocity of ω2 = 6rad/s and angular acceleration
of ω̇2 = 3rad/s2 and collar C slides along rod AB with a velocity and acceleration of
6m/s and 3m/s2 . Determine the velocity and acceleration of collar C at this instant.

Figure 36: Assignment 2(a)

(b) At the instant shown in Figure 37, rod BD is rotating about the vertical axis with
an angular velocity ωBD = 7rad/s and an angular acceleration αBD = 4rad/s2 . Link
AC is rotating downward. Determine the velocity and acceleration of point A on the
link at this instant given θ = 60◦ , θ̇ = 2rad/s, θ̈ = 3rad/s2 and l = 0.8m.

69
Figure 37: Assignment 2(b)

7.6 Practical-Exercise 2 (Simulation)

The crane shown in Figure 38 rotates with a constant angular velocity ω1 of 0.30 rad/s.
Simultaneously, the boom is being raised with a constant angular velocity ω2 of 0.50 rad/s
relative to the cab. Knowing that the length of the boom OP is l = 12m, determine:

(i) the angular velocity ω of the boom,

(ii) the angular acceleration α of the boom,

(iii) the velocity v of the tip of the boom,

(iv) the acceleration a of the tip of the boom.

1. Solve the above question manually

2. Write a MATLAB program that will accept all the variable inputs and solve for
the velocity and acceleration of the tip of the boom.

70
Figure 38: Practical Exercise 2

71

You might also like