Cancel
Showing results for 
Search instead for 
Did you mean: 

Expression Logic

Experimenter
Experimenter

I am looking for a way using expression logic to limit a number of wedges assembled together based on the angle of each wedge and the total angle of the assembly of wedges.

 

In the attached file, I have an assembly of 8 wedges each with angle B. The total angle of all the wedges in the assembly is angle A. The limit of angle A is less than or equal to 120 degrees. Angle B could be 3 different angles. Wedges 3-8 are inserted based on a desired total of angle A, but cannot exceed 120 degrees. I would like to come up with a way based on this that as I am inserting wedges 3-8 either the expressions force another angle on a particular wedge so Angle A does not go over 120 degrees or if that is not possible, just forces the input to 0 so the wedge and subsequent wedges are forced off.

 

I know conditions can be set up to flag an expression that does not fit into the applied condtion as its defined, but this is not very obvious to the user changing the various wedges out in the assembly.

 

Hopefully this makes sense.

 

Thank you for any help anyone can provide.

10 REPLIES

Re: Expression Logic

Siemens Phenom Siemens Phenom
Siemens Phenom

The attached file is missing.

 

Scott

Re: Expression Logic

Experimenter
Experimenter

Added the file. Hopefully it stays there this time.

Re: Expression Logic

Siemens Honored Contributor Siemens Honored Contributor
Siemens Honored Contributor

Hi @RKulchy,

 

Angle B could be 3 different angles

But are the wedges all the same angle at any one time?

 

Regards, Ben

 

Re: Expression Logic

Experimenter
Experimenter

No, they could be different. As an example, lets say the versions of angle B are 10, 20, 40. The setup could be 10, 10, 20, 40. Or all 8 could 10's. Or it could go something like 10, 20, 40, 20, 10.

 

I have also created an expression that sums the total angle of the 8 wedges thinking this may be part of the check in an expression or expressions to help do what I am looking for. 

Re: Expression Logic

Siemens Honored Contributor Siemens Honored Contributor
Siemens Honored Contributor

Since the wedges can be three different sizes, how are you controlling the different sized wedges?  Part Family, Deformable Part, PTS, other?

Re: Expression Logic

Experimenter
Experimenter

They are part family objects and I am just swapping in and out the ones I want to use.

Re: Expression Logic

Siemens Honored Contributor Siemens Honored Contributor
Siemens Honored Contributor
Did you get any further with this? After your last couple of comments about the wedges beign different angles and doing this by replacing part family members I started looking into using Product Template Studio (PTS). Before looking at PTS I was somewhat successful using interpart expressions and driving the angle of the wedges and suppressing the 7th & 8th instances if the first 6 wedges exceeded specific angles. I don't think you're going to be able to accomplish this task without using some form of automation or PTS. In PTS there's a Replace Component rule that can be driven by conditional expressions. You'd basically have to build a dialog with a pull down list of angles for each of the 8 wedges and then PTS would read the expressions and replace the components based on your final selection. I can upload my original files if you're interested in my first attempt (non-PTS).

Regards, Ben

Re: Expression Logic

Experimenter
Experimenter

I have not had anymore time to play around with this more. And as of right now we do not have PTS. I am trying to get the group that handles all of out NX licenses to get us a licenses for it, but its not high on thier list of things to do right now as we are in the middle of an upgrade and testing it. However, I thought PTS would be the better avenue for this as well.

 

I would definately be interested in seeing your non-PTS attempt at this. I am curious to see how you did the interpart expressions.

 

Thanks,

Randy

Re: Expression Logic

Siemens Honored Contributor Siemens Honored Contributor
Siemens Honored Contributor

Open assembly2, unpack wedge-15 and use Replace Component to replace it with wedge-18.  The last wedge-15 will become suppressed.  Replace the remaining wedge-15's with wedge-18's and the second to last component will become suppressed.  Not the best example and the constraint updates can be unpredictable, but you might get something out of it.

 

Regards, Ben