cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Trying to drive part parameters using assembly family table

Newbie

Trying to drive part parameters using assembly family table

I am trying to create a family of assemblies using a family table. I would like to change parameters of the parts within the assembly for different instances of the assembly. Currently, I have duplicated some the part parameters as assembly parameters. I am changing the assembly parameter in the family table, and trying to update the part parameter with a relation that sets it equal to the assembly parameter (i.e. D_1:0 = D_1). This does not seem to be the correct approach. Any suggestions would be greatly appreciated!
6 REPLIES 6

RE: Trying to drive part parameters using assembly family table

I don't fully understand what you are trying to do, do you want different relations for a dimension in each instance of your family?? to do so you need to add some IF ENDIF statements to lock different relations for a specif parameter value. I believe when you manage the relation toolbox, you can use the dropdown menu list to look for a specific part within the assembly, that takes you to the part relation toolbox, but managed from the assembly, will that do? There is another command, used in pro/program, called EXCECUTE, it can be used to pass the values of parameters from top level assembly to skeletons, or components of the assembly. That way you can force a different paramenter value in a component where such value is declared via pro/program If you need any further detail on this let me know, I have some book-like examples[/i]
Highlighted

RE: Trying to drive part parameters using assembly family table

IF you simply want the part parameters changed ONLY when the part is loaded in the assembly, and not have these parameters values "trickle down" and change in the part itself if opened separately, it sounds like what would best suit you is to make the parts flexible at the assembly level. You can make parameter values flexible at assembly, not just physical dimensions. That way the part parameters ONLY change when loaded at that particular assembly. Try it and let me know if this is what you wanted.

RE: Trying to drive part parameters using assembly family table

Thanks very much for the replies. I guess I don't necessarily care whether the updated part parameters "trickle down" or not. The main problem I am having is that I cannot get the family table instance to regenerate itself with the updated part parameters unless I "save a copy" of the instance, and then regenerate. Maybe this is expected behavior? I expected the family table instance would regenerate with the updated part parameter values.

Family Table Parameters

James, Two comments: 1. In the relation you provided you didn't seem to have the session id of the assembly included which may be why the relation didn't work. 2. Using relations this way may be time consuming, besides which you are creating outside dependency you may not want. Another suggestion: make a family table of the part where different instances have different parameter settings, then call these part instances in your assembly family table. This should also eliminate any "double regeneration" problem. David

RE: Family Table Parameters

Thanks again for the help. David - your suggested approach (comment 2) seems to be the way to go. Thanks. Adding session ids to the relation does not seem to work - when creating the family table instance, the session id of the assembly seems to change, which makes the relation invalid.

Use Component ID..

James, You need to use component ids instead of session ids. The session ids for all instances will be same but the component ids will be different. The component id can be found by #Info >> component and pick the component.This will display the component id in the message area. The relation then uses the component id(cid) instead of the session id. For eg: d2:107=d1:CID_78 where "107" is the session id of the driven component and "78" is the component id of the instance.Here you can use component ids on both sides of the equation too. Hope this helps, Rameet