Recently, I completed a design challenge involving the creation of a diesel generator enclosure. This project was one of the largest assemblies I have worked on to date, and it provided me with valuable insights into managing complex assembly designs (It’s now a tutorial on the channel). Inspired by this experience, I decided to write this article to share the strategies I developed during that project with the Inventor community.
What goes on "Under the Hood?"
When you hear the word "assembly," what comes to your mind? If you pictured a collection of parts coming together to form a functional product, you are right. An assembly refers to a collection of components, which can include parts and/or subassemblies, that are combined to create a single functional unit.
A part, on the other hand, is an actual 3D object/component being designed in the CAD software. Normally, it represents a physical object like a gear, bracket, bolt, piston, aircraft rotor, etcetera. Part files store the data & geometry of the part/component, and they have a .ipt file extension. These components are normally stored as separate files and are linked within the assembly file.
Due to this linkage, their spatial and functional relationships within the assembly environment are defined. These in simple terms are the assembly relationships. In other words, when a component is added to an assembly, the assembly file will create a link to the location of that particular part/component.
Therefore, if any modifications are made to that component or part, the assembly file will notice such changes and will require you to update accordingly as it references the part file. When a component is placed in an assembly, without applying any constraints or grounding it to the assembly origin as you place the component, it is considered “free-floating”. This indicates that it can be moved or rotated in any direction since it is not constrained to anything. To accurately define its position within the assembly environment, the component must be constrained to other components (or to the assembly origin) or grounded in place. It is advisable to have at least one component grounded in the assembly. This practice is primarily for stability and performance reasons.
How does this work? Grounding a component establishes a fixed reference point. This ensures that other components in the assembly have a stable basis/reference point for positioning and movement. This then reduces the degrees of freedom the software needs to solve for in the assembly, which lessens the load on your PC and enhances performance.
To accomplish all of this, we use assembly relationships! These relationships can also be referred to as constraints. You can think of assembly constraints as specific rules/conditions applied to parts within an assembly environment to manage their positions and orientations in relation to one another. The constraints limit the degrees of freedom of the component/part and establish how the component relates to other component(s) in the assembly. You can create assembly relationships using either the Constraint tool, the Joint tool or both the latter and the former.
For Example: In the genset enclosure project I mentioned earlier, if you were to create an assembly of an access panel, access panel screw, and a subassembly of the panel frame (frame generator), you would require four files:
- A top-level (main) assembly file with a ‘. iam’ file extension.
- An access panel screw part file with a ‘. ipt’ file extension.
- An Access Panel part file with a ‘. ipt’ file extension.
- A Panel Frame Sub-Assembly file with a ‘. iam’ file extension.
When you add the part and low-level assembly files to the top-level assembly, links are established to their respective locations.
If you modify the size of the hole in the panel frame usb-assembly, or change the number of hole instances in the rectangular pattern feature, the top-level assembly will automatically update(or require you to manually click the ‘Update’ icon) to reflect that change since it is linked to the panel frame assembly file. To assemble these components, you use the assembly constraints.
That’s it for the foundational knowledge of assemblies. Now, let’s get into the core of this article, shall we?
Cosmetic vs Modeled Threads
With reference to the genset enclosure project, suppose the entire assembly was to have thousands of bolts, nuts and screws. Each of these fasteners needs to have detailed thread information. This can significantly slow down Autodesk Inventor if implemented. This is because it has to render all that detail in 3D.
To ease the computation load on your system and speed things up, you employ the use of cosmetic threads. Cosmetic threads are simplified representations of threads used in CAD models. They appear as if they have detailed threading, but in reality, they don’t.
Instead of sculpting the threads, Inventor essentially "paints" a visual representation onto the cylindrical surface of fasteners, hence the name ‘cosmetic’. This simplification makes them much less computationally demanding than modelling the full, detailed threads.
The consequence is improving performance by reducing the complexity of the model in the already large assembly. This makes it easier to work with large assemblies without sacrificing the visual accuracy of threaded components.
The good news is that this is the default setting for the thread feature in Inventor! So, there isn’t any need to worry about it. A different workflow would be to generate a separate, detailed version of the component with actual threads for client presentations. This model should be a copy of the component where you replace cosmetic threads with fully detailed threads by performing sweep-cut operations on the relevant cylindrical body, for instance. This way the performance of your pc in the large assembly would not be compromised.
---
That’s it for this first part. In the next episode, we will look at more ways/strategies to help you optimize your large assembly design workflows. Keep tabs and happy holidays from me and Infinity CAD! See you around!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.