I have a simple subassembly, one part of which (Arm) will vary in length. Then I want to create a master assembly containing 50 of these subassemblies, each with a different Arm length. Using an iPart for the Arm, and making the subassembly an iAssembly, should get me there. See my earlier post.
For the real thing, though, I'm trying to follow a good skeletal modeling workflow, so I'm deriving my parts from sketch blocks in a layout part (using MakeComponents). But then when I make an iPart from the derived Arm, I can't seem to include the parameter I need (length) in the table. Is this simply a limitation of derived parts? Or am I missing something?
The length parameter is exported (box checked) in the original layout file, and I can see it (but not change it) in the parameters dialog for the derived Arm. But it's not available to include in the iPart table. This seems to apply whether I use Derive Part, Make Part, or Make Components to derive the Arm, which makes me think it's simply (and reasonably!) a limitation in the software.
What I'd REALLY like to end up with is this: An Excel sheet lists the arm lengths. I push a button and a master assembly of 50-100 of the subassemblies is created, each with a different Arm length from the table. (Of course, I'm perfectly happy with only half my wish: I manually build that master assembly once, but then I can edit the table and user parameters to adjust it.)
Thanks for any insight! The layout file with the sketch blocks, and a derived Arm, are included. I'm using Inventor 2014.
Solved! Go to Solution.
Solved by johnsonshiue. Go to Solution.
Hmm, I've gotten no response, but all my experiments seem to indicate that derived parts don't "carry over" their original parameters into an iPart table.
So I'm hunting, now, for a workflow that will get me where I want to be (a master assembly, composed of subassemblies, each with a different Arm length.) Most importantly, I want to be able to change the list of Arm lengths later, and have the master assembly follow along.
My best guess right now is to make the Arm iPart directly in my master part, instead of deriving it, but any suggestions of things to try are welcome.
what about an Iassembly?
http://beinginventive.typepad.com/being-inventive/ipartiassemblyexcel/
Hi! I would like to understand the design objective better. I took a look at Arm.ipt and Layout.ipt. Arm is linked to Layout. And, Layout's parameters show up in Arm. Are you trying to make Arm in iPart factory and you would like to configure the linked parameters on the iPart table?
Thanks!
That's correct. I want to make Arm.ipt an iPart factory, varying only one linked parameter: length. But I couldn't find a way to get "length" into the iPart table.
Again, the ultimate goal is to create a large assembly, consisting of 50 copies of a subassembly that contains Arm. I want each of the 50 subassemblies to have a different Arm length (driven from a spreadsheet list of lengths). And I'd like to be able to change the list of lengths and have the main assembly update appropriately.
Thanks for the reply! It helps me understand the requirement better. "lengh" is already a parameter linked to Layout. It should always be in sync with Layout. If it is allowed to be added as a configurable item on the table, the association will be broken.
Instead of adding "length" as a configurable parameter, you need to change your design so that the actual length of Arm can vary within the Arm part. One simple idea is shown in the attached file. The key here is to create a configurable feature which is allowed to manupulate the geometry. There are several other ways to achieve the goal. But, the attached one might be the simplest and the most straight forward one. Please take a look and let me know if you have any question.
Thanks!
Thanks very much, Johnson, that explains a lot. And it answers what was really, I guess, my fundamental question: can you carry parameters across multiple "levels" of derivation into an iPart table. The answer seems to be no, which is fine. Knowing that lets me pick a good way to do what I'm after. (As always, there are a zillion ways to do a task, but I'm always looking for the "best practice" way.)
So to summarize, any parameters that I want to add to the iPart table need to be variable *at the level of the part*. You accomplished this with a Move Face feature in Arm.ipt to change the length. Another way I found in the meantime is to simply create the arm part directly in the layout.
My case is simple, but what if I want to follow good skeletal modeling practice (all parameters controlled from one "master" file) in a more complex case, with multiple varying parameters and multiple iParts? What's the best approach then? It seems that I need to either build the iParts directly in the master file where the parameters are defined, or perhaps keep an external Excel spreadsheet with all parameters and link that to all my iParts.
Thanks again for the excellent education! I'm learning by leaps and bounds!