Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations MintJulep on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Relating part expressions (within an assembly) to arrangements in NX5

Status
Not open for further replies.

RobLN

Mechanical
Oct 29, 2003
152
Is it possible to link changes to constants contained in a part expression to specific arrangements within an assembly?

For example, I can modify the relative position of 2 parts rotating about the same center by making the angular dimension 'arrangement specific'

So, I should be able to link a constant (loaded in the expressions) within a part to specific arrangements so if the part is flexible (like a spring) the result would be an assembly which can drive the part via the arrangements. Or should I be doing this another way??

Any advice greatly appreciated...
 
Replies continue below

Recommended for you

For things like springs, the generally accepted approach is 'Deformable' Components.

However, since you're using Arrangements, there is an alternative approach which might in the end prove easier to implement. You could create your spring with several different lengths in the same part file but using a different reference set for each length. Then when you create your assembly and you define your arrangements, you can suppress a component and replace it with the same part file, just using a different Reference Set, with each arrangement defined. This way as you swap arrangements the 'length' of the spring can be changed as needed. And this won't interfere with things like Parts Lists, since as far as the system is concerned, no matter which arrangement you end up using, all of the components are exactly the same since the Reference Set does not change which component the assembly thinks is loaded, just which 'version' of it is, which in the case of a spring is only to accommodate a different length.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Thanks for your advice on the method. I now need to go and work out the reference sets and how to define them within the part. I've defined the reference sets i.e. with new names but associating those sets to the expression I need to change is yet another question... I'll see if I can work it out.

Regards

R.
 
The easiest way to do that is to...

File -> Import...

...a copy of the same part file back into itself. When you do you will get a complete, fully parametric copy of your original model with a complete set of duplicate expressions and features. Just edit the second set of expressions (you will recognize them since we 'hash' them so as to reuse the original expression names) to your desired alternative values. Then just create two Reference Sets, selecting one Solid Body for each.

Note that this can be repeated as often as needed, but once you get past 3 or 4, perhaps a Deformable Component might be better.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
After reading this don't forget to read John's opening line the deformable part solution is probably the most elegant.

That said upon reading your question about the arrangements in question I might add something about interpart expressions at least in terms of developing the method a little further. Many times you will find that in an arrangement a compression spring in particular is sandwiched between two other moving parts. I varying the length of the spring all you really wish to do is measure the distance between those two and use that to drive the spring length.

You can do that with a measurement expression and then use that as the parameter that drives your deformable spring. You could also use linked interpart expressions which is I think what you were guessing at in the original post, but they are only any good to you if there is only a single instance of the spring in your assembly. Possibly the best thing with deformable parts is that if you have the same spring in two locations then you can set each to a different length.

You would also avoid multiple instances of the same component in your assembly to support your arrangements, which could just become confusing and a little bit difficult to manage.

Best Regards

Hudson

www.jamb.com.au

Nil Desperandum illegitimi non carborundum
 
Thanks for your further thoughts on this topic. John, I see the concept of importing the part into a part. Trouble I'm having is that the format > reference sets is pretty vague to use.

There doesn't seem to be a positive display/feedback of what is 'on' and what features are 'off'.

Also in the reference sets I have, I only seem to be able to modify one condition (the wound state) Others eg. unwound, don't seem to be selectable. How can I define reference sets for both the wound & unwound state...?

I can use the deformable state function very well within part. I set up the no. of turns expression to be the selectable variable for adjustment no problem. I apply this to the helix & the associated tube. However, if I try and modify the selectable variable within assembly (right click > deformable part) I get the box to change the variable and the spring helix changes but not the associated features. (but the whole spring updates fine in part mode...)

I tried to select all of the other features in the history but then I don't get any result either in part or assembly. I guess I'm not selecting the right features within the deformable part process. Not sure what though!! - NB my spring is a single united solid body...
I get a variety of error messages:

1. Multiple bodies exist in the definition of the deformed part. (stange as I only have on solid body??)

2. Cannot copy feature.
Seems like I'm close to getting it but not quite doing something right...

3. You have not specified all required references This can cause unexpected results or failure. (doesn't really specify in the help what I should be doing though!..)

I've attached my attempt at deforming the spring. Another thing I can't seem to do is edit the features of the user defined deform after its initial creation. Which is annoying...


 
 http://files.engineering.com/getfile.aspx?folder=71893226-7c23-46a6-9d72-3b26276051fc&file=torsten-spring-JRB02-03-09.prt
OK, try this example. I removed the Datum CSYS and replaced it with a single Axis and a Point which I can then include in the Deformable Components as well as the Reference Set (Datum CSYS's can't). Now when you place the spring in your Assembly the reference axis comes with it and you also have objects, the Point and Datum Axis, which can be used to position (with Constraints) the spring in your assembly.

As for discovering the contents of a Reference Set, while in the master part, go to...

Format -> Reference Sets...

...and select the 'Model' Reference Set. If you look at the screen all the highlighted objects are already part of that Reference Set. To 'add' and 'remove' items to the Reference Set, just select the '+' or '-' buttons on the right side of the dialog and follow the steps outlined.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Sorry - seems like this one will run on a bit. I have given the model you supplied a try in my assembly. I'm getting some strange things happening:

1. The error message (see PDF attached)
2. The spring is added to the assembly OK. But the feature on the spring 'extrude 11' doesn't appear. (something to do with 'Missing string??)
3. If I look at the part navigator tree I see that the deforamble feature has a red cross icon on it.
4. If I double click on the spring in the assembly this Number of turns dialog appears. The deformable part works It changes the bend angle of the spring OK.
5. To move the spring right click > move doesn't appear - there is a different smaller menu with no move option... why is this?

I have to say this deformable part command has to be one of the least user friendly / intuitive I have ever seen in a CAD system.

Furthermore, from your last post, there seems to be a exclusion on using the default datum CSYS within the deform command, which is daft because the CSYS is there by default. There is no mention of its incompatability with the deform help files either.

Maybe I'm missing something here...
 
 http://files.engineering.com/getfile.aspx?folder=8c1bcde7-1e8b-492a-8c4b-25c54cead87e&file=add-part-error.pdf
Hi John,

Thanks for getting back, I can't seem to open that file (rev D of the spring) my NX5 won't open it. Seems that the NX you're using is newer than mine. (Though the other previous files of the spring that you sent me opened fine)

Regards

Rob.
 
 http://files.engineering.com/getfile.aspx?folder=dadeaa0e-520f-4328-a61d-0f0529b9fc40&file=part-open-error.pdf
Sorry, I was playing around with some stuff in NX 6 and saved it without realizing that I was overwriting the original file. MY BAD!

OK, try this one, which is an NX 5 part file.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Thanks for getting back yet again. Still no success with that spring in the assembly; I'm getting a missing section string error upon insertion into the assembly.

Sadly any subsequent attempts to deform are met with the same missing string error; my skills in NX5 are not good enough to work this one out.

I did have several goes at running the tools > deform command but the explanations of exactly what to include in terms of 'features' and then 'references' are thin on the ground.

What is the difference between the two?? As the reference step actually asks to 'add geometry'!? Haven't I already done that in the features step...

Appreciate your support (& patience..)


 
I have no problems inserting that spring into an assembly and deforming it, none whatsoever. I even reposition it into orientations that it was not built in and it still works just fine. What maintenance level are you at? I'm running NX 5.0.6.3.

As for the reference step, anything NOT included in the geometry step will show up as a needed item in the reference step. For example, let's say were modeling something like a piece of hose. You would create a spline and add a tube feature. When defining the deformable part you only include the tube feature when selecting the geometry so therefore you will need to supply the spline when adding it to the assembly.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
That is really strange, I do keep on getting this 'missing string' error. I even started a brand new assembly with just 1 other part in it to ensure that there is no other information there causing an issue.

There is no special fancy way of bringing in deformable parts is there? I just added component in the usual way...

My NX5 is NX 5.0.4.1. Maybe I need to be upgraded..

 
Nope, a deformable component, in terms of how you add one to an assembly, behaves just like any other component, only you'll be given the opportunity to link to or enter some component specific items which will then be in control of the size and/or shape of the component in that particular assembly. Other than that, and the fact that a 'promoted' body is added to the assembly file itself, the component will behave like any other in terms of being able to constrain its location and orientation, including them in Parts Lists, etc.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor