Hello,
To build optional assemblies in our modular models, we use envelopes. An example of this would be an automatic greasing system. This system is optional and therefore it's essential for us that all of the parts associated with this option are all in one assembly.
To build the assembly, we need a framework to constrain it to. That's where envelopes come in. We use an envelope of the base frame in the greasing assembly and constrain all parts to it. Other advantages is that we can place this assembly default in the main assembly and the factory can use the envelope to easily see where to mount the parts, while the envelope does not appear on the BOM.
We noticed that in Creo 8 this would result in problems when modifying the Envelope (due to face IDs changing). Now, in Creo 10.0.4.0, this problem seems to have gone away, which is great. However, the company advising us told us Envelopes shouldn't be used in this way officially.
My question therefore is: Is it a coincidence this problem has gone away, or can we assume this way of working will work in future versions as well?
And also, is the advising company right that Envelopes can't/shouldn't be used to constrain things to?
The envelope uses simple geometry to reduce memory usage and looks similar to the components it represents. It is intended to reduce computational burden of the GPU/CPU in the context of large assembly management. It is not a top-down design tool.
I would take a look at skeleton models to locate/constrain components in assembly mode for your designs. Skeletons are designed to support the use case that you need. If you feel that skeletons are not the best tool for you, then provide some more detail on why and someone will likely offer some options.
We could use position skeletons. However the most important limitation for us is that we can't create links between parts (due to PLM revision management). So a position skeleton can't be linked to an assembly and geometry skeletons can't be used at all. So position skeletons are an option, but only as a "dumb" model with no ties to the assembly it's supposed to represent.
That's why the way envelopes work now is preferable for us.
I understand the envelopes aren't meant to be used this way. What would be the consequence(s) of constraining parts to an envelope in an assembly?
The main consequence is probably manual rework as you have found.
I have to question why your company is using Creo Parametric if links between parts are not allowed (rhetorical question). This negates many of the potential benefits of a history based parametric modeling paradigm.
Even with this limitation I would create design assemblies that do not get checked into the PLM system. These assemblies can then exploit the full suite of design tools available in Creo to create designs and update them parametrically. You would then create a PLM version of assemblies/parts that get checked into PLM. You can make the external references of the PLM versions independent.
I have to question why your company is using Creo Parametric if links between parts are not allowed (rhetorical question). This negates many of the potential benefits of a history based parametric modeling paradigm.
We were using Creo Elements which is no longer supported. Many opted for SolidWorks but we went with Parametric because it could open native Elements files. In my experience, and that of many of my colleagues with parametric modeling experience, cross linking between parts and assemblies creates problems in revision management in PLM systems. You also get problems when you load a part but not its linked part.
Even with this limitation I would create design assemblies that do not get checked into the PLM system. These assemblies can then exploit the full suite of design tools available in Creo to create designs and update them parametrically. You would then create a PLM version of assemblies/parts that get checked into PLM. You can make the external references of the PLM versions independent.
Yeah that would work. However, that would require us to work locally for most of the design process. Sounds like we have to accept either using "dumb" position skeletons or accept doing manual rework possibly in the future, right?
Thanks alot for helping by the way, much appreciated!