Help - How should one deal with components requiring flexibility?

I will describe my problem with a simple example. An air cylinder consists of 2 basic components - the cylinder and the rod. The easiest way to
model the cylinder so that it can move properly would be to have an assembly containing 2 parts - the cylinder and the rod. Now I have the freedom to slide the rod in and out of the cylinder. Following are some of the problems that arise:
1. If I save the assembly using my companies part number for the cylinder as the file name, what should I name the cylinder and rod parts?
2. When I use the air cylinder assembly in another assembly, how can I allow it to move? I dont want to solve it as flexible because multiple flexible instances are not allowed in one assembly. I dont want to dissolve the subassembly because then my feature manager tree no longer matches my desired BOM. I dont want to use configurations of the subassembly because I could quickly end up with many configurations.
How have you guys dealt with some of these issues? Any advice would be greatly appreciated.
David
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
What I would do is Have a rigid and a flexible configuration in the main assembly, and 3 configs in the subassembly.
The subassembly would have a config with both the cylinder and the rod in a defined state "Default", and a config with only the cylinder shown "Cylinder", and a config with only the rod shown "Rod".
In the Main assembly you would have 2 or 3 instances of the cylinder. In the rigid config you have the Cylinder in its "Default" config this is for drawing purposes so your BOM is correct.
In the flexible config you would have 2 instances of the Cylinder one is the "Cylinder" The other is the "Rod" mate these apropriately and you have a flexible configuration for checking movement and clearance.
Note that you would have any unused instances of the cylinder suppressed in the configuration you use to create your BOM so that your quantities are correct.
Regards Corey Scheich

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
As much as I try to avoid in-context, this may be a case for it. Make the cylinder a part. Set the clevis on the end of the rod to be coincident to the end of a sketch line in the cylinder part. Set the dimension of the rod length by an in-context relationship in the upper assy. After you move stuff in the assy, a rebuild will update the cylinder.
The problem with using flexible assy's is that, as you point out, you can only have one instance. However, you can create more than one config of the assy, and then make one of them flexible. However, flexible assy's sometimes don't play nicely.
WT

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Use "dash" numbers for sub-components. Say main assy is "12345.sldasm", Cylinder would be "12345-1.sldprt" & Rod would be "12345-2.sldprt".
Multiple flexible assemblies are allowed. I use them all the time. All you need to do is create multiple configs in your assembly & use a different one for each instance in the same assy.
Matt B.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
This is a good use for derived configurations.
Simply make as many derived configs as you will have need of the assembly and number them 1 to N. Each one can be set to flexible in the main assembly. Since the configs are derived any changes to the parent will be applied to the children.
For part numbering the dash number approach seems reasonable. The alternative would be to use the same part for both cylinder and piston. Now that we have multibodies you can model both in the same part and have a single part number that covers both parts in your assembly and the assembly negating the need for any part number magic. Since both are revolved parts you can even use a contour sketch for both bodies.
David Didelot wrote: ...snip

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hi David,
On the part numbering topic, we use the "standard" company part number and then a suffix like PARTUMBER_01, _02, _03 and alternately PARTNUMBER_Motor, _Shaft, etc. This works very well for us. When I have seen this go awry is when your numbering system pattern is infringed upon by these suffixes.
For example if you have a system that has a base number NNNN-NN, these "slots" in the pattern should never be populated with anything other than the company part number. Suffix as you wish, which will generally not harm anything and the NNNN-NN portion will always "lead" the other data and keep it grouped.
For your flexible assemblies, how ever many instances your model needs, regardless of nested sub-assys, that's how many unique configs you need for a given assy model. I consider this to be ultra lame thing to have to do, particularly with the emergence of PDM which generally locks your model at the point of release, of course with nobody knowing that 2 years from now, you do not have enough configs to support a given assy without errors . . .
But that's another discussion for another day.
Flexible assemblies are great, but the one-for-one instance/config roadblock is a real limitation that keeps this from being the great feature that it hopefully aspires to be.
Regards,
SMA
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.