Page 1 of 1

Why can't my Assembly move when I insert it into another Assembly?

Posted: Fri Jun 03, 2022 3:11 pm
by Glenn Schroeder
Hello,

Click on the sub-assembly in the main Assembly tree and select the icon shown below. That will allow it to have the same amount of freedom it has in its own file.

image.png


That icon hasn't always been available, so if you're using an older version of SW and it's not there, you can still get there.
Select the Component Properties icon instead . . .

image.png

. . . and select "Flexible" under "Solve as".

image.png

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Fri Jun 03, 2022 3:19 pm
by bnemec
Nice!
Is there a way to set an assembly to be set to Flexible whenever it is inserted into another assembly? Sub-assemblies like hinges or dampers are inherently flexible and should default to that most places they are used.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 8:17 am
by Glenn Schroeder
bnemec wrote: Fri Jun 03, 2022 3:19 pm Nice!
Is there a way to set an assembly to be set to Flexible whenever it is inserted into another assembly? Sub-assemblies like hinges or dampers are inherently flexible and should default to that most places they are used.
Not that I'm aware of, and I'm fairly certain there isn't one.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 9:53 am
by bnemec
Glenn Schroeder wrote: Mon Jun 06, 2022 8:17 am Not that I'm aware of, and I'm fairly certain there isn't one.
OK thanks.

Another question if you don't mind. What if I have several occurrences of one sub-assembly inserted and set to flexible, but they are used in different positions. For example, the same hydraulic cylinder used for several functions. Is there anything I need to do so that each occurrence can move independently?

Also, if the cylinder assembly model had several configs; extend, retract and float. Then in the upper-level assembly can one occurrence be using the "float" config and be set to flexible while another occurrence of the same cylinder sub-assembly is set to use the "extend" config to lock the connected linkage in the upper-level assembly?

I guess that was two questions.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 9:59 am
by Glenn Schroeder
bnemec wrote: Mon Jun 06, 2022 9:53 am OK thanks.

Another question if you don't mind. What if I have several occurrences of one sub-assembly inserted and set to flexible, but they are used in different positions. For example, the same hydraulic cylinder used for several functions. Is there anything I need to do so that each occurrence can move independently?

Also, if the cylinder assembly model had several configs; extend, retract and float. Then in the upper-level assembly can one occurrence be using the "float" config and be set to flexible while another occurrence of the same cylinder sub-assembly is set to use the "extend" config to lock the connected linkage in the upper-level assembly?

I guess that was two questions.
I don't like giving definitive answers to questions if I'm not sure, and I don't have time to test right now, but I will come back and edit this in the future. (Edit: See the response below from @DennisD.)

In the meantime, for your first question, I believe that will work fine. You just need to set each instance as flexible.

Second question, yes, I think that's correct.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 10:12 am
by DennisD
bnemec wrote: Mon Jun 06, 2022 9:53 am OK thanks.

Another question if you don't mind. What if I have several occurrences of one sub-assembly inserted and set to flexible, but they are used in different positions. For example, the same hydraulic cylinder used for several functions. Is there anything I need to do so that each occurrence can move independently?

Also, if the cylinder assembly model had several configs; extend, retract and float. Then in the upper-level assembly can one occurrence be using the "float" config and be set to flexible while another occurrence of the same cylinder sub-assembly is set to use the "extend" config to lock the connected linkage in the upper-level assembly?

I guess that was two questions.
Yes, you can have multiple instances of a floating subassembly and they are treated independently. I do this all the time using just the example you cite - cylinders. I have three configurations: Extended, Retracted, Free Stroke, where the Free Stroke has a limit distance mate that allows travel between the extended and retracted positions. I do this for springs as well.

In the top level assembly the flexible subassy is influenced by its mates in that top level, within the freedom allowed by that configuration of the subassy.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 10:27 am
by bnemec
DennisD wrote: Mon Jun 06, 2022 10:12 am Yes, you can have multiple instances of a floating subassembly and they are treated independently. I do this all the time using just the example you cite - cylinders. I have three configurations: Extended, Retracted, Free Stroke, where the Free Stroke has a limit distance mate that allows travel between the extended and retracted positions. I do this for springs as well.

In the top level assembly the flexible subassy is influenced by its mates in that top level, within the freedom allowed by that configuration of the subassy.
Thanks Dennis. Do you model springs as assemblies? I assume to get better movement behavior in upper level assemblies?

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 10:48 am
by SPerman
DennisD wrote: Mon Jun 06, 2022 10:12 am Yes, you can have multiple instances of a floating subassembly and they are treated independently. I do this all the time using just the example you cite - cylinders. I have three configurations: Extended, Retracted, Free Stroke, where the Free Stroke has a limit distance mate that allows travel between the extended and retracted positions. I do this for springs as well.

In the top level assembly the flexible subassy is influenced by its mates in that top level, within the freedom allowed by that configuration of the subassy.
This is exactly how I handle cylinders / actuators as well.

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 11:34 am
by DennisD
bnemec wrote: Mon Jun 06, 2022 10:27 am Thanks Dennis. Do you model springs as assemblies? I assume to get better movement behavior in upper level assemblies?
I saw this technique about ten years ago and jumped all over it. It simulates a spring in an assembly and is easy to modify for the wire and coil diameters. It is only a little more involved to add coils, but once a person builds a library of these it is so handy!

Re: Why can't my Assembly move when I insert it into another Assembly?

Posted: Mon Jun 06, 2022 11:55 am
by DanPihlaja
bnemec wrote: Mon Jun 06, 2022 9:53 am OK thanks.

Another question if you don't mind. What if I have several occurrences of one sub-assembly inserted and set to flexible, but they are used in different positions. For example, the same hydraulic cylinder used for several functions. Is there anything I need to do so that each occurrence can move independently?
Yes, this is entirely possible. Warning! With larger assemblies, flexible becomes flakier and flakier.

Also, if the cylinder assembly model had several configs; extend, retract and float. Then in the upper-level assembly can one occurrence be using the "float" config and be set to flexible while another occurrence of the same cylinder sub-assembly is set to use the "extend" config to lock the connected linkage in the upper-level assembly?

Yes, this is also possible. If you have 20 instances of an assembly, you can designate 15 of them to be flexible, but the other 5 can be specific configurations. You can even make a pattern of sub assemblies and designate SOME of the pattern instances as flexible and some as derived from a specific configuration. And when you move the flexible ones, they do not affect any of the others (this includes the original one).

I guess that was two questions.

See answers above in red