Home | ADCATS Info | Search | Site Map | Bulletin Board | Reports & Publications | Bibliography | Contact Us

AutoCAD 2D Modeler:
Home : Manuals : AutoCAD - Modeler - Modeling   

The CATS Modeler is used to build a model of a mechanical assembly which may then be used by the CATS Analyzer to make quantitative estimates of the effects of manufacturing variations on assembly performance. Modeling skills are thus the most essential requirement for tolerance analysis. Without correct modeling, the predicted assembly tolerances will be unreliable, possibly resulting in assembly problems, unexpected increases in the number of rejects, increased costs, and reduced quality. This chapter will overview and define the necessary elements for correct modeling.


Assembly tolerance specifications are very different from component tolerance specifications. Component tolerances are applied to each dimension of the individual component parts of an assembly. The variation is monitored and limits are set to control production quality. Individual parts may be inspected before assembly and judged good or bad as they meet or exceed the tolerance limits. For example, the diameter of a shaft may be specified as 0.75 +/- 0.010 in. The variation in the diameter depends only on the processes used to produce the shaft.

Assembly tolerances apply to assemblies of parts. The resulting dimension variation is caused by the combined effect of two or more component dimensions. Assembly limits are set to control assembly processes or meet engineering performance requirements. Inspection takes place after assembly. For example, the clearance between a hole and a shaft may be specified as 0.015 +/- 0.010 in. The variation in clearance depends on both the shaft variation and the hole variation, that is, C = H - S

Figure 2-1. A simple assembly tolerance specification.

A very important task in assembly tolerance modeling is the specification of design limits on the critical resultant dimensions of the assembly, such as clearances or gaps. Overall assembly dimensions vary as the result of tolerance stack-up of the various component dimensions which are represented by vector chains in your CATS model. Each contributes its share to the overall variation of the resultant assembly dimension. The designer must assign upper and lower limits to those assembly dimensions which are critical to the performance of the design.

Tolerance Stack-up

Tolerance accumulation or stack-up may be estimated from one of the expressions in Table 2-1. All three of these approximations are available in the CATS Analyzer. Which one you use depends upon customer requirements, process data available and desired accuracy.

Table 2-1. Assembly Tolerance Accumulation Formulas

Worst Case
Assures 100% assembly acceptance if all parts meet component tolerances. Costly design model. Requires excessively tight component tolerances.
Root Sum Square
Assumes Normal distribution and +/-3[[sigma]] tolerances. Some fraction of assemblies will not meet specification. May adjust ZASM to obtain desired acceptance fraction. Less costly. Permits looser component tolerances.
Six Sigma
Most realistic estimates. Accounts for process mean shifts and their long-term effects on assembly distribution.


In the above table, dU is the predicted variation in the resultant assembly dimension; dxi is the variation in a component dimension; [[partialdiff]]U/[[partialdiff]]xi is the sensitivity that a variation in dxi has on U; and TASM is the assembly tolerance (or design limit) for variations in dU. ZASM is a target number of standard deviations at which the designer would like the assembly spec limits to lie. Cpi is the process capability ratio for a component dimension whose manufacturing process is assumed to be centered. Cpki is the process capability index for a component dimension, which includes a measure of long term drifts in the process mean.

The CATS Analyzer calculates the sensitivities from the CATS model and predicts the tolerance accumulation of the assembly variables of interest. If specified limits have been set for an assembly variable, the computed distribution of the variable is used to calculate the number of assemblies which will be out of specification. This is shown graphically in Figure 2-2.

Figure 2-2. Determining the number of out of specification assemblies.

Types of Assembly Specifications

There are more types of assembly specifications than just clearances or gaps. Those supported by CATS are shown in figure 2-3 a and b.


Assembly Clearance or Gap
The variation in distance between two points on an assembly, as measured when all the parts have been pushed together so all the clearance is in one place.

Also applicable to the overall length of a stack of parts.

The variation in the location of a selected point on an assembly, both horizontal and vertical. The tolerance zone is a circle centered at the point's nominal position.

Relative Orientation
The angular variation between two lines, edges, or axes on two different parts of an assembly. The tolerance zone is a band parallel to the line of interest's nominal axis.
The deviation from parallel between a surface edge or axis of one part and a specified reference edge or axis on another part in an assembly. The tolerance zone is a band parallel to the reference line's nominal axis.

Figure 2-3a. Definition of open loop assembly specifications.


Dependent Length
The variation in the location of the point of contact between two mating parts.

Dependent Angle
The variation in angle between two mating parts in an assembly.

Figure 2-3b. Definition of closed loop assembly specifications.


The CATS assembly tolerance model consists of vector loops and kinematic joints which are overlaid on an AutoCAD assembly drawing. The vectors represent component dimensions whose variation contributes to assembly variations. The kinematic joints describe degrees of freedom or adjustable dimensions in the assembly, whose variation is determined by accumulated manufacturing variations in the assembly. Closed vector loops are used by the CATS Analyzer to solve for the kinematic variations. Open vector loops are used to solve for the variation in assembly specifications, such as gaps or position. The procedure for creating an CATS model begins with identifying the component parts and follows the steps outlined in Figure 1-5.


The CATS modeler must be able to distinguish between individual parts in the assembly model. Thus, each part is assigned a unique, eight-character part name. In addition, a datum reference frame (DRF) is defined on each part. A DRF is a local coordinate system used to specify the location of all other datums, features and joints on the part.

Two types of DRF's are available for 2-D problems:

  1. cylindrical
  2. rectangular

A DRF consists of one axis if the DRF is cylindrical or two axes if the DRF is rectangular. The axes define the origin of the local coordinate system attached to the part, which are used to locate features on that part. Figure 2-4 illustrates each part in a sample assembly with its associated part name and datum reference frame (DRF).

Figure 2-4. Assembly with Parts and DRF's defined.

The DRF axes should correspond to the primary, secondary and tertiary datum planes for a part. During production, all part features are ultimately referenced to these specified datum planes used to fixture the part. Selection of the location for the DRF origin determines to a great extent which part dimensions will contribute to assembly variations. Moving the DRF to a different location may result in a design that is more robust to manufacturing variation. Thus, the selection of the DRF axes may determine how the part needs to be fixtured during production to assure an assembly that is robust to manufacturing variation.


The points of contact between mating assembly parts are called joints. A joint may involve point contact, line contact, or surface contact between two parts. A joint defines a kinematic pair which constrains the relative motion between two mating parts. For example, a block on a plane is constrained to slide parallel to the plane.

In 2-D, a wide variety of assembly conditions may be modeled with just a few joint types. The joint type depends on the kind of contact between parts and the degrees of freedom which it allows. An unconstrained rigid body has six degrees of freedom (DOF): three translational and three rotational. In 2-D, each part has only three degrees of freedom: translation in the X and Y direction and rotation about the Z direction. Kinematic joints constrain motion so they reduce the degrees of freedom (DOF). Commonly occurring joint types are shown with their associated degrees of freedom in Figure 2-5. The corresponding CATS symbol is in the upper right hand corner of each picture.

The information required to define a joint includes the joint type, global location, orientation of the joint axes, names of the two parts in contact with each other, and the joint's location relative to each mating part's DRF.

Figure 2-5. Joint types with associated degrees of freedom.

Joints must be defined at all part interfaces, or contact points and correctly oriented to accurately represent the interaction between parts and their associated degrees of freedom. All joints which allow relative part motion about an axis or plane require information specifying the direction of the axis or plane.

Figure 2-6 identifies the sliding plane for a cylindrical slider joint, that is, the direction in which the cylinder and the ground may adjust kinematically relative to each other due to assembly variations. The joint origin and a second point identified by an X are used to define a vector describing this direction.

As an example of a kinematic variation, suppose the height of the right hand step that supports the block was produced at the high end of its tolerance. The block would tip up, causing the cylinder to slide up the wall slightly. Similarly, other component dimensions might be varied to see their effects. This sliding variation along the wall may be estimated statistically in terms of all the dimensional variations of the component dimensions.

Figure 2-6. Sliding contact due to assembly variations.

Each joint must also be located relative to two DRF's, that is, relative to both parts connected by the joint . The joint is located relative to a DRF by a chain of vectors called a datum path. Each vector in a datum path must be either a controlled dimension, for which the designer may specify a tolerance, or a kinematic assembly dimension, which adjusts at assembly time.

Figure 2-7 illustrates the datum paths for the joint between the Block and the Cylinder. Path 1 points to the Cylinder DRF, while Path 2 leads to the Block DRF. Note that the path to the Cylinder DRF is a single vector, corresponding to the cylinder radius, which is a designer-specified dimension. In contrast, Path 2 consists of two vectors, the first lying on the sliding plane and the second corresponding to the block thickness. The first vector is a kinematic assembly variable which locates the point of contact. It is not a machined dimension, but depends on the size and position of the other parts at assembly time.

Intermediate points along the datum path are called feature datums. They are indicated by a small square symbol, such as the one located at the corner of the block in Fig. 2-7. In this case the feature datum is a reference point on the sliding plane from which the point of contact is located. It is also the point at which the vector path changes direction. Each vector in a datum path must end at a feature datum, except the last vector, which must end at a DRF.

Figure 2-7. DRF paths for a cylindrical slider joint.


The goal of the tolerance modeling process is to obtain a set of relationships representing the assembly in terms of its geometry and kinematics. These relationships are produced by developing a set of vector loops connecting contact joints. The loops may be either open or closed.

Closed loops start and end at the same location and represent kinematic constraints on the assembly.

For example, a kinematic constraint may state that all parts in the assembly must maintain contact in order for the tolerance model to be valid.

Open loops are used to determine assembly resultants of interest such as a clearance, orientation or position.

For example, a fan blade must have a certain clearance in an assembly to operate.

A valid set of loops, whether open or closed, is not unique since each loop may follow a variety of possible paths. Fig. 2-8 shows a simple assembly requiring three closed vector loops to describe the adjustable kinematic variables.

Figure 2-8. Three loops are required to describe the variations in this simple assembly.

Rules for Creating a Valid Set of Closed Vector Loops

  1. The set of loops must pass through every part and every joint in the assembly.
  2. No single loop may pass through a part or joint more than once, but it must start and end at the same point.
  3. There must be enough closed loops to solve for all of the kinematic variables - one loop for every three variables.

As a vector loop threads its way through an assembly, it passes from mating-part to mating-part, always passing through the joints that connect the parts. Each joint has an incoming vector and outgoing vector. Similarly, in crossing a part, it enters through one joint (the "incoming joint") and leaves through another joint (the "outgoing joint"). The paths across the parts follow the associated datum paths created with each joint. The two datum paths are connected in a continuous chain, starting at the incoming joint, following its datum path to the DRF, then passing through the DRF, following the second datum path and terminating at the outgoing joint. Fig. 2-9 illustrates a typical path across a part.

Figure 2-9. Datum paths define the path across a part.

Some joints place requirements on the vector loops passing through them, as shown in Fig. 2- 10. These requirements assure that vectors and angles corresponding to the kinematic variables will be present in the assembly model so their variations can be calculated.

Figure 2-10. Required vector paths through joints.

Vector Loop / Joint Requirements

  1. For a cylindrical slider joint, either the incoming or outgoing vector must be normal to the sliding plane and end at the center of the cylinder.
  2. For joints having a sliding plane (planar, cylindrical slider or edge slider), either the incoming or outgoing vector must lie in the sliding plane.
  3. For cylindrical joints (parallel cylinders in contact), the path through the joint must start at the center of one cylinder and end at the center of the mating cylinder, passing through the contact point.

Loops may be defined manually or automatically. Manual definition involves identifying a sequential list of joints for each loop, then specifying tolerances on all independent dimensions in the loop. In contrast to manual definition, automatic definition requires only the specification of tolerances since the loop paths are generated automatically. It is also possible to define one or more loops manually, then generate the rest automatically. Loops can always be created automatically if the previous modeling steps have been performed correctly.

Once a complete loop is formed from joints and datum paths, tolerances are specified on those vector lengths which are independent of assembly adjustments. That is, tolerances must be specified on those vectors which correspond to manufactured feature dimensions, such as the length of a side or the radius of a corner. Tolerances may also be optionally applied to any angles between the vectors in an assembly which are independent (the angle between two adjacent vectors on the same part). Dimensions or angles which correspond to kinematic variables adjust during assembly. Their variations are computed by kinematic analysis.

Example 1 - Locking Computer Tape Hub Assembly

An assembly model is shown in Figure 2-11. The figure shows a radial cross section of a locking computer tape hub assembly. The vertical center line indicates the axis of rotation. In this example, the plunger slides vertically downward while the wedge on its outer diameter pushes the arm outward until it locks against the inside diameter of a computer tape reel. We wish to analyze the assembly in the extreme position shown, with the plunger resting on the base. In this position we would like to assure an interference fit between the rubber pad and the reel (shown here as a clearance for clarity).

Figure 2-11. Locking computer tape hub assembly.

Joints and feature datums.

There are three datum reference frames (DRF) located on the axis for the three axially symmetric parts: the Plunger, the Reel, and the Base. Joint 1, a rigid joint, joins the Plunger to the Base. It has been placed along the line of motion of the Plunger, at the location of its DRF. In the position shown, resting on the Base, it no longer has a degree of freedom. Joint 2, a planar joint, permits horizontal sliding contact between the Arm and the Base. The joint lies on top of the DRF for the Arm. The third joint is a cylindrical slider placed at the point of contact between the Arm and the Plunger.

Two loops describe the variation in this assembly, one closed and one open, as shown in Fig. 2-12. The open loop is set up to compute the gap between the Arm and Reel. The Gap is the resultant of a one-dimensional loop. It is the difference between RT, the radius of the tape reel, and RL, the resultant radius of the tape hub. The nominal value of RL, along with dependent variables u, [[Phi]] and the Gap, may be determined by an accurate CAD layout. However, the variations in the Gap, RL, u and [[Phi]] are wanted as well as the nominal values. The resultant variation may be computed by CATS in terms of the independent variables and their sensitivities using a WC, RSS or Six Sigma analysis.

Figure 2-12. Locking computer tape hub assembly.

Completed loops.

Example 2 - Remote Positioner

Figure 2-13 shows a remote positioning mechanism consisting of five parts joined by pin joints, forming two parallelograms. Its function is to control the position and orientation of the point P, suspended inside a test chamber. As Part 1 is rotated about its pivot point at the origin of the X-Y axes, Part 5 performs a parallel rotation about point P. However, if there are variations in the lengths of any of the parts, errors in the position and orientation of point P will result. The magnitude of these errors may be estimated by statistical analysis of a vector kinematic model.

This example illustrates two additional assembly specifications. Design limits may be placed on the variations in position and orientation of P. Comparing the computed values with the specified limits permits us to predict the accuracy of the mechanism and determine which component tolerances would be most effective to tighten.

One joint on each part is selected to be the datum reference location (DRF) for that part. Other joints and features are located relative to the reference joint on each part. They are not shown to avoid cluttering the drawings.

Figure 2-13. A remote positioning device, showing the possible errors in position and orientation.




Figure 2-14.
Closed loops for determining the variations at point P.

Figure 2-15.
Open loop for determining kinematic variables.


The vector model of the assembly consists of two closed loops, shown in Fig. 2-14, and a single open loop, shown in Fig. 2-15. The closed loops may be analyzed to determine the variation in the kinematic variables. The open loop may be analyzed to determine the variations in the position and orientation at point P.

There are six rotational kinematic variables corresponding to the rotational degrees of freedom at pin joints 2 through 7. Joint 1 is a kinematic input and is used as the reference angle, therefore it is assumed to be known. The two closed loops produce six scalar equations which relate the six angles to the various link lengths. When tolerances are specified on the link lengths, the equations may be solved for the resulting six angular variations.

The preceding examples demonstrate the application of four joint types: planar, rigid, cylindrical slider and revolute. Subsequent examples will employ the remaining joint types: edge slider and parallel cylinder.

The examples also demonstrated the application of three assembly specifications: gap, position and orientation. All three are open loop specifications. In the chapters which follow, closed loop specifications for dependent length and angle will be applied.


Besides size variations, parts may exhibit variations in shape or form, called geometric or feature variations. For example, a machined cylinder will not be perfectly circular. It may be slightly elliptical or lobed, but it must be sufficiently circular to properly perform its function. Feature variations also include variations in location and orientation. Feature controls are the mechanism used to constrain feature variations to fall within acceptable limits.

The ANSI Y14.5 specification was established to standardize control of form and feature variations. Most feature controls are based on an imaginary set of two surfaces, such as parallel planes or concentric cylinders, which define the region of acceptable surface variation. Individual feature control types are shown with their associated symbols in Figure 2-16.

Figure 2-16. ANSI Y14.5 Feature Control Symbols

In an CATS tolerance model, feature controls are applied at joints--where surface variations occur and propagate through the assembly. Since a joint generally involves two mating surfaces, there are usually two form tolerances applied at each joint, one for each surface variation. If more than one joint is in contact with the same feature, such as two joints on a plane, the same form tolerance should be applied to all joints in contact with that feature.

Sometimes there may be more than one ANSI feature tolerance specified for a single surface. That does not necessarily mean that there are two independent sources of variation produced by that surface. The two specifications are primarily given for inspection purposes to meet different functional requirements. For example, a surface may have a 0.010 parallelism tolerance specified along with a 0.005 flatness tolerance. The parallelism may be necessary for alignment, while the flatness may be required for a sliding fit. However, since the two tolerances do not represent two independent sources of variation, it would be more accurate to only apply one of them to an CATS tolerance model.

Modeling Form Variations

Figure 2-17 shows a cylinder in contact with a plane. In one assembly, the cylinder might rest on a peak of the surface. In the next assembly, the cylinder could be down in a valley. Thus, the surface waviness in the plane results in a translational variation normal to the surface.

Similarly, the cylinder is probably not perfectly round, but exhibits waviness or lobing. If, during assembly, it is placed with a lobe at the contact point, the cylinder center will be higher than average. If a low point on the surface of the cylinder is in contact, the center will be lower. Thus, we see that both surfaces produce independent translational variations which are normal to the surface at the point of contact.

Figure 2-17
Translational variations caused by form variations.

Figure 2-18 Rotational variations caused by form variations.

In contrast, a block on a plane produces rotational variation, as shown in Fig. 2-18, since one corner of the block may be higher than the other. The magnitude of the variation depends on the length of the block and the amplitude and period of the waviness.

It is interesting to note that the same flatness specification on the planar surface in Figs. 2-17 and 2-18 produces distinctly different variations depending on the type of joint or surface contact. Point or line contact, such as occurs in cylindrical slider, parallel cylinder, or edge joints, results in translational variation which propagates into an assembly in a direction normal to the surface. Surface or area contact, such as occurs in planar joints, produces rotational variation about an axis normal to the page.

As far as assembly tolerance analysis is concerned, it does not matter whether the form tolerance specified on the plane is parallelism, flatness, perpendicularity or angularity. Since each one is represented by a tolerance zone formed by two parallel planes bounding the surface, the effect on the assembly will be the same--a point contact will produce translational variation, while surface contact produces rotational variation .

For point contacts, CATS inserts a vector into the vector loop, normal to the surfaces, having zero nominal length +/-d[[alpha]]/2, where d[[alpha]] is the width of the specified tolerance zone. For surface contacts, CATS inserts a relative rotation +/-dØ. The rotational variation +/-dØ may be estimated from the relation:

dØ = tan -1 f(d[[alpha]],L)

where, d[[alpha]] is the specified ANSI Y14.5 tolerance bandwidth and L is the characteristic length (length of contact between the planar surfaces). The value +/-d[[alpha]]/2 or +/-dØ is taken to be the +/-3[[sigma]] limits of a Normal distribution.

Rules for Form Tolerances

1. There are generally not more than two feature variations produced at each joint.
2. The type of variation depends on the joint surfaces:

Translational variation
Cylindrical slider
Parallel cylinders
Edge slider

Rotational variation
Pin joint

3. For more than one joint on the same surface, be sure to apply the same feature tolerance to each joint that touches the surface.

Feature Control/Joint Type Summary

The combination of joint type and the feature control applied to it determines exactly what kind of variation is introduced into the assembly. Some joint/feature tolerance combinations are assumed to be impossible, and will not be allowed by the Modeler. The type(s) of variation introduced by these combinations are summarized below.


Table 2-2: Types of Variation Introduced By Feature Control/Joint Type Combinations

  Rigid Planar Edge Slider Cylind. Slider Parallel Cylind. Revol. Rectan. Datum Cylind. Datum
Flatness R R Tn Tn        
Straightness R R Tn Tn Tn      
Circularity Tn   Tn Tn Tn      
Cylindricity Tn   Tn Tn Tn      
Perpendic. R R Tn Tn     R  
Angularity R R Tn Tn     R  
Parallelism R R Tn Tn     R  
Profile R R Tn Tn Tn      
Runout Tn, R Tn, R Tn Tn Tn      
Concentricity Tx, Ty Tn, R Tn * * Tx, Ty   Tx, Ty
True Position Tx, Ty   Tx, Ty * * Tx, Ty   Tx, Ty
R = Rotational variation
Tn = Translational variation normal to the contact/sliding surface
Tx = Independent translational variation in the X-direction
Ty = Independent translational variation in the Y-direction
blank box = feature tolerance not allowed at the joint type.

* True position and concentricity variations are not applied to cylindrical slider and parallel cylinder joints. Instead, they are applied to the cylindrical datum(s) associated with those joints.

Modeling Position Variations

Position tolerance is used to specify the limits of location of a feature, such as a hole, in a 2-D plane. Position variations can accumulate and propagate in an assembly the same as dimensional variations. Two methods are commonly used in practice:

  1. Rectangular tolerancing
  2. True position tolerancing.

In rectangular tolerancing, the x and y coordinates of a feature are specified relative to a set of datum axes. The tolerances +/-dx and +/-dy are also added following established dimensioning conventions. For worst case, the resulting tolerance zone is rectangular, as shown in Fig. 2-19 Many object to rectangular tolerancing because the permissible position error varies with direction. It is equal to dx in the x direction, dy in the y direction, and R(dx2 + dy2) in the direction of the diagonal of the rectangular tolerance zone.

True position tolerancing, as defined in the ANSI Y14.5 standard, establishes a non-directional tolerance represented by a circular tolerance zone, as shown in Fig. 2-20. This is a more realistic representation for many locating processes. No tolerances are applied to the x and y dimensions in this case. A box is drawn around both dimensions indicating that they are basic dimensions. The position tolerance is placed in a feature control block directly under the hole size specification, as shown, along with the true position symbol. The value of the tolerance specifies the diameter of the tolerance zone.

Fig. 2-19. Rectangular position tolerancing.

Fig. 2-20
. True position tolerancing.

Modeling Profile Variations

Variations in the profile of a surface introduce variation into an assembly at the point of contact on the surface. Thus, the variation acts normal to the surface with a magnitude equal to +/-1/2 the specified profile tolerance, as shown in Fig. 2-21. It is represented by adding a vector normal to the surface, having zero nominal length plus or minus 1/2 the tolerance zone. CATS adds this vector at each joint location where a profile tolerance is specified by the designer.

Figure 2-21. Profile variation acts normal to the surface.

Rules for Position and Profile Tolerances

  1. When you have applied position tolerance to a feature, you should not apply size tolerances to the corresponding basic dimensions. The same is true of applied profile and angularity tolerances.
  2. Position variation is non-directional with magnitude equal to half the diameter of the specified position tolerance zone.
  3. Profile variation acts normal to the surface at the point of contact. The magnitude is +/-1/2 w, where w is the width of the tolerance zone.

Figure 2-22. Feature tolerances added at mating surfaces of an assembly.


Some assembly processes introduce variations which may not be determined by kinematic analysis. Consider an assembly where two members are fastened together with a mating pattern of four holes, as shown in Figure 2-23. Because of the clearance between the fastener and holes, there are three kinematic degrees of freedom. The part is able to translate in two directions and rotate relative to the plate. The magnitude of relative shift between them will depend upon the amount of clearance and the maximum distance between the holes.

Figure 2-23. Kinematic degrees of freedom for mating hole patterns.

However, if this is a joining assembly operation, the operator controls the final location of the parts when he tightens the bolts. It can be anywhere within the range of the clearance. Thus, there is an additional source of variation due to the joining assembly process. This type of variation, called clearance variation, may accumulate and propagate in an assembly just the same as dimensional variations.

Clearance variation may be associated not only with fasteners, but also with any welding, bonding, or joining process. Depending upon the characteristics of the process, different variations will occur. The variation may be introduced by either human or robotic methods. For example, before welding together two parts the parts are aligned. Depending on how the two parts are aligned, in a holding or centering device, variation may occur between the two parts before they are welded.

If the operator always pushed and twisted the assembly to an extreme position, with the bolts bearing against the sides of the holes, kinematic constraints could be applied. But it is more likely that the operator will locate the parts somewhere between the extremes, with more assemblies clustered at midrange. Thus, as a first approximation, we might assume a normal bivariate distribution for this assembly variation and define the extreme nominal values to be +/-3[[sigma]] limits. A more conservative estimate might be to assume a uniform distribution; that is, the final location is equally likely to be anywhere in the range. A normal distribution can be used to represent a uniform distribution when the nominal extremes correspond to +/- [[sigma]] limits (or when the diametral bandwidth is made larger by a factor of ).

Joining process variations may thus be modeled by introducing independant kinematic variations with as many as three degrees of freedom, at the point of contact between two mating parts. The tolerance must be prescribed rather than calculated, just as with form tolerances. Thus, the best way to model joining process variations is to insert an appropriate joint and the point of assembly (usually a rigid joint) and apply position and/or angularity feature controls at the joint. In this way, the variances of the joining processes are added as additional sources of overall assembly variation.

Figure 2-24 Bias factor variation.

A bias factor may also be needed for joining process variations to allow for non-central bias in the process. An example would be a door mounted with hinge plates (see fig 2-24). The door tends to shift vertically and rotate about a point due to gravity. To model assembly process bias, a small bias-length vector can be inserted into the vector loop of the assembly. Sensitivities may then be determined from the vector loop equations, and the bias vector or bias rotation can then be applied to the nominal loop equation.


Each modeling element in CATS has specific kinematic degrees of freedom associated with it. In order to analyze kinematic assembly variations, the total number of degrees of freedom in a model can be no more than three times the number of closed loops.

In a kinematic assembly, joints are used to constrain certain degrees of freedom within the assembly. When performing tolerance analysis, a different paradigm is helpful. A joint does constrain the parts it joins in certain degrees of freedom, but still allows others to remain. Variations due to small kinematic adjustments during assembly are associated with these remaining degrees of freedom (DOF). Therefore modeling elements are discussed here in terms of the degrees of freedom they "introduce".

Datum Reference Frames and Feature Datums

Rectangular: Rectangular DRFs and feature datums introduce no degrees of freedom into the assembly.

Cylindrical: Cylindrical DRFs and feature datums introduce a rotational degree of freedom into the tolerance model. They are usually used in conjunction with cylindrical slider joints and parallel cylinder joints. Both of these joints allow a kinematic rotation, but the center of rotation is not at the point of contact between the two parts. Instead, the rotation occurs at a cylindrical datum placed at the joint's center of curvature.

Occasionally, however, a cylindrical datum introduces a redundant or even a non-existant rotation into the model. For example, if a revolute joint is located at the same point as a cylindrical DRF and is connected to that DRF, then there is a redundant rotational degree of freedom at that location. One of them must be turned off (see the clutch example, chapter 4). The CATS Analyzer automatically turns off the redundant degree of freedom in this case. In other cases, there may be vectors which pass in and out of a cylindrical datum with no rotational variation occuring between them. In this case as well, the rotation must be turned off (see the bicycle crank example in the verification manual). A good test for this condition is to examine the vectors that join at a cylindrical datum. If a kinematic adjustment within the assembly will cause the angle between the vectors to change, the rotational degree of freedom is valid. If not, consider turning it off by making it a rectangular datum.

Kinematic Joints

Rigid: A rigid joint introduces no degrees of freedom into the model. It is used to join parts the user wants to model as having no kinematic adjustment between them.

Planar: A planar joint introduces a single translational degree of freedom into the model. It is used to model kinematic adjustments that involve only translation, such as between two flat plates. However, it can be used to model any situation that requires a translational degree of freedom.

When creating a planar joint, the user must define a "sliding plane." The user must then define a path back to the part DRFs in such a way that a vector is created in the sliding plane. If the DRF is not on the sliding plane, this is accomplished by defining a path which passes through a feature datum that lies on the sliding plane.

Cylindrical Slider: A cylindrical slider joint introduces a translational degree of freedom into the model. It is always linked to a cylindrical DRF or feature datum, so there is a rotational degree of freedom associated with this joint type (though not directly at the joint). It is used to model the contact between a rounded surface and a flat surface. As with a planar joint,

Edge Slider: A edge slider joint introduces a translational and a rotational degree of freedom into the model. The user must provide a vector in the sliding plane. This joint type is used to model the contact between an edge and a flat surface.

Parallel Cylinders: A parallel cylinder joint introduces no degrees of freedom into the model. However, it is always linked to two cylindrical DRFs or feature datums, so there may be up to two rotational degrees of freedom associated with this joint type (though not at the joint). This joint type is used to model the contact between two curved surfaces that have parallel center lines. Occasionally, one (or even both) of the cylindrical datums to which this joint is linked introduces a redundant or even non-existent degree of freedom into the model (refer to Cylindrical datums, above). The user needs to determine whether to leave the rotational degrees of freedom active.

Revolute: A revolute joint introduces a rotational degree of freedom into the model. It is used to model the contact between parts joined by a pin, a shaft, or any other device that allows only rotation between the parts. If it is located at the same point as a cylindrical DRF or feature datum and is linked to that same datum, there will probably be a redundant rotational degree of freedom at that location. The CATS Analyzer will automatically recognize this situation and turn off the redundant degree of freedom.


The following set of guidelines will help in setting up most tolerance analysis models. Completing these steps on paper before attempting to create a tolerance model on the computer (at least for the first few assemblies modeled) will greatly reduce the amount of time spent re-working and fixing models.

1. Start with the end in mind!! Determine the critical assembly variable(s) on which specs will applied. This will require the person creating the model to choose an appropriate 2-D reference plane through the assembly. All modeling elements will be located in this plane.

2. Determine what parts in the assembly will be included in the model. Many assemblies include parts that do not influence the critical assembly variation. Eliminating them will help create a simpler, more comprehensible model. For each part remaining in the assembly, locate the datum reference frame (DRF) location, and determine if the DRF is rectangular or cylindrical. In general, parts manufactured by a turning process or with radial/diametral dimensions have cylindrical DRFs.

3. Determine the type and location of all kinematic joints in the assembly. Each joint can be used to link only two parts. Define vector paths from each joint back to the DRFs of the parts it joins. If the joint has a translational degree of freedom, be sure one path contains a dependent (non-dimensioned) vector in the sliding plane. The remaining vectors must be dimensioned lengths (manufactured dimensions). Use feature datums to define the intermediate dimensions if the paths back to the DRF include multiple vectors. Remember to connect cylindrical slider and parallel cylinder joints directly to a cylindrical DRF or cylindrical feature datum.

4. If the critical assembly variable(s) is an angle or length defined by the joint paths, it is referred to as a "dependent" length or angle, and a "closed loop spec" is all that needs to be applied to the model. If the critical assembly variable is not defined by the joint paths, an "open loop specification" will probably be required to analyze it. If so, determine the point or plane whose variation is of interest (the "point of interest"), and the point or plane you wish to measure the variation relative to (the "point of reference"). Create a specification endpoint at the "point of interest" first and the "point of reference" second in order to form an open loop between those two locations. The order in which these specification endpoints is created is very important when creating "Gap" or "Position" specifications.

5. Create a network diagram to determine the number of closed vector loops that must be generated to analyze this assembly. Forming a network diagram provides a good way to check the validity of the loops created by the "Autoloop" option.

To build a network diagram, draw a circle for each part in the assembly and label it. For each contact joint between two parts, draw a line connecting their respective circles. If, for example, part_1 and part_2 join in two locations, there will be two lines connecting their respective circles. Continue this process until each joint in the assembly is represented by a line between two parts. Do not duplicate joints. If joint lines cross, re-arrange the parts so they don't. The number of closed loops is equal to the number of regions bounded by the lines (joints) in the network diagram. The number of variables that can be solved for in the assembly is equal to three times the number of loops.

6. Add up the number of degrees of freedom (DOF) present in the model. Include one degree of freedom for each cylindrical DRF, cylindrical feature datum, planar joint, cylindrical slider joint, and revolute joint (see previous section). Include two degrees of freedom for each edge slider joint. The degrees of freedom present should not exceed the number of variables that can be solved for (found in step 5). If the number of degrees of freedom present in the model exceeds the number of variables that can be solved for, check the assembly for redundant and non-existent DOFs. If there are still too many DOFs, declare an appropriate rotational DOF to be an "input angle", and turn off its degree of freedom. If there are still too many DOFs, it's likely a mistake has been made at an earlier stage in the modeling process.

7. Apply tolerances to all manufactured dimensions. If the effects of surface variations of one or more parts can be included in the model, apply appropriate feature tolerances at the joints which are located on those surfaces.


Once the tolerance modeling has been completed, the CATS Modeler can generate a tolerance model file in the CATS Analyzer neutral file format, containing a representation of the essential geometry and kinematic relations for the entire assembly. The neutral file can then be used by the CATS Analyzer to generate and solve a set of algebraic equations to determine the variation in the dependent variables. Dependent variables include the kinematic (closed-loop) variables, or the small adjustments that occur at assembly time, and the variation in other accumulative open-loop assembly dimensions, such as a gap, position, or orientation.


 PRO-E 2 D
Title | Overview | Modeling | Commands
Title | Overview | Analysis | Allocation | Interface
Verification: Overview

 AutoCAD 2 D
Title | Overview | Modeling | Commands
Analyzer: Title | Overview | Analysis | Allocation | Interface
Verification: Title | Overview

 Catia 3 D
Title | Overview | Modeling | Commands | Building a Tolerance Model

The ADCATS site: Home | ADCATS Info | Search | Site Map | Bulletin Board | Reports & Publications | Bibliography | Contact Us