Cad Guidebook: A Basic Manual for Understanding and Improving Computer-Aided Design (50 page)

Read Cad Guidebook: A Basic Manual for Understanding and Improving Computer-Aided Design Online

Authors: Stephen J. Schoonmaker

Tags: #Science & Math, #Biological Sciences, #Biotechnology, #Professional & Technical, #Medical eBooks, #Special Topics, #Professional Science

Knowing the part’s coordinate system X, Y, Z position (translational loca-
tion) and rotation angle values (rotational location) can be sufficient for a simple
assembly model where there is one assembly model with its list of constituent
part models (such as is listed in Figure 10.2). In this case, each part is oriented
with respect to the global origin. However, assembly models are often more com-
plicated than this. They often have smaller assemblies brought together into
larger assemblies. The smaller assemblies are referred to as “subassemblies”

FIGURE
10.3

Example of positional data for a part in an assembly.

Assembly Modeling 247

since they are under the larger or higher level assemblies. Naturally, the assembly
structure must reflect this hierarchy-like behavior as well. Figure 10.4 shows an
assembly structure with different levels of assembly.

For these more realistic assembly models, it is best to have a “hierarchy” of
the positional information, as well. In this case, the top level assembly (BIKE
ASSEMBLY in Figure 10.4) tracks the location of the positions of its parts
(SEAT, FRONT FORK/HANDLEBARS, and FRAME). And the top level as-
sembly tracks the location of just an origin or coordinate system for its subassem-
blies (CRANK, REAR WHEEL, and FRONT WHEEL), but not directly the parts
within the subassemblies (such as PEDAL, HUB, TIRE, etc.).

Using this hierarchical approach makes sure that the model is properly bro-
ken down into pieces that can properly update or regenerate. The top level assem-
bly relies on each subassembly to track the data for its own part models. Then the
top level can use a calculation for a change in frame of reference to show all the
parts (regardless of assembly level) in the correct position. This sort of change in
frame of reference is handled with a process of summing vectors. Each of the
locations of parts within a subassembly can be considered to have a 3-D vector
pointing from the subassembly’s origin to the part. Then there is a vector that
points from the global origin to the subassembly’s origin. By adding these vec-

FIGURE
10.4

An example of assembly structure with subassemblies.

248 Chapter 10

tors together using vector sum calculations, the top level can easily locate all the
models in the correct location. As parts are moved within the context of a subas-
sembly, the top-level assembly merely points to the subassembly data and can
then show the change at the top level appropriately. Refer to Figure 10.5.

10.2.3 Instancing

The third essential characteristic for the assembly model is the use of instancing.
An instance is like an intelligent duplicate of an object. This is a common con-
cept in computer programming. If one starts a spreadsheet program twice in a
windows-type of operating system, each copy of the spreadsheet window is
called an instance of the program. There really aren’t two different spreadsheet
programs running, it is just like two copies of the same spreadsheet program.
Also, in 2-D CAD systems, instancing can be applied to symbols, blocks, or
clumps of 2-D geometry.

It follows, then, that in assembly modeling each part model that is included
in the assembly structure should really be considered an instance of the part
model. This may seem like an unnecessary layer of abstraction if part models are
only included in the assembly structure one time (such as the FRAME in Figure
10.4). However, it is quite common to have the same part model used many
times. For example, in Figure 10.4, there are two instances of the PEDAL in the
CRANK SUB-ASSY. If instancing is not used, then one would be forced to have
two separate part models for the pedal. Worse yet, when considering the spokes
in a wheel subassembly, one would be forced to create dozens of spoke part mod-
els. Using instancing, the pedal or spoke can be modeled just once, and then re-
used as needed in the assembly model.

An advantage to instancing is that when the real part model (such as the
pedal) is changed, all the instances can change or regenerate automatically. In-
deed, this is essential to preserving the data management aspects of the assembly
model. If a part is revised, then it needs to be shown as revised everywhere it is
used. Since the instancing should be based on a pointer or relationship system,
the revised part will be able to be shown as revised in all its parent or higher level
assemblies. This solves the “where used” problem for drawings where designers
have to do research to try to figure out what effect changing a particular drawing
will have on the company’s products. Without instancing, the designer would
have to locate each of the uses of the part and change the part in the context of all
those other occurrences.

Although the assembly model can rely on a fair amount of information
about an instance of a part coming from the master part model itself, there is ob-
viously some data that must be stored in the assembly model for each instance.

Assembly Modeling 249

For example, the spokes in the wheel subassembly shown in Figure 10.5 are not
all located in the same position and rotation. Instead, each instance of the spoke
has been placed into its appropriate location. This positional data, then, cannot be
stored with the part model, but rather it must be tracked and stored by the assem-
bly model.

A variety of information in the assembly model needs to be sorted out as to
whether it should be tracked based on the master part models or based on the
instances of the part models (or even instances of subassemblies). Table 10.1 lists
some of these issues. This is not a complete list, but it hopefully shows the some-
what complex nature of how an assembly model needs to keep track of many
types of data. It is important to understand how a particular CAD system deals
with these issues so that the user knows when and where to work on the assembly
model so that the desired results are achieved. This should not be difficult once
the implications of instancing are clear.

FIGURE
10.5

Locating a position using a transformation or vector summation.

250 Chapter 10

TABLE
10.1

List of Types and Locations of Assembly Model Information

Type of
information

Instance or

part data? Description

Part geometry Primarily part
The 3-D part model’s geometry (surfaces, vol-

data
ume, features, etc.) will certainly be based pri-

marily on the 3-D part model. However, there

are cases where part models are altered only in

the context of the assembly model. For exam-

ple, a hole may need to be drilled through two

parts only after the two parts are aligned and

bolted together. This hole feature would only

be seen in the assembly context, so this geome-

try would need to be tracked by the assembly

based on the instances involved.

Positional data Instance data The location (translation and rotation) of the vari-

ous parts in the assembly model will need to be

based on each instance (since the same part

model may be used in more than one location).

Furthermore, positions of part instances within

a subassembly are really a case of an instance

within an instance (the subassembly itself is an

instance; since an entire subassembly can be

used more than once as well).

Cosmetic data Part or instance
The appearance type of information for part mod-

data
els (such as color, translucency, texture map-

ping) can be part or instance based. Obviously,

the part model information would be accept-

able in most cases. But, if the designer wants to

see through one instance of a specific part, but

not all other instances of that part, then the as-

sembly model would need to allow the translu-

cency to be tracked based on just the instance.
Attributes Part data Information such as the material used to make a

part would need to be kept with the part model.

If a different material were used for the part,

then it would typically be considered a totally

different part (even if the geometry were the

same). Other part attributes might be manufac-

turing process data (i.e. how the part is to be

made).

Assembly Modeling 251

10.3 ASSEMBLY CONSTRAINTS

Recall from the earlier chapter on part modeling that constraints refer to geomet-
ric or mathematical rules or restrictions that are applied to the sketching of 2-D
part foundation geometry or perhaps to 3-D feature characteristics (such as
depth). The same concept can be applied to assembly models. In this case,
though, the constraints are used to control or restrict the location of the part in-
stances within the context of the assembly model.

Although a reasonable assembly model can be made without constraints, it
is clearly advantageous to use constraints, particularly if the 3-D design process
is dynamic or iterative. If the relative positions of all the part instances in an as-
sembly are clearly understood or static (such as plates that are welded to form a
beam), then the assembly constraints may be of lesser value. However, even in
this case, constraints can used to make the assembly model intelligent or to cap-
ture what the designer intended. With the constraints, as the design needs to be
changed (by moving one part instance), other parts can automatically move to
new appropriate locations. Without constraints, part instances can be moved to
totally inappropriate locations. Therefore, whenever practical, the extra effort
should be used to apply assembly constraints to assembly models.

As discussed in the context of part modeling, applying constraints involves
the removal of degrees of freedom (DOFs) from the model. When doing the 2-D
sketch plane operations, there were 3 degrees of freedom to remove. They were
translating or moving in the X-direction, translating in the Y-direction, and
rotating about the Z-direction (the direction “out of the page” being an axis of
rotation). In assembly modeling, though, there are 6 degrees of freedom to be
removed. These are translation in X, Y, and Z, and rotation about X, Y, and Z.
Not surprisingly, constraining assemblies can be significantly more difficult.
There are simply many more ways that the part instances can be positioned,
so controlling these positions involves more effort. For each instance the de-
signer needs to consider, “Can it move in X?,” “Can it move in Y?,” “Can it
move in Z?,” “Can it rotate about X?,” “Can it rotate about Y?,” “Can it rotate
about Z?”

To further complicate things, all the issues that can arise for part modeling
constraints also apply for assembly constraints. First, there is underconstraining.
This could be acceptable, or this could be a problem. If an instance is undercon-
strained, then it is free to move in some fashion. If the assembly model is for a
beam of welded plates, then this would be a problem. But, if the assembly model
is for the front wheel on the bicycle, then allowing the wheel to rotate about its
bearing would certainly be acceptable.

Next, there is overconstraining. In this case, the same degree of freedom is
removed more than once. For instance, if the face of a cube is constrained to not

252 Chapter 10

move in the X-direction and it is also constrained to not rotate about the Y-axis,
then this is overconstraining (rotating about the Y would make the face stick out
in the X-direction, and that degree of freedom was already removed). Again, this
could be acceptable, or this could be a problem. As was mentioned with part
modeling constraints, the difference depends on how the CAD system solves the
simultaneous equations that come from the constraints. So, if the solution process
can arrive at a single, stable solution, then the overconstraint can be acceptable.
For example, the overconstraint just mentioned for the face of the cube should
not be a problem. The constraint to not rotate about the Y-axis is consistent or
similar to the constraint for not moving in the X-direction. The added constraint
does not violate the existing constraint.

Other books

Hold Me Close by Eliza Gayle
Wings over Delft by Aubrey Flegg
The Chameleon by Sugar Rautbord
The Goliath Stone by Niven, Larry, Harrington, Matthew Joseph
The Moon and the Stars by Constance O'Banyon