Hi all,
I'm dealing with the question of which approach to take to model different 'states' of an assembly. For example, a hydraulics cylinder with the extended or retracted shaft.
To handle assembly states either subassemblies and/or simplified representations of the main assembly could be used.
The question boils down to what technique to use for modeling variations of the part shapes?
Flexible Models -seems to offer the maximum flexibility- dimensions as well as suppressed/unsuppressed feature states could be manipulated.The drawbacks are, at least to my knowledge, multiple components in various states have to exist in the assembly or subassembly context, and simplified representations have to have master/exclude rules to be explicitly defined which makes maintaining assemblies more challenging task.
Part Simplified Representations – seems to be easiest to make with suppress/unsuppressed feature states. In the assembly we would have to use ‘User Defined’ rule in simplified representation definition.
Family Tables – either could be set up with feature states or dimensional variations, would have to use ‘substitute by family table’ representation rules in the assembly.
Constraint Sets – using disable/enable set while in component feature definition dashboard seems to function similarly to flexible components, but the question would be how to enable/disable constraint set based on simplified representation?
Another technique which we are considering is to use Pro/Program to manipulate assembly and part states based on parameter linked to simplified representation, but this one looks like a lot of troubles.
If anyone which have practical experience with those techniques could share their insights it would be greatly appreciated.
Thanks in advance.
Feliks.
Solved! Go to Solution.
Hi all,
I guess the discussion is coming to its end. Thanks all who had spent time answering and posting...
Here is a quick summary.
Mechanism-Snapshots functionality is the way to go. Turns out 'snapshots' are working quite well with the Constraint Sets. Constraint Sets could be controlled via internal componentparameter 'PTC_CONSTRAIN_SET' which is modifiableeither through Pro/Relations or applying 'flexibility' at the assembly levelto componentsto be transformed. This solvestheproblem of global switch of the constraintswhen one would need to go from fully constrained components to packaged components for snapshots generation. Here is an article in PTC tech support site : CS46389 on this topic. We had found out as well that snapshots are much easier to use when components assembled using 'Mechanism Connections'.
Using Simplified Representation technique witheither part simplified representations or substitute by family table rulehad lead to a dead end. The components would retain assembly positionsof the time when they were added to assembly therefore even if the geometry of the component was changedby simplified rep.the matingcomponents were simply 'ignoring' the new geometry locations.
Using flexible part models would produce a fixed permutation per regeneration which is workable but is not very convenient to use.
Using assembly family tables was cumbersome...
There was another technique suggested by Andrew Kelly: to package components to betransformed into intermediate subassembly, bringing this subassembly into main assembly and constrainingcomponents to the datum entities of the main assembly therefore controlling locations of those components in context of the top level assembly.
Side note, we initially were trying to use part level shape variations ( either bypart flexibility, family tables, part level simplified representations, Pro/Program)to drive the location of the mating assembly components due to the fact that a number of the engineers involved in the project were coming from the different CAD software ( using 'configurations' was the only thing they could think of) and we were trying to follow their train of thought as close as we could to minimize their discomfort.We had abandoned thispath quite quickly. Pro/E ( Creo-Parametric) has so much to offer if one takes time to learn.
Thanks again.
Feliks.
My two humble cents:
- I've used simplified reps before, but only to show a state manufacturing progression where I did not want to overly complicate family tables.
- My initial response to constraint sets would be unless you want to limit the variability of the model to stay away from this. It would be more obvious to the user to change states of things if it was in a family table or a flexible model. Otherwise your intent on changing the model may get buried in the features (unless this is a typical practice where you are).
- If you want to use this model and verify range of motion in other assemblies, it would make most sense to use flexible features.
- If you want to have fine control over the parts to show different specific states of operation family tables would be the way to go.
I personally do not have a lot of experience using the 'Flexible' functionality, but I am wondering why you would not be using the Mechanism constraints for cylinder assemblies? This function allows one to define moving assembly parts to behave as they do 'in real life', giving the option to set joint axis limits, friction, etc.You can also set the cylinder extension to specific extension lengths and save these as snapshots so ifa specific assembly orientationis desires, you can recall those specific snapshots and the assembly snaps into the orientation with those extension lengths.
Feliks,
My usage of the described techniques:
Flexible Models: Use this for part models that want to change in usage. ie spring to show a compressed state or a ring lug that you bend up a little or a jam nut built into the model that chanegs depending upon the thickness of the panel This creates a BOM with the actual numbers you want without having different models or family table versions to show the moel in the assy.
Simplified Reps: Use this to control assemblies ie what is shown on specific views used for detailing. I do not use this on parts. The view on details do not get updatd and have to be re created
Family Tables: Great in the old days but a pain with a PLM system in rev control and migrations to future PLM system releases ( I've never seen a migration not have a problem with family tables) Our current use is legacy parts and hardwarwe as long as the whole series is done at one time.
Constraint sets: Onlty use these in development. Leaving these disabled still creates a reference you may not want
jef
Hi all,
I guess the discussion is coming to its end. Thanks all who had spent time answering and posting...
Here is a quick summary.
Mechanism-Snapshots functionality is the way to go. Turns out 'snapshots' are working quite well with the Constraint Sets. Constraint Sets could be controlled via internal componentparameter 'PTC_CONSTRAIN_SET' which is modifiableeither through Pro/Relations or applying 'flexibility' at the assembly levelto componentsto be transformed. This solvestheproblem of global switch of the constraintswhen one would need to go from fully constrained components to packaged components for snapshots generation. Here is an article in PTC tech support site : CS46389 on this topic. We had found out as well that snapshots are much easier to use when components assembled using 'Mechanism Connections'.
Using Simplified Representation technique witheither part simplified representations or substitute by family table rulehad lead to a dead end. The components would retain assembly positionsof the time when they were added to assembly therefore even if the geometry of the component was changedby simplified rep.the matingcomponents were simply 'ignoring' the new geometry locations.
Using flexible part models would produce a fixed permutation per regeneration which is workable but is not very convenient to use.
Using assembly family tables was cumbersome...
There was another technique suggested by Andrew Kelly: to package components to betransformed into intermediate subassembly, bringing this subassembly into main assembly and constrainingcomponents to the datum entities of the main assembly therefore controlling locations of those components in context of the top level assembly.
Side note, we initially were trying to use part level shape variations ( either bypart flexibility, family tables, part level simplified representations, Pro/Program)to drive the location of the mating assembly components due to the fact that a number of the engineers involved in the project were coming from the different CAD software ( using 'configurations' was the only thing they could think of) and we were trying to follow their train of thought as close as we could to minimize their discomfort.We had abandoned thispath quite quickly. Pro/E ( Creo-Parametric) has so much to offer if one takes time to learn.
Thanks again.
Feliks.