You are on page 1of 22

NISTIR 7716

Recommended practice extensions for


GD&T in STEP-AP210 in the context of
electronic connectors
Jamie Stori
SFM Technology, Inc.
Urbana, Illinois

Kevin Brady
National Institute of Standards and Technology
Information Technology Laboratory

-1-
NISTIR 7716

Recommended practice extensions for


GD&T in STEP-AP210 in the context of
electronic connectors
Jamie Stori
SFM Technology, Inc.
Urbana, Illinois

Kevin Brady
National Institute of Standards and Technology
Information Technology Laboratory

U.S. Department of Commerce


John Bryson, Secretary

National Institute of Standards and Technology


Patrick D. Gallagher,
Under Secretary of Commerce for Standards and Technology

-2-
Recommended practice extensions for GD&T in STEP-AP210
in the context of electronic connectors

Introduction
The purpose of this document is to extend the recommended practices for the
representation of GD&T in STEP AP 210 (ISO-10303:210) in the context of packaged
electronic connectors. Geometric dimensioning and tolerancing (GD&T) is critical to the
design, manufacture, and assembly of electronic products. STEP AP 210 is unique in its
ability to represent detailed usage views of electronic components spanning both the
mechanical (MCAD) and electrical (ECAD) design domains. Within the STEP standards
(ISO-10303), prior attention has been focused on the representation and presentation of
GD&T in the context of three-dimensional (3D) boundary-representation (B-REP)
models. In this context, GD&T annotations are typically associated with faces in the 3D
model.
Vendors of electro-mechanical components such as connectors typically provide detailed
specifications of the mechanical properties of their components, and often will include a
recommended PCB layout for the component. Both the mechanical specification and the
PCB layout recommendation will often include GD&T annotations. This is particularly
relevant in the context of mounting and mating features, such as mounting and alignment
holes and features such as bosses, slots, and studs. Typically, the GD&T annotations are
provided as a technical drawing, most often in .pdf format.
An AP210 model of an electronic component such as a connector will ideally contain
both a detailed three-dimensional geometric representation, suitable for use in mechanical
design, as well as a detailed two-dimensional footprint definition that supports the
application of the component in PCB layout and PCA assembly. Existing
implementations have validated the ability of AP210 to represent the detailed two and
three-dimensional geometric models and product structure of a connector. A prior
recommended practice document1, explored the population of GD&T annotations on a
3D geometric representation of a packaged electronic component represented in AP210.
This document extends that prior work in the context of connectors by proposing a
recommended practice for the representation of critical GD&T annotations within the
footprint definition of a component, and updating the recommended representation of
certain associations and relationships. The concepts discussed will support the GD&T
representation requirements of a typical connector with a combination of both mounting
features and through-hole terminals. Where relevant, elements of the prior recommended
practice have been included in the current document. Many of the supporting details have
not been repeated, however, and the prior document should be referenced as applicable.

1
Stori, J., Brady, K., and Thurman, T, 2009 “Extensions to the recommended practices for GD&T in
STEP-AP210 in the context of packaged electronic components,” NISTIR 7634,
http://www.nist.gov/customcf/get_pdf.cfm?pub_id=903904

-3-
Shape_element

represented_characteristic

Shape_description_association
representation

Geometric_model

Shape_element

definition
used_model
Geometric_model
Geometric_item_specific_usage
items [i]

identitied_item

Detailed_geometric_model_element

Shape_element

Geometric_item_specific_usage
definition

Chain_based_geometric_item_specific_usage
identitied_item

Detailed_geometric_model_element nodes L[2:?]


Geometric_model

undirected_link L[1:?]

chained_geometric_model_link

Geometric_placement_operation

Geometric_coordinate_space

Geometric_model_relationship

Figure 1. Three mechanisms for associating geometry with a Shape_element

-4-
shape_aspect

definition shape_definition_representation

used_representation

shape_representation

shape_aspect
item_identified_representation_usage
definition

shape_representation used_representation
geometric_item_specific_usage
items [i]
identitied_item

geometric_representation_item

item_identified_representation_usage

geometric_item_specific_usage

chain_based_item_identified_representation_usage
shape_aspect definition

chain_based_geometric_item_specific_usage
identitied_item

geometric_representation_item nodes L[2:?]


representation

undirected_link L[1:?]
chained_representation_link

mapped_item

representation_context

representation_relationship

Figure 2. Three mechanisms for associating geometry with a Shape_element - MIM

Notation
ARM AOs will be denoted with a leading uppercase letter in Courier font (i.e. Datum)
while a MIM entity will be displayed in all lowercase notation (i.e. datum).

-5-
Part_feature

containing_shape
Package_body
(INV) body [0:1]
Part
(OPT) reference_package Footprint_definition

(INV) package_accesses [0:?]


of_product Package_terminal
containing_shape

containing_shape
Seating_plane
Part_version

containing_shape Part_mounting_feature

defined_version containing_shape Part_mounting_feature

…….
Part_usage_view
Package (OPT) mounting_technology mounting_technology_type

(OPT) maximum_seating_plane_installation_offset Length_data_element

(OPT) nominal_mounting_lead_pitch Length_data_element

(OPT) nominal_mounting_lead_span Length_data_element

(OPT) maximum_body_height_above_seating_plane Length_data_element


…….

shape_characterized_definition
shape_environment application_environment
…….

Physical_unit_kee Physical_unit_ Physical_unit_sh


shape_extent shape_extent
pout_shape_model shape_model ape_model

shape_approximation_level shape_approximation_level

Figure 3. The top-level structure of a package model.

Shape_element
Shape_element is the ARM concept that enables a portion of a shape to be identified or
called out for some particular purpose in model representation. Subtypes of
Shape_element are used heavily in the package model representation, and are also the
critical link between GD&T annotations, and the geometric model. Specific subtypes and
their use will be discussed in further detail as relevant sections. There are several
mechanisms for associated geometric the elements that compose a Shape_element, as
illustrated in Figure 1, above. If there is an explicit Geometric_model that represents
the Shape_element, a Shape_description_association may be employed. If the
Shape_element is defined by a subset of a Geometric_model, either the
Geometric_item_specific_usage or its subtype
Chain_based_geometric_item_specific_usage may be used. Each of these
creates a defining association between the Shape_element and a single
Detailed_geometric_model_element. As will be discussed below, in the case of
three-dimensional geometric models, the model element will often be a face of a
boundary representation. In the case of a two-dimensional footprint definition, the model
element may often be a templated shape. Often, multiple instances of the

-6-
packaged_part

related_product_definition
of_shape packaged_part_terminal
product_definition_relationship
{.description = ‘join terminal’}
.name = ‘used package’ relating_shape_aspect
relating_product_definition
shape_aspect_relationship

{.name = ‘terminal of package’}


package of_shape
related_shape_aspect
definition
package_terminal

shape_definition definition
_representation definition

property_definition

used_representation related_product_definition

property_definition
shape_representation _relationship
{.name = ‘definition’}
{.name = ‘3d bound volume shape’}
relating_product_definition

property_definition

used_representation
nodes [1] definition

usage_concept_usage_
relationship package_terminal_t
shape_aspect emplate_definition
undirected_link [1]
mapping_target
definition
Axis2_placement
definition _3d
mapping_source product_definition
_shape
chain_based_geometric_item
_specific_usage
representation_map definition

nodes [2] mapping_origin shape_definition_representation

axis2_placement_3d used_representation

mapped_representation
identified_item
advanced_brep_shape_
representation
described_item
{.name = ‘3d bound volume shape’}
description_attribute
items [1:?] {.attribute_value = 'part feature template shape model’}

manifold_solid_brep

outer

closed_shell

cfs_faces [1:?]

advanced_face

Figure 4. Defining a shape_aspect based on a surface of a terminal in a package model.

Geometric_item_specific_usage will be employed to enumerate the individual


model elements that collectively define the Shape_element.
The “chain-based” subtype of Geometric_item_specific_usage recently incorporated into
the standard to address a long-standing need to call out a specific instanced item within a
representation. For example, in a typical mechanical assembly, there are often multiple

-7-
instances of the same part. The part may be represented with a single geometric model
(i.e. a B-Rep model). The “chain-based” referencing mechanism, enables the
identification of a specific face on the part model within a specific instance of the part in
the assembly. Specific examples of this identification mechanism will be provided below
in the context of both the package and the footprint. Figure 2 provides the MIM mapping
of the Shape_element concepts of Figure 1.

Package Model
The key structure of a typical AP210 package model is summarized in Figure 3. Of
particular relevance in the context of GD&T are the common subtypes of
Part_feature critical to a package model representation – body, terminal, and
mounting / mating features. Also of note is the Seating_plane, a
Non_feature_shape_element. All of the preceding are types of Shape_element,
and their geometric representation can vary significantly. For example, a
Package_terminal may be a collection of faces called out from a B-Rep model of the
entire package, or the package terminal may have its own defining geometric model
associated with the template definition of the package terminal. Figure 4 illustrates such a
case, in which an advanced_brep_shape_representation defines the shape of the
package_terminal_template_definition. A specific package_terminal (a
single terminal) is placed with respect to the shape model of the package using a
usage_concept_usage_relationship. A shape_aspect is defined (in red) which
is associated with a single face of this specific package terminal, despite the fact that the
shape_representation of the terminal template is shared among many different
terminals. The chain_based_geometric_item_specific_usage enables this
identification to be made by qualifying the face in the template definition through the
specific terminal placement of the usage_concept_usage_relationship. If it were
desired to call out the entire geometric model of the template definition as a new
shape_aspect, a direct relationship could be established with a
shape_definition_representation. Alternatively, if it was necessary to call out a
specific face of the terminal template definition as a shape_aspect that would apply to
all uses of the template in the package (i.e. any and all package terminals that used the
template), a geometric_item_specific_usage could be used.

Footprint_definition
A “footprint” in the context of PCB design and layout is the collections of features
needed to support assembly and connectivity for a particular component. Footprint
features include the copper pads or lands on the mounting surface of for surface mount
terminals, mounting tabs, ground connections, and heat sinks, specification of compatible
soldermask and solderpaste regions, and drill and via locations and sizes for through-hole
features such as terminals, alignment studs, mounting bolts, etc.
In AP210, the definition of a footprint is represented with the ARM application object
Footprint_definition. A footprint definition is a template that can be instanced
when an individual component is placed into a design. Figure 5 outlines the most
common ARM AOs and relationships composing the typical structure of a footprint
definition. While a footprint definition can exist completely independently of a package

-8-
model, AP210 provides important mechanisms for explicitly linking the features of the
Figure 5. A Footprint_definition is a structured template that is composed of lower-
Package
Part_feature
(OPT) reference_package Package_terminal

level template elements, including Padstack_definition.


Part_mounting_feature
reference_feature
Footprint_definition Part_mating_feature
assembly
Part_feature_ba
sed_template_loc
ation template
reference_location
Padstack_definition

-9-
shape_characterized_definition [1:1] assembly Template_location
_in_structured_tem
plate
Template_location_in shape_characterized_definition [1:1]
_structured_template_
transform template
assembly_shape template_shape
Land_physical_tem
reference_location Geometric_template plate
Footprint_definition_s transform
Structured_template_ (INV) transform [0:?]
hape_model planar_shape_model
Stratum_feature_te
Axis2_placement_2d assembly_shape mplate
shape_characterized_definition [1:1]
Template_location_in
_structured_template_ Inter_stratum_featu
transform re_template
template_shape
transform Material_removal_f
Part_template_planar eature_template
_shape_model
Axis2_placement_2d
inter_stratum_feature
_template

shape_aspect
of_shape
definition

shape_defintion_
feature_of_size definition representation

shape_definition_representation used_representation

used_representation single_boundary
_csg_2d_shape_
representation

{.name = 'ppsm’}

inter_stratum_feature
_template

definition
of_shape
shape_aspect
shape_defintion_
representation
feature_of_size used_representation
definition
#25657
used_representation single_boundary
_csg_2d_shape_
representation
geometric_item_specific_usage
{.name = 'ppsm’}

identified_item

#25659
csg_primitive_
solid_2d
items [1:?]

tree_root_expression

circular_area

Figure 6. Alternate means of associating a shape_aspect with a csg_solid_2d in a


geometric_template.

footprint with those of the package. The

- 10 -
relating_product_definition
padstack_definition

assembly_compon
definition ent_usage
related_product_definition
shape_defintion_
representation {.name = ‘tlist’}
used_representation definition inter_stratum_feature
_template
product_definition_
shape
#25653
definition definition
shape_represent
shape_definition_
ation
representation shape_defintion_
{.name = 'ppsm’} representation
used_representation
#170535 used_representation
items [i] shape_represent #25657
mapped_representation ation single_boundary
representation_map _csg_2d_shape_
items [1:?]
representation
#25669
mapping_origin
mapped_item
{.name = 'ppsm’}
{.name = 'tlistt’}
shape_aspect axis2_placement_2d
of_shape mapping_target
[.name = 'origin’] mapping_source

axis2_placement_2d mapped_representation
feature_of_size representation_map

mapping_origin
axis2_placement_2d
items [1:?]
[.name = 'origin’]
definition #25659
nodes [1] undirected_link [1] nodes [2]
csg_primitive_
chain_based_geometric_item solid_2d
_specific_usage
tree_root_expression
identified_item

circular_area

Figure 7. Associating a shape_aspect with an individual placement of a csg_solid_2d


within a padstack_definition

Part_feature_based_template_location enables an explicit relationship to be


established between a placement of a template (for example, a padstack) and the
corresponding Part_feature of the package (for example, a terminal). A
Padstack_definition is typically used to represent the collection of PCB elements
needed to support the application of a particular part feature. For example, a surface
mount terminal may be supported by a padstack containing a surface mount land, a
soldermask cutout, and possible a solder paste mask. A through hole terminal may be
supported by a padstack consisting of a plated passage (a through hole plated for
electrical connectivity), and round pads and soldermask cutouts on both the top and
bottom pcb surfaces. The elements of a padstack definition can be decomposed into
single-stratum features (i.e. lands and soldermask cutouts) and inter-stratum features
(holes, vias, etc.). Consider a common critical feature in the application of a connector –
a mounting hole or plated through hole to accommodate a connector terminal. A drilled
hole would be represented in a footprint as an inter_stratum_feature_template
or a specialized subtype such as a component_termination_passage_template. It
will commonly be desirable to annotate such a feature with either a dimensional tolerance

- 11 -
related_product_definition property_definiti relating_product_definition
on_relationship
{.name = ‘reference feature’}
property_definition

definition
property_definition
footprint_definition
definition package_terminal

relating_product_definition

assembly_comp
onent_usage
related_product_definition
definition {.name = ‘tlist’}
definition relating_product_definition
Shape_defintion padstack_definition
_representation product_definition_
shape assembly_compon
used_representation definition definition ent_usage
related_product_definition
shape_definition_r Shape_defintion
epresentation _representation {.name = ‘tlist’}
#25644 used_representation definition inter_stratum_feature
used_representation _template
shape_represent product_definition_
#170770
ation shape
shape_represent #25653
ation definition definition
described_item
items [i] shape_represent
items [1:?] shape_definition_
ation
#26161 representation shape_defintion_
description_attribute {.name = 'ppsm’} representation
mapped_item used_representation
{.name = 'tlistt’} #170535 used_representation
{.attribute_value =
'footprint_definition_shape_model’} mapping_target mapping_source items [i] shape_represent #25657
mapped_representation ation single_boundary
axis2_placement_2d
representation_map _csg_2d_shape_
items [1:?]
representation
#25669
mapping_origin
mapped_item
{.name = 'ppsm’}
{.name = 'tlistt’}
axis2_placement_2d
mapping_target mapping_source
of_shape [.name = 'origin’]
axis2_placement_2d mapped_representation
shape_aspect
representation_map

feature_of_size mapping_origin
axis2_placement_2d
items [1:?]
[.name = 'origin’]
definition
#25659
nodes [1] undirected_link [1] nodes [2] undirected_link [2] nodes [3]
csg_primitive_
chain_based_geometric_item solid_2d
_specific_usage
tree_root_expression
identified_item

circular_area

Figure 8. Associating a shape_aspect with an individual placement of a csg_solid_2d


within a footprint_definition

(i.e. diameter) or a positional tolerance. A shape_aspect must be defined to support the


GD&T annotation. Figure 6, Figure 7and Figure 8 illustrates various scenarios for the
identification of a shape_aspect associated with a drilled hole within a
footprint_definition.
The two scenarios illustrated in Figure 6 are functionally equivalent in this case, as the
shape_representation of the template contains only the geometric specification of
the hole’s cross section (i.e. a circle). Either representation implies that a dimension or
tolerance is associated with all occurrences of the template. This is a common and
desirable scenario – often a series of equivalent holes are to be created to support a series
of equivalent terminals. A common dimensional and/or locational tolerance would apply
to each instance of the hole individually.
Figure 7 illustrates a significantly less common scenario. In this instance, the
shape_aspect has been qualified by a specific hole placement within a
padstack_definition. The associated GD&T annotation would apply to all
occurrences of the padstack.

- 12 -
Shape_element

Non_feature_shape
Datum Derived_shape_element
_element
derived_from [1:?]

Shape_element
Derived_non_feature_
Datum_shape_element
shape_element

Composite_shape
_element Centre_of_symmetry
relating relating
composing_relationships INV [2:?] deriving_relationships INV [1:?]

Composite_group_ Composite_unit_ Centre_plane


shape_element shape_element

Shape_element_deriving
Shape_element_composing
_relationship
_relationship
related
related Shape_element

Shape_element

Figure 9. Several relevant subtypes of the Shape_element AO for GD&T


If it is necessary to call out a specific instance of the hole within a
footprint_definition as a feature for GD&T association, a
chain_based_geometric_item_specific_usage could be employed to qualify the
individual inter-stratum feature within a specific placement of the padstack definition.
The provides the ability to attach annotation that are specific to an individual hole, and
would often be employed in the definition of a datum, for example (the datum feature is
one particular hole).

Shape_elements for GD&T


Features of the model relevant for GD&T are represented by the Shape_element AO.
Figure 9 shows several of the important subtypes of Shape_element. When it is desired
to treat multiple disjoint regions as a single feature, a Composite_shape_element
may be employed. A Composite_shape_element has two important subtypes – the
Composite_group_shape_element and the Composite_unit_shape_element. A
Composite_unit_shape_element is used to aggregate multiple Shape_elements
that are to be treated as a unit. For example, multiple surfaces of a single feature-of-size.
A Composite_group_shape_element is used when it is desired to apply a property
to each of the constituent elements individually.
It is often common to require a reference to derived geometry, such as a center plane of a
feature. Such a feature would be modeled through the appropriate subtype of
Derived_non_feature_shape_element (a Shape_element that is not on the
physical boundary of the part). Several examples for the representation of
shape_elements in the context of a package model were previously documented in
NISTIR 7634.

- 13 -
shape_representation

csg_2d_shape_representation
items S[1:?]

csg_2d_shape_select

mapped_item
single_area_csg_2d_shape_representation
axis2_placement_2d
tree_root_expression
csg_solid_2d
boolean_result_2d

planar_path_shape_representation_with_parameters
csg_primitive_solid_2d

tree_root_expression
primitive_2d

Figure 10. The 2D geometric elements of an ECAD footprint are typically represented
with a csg_2d_shape_representation.

Feature-of-size
The representation of a “feature of size” is critical to the successful application and
interpretation of many common dimensions and tolerances. Certain common GD&T
annotations, such as a positional tolerance must be applied to a feature of size. A feature
of size must have opposed points and contain a reproducible median point, axis, or plane.
When a positional or perpendicularity tolerance is applied to a feature of size, it is
controlling the feature’s center point, axis, or plane. The most common feature of size is
referred to as a “Regular Feature of Size,” defined in the 2009 edition of the ASME
Y14.5 standard as follows:
“one cylindrical or spherical surface, a circular element, and a set of two
opposed parallel elements or opposed parallel surfaces, each of which is
associated with a directly toleranced dimension.”
In the context of a three-dimensional B-Rep model of a solid, a feature of size would
typically reference either a cylindrical face, or two parallel opposed planar faces. In a 3D
B-Rep, there is typically no functional or feature-based decomposition of the geometric
model available, and individual faces of a complex model would be called out through a
geometric_item_specific_usage or its chain-based subtype.
In the context of two-dimensional ECAD geometry, developing a clear representation of
a feature-of-size is critical. Within a footprint, there is a parallel structure between the
footprint design elements and their geometric representation. The shape representations
in a footprint definition are most commonly either a csg_2d_shape_representation
or a subtype. The majority of individual geometric elements will be represented as a
subtype of primitive_2d. Figure 11 details the common subtypes of primitive_2d
and their key attributes.
The representation of the individual geometric elements are particularly relevant in the
context of the feature of size. A circular feature of size can be unambiguously defined by

- 14 -
primitive_2d

rectangular_area

position axis2_placement_2d

x positive_length_measure

y positive_length_measure

circular_area

centre cartesian_point

radius positive_length_measure

area_with_outer_
boundary

base_curve composite_curve

path_area_with_parameters

mapping_target curve

polygonal_area

bounds L[3:?]
cartesian_point

primitive_2d_with_inner_boundary

Figure 11. Common 2D geometric elements used in an ECAD footprint representation.

associating a shape_aspect with a shape_representation containing the


circular_area entity. However, the primitive_2d representations do not support
the unambiguous definition of a feature of size corresponding to two opposed parallel
surfaces. Nevertheless, positional tolerances and length / width dimensional tolerances on
the variety of common pad geometries shown in Figure 11 are very common.
To support this need, the addition of a subtype of Shape_element is proposed for
consideration, that would enable the optional specification of an orientation for the
feature of size.

- 15 -
ENTITY Feature_of_size
SUBTYPE OF (Shape_element);
direction_ratios : Optional LIST[2:3] OF length_measure;
END_ENTITY;

In the above, the optional direction_ratios enable specification of the orientation. If an


orientation is provided, it is assumed that two opposed parallel surfaces are contained
within the associated geometry normal to the specified direction.

Representation of geometric dimensions, tolerances, and datums.


The top-level ARM application objects and attributes used in the representation of a
geometric dimension and tolerance are outlined in Figure 12 and Figure 14. For
additional detail in the context of packaged components regarding the mapping of
Geometric_dimension
dimension_value

dimension_value_select

Dimension_value_with_limitation

Numerical_item_with_unit

Tolerance_range

Value_limit

Size_dimension is_applied_to element_with_dimension_select

Shape_element

Dimensional_size_based_
Angular_size_dimension Curved_size_dimension Diameter_size_dimension
on_opposing_boundaries

Externally_defined_size_di
Height_size_dimension Length_size_dimension Radial_size_dimension
mension

Thickness_size_dimension Width_size_dimension

Location_dimension
directed (OPT) BOOLEAN

origin placed_element_select
Shape_element
target
placed_element_select
Shape_element

Angular_location_dimension Curved_distance_dimension Linear_distance_dimension

Figure 12. The top-level subtypes and key entities of the Geometric_dimension AO.

- 16 -
Geometric_tolerance
applied_to

Shape_element

tolerance_value Value_with_unit

(OPT) modification
Tolerance_condition

Angularity_tolerance Circular_runout_tolerance Coaxiality_tolerance Concentricity_tolerance

Cylindricity_tolerance Flatness_tolerance Line_profile_tolerance Parallelism_tolerance

Perpendicularity_tolerance Position_tolerance Roundness_tolerance Straightness_tolerance

Surface_profile_tolerance Symmetry_tolerance Total_runout_tolerance

Figure 14. The top-level subtypes of the Geometric_tolerance AO.

common representations, refer to NISTIR 7634.


Per ASME Y14.5 (2009), a datum is a theoretically exact point, line or plane derived
from geometric counterpart(s) on the physical model. The geometric counterpart is
known as a datum feature. The AP210 ARM supports a family of application objects
(AOs) that are subtypes of Datum. Several of the commonly used subtypes that are most
relevant for the domain of packaged electronic components are documented in Figure 13.
In many cases, a datum feature will correspond to either a surface feature of a part or a
“feature of size” of a part. When it is required that a specific region of a surface be used
to determine the datum, a datum target may be used. Many times, a feature of size is used
as a datum feature in defining a datum.

Datum

Derived_geometry

Common_datum Single_datum

Datum_defined_by Datum_defined_by Datum_defined_by_


Datum_plane
_targets _feature derived_shape

defined_by [1:?] defined_by


derived_from [1:?]
Shape_element Shape_element

geometry
Datum_target Datum_feature constructive_element_select

Figure 13. Selected subtypes of the Datum application object

- 17 -
Application to a common connector configuration
Figure illustrates a recommended GD&T based dimensioning and tolerancing scheme
for a common connector and the corresponding PCB mating features. A connector vendor
will often provide both tolerance specifications for the connector as well as the
corresponding PCB layout. In the absence of a recommended PCB layout, the dimensions
and tolerances for compatible mating features on the PCB can often be derived from the
provided connector specifications. The assumptions, variables, and relationships needed
for this example, based on simple tolerance stack-up analysis are provided in the
Appendix.
Whenever feasible, it is recommended that the seating plane be treated as a primary
datum plane. In this example, the connector locating pins serve as the secondary and
tertiary datum features in the feature control frame for the connector, and the
corresponding mating holes in the PCB are the secondary and tertiary datum features in
the feature control frame for the PCB.
The detailed population of the GD&T annotations will be dependent on the geometric
representation of the package and footprint. Assuming a single B-Rep model of the
connector is provided by the vendor, datum A (coincident with seating plane) could be
established with a Datum_defined_by_feature based on datum feature A – a
Shape_element associated with the appropriate face of the geometric model through a
Geometric_item_specific_usage. ( a datum related to a datum_feature through
a shape_aspect_relationship) Datum B and C could each be established through a
Datum_defined_by_derived_shape (in this case, a centre_of_symmetry)with
reference to the cylindrical face of the mounting pin. In the event that the two mounting
pins shared a common geometric model, it would be necessary to employ a
chain_based_geometric_item_specific_usage to (see Figure 4) discriminate
between the two occurrences of the face.
In terms of the footprint definition, the two mounting holes would likely share a common
padstack definition. A shape_aspect similar to that of Figure 8 would be employed to
establish the secondary and tertiary datum features. There is no explicit geometric
representation of the seating plane within the footprint definition. The primary datum
feature should be established through reference to the seating plane.
It is desirable that the tolerance on the diameter of the two mounting holes in the PCB be
symmetric. In this case, this tolerance could be associated directly with the
inter_stratum_feature_template for the mounting holes (see Figure 6). A single
padstack definition that incorporates this inter-stratum feature template could be
instanced twice in the footprint definition for the two mounting holes. The
perpedicularity and positional tolerance would rely on the same shape_aspect used to
define the secondary and tertiary datum features. Finally, the positional tolerance of the
36 terminal mating holes could be associated directly with the
inter_stratum_feature_template for the terminal mating holes.

- 18 -
N O T E S ( U N L E S S O T H E R W IS E S P E C IF IE D ) :
0 ,2 5 A B C
1. IN T E R P R E T D R A W IN G P E R IS O 1 1 0 1 :2 0 0 4 .

4 ,5

1 1 ,2
Ø P n o m ,b ± S T b Ø P n o m ,c ± S T c
Ø T 2b A 1 ,1 0 ,1 32x 1 Ø T 2c A B

A
B C
0 ,5

2
1 ,5

4
1 ,5

0 ,5
3 6 x Ø P n o m ,p ± S T p
1 ,4 1 ,6 U n its : m m
Ø T 2p A B C
14

C o n n e c to r - w ith D im e n s io n a n d T o le r a n c e V a r ia b le s

N O T E S ( U N L E S S O T H E R W IS E S P E C IF IE D ) :

1. IN T E R P R E T D R A W IN G P E R IS O 1 1 0 1 :2 0 0 4 .
1 1 ,2

PCB SURFACE
Ø H n o m ,e ± S T e W IT H IN R E S T R IC T E D A R E A Ø H n o m ,f ± S T f
1 ,1 D
Ø T1 e D Ø T1f D E
32x 1

E F
0 ,5

2
1 ,5

4
1 ,5

0 ,5

1 ,4 1 ,6 3 6 x Ø H n o m ,h ± S T h

Ø T1h D E F

14
U n its : m m

Figure Error!. Representative connector with dimension and tolerance variables, and
corresponding PCB layout.
[Source: Bryan Fischer, Advanced Dimensional Management LLC]

P C B - C o n n e c to r M o u n tin g D e ta il

- 19 -
Appendix – Assumptions, variables, and formulae related to the
connector example of Figure .
[Source: Bryan Fischer, Advanced Dimensional Management LLC]

Assumptions:

 The connector is located by locator pins in mating holes in the PCB.


 The connector locating pins are referenced as the secondary and tertiary datum
features in the positional tolerance feature control frame that controls the other
(numbered) connector pins.
 A local, functional datum reference frame is established at each location a
connector mates with the PCB.
 The holes in the PCB that mate with the connector’s locating pins are referenced
as the secondary and tertiary datum features in the positional tolerance feature
control frame that controls the holes that correspond to the numbered pins on the
connector.
 The secondary and tertiary datum features are the same size and have the same
form, size, orientation, and location tolerances applied as applicable.
 The secondary and tertiary datum features on the connector engage the
corresponding locating holes in the PCB at the same time and play an equal role
in locating the connector.
 Maximum assembly shift is possible between the locating pins on the connector
and the corresponding holes in the PCB.
 The assembly shift manifests itself at assembly as translational variation –
rotational assembly shift is not addressed in the calculations. In this example,
because the locating pins and holes are farther apart than the working pins and
holes, the effect of rotational assembly shift will be less than the effect of
translational assembly shift.
 The dimensioning and tolerancing schemes and calculation methods proposed
here apply to other applications.
 Equal-bilateral size tolerances applied to all holes and pins.
 The pins on the connector and the holes in the PCB are cylindrical features.

- 20 -
Variables:
PCB
He,f Hole (MMC, smallest) – Datum Features E and F on PCB
Hh Hole (MMC, smallest) – PCB Holes that interface with numbered
connector pins
Hnom,e,f Hole (nominal, stated size) – Datum Features E and F on PCB
Hnom,h Hole (nominal, stated size) – PCB Holes that interface with numbered
connector pins
Hlmc,e,f Hole (LMC, largest size) – Datum Features E and F on PCB
STe,f Size Tolerance for Datum Features E and F on PCB
STh Size Tolerance for PCB Holes that interface with numbered connector
pins
T1,e,f Perpendicularity or Positional Tolerance applied to Datum Features E
and F on PCB
T1,h Positional Tolerance applied to the PCB Holes that interface with
numbered connector pins
Connector
Pb,c Pin (MMC, largest) – Datum Features B and C on PCB
Pp Pin (MMC, largest) – Numbered connector pins
Pnom,b,c Pin (nominal, stated size) – Datum Features B and C on PCB
Pnom,p Pin (nominal, stated size) – Numbered connector pins
Plmc,b,c Pin (LMC, smallest size) – Datum Features B and C on PCB
STb,c Size Tolerance for Datum Features B and C on PCB
STp Size Tolerance for numbered connector pins
T2b,c Perpendicularity or Positional Tolerance applied to Datum Features B
and C on connector
T2,p Positional Tolerance applied to numbered connector pins
Assembly
AS Assembly Shift (Maximum Clearance between Hlmc,e,f and Plmc,b,c)

- 21 -
Formulas:
Calculate and Verify Fit, Size, Size Tolerance, or Geometric Tolerances for
Alignment Features: Corresponding Datum Features on Connector and PCB:
Use Fixed Fastener Formula
He,f = Pb,c + T1,e,f + T2,b,c
Calculate and Verify Positional Tolerance for Holes and Numbered Pins: Working
Features:
Use Modified Fixed Fastener Formula
Hh = Pp + T1,h + T2,p + AS
Calculate Hnom,e,f: Nominal Hole Size for the Datum Feature Holes on the PCB
Hnom,e,f = He,f + STe,f
Calculate Hlmc,e,f: Largest Size for Datum Feature Holes on the PCB
Hlmc,e,f = Hnom,e,f + STe,f
Calculate Pnom,b,c: Nominal Pin Size for the Datum Feature Pins on the Connector
Pnom,b,c = Pb,c - STb,c
Calculate Plmc,b,c: Smallest Datum Feature Pin Size for Connector
Plmc,b,c = Pnom,b,c - STb,c
Calculate AS: Assembly Shift: Worst-Case Variation between LMC Datum
Features on PCB and Connector
AS = Hlmc,e,f - Plmc,b,c
Calculate Hnom,h: Nominal Size for Working Holes in PCB (Correspond to
Numbered Pins on Connector)
Hnom,h = Hh + STh
Calculate Pnom,p: Nominal Size for Numbered Pins on Connector
Pnom,p = Pp - STp

- 22 -

You might also like