I have read this thread with interest, especially regarding whether to "pull" or "push" interpart expression links. And I note that Taylor you recommend "pull" IPEs.
We work from a number of template assys that we clone for each job and that make use of common parts (whose size may change) in each job. For example:
Template Assy A
- Component 1
- Component 2
Template Assy B
- Component 1
- Component 2
One of these will be cloned for each job e.g.:
Job Assy B'
- Component 1'
- Component 2'
Some expressions in these components e.g. Height, vary from assy to assy, therefore we choose to "push" the expression from the assy into the component. This allows us to use the same (shared) component in each (template) assy.
This is a long term strategy. Are we going to have problems in future with "push" IPEs?
Or is it just that there will be more tools built around "pull" IPEs. Note that we don't want to have to re-link anything after we have cloned for a job.
Thanks in advance.
what method do you suggest me if in my main assembly I want to pilot an hydraulic cylinder sub-assembly constraint distance stroke ?
>> Or is it just that there will be more tools built around "pull" IPEs.
This one. :-)
While there is some philosophical debate around whether "common parts whose size may change" are really common parts anymore, the technique you describe still works fine, and should continue to work into the future. But we'll not be emphasizing that as a preferred technique, nor do we have plans to enhance the interactive tools to make that workflow any easier.
Hope that helps!
Just to clarify my understanding of your question, are you asking about the situation where you have a pneumatic cylinder in an assembly -- potentially multiple times -- with each instance potentially needing to represent the cylinder extension at a different position?
If so, then my recommendation would be an Assembly Constraint Override. This allows a local instance of the subassembly to store a unique set of positioning constraints, independent of both the original design assembly and of any other instances of that same subassembly.
Description in the NX docs is here:
Does that help?
thank you for the suggestion, but I know Assembly Constraint Override. The problem using this solution is that I can move the piston rod with a stroke that the cylinder doesn't support. For example I've a cylinder with a stroke of 1000 mm. In the cylinder I've a distance constraint named stroke 0-1000. In the main assembly, I'd like a constraint distance that pilot the cylinder stroke. Using this assembly constraint distance I can move the piston rod that move others components and permit me to analysis assembly behaviour.
I was wondering if anyone had any detailed examples that they could send me for my following question.
When designing a mould base I create each plate in separate files (Top Clamp Plate, Cavity Plate, Core Plate etc). Then I assemble them together in an assembly file.
I know I can use WAVE Geometrey Linker to link holes and certain things together (Screw hole patterns, dowel pins etc). Say if I want to change the Length and Width of all the plates I have to go into each file and do it manually.
Is there a way I can create Expressions in the assembly so say if I change the Length it will do it to each separate plate? I know I can use Excel to do this but im not sure how.
I would like to use this to change the length, width, and height of each plate. For example the bolt hole and tubular dowels sizes and positions as well.
If anyone can email me an Excel file with examples and detailed instructions on how to set it up in my own file that would be amazing and I would be hugly greatful for it.
This could be done with simple Sketch and modeling techniques. Nothing fancy, just basic commands! No manual linking interpart expressions, no Mold Wizard, no Excel ect.
Because I see that this as a common question, just while ago I submitted comprehensive article to NX Design Knowledgebase with sample assembly to illustrate Design Automation in NX covering your query. As soon as it gets approval, I will let you know.
To clarify, are you trying to do this for one cylinder, or for multiple instances of the same cylinder?
For one cylinder, the constraint can just be added within the cylinder subassembly -- and with NX 11, the 0-1000 limits for the stroke can be added directly to the asembly constraint, retsricting assembly constraint-based motion to that range.
there are cases where the cylinder is added one time and cases where the same cylinder have multiple instances.
I know about NX11 because I'm part of NX beta program, but the solution is needed now.
That is very very elegant. We will be using this approach for sure.
The designer just adds and positions the points (the value added part) and the holes, components and constraints (required but no design value add) are automatic.