You are on page 1of 7

Int J Adv Manuf Technol (1997) 13:630-636

1997 Springer-Veflag London Limited

Tie I n ~ b n e l

aeumal

Rdvanced
Illanufacturing
Technoi@

A Matrix Approach to the Representation of Tolerance Zones


and Clearances
A. Desrochers* and A. Rivibret
*Laboratoire d'Automatique et de M6catronique, l~cole de technologie supdrieure-Universit6 du Qu6bec, Canada and tLaboratoire
d'Ing6nierie Intdgr6e des Syst~mes Industriels, Saint-Ouen, France

This paper presents a matrix approach coupled to the notion


of constraints for the representation of tolerance zones within
CAD~CAM (computer-aided design and manufacture) systems.
The proposed theory, reproduces the measurable or noninvariant displacements associated with various types of' tolerance zone. This is done using the homogeneous transforms
commonly associated with robotic modelling.
This matrix representation is completed by a set of
inequalities defining the bounds of the tolerance zones. Moreover, the generation of the model and its mathematical definition allows for its use in the representation of clearances
and for the computation of tolerance transfer. An example
illustrates the application of the model to a simplified gear
pump mechanism.

Keywords: CAD/CAM; Clearance; Fit; Homogeneous transforms; Model; Tolerance zone

1.

Introduction

Current CAD/CAM systems allow the generation of threedimensional models of mechanical parts and the simulation of
their machining on screen. Nevertheless, a large gap still exists
between the "design" (CAD) and "manufacturing" (CAM) part
of these software packages. It would seem appropriate to fill
this gap through the addition and integration of technological
information to the geometrical model. A method for representing and exporting geometrical tolerances within
CAD/CAM systems is proposed.
The approach relies on the representation of tolerances using
standardised zones constructed around the theoretical surfaces
of the part.

Correspondence and offprint requests to: Professor A, Desrochers,


Department of Automated Production Engineering, ~;cole de technologie sup&ieure, I100, rue Notre-Dame Ouest, Montreal, Quebec H3C
1K3, Canada.

From a mathematical point of view, these tolerance zones


are represented by homogeneous transforms reproducing the
degrees of invariance associated with the zone. As will be
shown, this representation will prove particularly suitable for
tolerance analysis and clearance computation.
At this point, it might be worth noting that many authors
have already studied this problem. However, the literature
reveals that all of them have favoured approaches which represent tolerances by a general model. These approaches include
the offsetting representation [1], half space representation [2],
variational [3] or parameterised model, etc. All of these
approaches, derived from given geometrical modellers, prove
unsatisfactory for properly integrating and representing the
functional and technological features of tolerances, as prescribed by international standards.
To overcome these difficulties, a list of the various types of
tolerance zone has been established and each one has been
modelled using a suitable representation. Furthermore, the representation model adopted allows computation of tolerance
transfer as well as clearances within assemblies. Finally, the
model itself is based on the general concept of TTRS which
defines high-level entities bearing technological contents [4,5].

2.

Presentation of Matrix Tolerancing

2.1

Presentation

The positional tolerancing of mechanical parts describes the


relative position uncertainty of a surface with respect to a set
of data.
It is well known that position and displacement are mathematically identical problems, the difference being only a
matter of interpretation. In view of this, the displacements
which led to the definition of seven types of elementary surface
[4,6,7] have been studied first, as presented in Fig. 1.

2.1.1

Displacement Parameters

There are numerous methods for representing a displacement.


One of them is to use homogeneous transforms as in robotics.

Tolerance Zones and Clearances

631

C~13 -SrCa+ CrSl3Sct S,/Sa+CrSpCa u ]i


SyC[3 CTCa+SySl3Sa -CTSa+STSI3Ca v [
i

-sp
L o

General surfaces

, w v"

L o

w v

cpca
o

wl

~J

C7cI3 -s~tca+cTsl3sa sTsa+eTSl3Cct o ]


s7cI3 cyccc+s~sl]sa -c?sa+sTsl]ca v
-Sp
CpS~
CpCa
w l

Prismaticsurfaces

cps~
o

]J

cvsP u3i

S~Cl3 C~
I -sp
o

S~Sl3 v [
c~
wl

Surfaces of revolution

-cvcp -sr

1J

[C~Cp -sT CvSP u7

v1

I -S13

Lo

Helical surfaces

w v

Cylindricalsurfaces

Planarsurfaces

CP

wl

1A
c~s~ o3
svcI3 Cr S~SI3 v
I -s13
o
cp w l
L o
o
o
~J
-crc~ -s~ crsp uq
S~Cl3 cy SrSl3 o
I -sp

cp

ol

Lo

,J

[1 0 0
0 1 0

~u*

o
o
[c~c~-sr

u-]
v

Io o 1 wl

Sphericalsurfaces

kooo

lJ

Fig. 1. Description of the seven classes of elementary surfaces.


As a reminder, an homogeneous transform matrix is composed
of a (3 3) rotation matrix, and a translation (3 x 1) column
vector.
A displacement will depend on six independent parameters;
three rotation parameters and three translation parameters. Each
of these parameters defines a displacement in itself which
will be referred to as elementary displacement. The rotation
displacements will be expressed as angles of rotation around
the coordinate system axis; angles cq [3, -y around the x-, yand z-axes. The Roll-Pitch and Yaw convention has been
adopted for the definition of these angles. Finally, the translation displacements will be expressed by components u, v
and w representing, respectively, translations along the x-, yand z-axis.
The corresponding homogeneous transform matrix describing
the six elementary displacements can be written as follows:

T(u) =

foo / l ooo
1

T(v) =

(1)

f
T(w) =

R(a) =

01

00

00

C~

-Sa

I
Sc~

Cc~

F~S~ -S'y
C-/
R(~/) =

L0

ol i os o
0
R([3) = -S[3

0
0

-0

1
0

0
C[3

0
0

Every displacement D1 can be described as the product of


six elementary displacements T(uO, T(vO, T(wl), R(eq), R([3~)
and R(~). The order of these components is important since
rotations are not commutative. For the Roll-Pitch and Yaw
convention the multiplication order is as follows:
T(w) x T(v) x T(u) x R(7) x R(f3) R(a).

632

A. Desrochersand A. Rivikre

~t

2.1.2 Displacements Applied to the Representation of


Surfaces
By definition, the position of a geometrical element with
respect to a complete reference frame is modified only by
displacements which do not leave it globally invariant. Through
studies of these displacements, seven types of elementary surface were established, as presented in Iqg. 1.
For instance, in the case of a general surface, no displacements can leave it invariant with respect to a complete reference frame. Consequently, for this surface, the set of noninvariant displacements will be represented by a homogeneous
transform matrix which includes all six elementary displacements.
Moreover, a cylindrical surface is left invariant when considering translation and rotation along its own axis. If the
cylinder axis is regarded as the X-axis of the surface, then the
global displacement matrix (Fig. 1) can be used providing its
u and e~ parameters (translation and rotation about the X-axis)
are set to zero. In this way, the matrix presented in Fig. 1
is obtained.
A similar reasoning can be applied to each one of the seven
classes of surface.
When it comes to defining the position of a surface with
respect to an incomplete reference frame, the problem increases
in complexity. Indeed, in such an event, one must then take
into account the displacements which either leave or do not
leave the reference frame invariant. This leads to the definition
of 44 cases of positional tolerancing [5].

2.2

["iz
il...........;#'"
.

,,'

Fig. 2. Cylindrical tolerance zone.


(0, x, y, z) is defined with 0 as the middle point of the [A,B]
segment and X oriented along the AB vector.
The application of this tolerance zone will now be shown
for the case of the positional tolerancing of a cylindrical
surface with respect to a complete set of data. The set of
displacements which do not leave segment [A,B] globally
invariant is represented by the homogeneous transform matrix
D(v, w, ~, y) expressed in the (0, x, y, z) reference frame:

C.yC[~
I
= ]SyCf3
D(v,w,~,y) L-~ ~

-Sy
C~
O0

C,tS[~ 0
S~Sf3 v
C~O Wl

(2)

Additional constraints are also needed to ensure that the


segment [A,B] remains within the bounds of the cylindrical
tolerance zone:

Representation of Standard Tolerance Zones


--< ~ t with

A tolerance zone is a surface or volume space limited by one


or several surface or line definition elements [7-10]. Nine
tolerance zones have been reported:

Y,~

DxA

(3)

dA

Four are surface elements:


1. Surface defined by a planar disk.
2. Surface defined by a planar annulus.
3. Surface defined by a straight planar strip.
4. Surface resulting from the offsetting of a line.
Five are volume elements:
1. Inside volume of a square section prism.
2. Inside volume of a cylinder.
3. Inside volume of a cylindrical annulus.
4. Volume resulting from the offsetting of a plane.
5. Volume resulting from the offsetting of a surface.

2.2.1 Representation of the tolerance zone defined by


the inside volume of a cylinder
Here, the previously established concepts will be applied to
the case of a tolerance zone bounded by the inside volume of
a cylinder.
As depicted in Fig. 2, a cylindrical zone of diameter t is
constructed around the line element [A,B] representing, for
instance, the axis of a cylindrical surface. The reference frame

ea dB-a

0--< [3--<w

and

0~y~w

Therefore complete modelling of the tolerance zone is achieved through a matrix (2) describing the possible deviations
of axis [A, B] along with a set of constraints (3) representing
the geometry and dimensions of the tolerance zone.
It is worth noting that this approach provides a global model
of the tolerance zone. Indeed, it allows the representation of
position uncertainties for any point M associated with segment
[A,B]. Moreover, the actual choice of invariant displacements
reflects the geometry of the tolerance zone rather than its
function. For instance, in the case of a parallelism, the translation of the axis within the tolerance zone itself loses all
technological meaning. The displacement v and w should then
be withdrawn from matrix (2) to properly reflect the orientation
tolerance (parallelism).
The representation of the eight other tolerance zones follows
the same principles and logic that has just been shown for the
cylindrical tolerance zone [5]. Furthermore, the example
presented in the following section uses exclusively cylindrical
tolerance zones.

Tolerance Zones and Clearances

(+

633

//~17H? [ ]

IA,I@I,,, ++- I";I


tc,l@l,, ,,,. Io.,I

iB,I+{. +,~ +,I

+
+

1~+,,., /

7"

o.

Fig. 3. Pump body (part 1).

3.

Application to a Simple Mechanism

The example that has been chosen is a simplified gear pump


assembly. It includes three functional parts; the pump body
(Fig. 3) and two shafts supporting the gears (Figs 4 and 5).
The plate cover has been left out for the sake of simplicity.
3.1. Representation of the Mechanism with
Tolerances

3.2

Clearance Computation Between Both Gears

As an example, the computation of the clearance between parts


2 and 3, the two shafts and gears, will be attempted. To
achieve this, the mechanism must be considered as a whole.
The matrix tolerancing techniques presented earlier will be
applied to each part of the assembly.
The complete gear pump assembly can be represented by a
binding graph. On this graph, parts are illustrated by sets of
functional surfaces while contacts are symbolised by links.
Moreover, each link carries a tolerance specification characterising the associated clearance. For instance, a concentricity specification of 0.037 defines the shaft clearances within their
respective bore. Indeed, according to the small displacement
model, a cylindrical clearance zone is equivalent to a concentricity tolerance since, in both cases, they result from the
association of two cylindrical, coaxial surfaces. The geometric
tolerancing specifications of the drawing are also represented

+++ lr,..........
25.ii ....q
Fig. 4. Shaft and gear (part 2).

on the graph by additional links within each set of functional surfaces.


In this example, clearance computation is simplified by this
particular type of mechanism featuring essentially parallel
shafts and bores. Finally, as can be seen (Fig. 6), datum surface
D~ is hatched in order to designate it as the starting point for
the relative displacement calculation of the surfaces involved
in the clearance computation between parts 2 and 3.
Eight tolerancing surfaces have been defined for the simplified gear pump assembly. However, only six of them are
actually relevant for the computation of the clearance between
the two gears. As shown on the binding graph, these six
surfaces are the ones involved in a loop passing through the
link between both gears. For the sake of simplicity, all of the
surfaces including the gears are considered to be cylindrical.
3.2. 1

Part 1 ( P u m p - B o d y )

Tolerancing surfaces A~, B~, C1 and D1 have been defined on


part 1. However, only surfaces Bj and D~ will be taken into
account in the computations. They are the bores into which
the shafts will be assembled and turn. Additionally, the tolerance zones being similar for surfaces B~ and D~, the demonstration will be restricted to the tolerance zone associated to
surface B~.
Prior to any tolerance zone modelling, a mathematical formulation must be defined for the expression of a given reference
frame relative to another one.
A matrix PR--R+ is therefore established to express relative
to a local reference frame R~ (associated to the surface D~),

............. 31;i+ ..........

...........

Fig. 5. Leading shaft and gear (part 3).

634

A. Desrochers and A. Rivikre


To establish the constraints which will be acting upon any
point within this tolerance zone, it will be necessary to define
the displacement vector of a point M in the tolerance zone
expressed in the R~ frame.
Given M, a point located on the theoretical axis of bore B~,
and M', the same point M after a displacement (v, 13, 7). Then,
[MM'] is the total displacement of the theoretical point M
after the application of the D~ transform.
Consequently, in the R~ reference frame,
[ M M ' I R , = [M']R, -- [M]R 1 = D , , X [M]R, -- [M]R,

[MM']R, = Dll X [PR--R1] X [M]e- I X [PR--R,] X [M]R


hence,
[MM']R, = (D1L - ]) x [ P R - - J X [M]R
~rt 3

(6)

Additionally, this vector must comply with several constraints related to the geometry and size of the tolerance
zone B~:
[Ms~M'B~o]R~ y~ <-- ~bt3/2 [MB~bM'8~b]R~ Y~ --< ~bt3/2(7)
0 -- " --< "rr

Fig. 6. Schematic representation for the tolerancing of the three parts


composing the mechanism. Dotted boxes indicate displacement associated with the zone.

any point or displacement initially defined in the mechanism


coordinate system, R.
PR~RI: Transform matrix mapping R into R~, R being the
coordinate system of the mechanism and R~ the coordinate
system of the surface D~

(o,.~,.y,.,~ = [Pn~R,] X

(4)

(O,x,y,z)

0 --< 13 <-- 7r

and naturally

and w <-- +t3/2


Determination of the Constraints on a Point M Associated
to the 972 Tolerance Zone. The Dl2 transform matrix
describing, in the R2 frame, the uncertainty zone associated
with the clearance between surfaces A2 and D~ which are
cylinders with the same axis, is identical to Oil (v, w, 13, '~/)
as presented in equation (5). Indeed the A2 and D~ bore axis
are subject to a concentricity tolerance specification which, in
turn, implies a cylindrical zone [7].
This matrix translates the smNt relative displacements possible between parts 1 and 2 given the specified H7f6 fit.
Again, the displacement vector of a point M within this
uncertainty zone expressed in the current reference frame R2
may be established.:
[MM']R 2 = (D12 - I) X [PR_.R2] X [M]R

Determination of the Constraints on a Point M Associated


to the Dll Tolerance Zone. In the R~ coordinate system, the
general homogeneous transform matrix D~ representing the
tolerance zone characterising the location of a cylinder whose
axis is oriented along X, can be expressed as follows:

D,l(v,w,[3,~/)

[cc13

-s'~

c~s13

= I s~C13

c.y

s~s13

C13

l-~13

(8)

Appropriate geometrical and dimensional constraints are once


again specified accordingly.
[MDI~, M'D~]R2 " Y2 <- 0.037/2

(9)

[Mo~h M'D~b]R2 " Y2 -< 0.037/2

0 -----13 <-- "rr

(5)

However, in this case the B~ bore is subject to a location


tolerance specification bearing a cylindrical zone modifier and
using D~ as datum. This implies a zero value for the w
parameter of the matrix acting perpendicularly to the plane
created by both the B~ and D~ axis. The v value expresses
any variation in the distance between the axes while the " / a n d
[3 parameters represent any angular deviation of the axes within
the cylindrical tolerance zone.

v <-- qbt3/2

and
3.2.2

and

0 --< y ~ 'rr

with

v --< 0.037/2

w -< 0.037/2

Parts 2 and 3 (Gear and Pinion)

For parts 2 and 3, the tolerancing surfaces A2, B2, A3 and B3


have been defined. The surface A2 will be the datum surface
for the definition of the tolerance zone associated with B2,
while the tolerance zone associated with B 3 will be established
with respect to datum surface A3.
The determination of the constraints on the tolerance zone
of surface B2 and B3 will not be performed here since it is
similar to that of surface B1 shown in the previous section.

Tolerance Zones and Clearances

IM-g~],

DII

4,t3
'--

r-ls-

[151

I01

r-1251

[M~M~1

Io

0.037
2

C,~y *.~+Cr *.u~d+S~ * , ~ - ~ + v

-------~]
M.,~G, 'Y~=

CBSr*xM +Cr*N'/ + S ~ r * z M - y M +v

Io

~,L

[ - - ]
,%=a,=

Fsl

-IR~

tol Io
t~L It

<t4

.y,=

c4~r*~+Cr*~+S~r*~-~+v

D33

[-1,
m.M,,

"Y' =

C~r*~t+Cr*#4+SlUr*z~=yv/+v

1:
- yt4yR3

[:! [:i
<" [o
~L,
-

_+o.olss y

?'1

F-sl
D22

F157

[o

0.037

lol

R~t

Io
I

< - -

F1zsl
~.OlSS

r-~sl
D13

,*t3_

I , . [:J, :~-'

Cfl~r *x#t +CY*YM +,.WSY*d d - yM +v

DI2

635

0t5_

5-y

Fig. 7. Summary of the computational results.


Figure 7 illustrates the summary of the computational results
so far.
3.2.3
B3

Clearance Computation Between Gears B2 and

+ (P~RIR3 ( [ D 2 2 ] R 3 - - / )

PR--% X [MB2]R)} " Y

1
= {(p~DR--R,
X ( [ D l l ] R , - / ) PR-.R, x [ M < k ) +

(11)

(p;1
R--R, ([D13]R, --/) X PR_.RI x [MB,]R) +

(~LR~ ([D3dR, - / ) PR--R~ x [MB3]R)} " Y

The computation of the clearance between both gears will


result from the combined effects of the minimum and maximum
distances separating their axes. These minimum and maximum
distances will in turn be computed from the displacement
vector e 2 and e3 on parts 2 and 3 as depicted in Fig. 8.
The displacement vector ez will be computed from the
toterancing chain linking surface D~ to surface B2 and involving
the sum of displacements D~z and D22 as presented in equation
(t0). Similarly, the displacement vector e3 will be obtained
from the tolerancing chain connecting datum surface D~ to the
cylindrical surface B 3 through the sum of displacements D~ ~,
Oi3 and D33 (Fig. 8) as shown in equation (11).
e2 = {(PheLR2 x ([DI2]R2 - / ) x PR~R2 X [MD1]R)

e3

(10)

L .....L
M B3a

M B3a

M B3b

M B3b
15

15

Maximum distance

M B2e

M B2b

b: .....I

M B2a

M B2b

Fig. 8. Maximum and minimum distances between the axes of the


gears for the computation of the corresponding clearance.

636

A. Desrochers and A. RiviOre

The determination of the clearance between the gears will


imply the optimisation of two distance functions corresponding
to the worst case scenarios illustrated in Fig. 8.
Therefore, the maximum and the minimum distances between
the gear axes will be obtained from the maximisation of the
following functions:
for the maximum distance : ]e3a - e2~]
subject to the parallelism constraints :

le3,, - e~l >- Ie~o - e=~l

(12)

and for the minimum distance : I-e~ + e2~l


subject to the parallelism constraints :
le3b --

e2bI <-- le3a

e2aI

(13)

The maximisation is performed using a standard optimisation


algorithm such as simplex.
The numerical value obtained from these computations may
be cross-checked using classical tolerancing chains. Using the
values presented in Fig. 7, both approaches yield the same
result:
Clearance = _+[(@3/2 + 0.037/2 + qbt5/2)
+ (0.037/2 + (bt4/2)]

(14)

Consequently the resulting dimension separating the gear axes


will be: 15x:~+tv2+ <bt4/2+ cbt5/2+ o.o37)

The clearance computation that has just been presented could


have been performed more easily using the classical tolerance
stack up approach with the results of Fig. 7. However, this is
not the case for the computation of the parallelism error between
the gears. Here, the method of resolution remains the same as
in the previous section, but the extreme position of the gears
will be considered in terms of orientation rather than distance.
Graphically, this involves two alternative combinations of the
maximum and minimum distance shown in Fig. 8.
The displacement vectors e2 and e3 along with the y distance
components are obtained, as in the previous example, with
equations (10) and (11). The functions to be optimised, however, do reflect the computation of the c~ uncertainty on
the parallelism:
I(e3~ - e2~) + (-e3b + e~b)I

05)
Obviously, there are no constraints to be imposed on the gear
orientations. The result of the optimisation process yields the
following c~ uncertainty on the parallelism between the gears,
0/...... = (O/'DI2 -}" {Y~D22) "}- (O/'D I [ J" ~DI3 -I- 0~.D33)

or

area = 0.037125 + qbt4/16 + ~t3/30


+ 0.037/30 + ~t5/16

4.

Conclusion

In this paper a methodology allowing the representation of


tolerance zones and clearances within CAD/CAM systems has
been developed. With the proposed approach, the degrees of
freedom associated with the tolerance zones are translated in
terms of matrices. This mathematical representation can then
be used easily, as has been shown, for the computation of
clearances and angular deviations.
Other applications can naturally be derived from this modelling procedure. Indeed, tolerance transfer and tolerance analysis
computations could also be achieved in three dimensions using
this method. As a matter of fact, the principles set forth for
these types of computation are the same as those commonly
employed for the determination of clearances.
Finally, the method is very general, which makes it suitable
for any three-dimensional part and any type of surface. It
should also be mentioned that the aim of this tolerancing.
model is not to replace geometric dimensioning and tolerancing
standards but rather to translate their corresponding tolerance
zones into minute displacements, which provides an effective
computational tool for tolerance related operations in three
dimensions.

Acknowledgment

3.3. Computation of the Parallelism Error Between


the Gears

I(-e3~ + e2,) + (e3b - e2b)l,

result would have been very difficult to compute using conventional approaches.

(16)

Since the angular deviations considered are very small, the


approximation, tan (cx) = ot (rad) has been used. Therefore, the
parallelism uncertainty between the gears will be 0~m~. This

The authors wish to thank Doctor Dominique Gaunet, research


and development engineer at Dassault-systames and Mr Inouk
Dub6, Eng., for their contribution to this work.

References
1. A. A. G. Requicha, "Toward a theory of geometric tolerancing",
Journal of Robotic Research, 2 (40), winter 1983.
2. R. Jayaraman and V. Srinivasan, "Virtual boundary requirements
and conditional tolerances in mechanical design", RC 12942
(58050), IBM T. J. Watson Research Center, October 7, 1987.
3. J. U. Turner, "Exploiting solid models for tolerance computations",
Geometric Modeling for Product Engineering, 1FIP t990 pp. 237258.
4. A. Desrochers, "Modble conceptuet du dimensionnement et du
tol~rancement des m~canismes. Reprrsentation dans les syst~mes
CFAO", Doctoral Thesis, Fv~coleCentrale Paris, September 24, 1991.
5. A. Rivi~re, "La g~omrtrie du groupe des drptacements appliqude
la modrlisation du tol4rancement", Doctoral Thesis, Ecole Centrale Paris, September 22, 1993.
6. J. M. Herve, "La grom6trie du groupe des d4ptacements appliqu4e
l'analyse cinrmatique des mdcanismes", State Doctoral Thesis,
Paris VI, May 1976.
7. D. Gaunet, "ModUle formel de tolrrancement de position: contribution ~al'aide au tol4rancement en CFAO', Doctoral Thesis, Ecole
Centrale Paris, 1993.
8. "Dessins techniques - Tolrrancement g4omrtrique - Tol&ancement
de forme, orientation, position et battement-Grndralitrs, drfinitions, symbotes, indications sur tes dessins", ISO, 1983.
9. "Dessins techniques- Cotation et tol~rancement des profils", tSO,
1987.
10. "Dessins techniques- Tolrrancement gromrtrique- Toldrancement
de localisation', ISO, 1987.

You might also like