You are on page 1of 8

1

Suggested Technique for Using a Layout for Automatic


Configuration of an Assembly

Tables in Layout mode can be used to easily configure an assembly. By defining parameters in layout mode and then declaring all components in the assembly to the layout, the
layout can control both the dimensions of assembly components and which instance of a component is used in an assembly. In the following example, a pipe has been assembled to
the exhaust port of a large chamber. Only a short section of the pipe and the top plate of the chamber are shown. There are a number of variable elements in the manufacture of this
assembly. First, the inside diameter of the pipe and the diameter of the hole in the plate are variable and are independent. This requires the addition of a reducer between the plate
and the pipe. Secondly, the number of bolt holes along the top flange and bottom flange of the reducer are variable and can be different. Finally, the pipe can be straight with a
variable length or it can be bent with a variable bend radius and bend angle. Rather than attempting to create a number of complex relations between the components in the top level
assembly, a clear and simple table will be created in layout mode and then the layout parameters will be used in the individual components. Shown below in Figures 1 and 2 are one
possible configuration for the assembly and the corresponding layout table values.



Figure 1


Figure 2

Procedure
Download Example Files for this Example
1. The first step in the creation of the assembly is to build each component. The first component created was the Plate. A large hole is placed in the middle of the Plate
with a pattern of small holes around it. Later, relations will be created to keep the holes evenly spaced. In addition, the diameter of the center hole and the number of
holes in the bolt hole pattern will later be controlled by the layout parameters. The Plate is shown below in Figure 3.



2

Figure 3

2. The next component to be created is the Pipe. First, the flange is created and the radial bolt holes are placed through it. A Relation will be created later to keep them
evenly spaced around the flange. Next, the straight pipe section is extruded off of the flange and the bent pipe section is revolved off of the flange with a variable angle.
Later, the size of the center hole, the number of flange bolt holes, the length of the straight section of pipe and the bend angle and bend radius of the curved section of
pipe will be controlled by layout parameters. The next step for the Pipe is to create the instances for the straight pipe and the bent pipe. Create two instances, "Straight"
and "Angle", one with the straight extrusion but not the bent revolution and the other with the revolution but not the extrusion. The full pipe and the two instances can be
seen below in Figures 4, 5 and 6. For more information on using Family Tables in assemblies, see Creating Family Table Driven Assemblies.


Figure 4




3
Figure 5


Figure 6

3. The final component to be created is the Reducer. This component is necessary if the hole in the Plate and the inner diameter of the Pipe are different. First, the two
flanges are created a set distance apart. As in the Pipe, a relation will be created to keep the bolt holes evenly spaced around the flanges. Finally, a revolved protrusion
is created with a spliner section for the reducer section. The diameter of both center holes, as well as the number of bolt holes in each flange, will be controlled by layout
parameters. The completed Reducer is shown below in Figure 7.



Figure 7

4. The next step after creating the components is to begin creating the assemblies. The first assembly to be created in the Reducer assembly called reducer.asm. After
placing the Reducer into the assembly as the first component, the Pipe is assembled to it. To assemble the components, the center axis of both components are
aligned, the underside of the Pipe flange is mated to the top of the Reducer flange. To complete the assembly, a bolt and nut are placed in the first bolt hole of the Pipe
and reference patterned through all of the bolt holes. The Reducer assembly is shown below in Figure 8. The instance of the Pipe to be used in this assembly will later
be controlled by an assembly program based upon the values of the layout parameters.



4

Figure 8

5. The next step is to create the top level assembly called top.asm. The first component to be placed in this assembly is the Plate. Next, the Reducer assembly is
assembled onto the Plate. This is done by aligning the center axis of the Reducer and the Plate, and mating the bottom flange of the Reducer to the top of the Plate.
Next, place a bolt and nut in the first bolt hole on the Plate and reference pattern these components to all bolt holes. It is important to be sure that the bolts reference
only the Plate, not the Reducer. Since the Reducer will not be present in all configurations of the assembly, the bolts may fail if they have any references to it. Suppress
the Reducer assembly and assemble a Pipe into the same location and in the same manner. After assembling the Pipe, resume the Reducer assembly. This assembly
is shown below in Figure 9. Based upon the layout parameters, an assembly program will add either the Reducer assembly or the Pipe but not both. If the Pipe inner
diameter and the Plate hole are the same size the Pipe will be used. Otherwise, the Reducer assembly will be added. The program will also control which instance of
the Pipe is used if necessary.


Figure 9

6. After building the parts and assemblies, the layout is created. Click File >New >Layout and create a layout called top_lay.lay. Now, create a table by clicking Table >
Insert >Table. The table for this example has two columns and 10 rows. The first column will contain a description of the value in the second column and the second
column will contain the parameters for controlling the assembly. Create the parameters listed in Figure 10 by clicking Tools>Parameters and enter values specified in
Figure 2. After creating the parameters place them into the second column of the table with an ampersand (&) in front of them. This will cause the value of the
parameter to be shown. Later, the configuration of the assembly can be changed by simply modifying a value (by double clicking on the cell) from the table. The table
created for the Exhaust Port assembly (top.asm) is shown below in Figure 10. Note that the PIPE_STRAIGHT parameter must be a Yes No parameter type while the
others are Real Number type.



5

Figure 10

7. The next step is to declare the components to the layout and create the necessary part relations. To declare a component to the layout, retrieve the component and
click File > Declare. Next, select Declare Lay from the DECLARE menu and select the name of the layout with the table. This will allow all layout parameters to be
used at the part level. After declaring each part and assembly to the layout, the following relations need to be created. The name of each component is listed, followed
by the relations for that component. The left side of the equations should be replaced with a dimension symbol.

Pipe
Diameter of Center Hole in Flange =PIPE_HOLE_DIA
Number of Bolt Holes in Flange =PIPE_BOLT_HOLES
Length of Straight Extrusion =PIPE_STRAIGHT_LENGTH
Bent Pipe Bend Radius =PIPE_BEND_RADIUS
Bent Pipe Bend Angle =PIPE_BEND_ANGLE
Hole Pattern Dimension Increment =360/PIPE_BOLT_HOLES


Reducer
Diameter of Center Hole in Top Flange =PIPE_HOLE_DIA
Number of Bolt Holes in Top Flange =PIPE_BOLT_HOLES
Diameter of Center Hole in Bottom Flange =PLATE_HOLE_DIA
Number of Bolt Holes in Bottom Flange =PLATE_BOLT_HOLES
Bottom Flange Hole Pattern Dimension Increment =360/PLATE_BOLT_HOLES
Top Flange Hole Pattern Dimension Increment =360/PIPE_BOLT_HOLES

Plate
Diameter of Center Hole in Plate =PLATE_HOLE_DIA
Number of Bolt Holes in Plate =PLATE_BOLT_HOLES
Hole Pattern Dimension Increment =360/PLATE_BOLT_HOLES


Note: Parameter names correspond to the names created in the layout.

8. After declaring all components to the layout and creating the relations, the components in the assembly will update their dimensions correctly. The only remaining step
is the creation of the assembly and sub-assembly level programs to control which components are placed into the assemblies. In the Reducer assembly, create a
program which determines the proper Pipe instance to assemble and then adds that instance. In the relations section of the reducer assembly program, add the
following lines:
IF PIPE_STRAIGHT
PIPE_TYPE ="STRAIGHT"
ELSE
PIPE_TYPE ="ANGLE"
ENDIF

where PIPE_STRAIGHT is a true/false parameter from the layout. Next, find the location in the program where the pipe is added to the assembly and change the first
line of the section from ADD PART PIPE to ADD PART (PIPE_TYPE). These two changes will cause the correct instance of the pipe to be placed into Reducer
assembly.

9. Finally, the program needs to be created for the top level assembly. This program will determine if the Reducer is needed and then add either the Reducer assembly or
the Pipe but not both. If the Pipe is added, the program will determine which instance is needed and assemble the appropriate one as in the Reducer assembly. In
addtion, if the plate hole diameter and the pipe hole diameter are the same(i.e the reducer is not present), the bolt holes in both the plate and pipe need to line up. Add
the following lines into the relations section of the program:
IF PIPE_HOLE_DIA==PLATE_HOLE_DIA
d10:0=d2:6
ENDIF
IF PIPE_STRAIGHT
PIPE_TYPE ="STRAIGHT"
ELSE
PIPE_TYPE ="ANGLE"
ENDIF

Note: d10 is the bolt hole circle radius for the hole pattern in the plate, and d2 is the bolt holecircle radius for the hole pattern in the pipe

After adding this section, change the line which reads ADD PART PIPE to ADD PART (PIPE_TYPE). Also, place an if statement around the add pipe section so that the
Pipe is only added if the Reducer is not required. The finished section should read as follows:
6
IF PIPE_HOLE_DIA ==PLATE_HOLE_DIA
ADD PART (PIPE_TYPE)
INTERNAL COMPONENT ID 95
PARENTS =39(#5)
END ADD
END IF



Note the use of the double equals sign when used in an if statement. A single equals sign will attempt to set the two parameters to each other rather then check to see if
they are equal. Finally, place an IF statement around the section which adds the Reducer assembly. The Reducer section should look as follows:
IF PIPE_HOLE_DIA !=PLATE_HOLE_DIA
ADD SUBASSEMBLY REDUCER
INTERNAL COMPONENT ID 40
PARENTS =39(#5)
END ADD
END IF


Keep in mind that the internal component ID's and parent information may change for different assemblies and components.

10. The Exhaust Port assembly top.asm can now be configured by simply modifying the values in the layout table. The purpose in using the layout is to eliminate external
references between components and to provide a single place from which all of the parameters which control the assembly can be easily viewed, selected and
modified. Shown below in Figures 11-16 are three possible sets of values in the layout table and the corresponding assembly. By simply modifying the layout table
(double click in a cell to modify the value) and regenerating the assembly, the entire assembly configuration is changed without the need to manually replace any
components or retrieve individual components to modify dimension values. It is important to note that the value of some parameters may be irrelevant in certain cases.
For instance, if the straight pipe is used, the bend angle and bend radius for the pipe have mo meaning.


Figure 11

Figure 12

7
Figure 13


Figure 14


Figure 15


Figure 16
8


Description
-----------------
This technique discusses how draft entities can be copied from one sheet of a layout to another. The same technique can
be used in drawings.

Alternate Technique
-----------------
See Resolution below.

Resolution
-----------------
The draft entities can not be directly copied from one sheet to another but a symbol can be created using the draft
entities and then the symbol can be placed on other sheets. Select #Detail, #Create, #Symbol, #Definition, #Define and
enter in a name for the symbol. Select #CopyDrawing, #PickMany and drag the box around all the entities that will be
copied. Note that the entities now appear in the symbol window. Finish the creation of the symbol by selecting #Done,
#Free from the Allowed Placement Type and select an origin point. Select #OK and #Done. The message window
should verify that the symbol has been created.

The symbol can now be placed on other sheets. Select #Detail, #Create, #Symbol and a dialog box will then appear. The
symbol can be placed and treated as a symbol in the layout by just selecting #PlaceInst and selecting a location on the
screen. If the functionality of the draft entities is desired, such as the ability to move the individual segments of the
sketch, then select #Explode from the pull-down menu instead of #UseDefinition before placing the symbol with
#PlaceInst. Note that the symbol menu can not be used on the sketch because it is now considered to be draft entities.

You might also like