Autodesk Mechanical Desktop: Tabling Your Assemblies By Bill Fane
In last month's tutorial Your Table Is Ready, you saw how easy it is to use an Excel spreadsheet to control a part created with Mechanical Desktop? software, and what a powerful tool this can be. As promised, this month we will explore some of the fun things you can do using design variables within assemblies, including driving them with an Excel spreadsheet.
Before we start, I want to clarify a point regarding design variables.
There Are Two Kinds of Design Variable in The World... No, this is not the start of a bad joke. There really are two kinds of design variables—Active Part and Global.
To explore the difference between the two and to experiment with design variables within an assembly, follow these simple steps:
1. Create a new assembly file, and begin working on a new part within it. At a bare minimum you should create a simple sketch and then turn it into a profile using the AMPROFILE command. 2. Start the AMVARS command, which you can do by any one of these methods:
Type the command name in at the Command prompt. From the main menu bar, pick Part > Design Variables. Pick the command from the 2D Constraints toolbar. Right-click the part name in the browser, then select Design Variables from the shortcut menu.
View Larger Image Figure 1: The Design Variables dialog box.
Figure 2: Shaft assembly with 1" shaft.
Whichever method you use, it opens the Design Variables dialog box (see Figure 1). The two tabs at the top of that box indicate the two types of design variables. In selecting one or the other tab for the creation of your part, you determine how the part and its variables are managed when they are used in the assembly.
An Active Part variable affects only the part under which it was created. You could have 20 different parts in an assembly, each with an Active Part variable called "Thickness." If you change the value of Thickness, it only changes the thickness of the currently active part in the assembly. Each part's thickness is independent of every other part.
On the other hand, a Global variable affects every part in the assembly that uses the same Global variable name. For example, you could have several parts in an assembly that use the Global variable called "Shaft_size." If you change the value of Shaft_size, then the shaft diameter, the bearing bore, the bearing-mounting bolt spacing, and the shaft coupling size all change accordingly. The most obvious benefit of the Global variable is that every part property related to the change is automatically updated. You don't have to manually correct every one, which reduces errors on the shop floor.
Now let's return to the procedure we were describing earlier. In the Design Variables dialog box: Select the Global tab.
4. Create a suitable design variable, as explained in detail in last month's tutorial. (I created one called
Shaft_size for the example assembly you will be looking at in a moment.)
5. Create several parts within the assembly:
Create sketches for each feature profile within each part. As you dimension the sketches, enter the Global variable name where appropriate instead of entering a specific numeric value.
Note: You can also use the variable name within a formula to define the dimension. For example, the diameter of the shaft might be Shaft_size, while the bore of the bearing would be Shaft_size+0.005 to provide a running clearance for the shaft.
Figure 2 shows a four-part assembly, exploded, so you can better observe the changes we are about to make. Each part contains at least two dimensions that include Shaft_size within their specifications.
Figure 3: Shaft assembly with 1.75" shaft.
6. Use the AMVARS command again [they used it the first time way back in Step 2) to change the value of Shaft_size from 1.000 to 1.750.
7. Click OK to close the AMVARS dialog box. The parts update (see Figure 3).
If you compare Figures 2 and 3, you can see that:
The shaft got bigger. The splines on the end of the shaft grew. The shaft flange got bigger, and the holes in the flange moved. The green bearing got bigger, and its bore increased to suit the new shaft. The mounting holes in the blue base moved to suit the bearing. Several features on the magenta coupling adjusted themselves to suit the flange holes.
Figure 4: Compressed.
And that is all there is to the basic procedure for using design variables within assemblies. But Wait! There's More! The example we've been using implies that design variables can only be used within sketch dimensions. Not true! As indicated in last month's Mechanical DeskTip, you can use a design variable alone or in a
formula whenever Mechanical Desktop software prompts you to enter a value. This includes dialog box prompts for entering such values as the length and number of coils for a 3D sweep path and for the offset values of assembly constraints. Figures 4 through 7 show the effect of changing one global parameter in an assembly.
Figure 5: Partially Extended.
Figure 6: Extended Some More.
Figure 7: Fully Extended.
Using an Excel Spreadsheet to Control Design Variables It should come as no surprise that the procedure for linking Global variables to a spreadsheet is almost exactly the same as the one described in last month's tutorial to control a single part. The only difference is that you have to select the Global tab in the Design Variables dialog box, which you open with the AMVARS command, before creating the link. Everything else is exactly the same.
Figure 8: The spreadsheet that drives figures 4 through 7.
Figure 8 shows the spreadsheet I created to drive Figures 4 through 7. As usual, column A contains the variations to be selected from the browser. Column B starts with the name of the Global variable in row 1, and each subsequent row in column B contains the value to be applied to the variable when its row is selected from the browser. As usual, the spreadsheet can contain other variable names in columns C, D, and so on so that more than one variable can be driven.
And now, to quote the Beatles,
"One and One and One Is Three." Figures 4 through 7 show how three things have all come together at once:
1. Global design variables can be used to control the sizes of part features within an assembly. 2. Global design variables can also be used to control the offset values of assembly constraints. 3. Excel spreadsheet tables can be used to drive Global variable values. That is how I got from Figure 2 to Figure 3 and from Figure 4 through to 7.
Time to Get Moving When you add all three together, you end up with animated Mechanical Desktop assemblies! No, these are not the photorealistic, real-time animations that you can create with 3D Studio VIZ? software, but even so they are more than adequate for demonstration and explanation purposes. Simply click on each spreadsheet row in sequence in the browser and your mechanism will go through its operations. Assembly constraint offset values can be formulas, so a single Input_angle variable can drive an input gear while Input_angle*Ratio controls the output gear. A rack and pinion function can also be created. Input_angle drives the pinion, while a formula applied to a Mate or Flush constraint moves the rack based on Input_angle and the pitch diameter of the pinion.
Everything Is Under Control For simplicity, all the example assemblies this month consisted only of parts whose definitions live locally within the assembly drawing. Be sure to come back next month when we discuss how to control and synchronize parts whose definitions are externally referenced from the assembly. Summary As you have seen in this tutorial and the previous one, it is extremely easy to drive, synchronize, and control parts and assemblies with design variables and Excel spreadsheets. The only limitation is your imagination.