Recommended practice extensions for GD&T in STEP-AP210 in … · 2010/8/16 · GD&T in the context...
Transcript of Recommended practice extensions for GD&T in STEP-AP210 in … · 2010/8/16 · GD&T in the context...
- 1 -
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
NISTIR 7716
- 2 -
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
August 16, 2010
- 3 -
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
- 4 -
Figure 1. Three mechanisms for associating geometry with a Shape_element
Shape_description_association
represented_characteristic
representation
Shape_element
Geometric_model
Shape_element
Geometric_item_specific_usage
definition
Geometric_modelused_model
Detailed_geometric_model_element
identitied_item
items [i]
Shape_element
Geometric_item_specific_usagedefinition
Detailed_geometric_model_element
identitied_item Chain_based_geometric_item_specific_usage
Geometric_modelnodes L[2:?]
chained_geometric_model_link
undirected_link L[1:?]
Geometric_placement_operation
Geometric_coordinate_space
Geometric_model_relationship
- 5 -
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).
Figure 2. Three mechanisms for associating geometry with a Shape_element - MIM
chain_based_item_identified_representation_usage
representationnodes L[2:?]
mapped_item
chained_representation_linkundirected_link L[1:?]
representation_context
representation_relationship
definition
identitied_item
geometric_item_specific_usage
shape_aspect
geometric_representation_item
item_identified_representation_usage
chain_based_geometric_item_specific_usage
definition
identitied_item
geometric_item_specific_usage
shape_aspect
shape_representation used_representation
geometric_representation_item
item_identified_representation_usage
items [i]
shape_aspect
shape_definition_representation
shape_representation
definition
used_representation
- 6 -
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
Figure 3. The top-level structure of a package model.
Package
Package_bodycontaining_shape
mounting_technology_type(OPT) mounting_technology
Length_data_element(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
(INV) body [0:1]
Physical_unit_sh
ape_model
application_environmentshape_environment
shape_extentshape_extent
shape_approximation_levelshape_approximation_level
……
.
Package_terminal
Part_mounting_feature
(INV) package_accesses [0:?]
Physical_unit_
shape_model
containing_shape
Physical_unit_kee
pout_shape_model
……
.
Seating_planecontaining_shape
……
.
Footprint_definition(OPT) reference_package
Part_version
Part
defined_version
of_product containing_shape
Part_usage_view
shape_characterized_definition
Part_mounting_featurecontaining_shape
Part_feature
- 7 -
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
Figure 4. Defining a shape_aspect based on a surface of a terminal in a package model.
package_terminal
package of_shape
package_terminal_t
emplate_definition
product_definition
_shape
definition
shape_definition_representation
definition
used_representation
usage_concept_usage_
relationship
definition
used_representation
mapped_representation
representation_map
Axis2_placement
_3dmapping_source
mapping_target
packaged_part
packaged_part_terminal
relating_product_definition
related_product_definition
property_definition
_relationship
{.name = ‘definition’}
property_definition
definition
property_definition
definition
product_definition_relationship
related_product_definition
relating_product_definition
.name = ‘used package’{.description = ‘join terminal’}
shape_aspect_relationship
relating_shape_aspect
related_shape_aspect
{.name = ‘terminal of package’}
of_shape
shape_definition
_representation
definition
shape_representation
used_representation
description_attribute
described_item
{.attribute_value = 'part feature template shape model’}
axis2_placement_3d
mapping_origin
{.name = ‘3d bound volume shape’}
shape_aspect
definition
nodes [2]
identified_item
nodes [1]
advanced_brep_shape_
representation
manifold_solid_brep
items [1:?]
closed_shell
outer
advanced_face
cfs_faces [1:?]
chain_based_geometric_item
_specific_usage
undirected_link [1]
{.name = ‘3d bound volume shape’}
- 8 -
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
- 9 -
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-level template elements, including Padstack_definition.
Fo
otp
rint_
de
finitio
n
asse
mb
ly
tem
pla
te
Te
mp
late
_lo
ca
tion_
in
_stru
ctu
red
_te
mp
late
_
tran
sfo
rm
refe
ren
ce
_lo
ca
tion
Axis
2_p
lace
me
nt_
2d
tran
sfo
rm
Fo
otp
rint_
de
finitio
n_
s
ha
pe_
mo
de
l
asse
mb
ly_
sh
ap
e
tem
pla
te_
sh
ap
e
sh
ap
e_
ch
ara
cte
rize
d_
de
finitio
n [1
:1]
Pa
rt_fe
atu
re
Pa
rt_fe
atu
re_
ba
se
d_
tem
pla
te_lo
c
atio
n
refe
ren
ce
_fe
atu
re
Pa
rt_m
ou
ntin
g_
fea
ture
Pa
cka
ge
(OP
T) re
fere
nce
_p
acka
ge
Pa
dsta
ck_
de
finitio
n
Te
mp
late
_lo
ca
tion
_in
_stru
ctu
red
_te
m
pla
te
asse
mb
ly
Ge
om
etric
_te
mp
late
tem
pla
te
Te
mp
late
_lo
ca
tion
_in
_stru
ctu
red
_te
mp
late
_
tran
sfo
rm
refe
ren
ce
_lo
ca
tion
Axis
2_
pla
ce
me
nt_
2d
tran
sfo
rm
La
nd
_p
hysic
al_
tem
pla
te
Stra
tum
_fe
atu
re_
te
mp
late
Ma
teria
l_re
mo
va
l_f
ea
ture
_te
mp
late
Stru
ctu
red_
tem
pla
te_
pla
na
r_sh
ap
e_
mo
de
l
Pa
rt_te
mp
late
_p
lan
ar
_sh
ap
e_
mo
de
l
asse
mb
ly_
sh
ap
e
tem
pla
te_
sh
ap
e
sh
ap
e_
ch
ara
cte
rize
d_
de
finitio
n [1
:1]
sh
ap
e_
ch
ara
cte
rize
d_
de
finitio
n [1
:1]
(INV
) tran
sfo
rm [0
:?]
Inte
r_stra
tum
_fe
atu
re_te
mp
late
Pa
rt_m
atin
g_
fea
ture
Pa
cka
ge_
term
ina
l
- 10 -
footprint with those of the package. The
Figure 6. Alternate means of associating a shape_aspect with a csg_solid_2d in a geometric_template.
inter_stratum_feature
_template
single_boundary
_csg_2d_shape_
representation
shape_defintion_
representation
definition
used_representation
{.name = 'ppsm’}
of_shape
shape_definition_representation
definition
used_representation
shape_aspect
feature_of_size
inter_stratum_feature
_template
single_boundary
_csg_2d_shape_
representation
shape_defintion_
representation
definition
used_representation
{.name = 'ppsm’}
#25659
items [1:?]
csg_primitive_
solid_2d
identified_item
of_shape
geometric_item_specific_usage
definition
used_representation
#25657
circular_area
tree_root_expression
shape_aspect
feature_of_size
- 11 -
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
Figure 7. Associating a shape_aspect with an individual placement of a csg_solid_2d within a padstack_definition
padstack_definition
shape_represent
ation
shape_defintion_
representation
definition
used_representation
representation_map
mapped_representation
axis2_placement_2d
mapping_origin
[.name = 'origin’]
{.name = 'ppsm’}
assembly_compon
ent_usage
relating_product_definition
inter_stratum_feature
_template
related_product_definition
mapped_item
product_definition_
shape
definition
definition
shape_represent
ation
used_representation
items [1:?]
shape_definition_
representation
{.name = 'tlistt’}
axis2_placement_2d
mapping_target
single_boundary
_csg_2d_shape_
representation
shape_defintion_
representation
definition
used_representation
representation_map
mapped_representation
axis2_placement_2d
mapping_origin
[.name = 'origin’]
mapping_source
{.name = 'ppsm’}
items [i]
{.name = ‘tlist’}
#25659
items [1:?]
csg_primitive_
solid_2d
identified_item
of_shape
chain_based_geometric_item
_specific_usage
definition nodes [1] nodes [2]undirected_link [1]
#25657
#25669
#170535
#25653
circular_area
tree_root_expression
shape_aspect
feature_of_size
- 12 -
(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.
Figure 8. Associating a shape_aspect with an individual placement of a csg_solid_2d within a footprint_definition
footprint_definition
relating_product_definition
padstack_definition
related_product_definition
assembly_comp
onent_usage
package_terminal
{.name = ‘tlist’}
relating_product_definition related_product_definition property_definiti
on_relationship
{.name = ‘reference feature’}
property_definition
definition
property_definition
definition
mapped_item
product_definition_
shape
definition
definition
shape_represent
ation
used_representation
items [1:?]
shape_definition_r
epresentation
{.name = 'tlistt’}
axis2_placement_2d
mapping_target
shape_represent
ation
Shape_defintion
_representation
definition
used_representation
representation_map
mapped_representation
axis2_placement_2d
mapping_origin
[.name = 'origin’]
mapping_source
{.name = 'ppsm’}
shape_represent
ation
description_attribute
{.attribute_value =
'footprint_definition_shape_model’}
described_item
Shape_defintion
_representation
definition
used_representation
items [i]
assembly_compon
ent_usage
relating_product_definition
inter_stratum_feature
_template
related_product_definition
mapped_item
product_definition_
shape
definition
definition
shape_represent
ation
used_representation
items [1:?]
shape_definition_
representation
{.name = 'tlistt’}
axis2_placement_2d
mapping_target
single_boundary
_csg_2d_shape_
representation
shape_defintion_
representation
definition
used_representation
representation_map
mapped_representation
axis2_placement_2d
mapping_origin
[.name = 'origin’]
mapping_source
{.name = 'ppsm’}
items [i]
{.name = ‘tlist’}
#25659
items [1:?]
csg_primitive_
solid_2d
identified_item
nodes [1]
of_shape
chain_based_geometric_item
_specific_usage
undirected_link [1]definition
nodes [2] nodes [3]undirected_link [2]
#25657
#25669
#170535
#25653
#26161
#170770
#25644
circular_area
tree_root_expression
shape_aspect
feature_of_size
- 13 -
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.
Shape_element
Centre_of_symmetry
Derived_non_feature_
shape_element
Centre_plane
Non_feature_shape
_element
Derived_shape_element
Datum_shape_element
Datum
Composite_shape
_element
Composite_group_
shape_element
Composite_unit_
shape_element
Shape_element_composing
_relationship
composing_relationships INV [2:?]
Shape_element
derived_from [1:?]
Shape_element_deriving
_relationship
deriving_relationships INV [1:?]
Shape_element
related
Shape_element
related
relating relating
Figure 9. Several relevant subtypes of the Shape_element AO for GD&T
- 14 -
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
Figure 10. The 2D geometric elements of an ECAD footprint are typically represented with a csg_2d_shape_representation.
csg_2d_shape_representation
csg_2d_shape_select
items S[1:?]
mapped_item
axis2_placement_2d
csg_solid_2d
csg_primitive_solid_2d
primitive_2dtree_root_expression
tree_root_expression
boolean_result_2d
single_area_csg_2d_shape_representation
planar_path_shape_representation_with_parameters
shape_representation
- 15 -
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.
Figure 11. Common 2D geometric elements used in an ECAD footprint representation.
rectangular_area
axis2_placement_2d
positive_length_measure
positive_length_measure
position
x
y
circular_area
cartesian_point
positive_length_measure
centre
radius
area_with_outer_
boundary
primitive_2d
composite_curvebase_curve
path_area_with_parameters
polygonal_area
primitive_2d_with_inner_boundary
cartesian_pointbounds L[3:?]
curvemapping_target
- 16 -
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
Figure 12. The top-level subtypes and key entities of the Geometric_dimension AO.
Geometric_dimension
element_with_dimension_selectis_applied_to
Shape_element
dimension_value_select
dimension_value
Numerical_item_with_unit
Dimension_value_with_limitation
Tolerance_range
Value_limit
Size_dimension
Angular_size_dimension Curved_size_dimension Diameter_size_dimension
Radial_size_dimension
Thickness_size_dimension
Externally_defined_size_di
mensionHeight_size_dimension
Length_size_dimension
Dimensional_size_based_
on_opposing_boundaries
Width_size_dimension
Location_dimension
Angular_location_dimension Curved_distance_dimension Linear_distance_dimension
placed_element_select
Shape_element
placed_element_select
Shape_element
origin
target
BOOLEANdirected (OPT)
- 17 -
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.
Tolerance_condition
Geometric_tolerance
Angularity_tolerance Circular_runout_tolerance Coaxiality_tolerance Concentricity_tolerance
Parallelism_tolerance
Perpendicularity_tolerance
Symmetry_tolerance Total_runout_tolerance
Value_with_unittolerance_value
Shape_element
applied_to
(OPT) modification
Cylindricity_tolerance Flatness_tolerance
Position_tolerance Roundness_tolerance
Line_profile_tolerance
Straightness_tolerance
Surface_profile_tolerance
Figure 14. The top-level subtypes of the Geometric_tolerance AO.
Figure 13. Selected subtypes of the Datum application object
Datum
Single_datum
Datum_defined_by_
derived_shape
Derived_geometry
Datum_plane
Datum_defined_by
_feature
Datum_defined_by
_targets
Shape_element
Datum_feature
defined_by defined_by [1:?]
Datum_target
Shape_elementderived_from [1:?]
constructive_element_selectgeometry
Common_datum
- 18 -
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.
- 19 -
Figure Error!. Representative connector with dimension and tolerance variables, and corresponding PCB layout.
[Source: Bryan Fischer, Advanced Dimensional Management LLC]
U n its : m m
C o n n e c to r - w ith D im e n s io n a n d T o le ra 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 .
A
0 ,1
Ø P n o m ,c ± S T c
C
1 1 ,2
3 6 x Ø P n o m ,p ± S T p
1,5
0,5
2
4
1,5
0,5
1 ,6
Ø Pn o m ,b
± S T b
B
1 ,1
1 4
1 ,4
13 2 x
4,5
0 ,2 5 A B C
A BØ T 2 c
A B CØ T 2p
AØ T 2 b
P C B - C o n n e c to r M o u n tin g D e ta il
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 .
U n its : m m
D
P C B S U R F A C E
W IT H IN R E S T R IC T E D A R E A Ø Hn o m ,f
± S T f
F
1 1 ,2
3 6 x Ø Hn o m ,h
± S T h
1,5
0,5
2
4
1,5
0,5
1 ,6
Ø H n o m ,e ± S T e
E
1 ,1
1 4
1 ,4
13 2 x
DØ T1 e D EØ T1 f
D E FØ T1 h
- 20 -
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.
- 21 -
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)
- 22 -
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