Community Tip - Learn all about PTC Community Badges. Engage with PTC and see how many you can earn! X
PTC Tutorial on Creating Associated Parameters: I need a bit of clarification
Here are the specific instructions from PTC Support on:
How to create an Assembly Level Relation that controls the variable parameter value defined under a flexible Component in Pro/ENGINEER, Creo Elements/Pro and Creo Parametric.
------------------------------------------------------------------
asm_param:FID_#=param
Where :
param is the assembly level (driving) parameter
----------------------------------------------------------------------------------
Item1) and Item 2) are clear enough.
Item 3) is a bit nebulous to me.
What is to be done in the "New Values" column?
Item 4) is also a bit confusing.
The relation uses the FID, which id a Feature ID.
What do you write to actually drill down to the dimensions inside the feature?
If I have two dims to family table, I would assume that I would need to parameters, correct?
I would also think that I would need two relations, one for each dimension, again, correct?
Etc., etc., etc.
This step needs a lot of clarification for me to truly grasp it.
I don't really want to open another can of worms , however I want to make sure that we are on the same page, because I am suspecting a possible misunderstanding.
I see no issues as far as your procedure working, but perhaps you are doing something that is unnecessary, because you mention that:
My base part contains no predefined flexibility.
It does, however, have two added parameters named Diameter and Length.
So, unless you are using these part-level parameters in some way that you didn't mention in your post, they are quite unnecessary as far as the family table example in your screenshots is concerned. The key step is creating the associated parameters for the varied dimensions d0 and d1 (namely TABLED_LENGTH and TABLED_DIAMETER), which is what you've done.
You are correct.
Good Catch.
I saw that when I was going back through the process for the second assembly, in order to write up our department instructions.
I just selected the dimensions from the part, and didn't use those parameters at all.
That will not be part of my instructions.
Thank you for mentioning it, just the same, just in case I had blown past it.
Pre-defined flexibility is just a template for use in an assembly. It doesn't do anything in the part/component. It is there to cause the assembly module to prompt to create flexibility structures in the assembly model. It's only in the assembly that meaningful changes are managed.
This fact is a shame/problem as it allows users to do things they should not do; making variant parts that will look on the BOM like they aren't variants. The only thing, I believe, that stops them from doing a great deal of damage is users being lazy. I would prefer that flexibility be driven entirely by reference to the description in the part/component because it's only when editing the part/component that a user can properly describe all the effects allowed for the intended changes.
PS - nested family tables can be terrible things to manage. If you can, just flatten them to a single level. As much as I have gotten good use from family tables (and resist exploding them into piece parts) I have gotten heart burn diagnosing problems with nested ones. In this simple case it doesn't matter much, but the next thing someone makes one that has 80,000 fasteners in 12 levels of folders. Gaah!
I see now that predefined flexibility is more for when you want to use it to seat a part in an assembly, like a curved version of label onto varying diameter curved surfaces.
The only reason that we were doing it here is that we were unaware that we could use the "Make Flexible", feature in an assembly, without predefining it in the part.
I also see that Associated Parameters, when not used in a more straight forward fassion, and not in a family table, could allow you to have several copies of the same part in an assembly, each in a different configuration.
Complicated as Associated Parameters are to understand, they are very simple to use once you do understand them.
Thanks again Paul
--------------------------------------------
I agree completely, that Nested Tables could be a mess to manage.
We use them for simple delineations, like in this case, to separate the Fine and Coarse versions of very simple items.
We also use them for raw material plate and sheet, to separate different materials, again, of very simple items.
Thanks for sticking with this till now.
I am going to keep these instructions, and add them to my list of tutorials.
They are very specifically written.
---------------------------------------------------------------
OK, now that we are past the actual exercise of creating and using the associated parameter, I have a couple of comments, and/or questions:
1) What I see is that the part_1.prt has no predefined flexibility.
The flexibility is only introduced at in the assy.asm.
I checked the part, and there Flexibility is "Not Defined".
2) How would I apply this to my family tabled assemblies?
Could I do the following?
Bring in one, single, copy of the base part.
Create two associated parameters, one for DIAMETER, and one for LENGTH.
Somehow place these associated parameters into my family table to control them for all the instances.
I know that there is a lot more detail involved, but am on barking up the correct tree here?
Meanwhile, I am going to try to test this out.
Yes, you've got it! And you'll see that when you are building your family table, you can choose, when "adding columns", that you can choose to use the "Dimension" or "Parameter" (remember to look in components) item types. In either case, it is the associated parameter will be what is inserted as the "variable".
I have a test part and assembly, and have followed your instructions (My new Associated Parameters Tutorial) and have been able to bring the associated parameters for Diameter and Length into my family table.
It is similar to before, but I suspect much more stable and robust in the end.
I will continue this test and keep you posted.
I do believe that the clouds have parted, and the sun has shown through.
Thanks again for hanging in there till now.
I believe that I understand mostly what is happening.
I may have a philosophical question or two, but I am on my way.
Again... sorry to jump in only once every 453 responses. I guess I'm debating whether to even post or just go find this Associated Parameters tutorial and figure it out myself.
I'm sure I've lost the plot here - but I performed these steps:
From here, I added some Included assembly items (rather than bulk items - because I hate them and they can die a slow horrible death for all I care). At this point, the family table seems to work properly and as I would expect.
I guess I don't see why we needed the Associated Parameters at all. Picking the dimensions in the Family Table tool seemed to do all the work for me without all the extraneous steps.
I suppose I should've just tried the tutorial. I'm sure there's a good reason.
Well, the rather subtle point is that you are using associated parameters, seemingly without realizing it. The system has created them for you when you picked for your family table columns those "flexible" dimensions.
And I advocated against this approach because from my (admittedly not very extensive) testing, I learned that:
1) I didn't get to "name" the columns of the family table - they are named something like IN_D_1:FID_XXX"
2) if in the same assembly I added a 2nd flexible cylinder for which I wanted to specify its length and diameter for the family table instances, then this approach didn't work any more (Creo created the family table, but upon saving and verification, the family table columns disappeared...)
EDIT: scratch point #2, "auto-creating" the associated parameters seems to work (at least in Creo 3.0). I still don't trust it
That is what I did originally but had those dimensions flexible in the part as well.
When I brought the dimension columns into the family table, the would verify, but then when I left and came back they would be gone.
On one assy, I tried several times and they finally stick.
On the second assy, I couldn't get them to stick at all.
I closed the part, shut down creo, and when I went back in, they studk the 1st time.
Seemed kind of unstable to me.
They are still like that, but I believe that I will change to the Associated parameters when I get some time.