Sunteți pe pagina 1din 16

Int J Adv Manuf Technol (2013) 68:739754

DOI 10.1007/s00170-013-4795-2

ORIGINAL ARTICLE

A comparison of tolerance analysis models for assembly


Chaowang Bo & Zhihong Yang & Linbo Wang &
Hongqian Chen

Received: 18 July 2012 / Accepted: 24 January 2013 / Published online: 13 March 2013
# Springer-Verlag London 2013

Abstract Mechanical products are usually made by assembling many parts. The dimensional and geometrical variations of each part have to be limited by tolerances so that it
can ensure both a standardized production and a certain
level of quality defined to satisfy functional requirements.
The appropriate allocation of tolerances among the different
parts is the fundamental tool to ensure that assemblies work
correctly at lower costs. Therefore, to ensure their functionality, assembly designers have to apply tolerance analysis. A
model based on either worst case or statistical type analysis
may be used. Actually, there are some different models used
or proposed by the literature to make the tolerance analysis
of an assembly constituted by rigid parts, but none of them
is completely and univocally accepted. None of them has
done an objective and complete comparison for analyzing
the advantages and the weaknesses and furnishing a criterion for the choice and application. This paper briefly introduces three of the main models for tolerance analysis, the
Jacobian, the vector loop, and the torsor. These models are
briefly described and then compared to show their analogies
and differences. Some guidelines are provided as well, with
the purpose of developing a novel approach which is aimed
at overcoming some of the limitations of these models.
Keywords Tolerance analysis . Jacobian model . Vector loop
model . Torsor model

C. Bo : Z. Yang : L. Wang : H. Chen


Key Laboratory of High Efficiency and Clean Mechanical
Manufacture at Shandong University, Ministry of Education,
Jinan, China
Z. Yang (*)
School of Mechanical Engineering, Shandong University,
Jinan 250061, China
e-mail: yangzhihong@sdu.edu.cn

1 Introduction
Increasing competition in industry leads to the adoption of
cost-cutting programs in the design, manufacturing, and
assembly of products. Producing high-precision assemblies
at lower costs is necessary. Tolerancing decisions can profoundly impact the quality and cost of products[1]. The aim
of the tolerance analysis is to study the accumulation of
dimensional and/or geometric variations resulting from a
stack of dimensions and tolerances. The results of the analysis are meaningfully conditioned by the mathematical
model adopted.
Some models proposed by the literature carry out the
tolerance analysis of an assembly constituted by rigid
parts. Requicha introduced the mathematical definition
of the tolerances semantic and proposed a solid offset
approach initially [2, 3]. Since then, numerous models
are proposed by the literature: the vector loop uses
vectors to represent relevant dimensions; the variational
model uses homogeneous transformation matrix to represent the variation of an assembly [4]; the matrix uses
displacement matrix to describe the roto-translational
variation of a feature [5]; the feature-based approach
uses modal interval arithmetic and small degrees of
freedom to describe the tolerance specifications[6]; the
Jacobian uses kinematic chains to formulate the displacement matrices; and the torsor uses screw parameters to model three-dimensional tolerance zones;
Franciosa proposed a method for tolerance analysis to
simulate different assembly sequences[7]. But they still
appear not adequate under many aspects: the schematization of the form deviations, the schematization of the
joints with clearance between the parts, the solution of
complex stack-up functions due to the network joints
among the components, and so on. Moreover, it is
difficult to find literatures in which the different
approaches are compared systematically with the help

740

Int J Adv Manuf Technol (2013) 68:739754

Table 1 Related authors and articles of the three models


Models

Major authors

Articles

Jacobian

Lafond and Laperriere [15]

Jacobian-based modeling of dispersions affecting pre-defined functional requirements of


mechanical assemblies [15]
Tolerance analysis and synthesis using virtual joints [24]
General 2-D tolerance analysis of mechanical assemblies with small kinematic adjustments [25]
Including geometric feature variations in tolerance analysis of mechanical assemblies [26]
Generalized 3-D tolerance analysis of mechanical assemblies with small kinematic adjustments [27]
Modeling three dimensional tolerance zones using screw parameters [28]
Geometrical tolerancing in process planning: a tridimensional approach [29]

Vector loop

Torsor

Laperriere and Lafond [24]


Chase et al. [25]
Chase et al. [26]
Chase et al. [27]
Desrochers [28]
Legoff et al. [29]

of one or more case studies aimed at highlighting the


advantages and disadvantages. In the literature, some
studies compare the models for tolerance analysis by
dealing with their general features [8, 9]. Other studies
compare the main computer-aided tolerancing softwares
that implement some of the models of the tolerance
analysis, but these studies focus the attention on the
general features [10, 11]. A complete comparison of
the models proposed to solve the tolerance analysis does
not exist in the literature and, therefore, no guidelines
exist to select the method more appropriate to the specific aims.
The purpose of this paper is to analyze three of the most
significant models for the tolerance analysis: Jacobian, vector loop, and torsor. It gives a comprehensive comparison of
the three models by means of two numerical examples. It
offers some guidelines for the choice too.

2 Tolerance analysis models


The initial articles and authors about the Jacobian model,
the vector loop model, and the torsor model are listed in
Table 1.
2.1 Jacobian model
The definitions of different parameters used in the Jacobian
model are presented in Table 2.Two types of FE pairs in a
tolerance stack can be distinguished: internal pairs and kinematic pairs [12].
Based on small displacements modeling of points using
transformation matrices of open kinematic chains in robotics, a generic dispersion in a pair of functional elements can
be expressed by a set of six virtual joints and coordinate
frames (see Fig. 1)[13]. The first three z axis of the first
three frames account for three orthogonal translations, and
the last three z axis of the last three frames account for
three orthogonal rotations [14].

The generalization of this model, which enables the explicit


and symbolic formulation of the relative position and orientation
of any FE in the chain with respect to the base FE, simply
involves the multiplication of the transformations on consecutive
FE pairs:
6n
T06n T06  T612  . . .  T6n6

where n represents the total number of FE pairs (both internal


and kinematical) involved in the tolerance stack. The global
deviation of the FR, expressed in datum reference frame
(DRF) of the first feature R0, can be expressed as [15]:
2!
3
FEi
 ! h
i 6
s
 7
7
J1 J2 . . . J6 FEi . . . J6n5 J6n4 . . . J6n FEn  6
4  5
!
a
!
FEn

2
where !
s is the vector of the three small translations of the
considered point, expressed in the DRF of the first feature R0;
~
a is the vector of the three small rotations of the considered

Table 2 Parameters of the Jacobian model


Parameter

Definition

Functional
element (FE)

Point, curve, or surface that belongs to a part in


the assembly. A FE can be real, for example
the plane surface of a block, or constructed
such as the axis of a cylinder or a median
plane
An important condition to be satisfied between
two FEs on different parts, for example a
fitting condition
Two FEs on different parts make up a kinematic
pair if there is a physical or potential contact
between them
Two FEs each on the same part form an internal
pair if they both participate in a contact relation
with some other parts

Functional
requirement
(FR)
Kinematic pair
(KP)
Internal pair (IP)

Int J Adv Manuf Technol (2013) 68:739754

741

4. Once the required stack-up function has been obtained,


it may be solved by the usual methods for the worst case
or statistical approaches.
5. Finally, it is necessary to observe that this model is
based on the TTRS criterion and the positional tolerancing criterion.
2.2 Vector loop model

Fig. 1 Virtual joints and coordinate frames to FE pairs [1]

point, expressed in the DRF of the first feature R0;[J1J2


J6]FEi is the 66 Jacobian matrix associated with the FE of the
ith FE pair (internal or kinematical) to which the tolerances are
~
applied, with i=1 to n; FEi
is the six-vector of small
dispersions associated with the FE of the ith FE pair (internal
or kinematical) to which the tolerances are applied, expressed
in the local DRF, with i=1 to n.
For small rotational virtual joints, the ith column of the
Jacobian matrix Ji is computed as:
"
Ji



i1
!
z 0  d0n  d0i1
i1
!
z0

#
3

while for small translational virtual joints, there is no contribution to small rotational displacements of the point of
interest, and the ith column of the Jacobian matrix Ji is
computed simply as:
"
Ji

i1
!
z0
!
0

#
4

!i1
!i1
i1
where !
z 0 is the third column of T 0 ; and d 0 is the last
!i1
!6n
column of T 0 ; d0n is the last column of the T 0 .
The main steps of the approach are described below[16, 17]:
1. Identify the functional elements pairs.
2. Define the DRF for each functional element and the
virtual joints.
3. Create the chain and obtain the overall Jacobian matrix.

Vector-loop-based model uses vectors to represent the


dimensions in an assembly [18, 19]. The vectors are
arranged in chains or loops representing those dimensions that stack together to determine the resultant assembly dimensions. There are 6 common joints in 2-D
assemblies and 12 common joints in 3-D assemblies; at
each kinematical joint, a local DRF has to be defined.
These joints are used to describe the relative motions
among mating parts. The tolerances are specified only
for the constrained degrees of freedom (dof). Geometric
tolerances are considered by adding micro-dof to the
joints just described.
To understand this method better, the basic steps to build
a vector loop scheme and to carry out a tolerance analysis
are given below [20, 21]:
1. Create assembly graph. The assembly graph is a
simplified diagram of the assembly representing the
parts, the mating conditions, and the measures to
perform.
2. Locate the DRFs for each part. These DRFs are used to
locate features on each part.
3. Locate kinematical joints and create datum paths.
4. Create vector loopsusing the assembly graph and
the datum paths, vector loops are created. Each
vector loop is created by connecting the datum
paths of the datum traverse by the loops. A vector
loop may be called open or closed if it is related to
a measure or not.
5. Derive the equationsthe assembly constraints within
vector-loop-based models may be expressed as a concatenation of homogeneous rigid body transformation
matrices:
R1  T1  . . . Ri  Ti  . . . Rn  Tn  Rf H

where: R1 is the rotational transformation matrix between


the x-axis and the first vector; Ri is the rotational transformation matrix between the vectors at node i; Ti is the
translational matrix of vector i; Rf is the final closure rotation with the x-axis; and H is the resultant matrix. If the
assembly is described by a closed loop of constraints, H is
equal to the identity matrix; otherwise, H is equal to the g

742

Int J Adv Manuf Technol (2013) 68:739754

vector representing the resultant transformation that will


lead to the final gap or clearance and its orientation when
applied to a DRF.
6. Tolerance analysiswe consider an assembly constituted by p-parts. Each part is characterized by the
x-vector of the dimensions and by the -vector of
the geometrical variables that are known. When
these parts are assembled together, the resultant
product is characterized by the u-vector of the assembly variables and by the g vector of the measures required on the assembly. It is possible to get
L=JP+1 closed loops, where J is the number of
the ties among the parts that looks like:
Hx; u; a 0

while there is an open loop for each measure to do that looks


like:
g Kx; u; a

The first order Taylors series expansion of the


closed loop assembly equations can be written in matrix form:
dH A  dx B  du F  da 0

dg C  dx D  du G  da

where Aij =Hi/xj,Bij =Hi/uj, Cij =Ki/xj, Fij =Hi/j,


Dij =Hi/uj,Gij =Hi/j.
dg Sx  dx Sa  du

10

where Sx =CDB1 A,S =GDB1 F.


It is possible to calculate the solution in the worst-case
scenario as:
gwc

kjSxik  txk j

11

ljSail  tal j

2.3 Torsor model


The torsor model uses screw parameters to model threedimensional tolerance zones [21, 22]. Each actual surface of a
part is modeled by a substitute surface. For each of the seven
types of tolerance zone, there are the correspondent screw
parameters obtained by annulling the ones that leave the surface
invariant in its local frame. Considering a generic feature, if uA,
vA, wA are the translation parameters of the point A, and , ,
are the rotation angles (considered small) as regards to the
nominal position, the torsor of point A is given by:
8
9
< a uA =
T
b vA
13
:
;
g
w
A
A
R
where R is the DRF where the screw parameters are evaluated.
Once known the torsor of point A, the torsor of point B may be
evaluated.
Therefore, a union of the set of Small Displacement
Torsors that are involved at the joints is used in order to
obtain the global behavior of the mechanism. This may be
done by considering that, with the worst-case approach, the
cumulative effect of a simple chain of n-elements is simply
expressed by adding the single components of the torsors:
T0=n T0=1 T1=2 . . . Tn1=n

14

The basic steps of the torsor model are:


1. Identify the elements of the parts and the relations
among them.
2. Define the parameters of the mechanisma deviation
torsor has to be associated to each surface of the parts.
3. Compute the cumulative effect of the torsors involved in each stack in order to evaluate the functional requirements.

3 Model comparison
3.1 First numerical example

while in the statistical scenario (root sum of squares) as:


gsc

hX

2
kSxik  txk

2
lSail  ta

i1=2

12

The Direct Linearization Method is very simple and


rapid, but it is approximated too [22]. When an approximated solution is unacceptable, it is possible to use a numerical
simulation by means of a Monte Carlo technique to improve
the exact solution [18, 23].

To compare the three models previously described, the first


numerical example shown in Fig. 2 has been used. The
assembly is made of three parts. Part 3 is a cylinder. The
gap g, between the top of the cylinder and part 1, is the
critical assembly feature we wish to control. The case study
has been solved through both the worst case and the statistical approaches. The case study contains all the characteristics and the critical aspects of the problem, but at the same
time it is simple to calculate the exact geometric worst-case
value of the required range g in order to compare the
results of the models. The exact geometric worst-case results

Int J Adv Manuf Technol (2013) 68:739754

743

Fig. 2 The case study with


dimensional and geometrical
tolerances [25]

are:5:99741:4629
1:5586 mm for the case considering dimensional
tolerances only and 5:99741:5592
1:7348 mm for the case considering both dimensional and geometrical tolerances.

functional elements pair associated with the points G and


H. It is possible for each FE to locate the virtual joints and
the reference frames and to evaluate the transformation
matrices T10 T30
0 .The matrix of the total transformation
is shown in Eq. (16).

3.1.1 Jacobian model


1. Dimensional tolerances only
The Jacobian model of the case study is made under the
simplified hypothesis to consider as fixed at 90 the orientation of the adjacent sides of part 1 except the inclined one.
This simplification is needed to avoid the network in the
assembly. The functional requirement g has to be measured
between the top of the cylinder and part 1 (see Fig. 2). Once
indicated with x1 to x9 the dimensions of the parts and with
u1, u2, u3, u4 the assembly variables (see Fig. 3), the
simplification adopted makes it possible to directly solve
the assembly problem as:
u1
u2
u3
u4

x1 x4 sin x6
x3  x2  x1  x4 sin x6 tan x6
x1 x8
x5q
cos
x6 x3  x2  x1  x4 sin x6 tan x6

x7  x8 2  x8  x4 sin x6 x5 sin x6 2

15
There are five functional elements pairs (see Fig. 3): the
points G and O, O1 and O2, O3 and H are three internal
pairs, while O and O1, O2, and O3 are external pairs. The
required functional requirement g is correspondent to the

Fig. 3 Functional requirement and the functional elements pairs of the


case study

744

Int J Adv Manuf Technol (2013) 68:739754

h
i
J J1 . . . J6 FE1 . . . J25 . . . J30 FE5
2
0
6
0
6
6
1
6
6
0
6
6
0
6
6
h x9
6
6
0
6
6
0
6
6
1
6
6
0
6
6
0
6
6 h  x3 x9
6
6  tan x6 x1  x2 x4 sin x6
6
0
6
6
6
0
6
6
1
6
6
0
6
6
0
6
6
6 h  x x  x sin x
3
9
5
6
6
6  tan x x  x x sin x
6 1
2
4
6
6
6
0
6
6
0
6
6
1
6
6
0
6
6
0
6
6
6 h  x m x  x cos x
6
3
9
5
6
6  tan x x  x x sin x
6
6 1
2
4
6
6
0
6
6
0
6
6
1
6
6
0
6
4
0
0

0
1
0
x1 x8
h  x9
0
0
1
0
x4 sin x6 x8
h x3  x9 tan x6 x1  x2 x4 sin x6

1
0
0
0
0
x1  x8
1
0
0
0
0

x4 sin x6  x8

0
1
0
x4 sin x6 x8 x5 sin x6
h x3  x9 x5 sin x6
tan x6 x1  x2 x4 sin x6

1
0
0
0

0
0
0
0

1 0

0
0
1
0
0
h x3  m  x9 x5 cos x6
tan x6 x1  x2 x4 sin x6

x4 sin x6  x8
x5 sin x6
1
0
0
0
0

0
0
0
0
1
0
0
0
0
0
1

0
0
0
0
0
1
0
0
0
0
0

0 1
0
0
0
0

0 1
0
0
0
0
1

0
0
0
0
0

0 1

0
1
0
0
0
0

1
0
0
0
0
0

0
0
0
0
1
0

Once calculated, the Jacobian matrix of the functional requirement pair, the stack-up function may be
formalized considering that the requirement g is evaluated as the translation of point H along the -Z0 axis
(Fig. 3). According to Eqs. (2) and (16), its

0
0
0
0
0
1

3
0 T
07
7
07
7
17
7
07
7
07
7
07
7
07
7
07
7
17
7
07
7
7
07
7
7
07
7
07
7
07
7
17
7
07
7
7
7
07
7
7
07
7
07
7
07
7
17
7
7
07
7
7
07
7
7
07
7
07
7
07
7
17
7
05
0

16

However, considering the simplification adopted (fixed


angles) due to the need to avoid network, 5 = 11 =
17 = 0, then
g z0  z6  z12  z18  z24

18

g z30 z0 5 x1 x8  z6
 11 x4 sin x6  x8  z12
 17 x4 sin x6  x8  x5 sin x6
 z18  z24

17

where zi (i = 0, 1, 2, 6, 7, 8, 12, 13, 14, 18, 19,


20,24,25,26) is the translation along the ith axis and
i (i = 3, 4, 5, 9,10, 11, 15, 16, 17, 21, 22,
23,27,28,29) is the rotation around the ith axis.

Moreover, with reference to Fig. 3 of the five functional


requirement pairs, Eq. (15), and considering the nominal
dimensions:
Where

q
m x7  x8 2  x8  x4 sin x6 x5 sin x6 2
cos
x6 x3  x2  x1  x4 sin x6 tan x6
h x5 q


x7  x8 2  x8  x4 sin x6 x5 sin x6 2

Int J Adv Manuf Technol (2013) 68:739754

745

Fig. 6 Datum path of vector loop 1

Fig. 4 Assembly variables and tolerances of vector loop (dimensional


tolerances only)

z0 x9
z6 x3  x2  x1  x4 sin x6 tan x6
0:3057x1  0:3057x2 x3 0:0894x4

g 

z18  x7  x8  x8  x4sinx6 x5sinx6


0:3061x4 0:3061x5 40:0513x6
1:4479x7 2:4949x8
z24 x8

9
P

j si j  t i

i1

 12:6883x6
z12 xq
x6 0:9563x5  16:0804x6
5 cos

where xi (i=19) is the deviation amplitude of part dimension xi.


Once the required stack-up function is obtained, it can be
solved with the usual methods. For the worst-case approach:

19

0:3507  0:10 0:3507  0:10 0:20


0:2167  0:10 1:2624  0:30 11:2826  pi=180
1:4479  0:20 3:4949  0:10 0:30
1:8065 mm
21

And then is:


g z0  z6  z12  z18  z24
0:3507x1 0:3507x2  x3 0:2167x4
1:2624x5  11:2826x6 1:4479x7
3:4949x8  x9
20

Fig. 5 Assembly graph of vector loop model

Fig. 7 Datum path of vector loop 2

746

Int J Adv Manuf Technol (2013) 68:739754

While for statistical case approach:


v
u
2
9
uX
t
gsc 
si  ti 0:722mm

From the sensitivity analysis:


du B1  A  dx Su  dx
22

i1

2. Dimensional and geometrical tolerances


If the considered case study includes the dimensional
and the geometrical tolerances, nothing changes as
regards to the previous case since it has adopted the
simplification of angles in order to avoid the network.
The form tolerances (the planeness) do not produce any
effect because in the Jacobian model the features are
considered with nominal shape; the position tolerance
can't produce any orientation deviation since the angles
of part 1 are considered fixed.
Therefore, the results are the same as the previous
case where only dimensional tolerances are considered.
Moreover, the application of the Envelope Principle or
the Independence Principle does not produce any effect
for the Jacobian model. The application of TTRS does
not explain well how to handle dependencies of the FE
to multiple datums with tolerance specification.
3.1.2 Vector loop model
1. Dimensional tolerances only
Once the dimensions of the assembly were indicated
as x1x9, and the assembly variables as u1, u2, u3 (see
Fig. 4), the assembly graph of Fig. 5 has been built. It
shows one joint of cylinder slider kind between part 1
and part 3 at joint 4, respectively, one joint of parallel
cylinder kind between part 2 and part 3 at joint 3, one
joint of planar kind at joint 1 and one joint of edge slider
kind at joint 2 between the part 1 and part 2, and the
measure to perform (g).
A DRF has been assigned to each part; it is centered
in the point O of Fig. 4 for part 1 and O1 for part 2, O3
for part 3. The DRF of part 1 is also considered as the
global DRF of the assembly. Then, the datum paths
have been created; they are shown in Figs. 6, 7, and 8.
According to Fig. 5, there are L=JP+1=43+1=2
closed loops and one open loop. The first closed loop
joints part 1 and part 2 by linking joint 1 and joint 2; the
second closed loop joints the subassembly part 1part 2
and part 3 by linking joint 1, joint 3, and joint 4; the
open loop joints define the gap.
Then, we can resume the elements of the R and T
matrices of the loops in Table 3. Once the vector loops
are defined, the relative equations have been generated.
From Eq. (7) and Table 3
g x 9  u2  x 8

23

24

where dx=[dx1 dx2 dx3 dx5 dx6 dx7 dx8]T, du=[du1 du2
du3 d1 d2 d3]T, and
2

3
0:3058  0:3058 1 0:8669  17:0736  1:0457 0
6 0:3058  0:3058 1 1:4725 10:8427  1:2262 1:0857 7
6
7
6 1:0457 1:0457 0 0:3058  10:0082 0:3058 0
7
u
7
S 6
60
7
0
0
0
1
0
0
6
7
40
0 0
0:0281
0:8355  0:0205 0:0825 5
0
0 0  0:0281  1:8355
0:0205  0:0825

Then, from Eqs. (23) and (24)


dg dx9  du2  dx8
dx9  0:3058dx1  0:3058dx2 dx3 1:4725dx5
10:8427dx6  1:2262dx7 1:0857dx8  dx8

25

0:3058dx1 0:3058dx2  dx3  1:4725dx5


 10:8427dx6 1:2262dx7  2:0857dx8 dx9

where dxi (i=19) is the deviation amplitude of part


dimension xi.
It is possible to calculate the solution in the worst
case as:
g 

9
P

jsi j  ti

i1

0:3058dx1 0:3058dx2 1:0000dx3 1:4725dx5


10:8427dx6 1:2262dx7 2:0857dx8 dx9
0:3058  0:1 0:3058  0:1 1:0000  0:2 1:4725  0:3
10:8427  pi=180 1:2262  0:2 2:0857  0:1 0:3
1:64595mm

26
For statistic case approach:
v
u 9
uX
si  ti2 0:6830mm
g sc t

27

i1

2. Dimensional and geometrical tolerances


Once the dimensions of the assembly are indicated as
x1 ,, x9, the assembly variables as u1, u2, u3, and the
gap between the top side of part 1 and the circle that is
the assembly measure as g, the case study appears as
shown in Fig. 2. The DRFs and the datum paths are the
same as the previous case.
The vector loops have no change, but they have to
take into consideration the geometrical tolerances. The
geometrical tolerances have to be translated into the xvector: the planeness on part 21 =00.03 mm; the
circular degree on part 22 =00.05 mm; the circular
degree on part 23 =00.02 mm; the perpendicularity
on part 14 =00.01 mm.

Int J Adv Manuf Technol (2013) 68:739754

747

8
1:0457
>
>
>
>
0:6433
>
>
<
0:3058
a
S
0
>
>
>
>
0:0166
>
>
:
0:00166

0
1:6847
0
0
0:0408
0:0408

0
1:3764
0
0
0:0567
0:0567

9
0
>
>
>
1:3764 >
>
>
=
0
0
>
>
>
0:0567 >
>
>
;
0:0567

The gap g depends on the x-vector through the sensitivity coefficients.


dg dx9  du2  dx8  da3
0:3058dx1 0:3058dx2  dx3  1:4725dx5
10:8427dx6 1:2262dx7  2:0857dx8 dx9
 0:6433da1 1:6847da2  2:3764da3  1:3764da4

30
Fig. 8 Datum path of vector loop 3

It is possible to calculate the solution in the worst


case as:
Then, we can resume the elements of the R and T
matrices of the loops in Table 4. From Eq. (7) and
Table 3, we can get:
g x 9  u2  x 8  a 3

g 

13
P

j si j  t i

i1

0:3058dx1 0:3058dx2 1:0000dx3 1:4725dx5


10:8427dx6 1:2262dx7 2:0857dx8 dx9
0:6433 da1 1:6847 da2 2:3764 da3 1:3764 da4
1:81075mm

28

31

As concerning the sensitivity analysis, we have:


du B1 Adx  B1 Fda Su dx Sa da

29

where :dx=[dx1 dx2 dx3 dx5 dx6 dx7 dx8]T, du=[du1 du2
du3 d1 d2 d3]T, d=[d1 d2 d3 d4]T, Su is same
to the previous one, and

Table 3 Elements of R and T matrices of the loops (dimensional


tolerances only)
Loop 1

Loop 2

Loop 3

Nr.

Nr.

Nr.

1
2
3
4
5
6
7
8

0
90
90+x6
90
180
-1
90
180

x2
x3
u3
x5
x7
u1
x1

1
2
3
4
5
6
7
8
9
10

0
90
90+x6
90
2
180
3
90
90
180

x2
x3
u3
x5
x7
x8
x8
u2
x1

1
2
3
4
5
6
7
8

0
90
90
90
0
90
90
90

x1
u2
x8
x8
gap
x1 +x8
x9

Table 4 Elements of R and T matrices of the loops (dimensional and


geometrical tolerances)
Loop 1

Loop 2

Loop 3

Nr.

Nr.

Nr.

1
2
3

0
90
90+x6

x2
x3
u3

1
2
3

0
90
90+x6

x2
x3
u3

1
2
3

0
90
90

x1
u2
4

4
5
6
7
8
9

90
0
180
-1
90
180

1
x5
x7
u1
x1

4
5
6
7
8
9
10
11
12
13
14
15
16

90
0
2
0
0
180
0
3
0
0
90
90
180

1
x5
x7
2
3
3
x8
x8
3
4
u2
x1

4
5
6
7
8
9
10
11

0
0
90
0
0
90
90
90

3
x8
x8
3
gap
x1 +x8
x9

748

Int J Adv Manuf Technol (2013) 68:739754

Fig. 9 Torsor model: elements


and parts of the case study

For statistic case approach:


v
u 13
uX
g sc t
si  ti 2 0:6902mm

torsor of the link between part 1 and part 3. The functional requirement g can be expressed by the translation along the global z axis.
The next step is to evaluate the components of the
torsors (indeed it is enough to evaluate the third components due to translation). For the T1,6 torsor, with reference to Fig. 12 and considering that the case study is a 2D
problem on xz plane (i.e., =0, =0, v=0), it is:
8
9
 =
< 
b

T1:6
34
: 1:6
;

w
M
1:6
R1:6
M

32

i1

3.1.3 Torsor model


1. Dimensional tolerances only
The simplification to consider the fixed angles of part
1 (except the inclined side) has been used in order to
avoid the network. This simplification may solve the
assembly problem.
The first step of the method is to identify the elements of the parts (see Fig. 9) and the relations among
them; these information are reported in the surfaces
graph of the case study (see Fig. 10). Considering that
the angles of part 1 are fixed, the network can be solved,
and the surfaces graph is simplified as shown in Fig. 11.
The cumulative torsor G is expressed as:
8
9
<a u =
GH T1:6 T1=3 T3:1
b
v
33
:
;
g
g
R
H
where T1,6 is the torsor of feature 1 of part 1; T3,1 is the
torsor of feature 1 of part 3 (the circle); and T1/3 is the

where M is the median point of the feature 1.6. considering the point of interest is H.
9
8
9 8
9 2
3 8
0
 b1:6
>
>
< 5 >
=
< uH >
= >
<  >
=
7
6
0


4 
vH
0  5
>
>
>
>
>
:
;
:
; >
:
;
5:9974
wH
wM 1:6
b1:6  0

9
8
>
=
< 5:9974b 1:6 >


>
>
;
:
wM 1:6 b1:6

T1:6

8
<

b
: 1:6

H

9
5:9974b 1:6 =

;
wM 1:6 5b 1:6 R1:6

35

36

Int J Adv Manuf Technol (2013) 68:739754

749

Considering the simplification of considering the fixed


angles of part 1, 1.6 =0 and therefore:
8
9
0 =
<
0

38
T1:6
:
;

w
M
1:6
H
R
Considering the extreme points remain into the tolerance
zone, it results:
8


<
0

T1:6
39
:
 t1:6 t 9 =2; t1:6 t 9 =2 R
H
where t1.6 is the thickness of the tolerance zone of S1.6, and
t9 is the dimensional tolerance of the dimension x9. Note that
this torsor shows the admissible range of variations of the
small displacements associated to the feature. In the same way,
the torsor T3.1 of feature 1 of part 3 may be computed as:
8
9
<  t8 =2; t8 =2 =

40
T3:1 0
:
;
 t8 =2; t8 =2
where t8 is the dimensional tolerance of the dimension x8.
The evaluation of the torsor linking part 1 and part 3 (T1/3)
is very difficult because it needs the solution of the networks
among the components of the assembly. By adopting the
simplification that the angles of part 1 are fixed, it is possible
to solve this problem as the sum of two terms:
T1=3 T1=2 T2=3
Fig. 10 Torsor model: surface graph of the case study

The local z axis of R1.6 is the reverse of the global Z axis,


respectively; therefore, the correspondent translation needs
to be inverted. It is:
8
9
5:9974b 1:6
<
=
T1:6
b1:6 
37
:
;


w

5b

M 1:6
1:6
R
H

41

The first term (T1/2) is the torsor of the link between part 1
and part 2.
8
>
>
>
<

T1=2

0
>
>
>
:
H

t1 0:2924t4 14:3446t6 t1:3 =2;


t1 0:2924t4 14:3446t6 t1:3 =2

0:3057t1 0:3057t2 t3 0:0894t4 12:6883t6 =2;
0:3057t1 0:3057t2 t3 0:0894t4 12:6883t6 =2

9
>
>
>
=
>
>
>
;
R

42
The second term (T2/3) is the torsor of the link between part
1part 2 and part 3.
8
>
>
>
<

T2=3

0
>
>
>
:
H

0:2924t4 14:3446t6 t8 =2;


0:2924t4 14:3446t6 t8 =2

0:3061t4 1:2624t5 23:9708t6 1:4479t7 2:4949t8 ;
0:3061t4 1:2624t5 23:9708t6 1:4479t7 2:4949t8 

9
>
>
>
=
>
>
>
;
R

43
where t1.3 is the thickness of the tolerance zone of S1,3;and t1,
, t8 are the tolerances on the dimensions x1,,x8. Therefore,
the functional requirement is:
g 0:3057t1 0:3057t2 t3 0:3955t4
1:2624t5 36:6591t6 1:4479t7 2:4949t8 t9 t1:6 =2
Fig. 11 Torsor model: simplified surface graph of the case study

44

750

Int J Adv Manuf Technol (2013) 68:739754

Fig. 12 Torsor model:


tolerance zones of the case
study

Now, it is necessary to relate the thickness of each tolerance


zone assigned to each feature to the tolerances required on the
components. This is another critical step of the torsor model.
However, under the simplified hypothesis adopted (i.e., fixed
angles of the part 1) and by considering only dimensional
tolerances, it may have:
t1:6 0mm; t1 0:20mm; t2 0:20mm;
t3 0:40mm; t4 0:20mm; t5 0:60mm;
t6 0:03489; t7 0:40mm; t8 0:20mm;
t9 0:60mm
The functional requirement in the worst-case approach is:
$g 0:3057  0:2 0:3057  0:2 0:4 0:3955  0:2
1:2624  0:6 36:6591  0:03489 1:4479  0:4
2:4949  0:2 0:6=2
2:1580mm
Fig. 13 a Part 1. b Part 2. c
Part 3. d Definition of the
assembly and functional
requirement for statistical case
approach

45

It may be added that the torsor method does not allow to


evaluate the results due to a statistical approach since the
torsors components are considered the extreme possible intervals of the small displacements, and this is not compatible
with the statistical approach where a probability density function is to each parameter.
2. Dimensional and geometrical tolerances
If the considered case study both included the dimensional and the geometrical tolerances, Eq. (34) is still valid
(under the hypothesis of fixed angles of part 1), and it is
always needed to relate the thickness of the tolerance
zones to the tolerances required on the components.
Moreover, by using the simplification to consider the
fixed angles of part 1, there's no change compared to the

Int J Adv Manuf Technol (2013) 68:739754

751

The stack-up function may be formalized by considering that the requirement $g is evaluated as the translation of
point O0 along the Z0 axis. According to Eqs. (2) and (46),
its
4g z18 z0 z6 z12
ta  tc  tc

47

where zi(i=0, 1, 2, 6, 7, 8, 12, 13, 14) is the translation


along the ith axis.
For the worst-case approach:
Fig. 14 Kinematic chains identification

case that only dimensional tolerances are considered.


Therefore, the simplification to consider the fixed angles
of part 1 causes the geometrical tolerances has no effect
on the results of the case study. Moreover, the application
of the Envelope Principle or the Independence Principle
does not produce any effect on the torsor model too.

The second numerical example shown in Fig. 13 has been


used to compare the three models. This assembly contains
three parts. The functional requirement is the gap shown on
the leftmost side of the assembly (see Fig. 13). Some key
tolerances from ta to td are labeled. The relevant parameters
are as follows: x110 mm, x25 mm, x3 4 mm, ta0.15 mm,
tb0.1 mm, tc0.1 mm, td0.1 mm. The exact geometric
results are: 10.35 mm for the worst case considering dimensional tolerances only and 10.26 mm for the case considering both dimensional and geometrical tolerances by 3DCS.
3.2.1 Jacobian model
1. Dimensional tolerances only
Kinematic chains in this case are shown in Fig. 14.
There are six virtual joints and five FE pairs. O0 and O1,
O2 and O3, O4, and O5 are internal pairs; O1 and O2, O3,
and O4 are external pairs. The [J1J2J6]FE2, [J1J2J6]FE4,
~
~
FE2
and FE4
can be eliminated because O1 and O2, O3,
and O4 have the same position and orientation, respectively, the contacts between them are assumed perfect. The
form tolerances are not considered here because the real
features are considered as coincident with their substitute
ones in this model. So, the Jacobian matrix is equal to:
1
60
6
60
J 6
60
6
40
0

0
1
0
0
0
0

0
0
1
0
0
0

0
10 0 1
10 0 0 0
0
0 0 0
1
0 0 0
0
1 0 0
0
0 1 0

0
1
0
0
0
0

48

While for statistical case approach:


p
4g 0:152 0:12 0:12 0:206mm

49

2. Dimensional and geometrical tolerances


According to Eqs. (2) and (46), the functional requirement is equal to
4g z18 z0 z6 z12
ta tb  tc td  tc ta tb  2tc  td

3.2 Second numerical example

4g 0:35mm

0 0 5 0
0 5 0 0
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

1
0
0
0
0
0

0
1
0
0
0
0

0
0
1
0
0
0

0
1
0
1
0
0

1
0
0
0
1
0

50
For the worst-case approach, g=0.45 mm
p
g  0:152 2  0:052 2  0:12
0:207mm
3.2.2 Vector loop model
Once the dimensions of the assembly were indicated as x1, x2,
x3 (see Fig. 13), the assembly graph of Fig. 15 has been built.
According to Fig. 15, there are two joints of planar kind and
only one loop that define the gap.
Then, we can resume the elements of the R and T matrices of the loops in Table 5. Once the vector loop is defined,
the relative equations have been generated.
1. Dimensional tolerances only
According to Eq. (7),
g x1  x2  x3

3
0
07
7
07
7
07
7
05
1

46

51

Fig. 15 Assembly graph of vector loop model

52

752

Int J Adv Manuf Technol (2013) 68:739754

Table 5 Elements of R and T matrices of the loops


Dimensional tolerances only

Dimensional and geometrical


tolerances

Nr

Nr

1
2
3
4
5

0
180
0
0
180

x1
x2
x3
gap

1
2
3
4
5
6
7
8

0
0
180
0
0
0
0
180

x1
1
x2
2
x3
3
gap

54

55

8
9

<0
=



:
;
t2 t3:2 =2;  t2 t3:2 =2 R
H

53

For the statistical case approach:


4g 0:206mm

T1.1 is the torsor of feature 1 of part1; T2.2 is the


torsor of feature 2 of part 2; and T1/2 is the torsor of
the link between part 1 and part 2. The functional
requirement g can be expressed by the translation
along the global z axis.
The components of the torsors are evaluated:
8
9
8
9

< a1:1  =
<0
=
T1:1

 a1:1

0
:
;
:
;
 wG1:1 R H t1:1 =2; t1:1 =2 R
H
8
9

<0
=
T1=2 T1=3 T3=2


:
;
t1 t1:2 =2;  t1 t1:2 =2 R
H

For the worst-case approach:


4g 0:35mm

Fig. 16 Surface graph

2. Dimensional and geometrical tolerances


According to Eq. (7),
g x1  x2  x3 a 1  a 2  a 3

where 1, 2, and 3 represent the translations of the


joints due to the geometrical tolerances, parallelism on
part 11 =0tb/2, parallelism on part 32 =0td/2,
planeness on part 2 3 =0td/2..
For the worst-case approach:
4g 0:5mm

56

While for statistical case approach:


p
4g  0:152 3  0:05 2  0:012
0:28mm
3.2.3 Torsor model
The first step is to identify the elements of the parts and the
relations among them; these information are reported in the
surfaces graph (see Fig. 16). The cumulative torsor G is
expressed as:

GH T1:1 T1=2 T2:2

59
where t1, t2, t3 are the tolerances on the dimensions x1, x2, x3;
and t1.1, t1.2, t2.2, t3.2 are the thicknesses of the tolerance
zones of S1.1, S1.2, S2.2, S3.2. Therefore, the functional requirement is:
g t1 t2 t3 t1:1 t1:2 t2:2 t3:2 =2

57

8
9
< a uH =

b vH
:
;
g
g R
H

T2:2

8
9

<0
=


0
:
;
t3 t2:2 =2; t3 t2:2 =2 R
H

58

60

If only dimensional tolerances are considered, it may


have:
t1 0:3mm; t2 0:2mm; t3 0:2mm;
t1:1 t1:2 t2:2 t3:2 0
gwc 0:35mm

61

If dimensional and geometrical tolerances are considered,


it may have:
t1 0:3mm; t2 0:2mm; t3 0:2mm; t1:1 0;
t1:2 0:1mm; t2:2 0; t3:2 0:1mm
gwc 0:45mm

62

Int J Adv Manuf Technol (2013) 68:739754


Table 6 Results of the comparison among the models applied
to the two cases

753

Case

Approach

Analysis methods

Exact solution

Jacobian

Vector loop

Torsor

Case 1

Only dim.

Worst case
Statistical
Worst case
Statistical
Worst case
Statistical
Worst case
Statistical

+1.46291.5586

+1.59921.7348

0.35

1.8065
0.7220
1.8065
0.7220
0.35
0.206
0.45
0.207

1.64595
0.6830
1.81075
0.6902
0.35
0.206
0.50
0.208

2.1580

2.1580

0.35

0.45

Dim.+geom.
Case 2

Only dim.
Dim.+geom.

3.3 Comparisons
Table 6 shows the results due to the application of the three
considered models to the two cases. The results of vector
loop model are closer to the exact result than the other two
models, but it is more complex and will cost us more time
than the other two models if there are many dimensional and
geometrical tolerances. The Jacobian model is appropriate
for the 3D assembly and it's more efficient if there are many
dimensional tolerances. The torsor model is fit for the extreme limits of 3D tolerance zones resulting from a feature's
small displacements. Table 7 shows the comparison of the
three models on various aspects.
If both the dimensional tolerances and the geometrical
tolerances are applied, the result of Jacobian model is same
or close to the result of Jacobian model only the dimensional
tolerances are applied. To solve the stack-up function, it is
needed to relate the virtual joints displacements to the
tolerances assigned on the components. However, in the
Jacobian model, the features are considered with nominal
shape, and it cant handle the form tolerance. Besides, it
cant explain well how to handle dependencies of FE to
Table 7 Comparison of three
models

multiple datums with tolerance specification due to the


application of TTRS.
The three considered models have three common limits.
The first deals with the assembly cycle: the three models are
not able to correctly represent the coupling with clearance
between two parts and consider the functional requirements
in the network. The second deals with the representation of
the tolerances applied to the assemblys components: the
three models do not give a complete correspondence among
the model variables and the parts tolerances. Moreover, the
translation of the parts tolerances into model variables does
not satisfy the standards (ASME or ISO). The third deals
with the independence principle: the three models do not
allow us to apply the independence and/or the envelope rule
to different tolerances of the same parts.

4 Conclusions
This paper makes a brief comparison of three models of
tolerance analysis for rigid-parts assembly, the Jacobian,
vector loop, and the torsor, in order to point out the

Aspects of the comparisons

Analysis methods

Jacobian

Vector loop

Torsor

Analysis method

Worst case
Statistical

a
a

a
a

a
b

Tolerance type

Dimensional
Form
Position

a
b
a
b
b
a
b
a
a
a
a
d
c

a
a
a
b
b
a
a
a
b
a
a
c
c

a
b
a
b
b
a
b
a
a
a
a
c
d

Tolerance parameterization
Envelop and independence
Stack-up function type

Possible

Consider the datum precedence


Tolerance zones interaction
Functional requirement schematization

Not possible

Easy

Difficult

0.26

Evaluation of small displacements


Computation of the functional requirements

Linear
Network

With points
With features

754

advantages, weakness, and the scope of application of each


model based on the experimental results and the information
available from the literature.
Further researches include the definition of a new and more
efficient model able to overcome the limits that have been
highlighted in this work and consider the functional requirements in the network. The model can be the unification of the
previous models that can make up for each other, such as the
unified Jacobiantorsor model. Also, this model should reduce the uncertainty of transforming the functional requirement to the geometrical principle, considering the tolerance of
complex features. It should allow simulating different assembly sequences and can handle under, fully, and overconstrained assemblies. A dimensional tolerance assigned to the
distance between two features of a part or of an assembly may
be required with the application of the envelope rule or the
independence principle. To model the form tolerance, it is
possible to introduce a virtual transformation that is assigned
to points of the surface to which a form tolerance is assigned.
The subjects of further research are to consider dimensional
tolerance with the application of both the envelope principle
and the independence principle, to take into account the real
features and the interaction of the tolerance zones, to consider
joints with clearance among the assembly components, and to
adopt both the worst-case and the statistical approaches to
solve the stack-up functions.
Acknowledgments This work is supported by Independent Innovation Foundation of Shandong University (grant 2010TS087) and the
National High Technology Research and Development Program of
China(No.2012AA040910).

References
1. Ghie W (2010) Tolerance analysis using Jacobian-torsor model:
statistical and deterministic applications. In: Cakaj S (ed)
Modeling simulation and optimizationtolerance and optimal
control. InTech, India, pp 147160
2. Requicha A (1983) Toward a theory of geometric tolerancing. Int J
Robot Res 2(4):4560
3. Requicha A (1993) Mathematical definitions of tolerance specifications. Manuf Rev 6(4):269274
4. Gupta S, Turner JU (1993) Variational solid modeling for tolerance
analysis. IEEE Comput Gr Appl 13(3):6474
5. Salomons OW, Haalboom FJ, Poerink HJJ, Slooten F, Houten
FJAM, Kals HJJ (1996) A computer aided tolerancing tool II:
tolerance analysis. Comput Ind 31(2):175186
6. Khodaygan S, Movahhedy MR, Saadat FM (2010) Tolerance analysis of
mechanical assemblies based on modal interval and small degrees of
freedom (MI-SDOF). Int J Adv Manuf Technol 50(9):10411061
7. Franciosa P, Gerbino S, Patalano S (2010) Variational modeling
and assembly constraints in tolerance analysis of rigid part assemblies: planar and cylindrical features. Int J Adv Manuf Technol 49
(1):239251
8. Hong YS, Chang TC (2002) A comprehensive review of tolerancing research. Int J Prod Res 40(11):24252459

Int J Adv Manuf Technol (2013) 68:739754


9. Salomons OW, Houten FJAM, Kals HJJ (1998) Current status of CAT
systems. In: ElMaraghy HA (ed) Geometric design tolerancing: theories, standards and applications. Chapman & Hall, London, pp 438452
10. Prisco U, Giorleo G (2002) Overview of current CAT systems.
Integr Comput Aided Eng 9(4):373387
11. ASME Standard (1994) Dimensioning and tolerancing, ASME
Y14.5 M-1994. American Society of Mechanical Engineers, New York
12. Laperriere L, ElMaraghy HA (2000) Tolerance analysis and synthesis using Jacobian transforms. CIRP Ann Manuf Technol
49(1):359362
13. Laperriere L, Ghie W, Desrochers A (2002) Statistical and deterministic tolerance analysis and synthesis using a unified Jacobiantorsor. CIRP Ann Manuf Technol 51(1):417420
14. Ghie W, Laperriere L, Desrochers A (2010) Statistical tolerance
analysis using the unified Jacobian-torsor model. Int J Prod Res
48(15):46094630
15. Lafond P, Laperriere L (1999) Jacobian-based modeling of dispersions affecting pre-defined functional requirements of mechanical
assemblies. Proceedings of IEEE international symposium on assembly and task planning, pp. 2025, Porto, Portugal, July
16. Polini W (2010) Geometric tolerance analysis. In: Colosimo BM,
Senin N (eds) Geometric tolerance: impact on product design,
quality inspection and statistical process monitoring. Springer,
London, pp 3968
17. Clement A, Riviere A, Serre P (1998) The TTRSs:13 constraints
for dimensioning and tolerancing. In: EIMaraghy HA (ed)
Geometric design tolerancing: theories, standards and applications.
Chapman & Hall, London, pp 122131
18. Chase KW (1999) Tolerance Analysis of 2-D and 3-D Assemblies.
IOP Publishing Adcats. http://adcats.et.byu.edu/Publication/99-4/
MultiDimTolAssem.pdf. Accessed Apr 1999
19. Chase KW, Gao J, Magleby SP (1995) General 2-D tolerance
analysis of mechanical assemblies with small kinematic adjustments. J Des Manuf 5(4):263274
20. Chase KW, Magleby SP, Gao J (1996)Tolerance analysis of 2-D
and 3-D mechanical assemblies with small kinematic adjustment.
IOP Publishing Adcats.http://adcats.et.byu.edu/Publication/97-5/
Adv_tol_chap-6_11a_96.html. Accessed May 1997
21. Marziale M, Polini W (2009) A review of two models for tolerance
analysis of an assembly vector loop and matrix. Int J Adv Manuf
Technol 43(11):11061123
22. Glancy CG, Chase KW (1999) A second order method for assembly tolerance analysis. Proceedings of the 1999 ASME Design
Engineering Technical Conference, September 1215, 1999, Las
Vegas, Nevada. DETC99/DAC-8707
23. Nigam SD, Turner JU (1995) Review of statistical approaches to
tolerance analysis. Comput Aided Des 27(1):615
24. Laperriere L, Lafond P (1999) Tolerance analysis and synthesis using
virtual joints. Proceedings of the 6th CIRP Seminar on Computer
Aided Tolerancing, pp. 452458, Enschede, Netherlands
25. Chase KW, Gao J, Magleby SP (1995) General 2-D tolerance
analysis of mechanical assemblies with small kinematic adjustments. J Des Manuf 5(4):263274
26. Chase KW, Gao J, Magleby SP (1996) Including geometric feature
variations in tolerance analysis of mechanical assemblies. IIE
Trans 28(10):795807
27. Chase KW, Gao J, Magleby SP (1998) Generalized 3-D tolerance
analysis of mechanical assemblies with small kinematic adjustments. IIE Trans 30(4):367377
28. Desrochers A (1999) Modeling three dimensional tolerance zones using
screw parameters. Proceedings of the DETC 25th Design Automation
Conference, September 1215, Las Vegas. DETC99-DAC-8587
29. Legoff O, Villeneuve F, Bourdet P (1999) Geometrical tolerancing
in process planning: a tridimensional approach. Proceedings of the
Institution of Mechanical Engineers, Part B. J Engineering
Manufacture 213(6):635640