[Next] [Up] [Previous] [Contents]
Next: Manual: Maintaining Families of Parts Previous: Family of Parts Search

Creating Families of Parts

The process involved in creating Families of Parts can be much different from the process used in creating standard, one-use parts. These Master Parts must be made such that all of the model parameters can be easily modified to create the member parts. Using too many absolute locations can cause problems when the appropriate variables need to be added. Another important consideration is database size. The part should be modeled as simply as possible, with as few derived or computed variables as possible. This database is going to be copied for each member part created. In this case, a little extra time getting a clean database can lead to tremendous savings in disk space later. Another consideration is robustness, how well the model can deal with values in the dimension table that are out of the range of physically possible values for that variable.

The following are some important things to consider when deciding if a group of parts is suitable for this process.

Size of the family
The family must be large enough so that it is worth the effort of creating it. Two or three similar parts would be better created using basic parametrics. This means create one part, file it, change the dimensions, and file it under another name.
Amount of use
The family should be one that has multiple members that will be used on a regular basis. If only one or two members will ever be used, the extra storage space and the extra effort involved in creating the family isn't warranted. Two members created with the family of parts procedure result in three copies of the database and one text file containing the information for the rest of the unused parts.
Topological equivalence
Parts which are topologically dis-similar can be difficult or impossible to create with this process. One such example is a connector with a variable arrangement of contacts. There is no way to specify different patterns of contacts for each member using this process. CADDS5 can't deal with coincident points when creating entities. This means that zero-length lines or zero-radius fillets can't be created. The table also can not control whether features such as fillets, holes, chamfers, etc. are created or not. It can control how many copies of a solid or wireframe entity are made, but that is the extent of its control. Features such as holes, fillets, etc., can not be copied. The features have to be added to the entities before the entities are copied.
Discrete Values of Dimensions
The dimensions for the family members must be entered into a table. As such, parts that have dimensions that take on a continuous range do not lend themselves to this process. One exception to this is where the continuous dimension is not one of the dimensions that would be entered in the table. An example of this is a family of structural beams. The beams are available in a continuous range of lengths, but the important dimensions in this family are the cross-sectional dimensions. The parts can be created with a unit length, and then copied and modified as necessary. If there were only one cross-sectional shape and size in this "family", then there would be either one member in the family, or an infinite number of members, one for each possible length of beam.

Modeling Considerations

These are several things that must be considered prior to creating the family. They mainly deal with modeling strategies, possible pitfalls, and helpful hints.


The Steps in Designing a Master Part

  1. Determine which geometric features are necessary.
  2. Determine the given dimensions of the part.
  3. Determine an origin and orientation for the model.
  4. Construct a modeling strategy for the part.
  5. Determine how each entity in the model will be referenced.
  6. Determine which parameters in the model will be controlled by variables.
  7. Determine which variables will control each of these parameters.
  8. Determine which of these variables will be controlled from the family table and which must be computed.
  9. Create equations for all of the computed variables.
  10. Review the modeling strategy, variables and equations to determine if the modeling strategy can be improved to use fewer commands, CSG modeling techniques, variables, and/or equations.

Steps in Building the Master Part

These are the steps to follow once you have a design for the part.

Text File Format

Once the model has been completed, the text file has to be filled in with the information necessary to create the rest of the parts. The text file has been created by CADDS5 and is located in the part's directory. The file is named _tbl. It uses fixed-width columns for each variable. If there are many parts to be added to this table, the easiest way to add the information is to take the file into a spreadsheet such as Excel. The file should be saved as Text, Space Delimited. Text, Tab Delimited may confuse CADDS and the search engine. Tab delimited files will also be much harder for people to read if the width of the text in the columns varies enough. If only a few parts are to be added, any text editor can be used.

If using a spreadsheet, be sure to check that the columns are wide enough so that all the information will appear in a text file. This is easier when using a fixed-width font instead of a proportional font. If the column is too narrow, the column may not be wide enough and may cut off some data, or even print numerical cells as #######. Also, be careful of left justified text to the right of right justified text, and right justified text to the left of left justified text. Insert an extra column with a width of 1 between them if they run together in the text file.

CADDS ignores any lines in the file that have a # in the first column. Thus, comments can be placed in the file by having a # in the first column of each line. Any of these lines that starts with a #!, up through the first line that doesn't start with a #, will be displayed to users of the search program. These lines can contain important information about the part, descriptions of the variables, or anything else that the user should know. The search window is only 65 characters wide, and no line wrapping is done on the comments, so the lines should be 65 charaters characters long or less, not including the #! and any spaces immediately following it. The first non-comment line contains the names of the variables. CADDS will ignore any variable it doesn't recognize, so additional variables can be added to the table. These can contain additional information about the parts, and these variables can be searched with the search programs.

The line following the variables must be an entry for the master part. This contains the values of the variables at the time the last control parameter was added. The rest of the lines contain entries for the other member parts.

When you add a control parameter, CADDS rewrites the _tbl file. It does not include any variables that it doesn't know about. If you've added any variables to the _tbl file, they will be deleted if you add any other control parameters through CADDS. If you have to add any control parameters, make a backup copy of the file under another name first.

The following is a portion of the table for the d38999-28 nuts.

#!Member_name is the dash number for the nut, followed by X or XP.  
#!The parts ending in X are for use with class C,F,G,H,K and W connectors.
#!XP parts are for use with J and M class connectors.  III and IV are the 
#!shell size codes of the Series III and Series IV connectors that the
#!nut fits.  The filenames of these connectors are included in the variables
#!Series_III_Filename and Series_IV_Filename.

These comment lines will be shown when a user selects this master part in the search program.

###############     Master :        fpts.d38999-28
# Family Table:     Series III:     fpts.d38999-24
###############     Series IV:      fpts.d38999-20

These comment lines are ignored by both programs. They contain the default comment inserted by CADDS, as well as the location of the master part, and the location of two related master parts. These were used in Excel to create the Full_Filename, Series_III_Filename and Series_IV_Filename values, and are not printed by the search program.

Member_name   A       P       T      Full_Filename                  III IV  Series_III_Filename        Series_IV_Filename
Master        1.1020  1.3290  0.1250

These two lines are the variable names and the values for the master part. Note that the Master part only contains entries for the first three variables. The other variables were added later as additional information. In this case, which circular connectors the nut matches.

1X            0.6693  0.8920  0.1425 fpts.d38999-28-family.1X       A   N/A fpts.d38999-24-family.A    N/A
2X            0.7874  1.0170  0.1425 fpts.d38999-28-family.2X       B   N/A fpts.d38999-24-family.B    N/A

Finally, the first two member parts, with all of the extra variables filled in.

In the WWW-based search engine, every part that matched the search criteria will be displayed for the user to select. Every variable name that contains Filename (case-sensitive) will have a link added to the value of the variable. This link will call the check_family_part program to see if that part exists. If the part does not exist, the program will ask the user if it should be generated. In the previous example, the Full_Filename, Series_III_Filename and Series_IV_Filename will have links on them. This provides a way to allow a user to easily check on related parts. (If the value starts with "n/a", in any combination of upper- or lowercase, then no link will be added to that value.)

Important Points About the Text File

Valid:
Member_name   A       P       T      Full_Filename                  III
1X            0.6693  0.8920  0.1425 fpts.d38999-28-family.1X        
Invalid:
Member_name   A       P       T      Full_Filename                  III
1X                    0.8920  0.1425 fpts.d38999-28-family.1X       B

gregm@wpi.edu