Return to: U of M Home

Gold University of Minnesota M. Skip to main content.University of Minnesota. Home page.
 
Academics.

Mechanical Engineering Home >Info: Useful Links > ProE > relations

(Contributed by Byron Raymond)

In order to create relationships between different entities in Pro/E, you must first create those entities. Let's say you want to make a crude Pro/E face. To start, create a base feature, such as a circular disc. Create the second feature. Here, you may want to make a protrusion for the left ear. Add as many, independent (more or less) features as you need.

You may have created a regular hexagon for an eye, and added relations in sketcher mode. Those relations are in place in order to make the hexagon regenerate into a hexagon, even if only one of the dimensions is changed. Sketcher dimensions start with the letters 'sd' followed by the sketcher feature number (sd0, sd15, sd533). They can only be edited in sketcher mode.

What happens when you don't want to resize the ear, but you want it to remain in the upper left quadrant of the face when the face itself is made 3 times bigger? You add feature level relations.

General relation rules:

  1. Relations are evaluated in the order listed in the file.
  2. If a dimension or parameter is defined twice, only the last definition counts.
  3. If the dimension is preceded by R (radius) or Phi (diameter), those symbols are not needed in the relation. If d32 is the radius of our cylinder, the dimension Rd32 is the same as referring to d32. The R or Phi are only there to remind the user.
  4. If you delete a dimension, and later recreate it, the old relation will be invalid. You should update the old relation to point to the name of the new dimension with Edit Rel.
  5. When you change a dimension in either parts or drawing mode, you must regenerate the part for all updates (including relations) to take effect. If you don't, the dimension may appear in bold font on your drawing.

In Part mode, click the Relations menu pick. By default, Part Rel will be selected. This is fine. Leave it alone. You have a choice of these operations
Add - interface for adding relations one by one from by typing in Pro/E's message window
Edit Rel - will gather all the part level relations, and send them to vi for your editing. (If you don't know the text editor vi, edit your config.pro file to change your Pro/E default editor. There is another hint which shows how to do this.)
Show Rel - also gathers all the part relations, but displays them in a non-editable Pro/E window
Evaluate - calculate only one value in the Pro/E message window
Sort Rel - lets Pro/E sort all your relations. If you have d1=5*d6, d2=7, and d8=d1, Pro/E will try to guess which is more important, and place it first in the list
Show Dim - If you don't know the the diameter of your cut is d17, this pick will display the dimension parameters for you.
Switch Dim - Changes the display of the dimensions from numerical 5" to symbolic 'd4' Hit it again to switch back and forth.

  1. You will most likely need to see what the names of the dimensions are first. Use Show Dim, press Enter, then Query/Select the feature whose dimensions you want to see. All the dimensions you used to create the feature will show up in symbolic form. Make a note of the names (d16, d17, d0, Rd14, etc) of the dimension you want to reference.
  2. Think about the real relationship, the design intent. You may want the eye to always be 80% smaller than the diameter of the face. You always want the eye's to be one eyeball diameter apart. Whatever. These rules are up to you. In your mind, think about what would happen if the inputs were made very small or very big. Create your relation to handle these cases. This is potentially the hardest/most time consuming part of relations.
  3. Add the relations. One relation per line. Press on a blank line to finish. For example, d4=0.2*d2 might be the first.
  4. Regenerate the part after adding relations. This is essential. You must test the new code to see if it works like you expect. Exercise the code: put in extreme values for the variables, and ensure the model behaves like you designed.

Problems. When the model does not update like you think it should, check the following:

  1. Try the Sort Rel button. Pro/E will change the order in which the relations are evaluated.
  2. Within a relation, make sure your syntax is correct. d70=0, d71=2, d70=d71. Both d70 and d71 will evaluate to 2. Normal left to right, operator precedence rules apply here.
  3. When relation get complex, it can be hard to remember what d321 stands for. You have the option of renaming the dimension parameter from d321 to a user defined name like screw_diameter. These new names can(must) also be used in relations.

Not every line in a relation needs to refer directly to a part dimension. You can create and use variables to calculate a new value. For example, you can create the following set of relations:

displacement=2.8
number_cylinders=6
cyl_vol=displacement/number_cylinders


None of these relations refer back to the part yet.

d5=cyl_vol/(pi*d4^2)

Here we drive the part geometry with a dimension we made ourselves called displacement. Setting up this kind of relation will help other engineers resize your model, even if you're not around to give advice. You want to put as much intelligence into the model as possible, this will minimize the amount of time you need to spend modifying the model in the future.

Hints

  1. To print your relations file, from a Unix prompt change into the directory from which you are running Pro/E, then print the file named rels.inf using the lpr command. If rels.inf does not appear, go into Pro/E and do a Show Relations which will update your rels.inf file.

Back to the Index

 
The University of Minnesota is an equal opportunity educator and employer.