iLogic automation problem

iLogic automation problem

d.salas.lazzari
Participant Participant
741 Views
14 Replies
Message 1 of 15

iLogic automation problem

d.salas.lazzari
Participant
Participant

Hello, I am having a problem with a model that I am analyzing. I have a bottom of a pressure vessel and some I profiles welded to it (FIG 1). I was trying to automatize some process, when the bottom diameter is equal or less thatn 1500mm the I profiles are suppressed (FIG 2 ignore the screws that are not yet automatized), but when it is over 1500 the I profiles vary in number and disposition. The problem is here, when i try to get back from a Diameter equal or less that 1500 to a higher diameter, the profiles are not updating, it seems that some error occurs when iLogic suppress and then unsuppress the profiles. (FIG 3).

 

Hope someone can help me with this, have a nice day to all!

 

dsalaslazzari_0-1672412069652.png

 

FIG 1

dsalaslazzari_1-1672412069546.png

 

FIG 2

dsalaslazzari_2-1672412069582.png

 

FIG 3

 

iLogic rule

 

Anello inferiore.ipt.d0 = HE-DECI-2000-8-50-446.ipt.Di <----internal ring diameter change


If HE-DECI-2000-8-50-446.ipt.Do <= 1500 mm Then
Component.IsActive("BM-IPE120_1:1") = False  <---- suppression of I beams
Component.IsActive("BM-IPE120_2:1") = False
Component.IsActive("BM-IPE120_2:2") = False

' ***Divisione1***
Feature.IsActive("Anello inferiore.ipt", "Divisione1") = False <--- suppression of cuts in the internal ring

' ***Divisione2***
Feature.IsActive("Anello inferiore.ipt", "Divisione2") = False

' ***Divisione3***
Feature.IsActive("Anello inferiore.ipt", "Divisione3") = False
Else
Component.IsActive("BM-IPE120_1:1") = True
Component.IsActive("BM-IPE120_2:1") = True
Component.IsActive("BM-IPE120_2:2") = True

' ***Divisione1***
Feature.IsActive("Anello inferiore.ipt", "Divisione1") = True

' ***Divisione2***
Feature.IsActive("Anello inferiore.ipt", "Divisione2") = True

' ***Divisione3***
Feature.IsActive("Anello inferiore.ipt", "Divisione3") = True	


End If

 

0 Likes
742 Views
14 Replies
Replies (14)
Message 2 of 15

A.Acheson
Mentor
Mentor

You may need to record how its manually done and replicate. The sequencing of steps may be off. Is it the constraints erroring out? My preference would be not to use suppression but rather change pattern qtys and part lengths etc. 

If this solved a problem, please click (accept) as solution.‌‌‌‌
Or if this helped you, please, click (like)‌‌
Regards
Alan
0 Likes
Message 3 of 15

d.salas.lazzari
Participant
Participant

Hi @A.Acheson thanks for taking time to answer, the I beams are adaptive items, they are "modelled" using a curved surface that is associated with the bottom. The thing is, that somehow the adaptivity doesn't work anymore when the beams are reintegrated after the suppression

0 Likes
Message 4 of 15

A.Acheson
Mentor
Mentor

Yes adaptive is a tricky workflow. Does the process work when you manually carry out the changes? Perhaps there is an update required or something missing in the code that isn't capturing the changes done manually. I have found that entering a part to edit or rebuild all is enough to update constraints etc. Unfortunately without a sample model it is very hard to assist with just code alone. Have you tried switching adaptivity off/on, suppress/unsuppress? Try in a sample assembly. 

If this solved a problem, please click (accept) as solution.‌‌‌‌
Or if this helped you, please, click (like)‌‌
Regards
Alan
0 Likes
Message 5 of 15

王承之pmhker
Advisor
Advisor
If HE-DECI-2000-8-50-446.ipt.Do <= 1500 mm Then

The unit mm seems unnecessary, you can try to delete it


If my post answers your question, please click the "Accept as Solution" button. This helps everyone find answers more quickly!
如果我的回帖解决了您的问题,请点击 "接受为解决方案" 按钮. 这可以帮助其他人更快的找到解决方案!


王 承之
Autodesk AGN [Inventor 俱乐部] Leader
Inventor Club | Bilibili


AGN L    EESignature

0 Likes
Message 6 of 15

d.salas.lazzari
Participant
Participant

Hello @A.Acheson and happy new year!

So, the problem is still present even if I do it manually. It seems that the adaptivity is lost after the suppression of a part. The weird thing is that the "adaptive" icon is present, but it somehow doesn't calculate it.

I am attaching a clean copy of the model so you can see it:

1) I have created a module that should open automatically when you open the model, it is called Do_INPUT (in case it doesn't open for some reason). This way you can change the diameter in an easy way;

2) when you open it it should work with any change of diameter from 1501 mm and above;

3) when you hit the 1500mm the IPE profiles will disappear, then if you go back to a greater diameter dimension the IPE will reappear but no longer will update;

4) to reestablish the adaptivity, it is necessary to redefine the reference geometry of the surface that cuts the IPE profiles (in FIG 1 is the 3rd word "ridefinisci");

dsalaslazzari_0-1672661581585.png

FIG 1

 

5) then you choose surface in the pop up window (FIG 2)

dsalaslazzari_1-1672661622088.png

FIG 2

 

6) then you choose the bottom's internal surface (FIG 3)

dsalaslazzari_2-1672661808595.png

FIG 3

 

and press ok, it has to be done for BM-IPE120_1:1 and BM-IPE120_2:1 parts.

At this point it is possible to change again the diameter, keeping it over 1500mm

 

This process made me think that the adaptivity is lost somehow when the part is suppressed. But why? The icon AND the connection to the bottom are still present after the un-suppressing of the parts.

Hope this can help you, thanks for your time!

0 Likes
Message 7 of 15

d.salas.lazzari
Participant
Participant
Thank you for answering, the unit is no longer present in the code, but the problem still persist.
0 Likes
Message 8 of 15

A.Acheson
Mentor
Mentor

I think you will need to change the approach on this. From this post and what you have already discovered suppressing the occurrence will remove adaptivity. So either turn visibility off or Drive the length from the main Part using a Derived solid or surface. See attached assembly showing derived method. 

If this solved a problem, please click (accept) as solution.‌‌‌‌
Or if this helped you, please, click (like)‌‌
Regards
Alan
0 Likes
Message 9 of 15

王承之pmhker
Advisor
Advisor

can you share the files for test?


If my post answers your question, please click the "Accept as Solution" button. This helps everyone find answers more quickly!
如果我的回帖解决了您的问题,请点击 "接受为解决方案" 按钮. 这可以帮助其他人更快的找到解决方案!


王 承之
Autodesk AGN [Inventor 俱乐部] Leader
Inventor Club | Bilibili


AGN L    EESignature

0 Likes
Message 10 of 15

Z0methink
Enthusiast
Enthusiast
Anello inferiore.ipt.d0 = HE-DECI-2000-8-50-446.ipt.Di <----internal ring diameter change


If HE-DECI-2000-8-50-446.ipt.Do <= 1500 mm Then
0 Likes
Message 11 of 15

d.salas.lazzari
Participant
Participant
Hello, files can be found in an upper post
0 Likes
Message 12 of 15

d.salas.lazzari
Participant
Participant
Hello @Z0methink thanks for the post, I will correct that, but you can check the test file that is cleaned from non useful ipt and codes and the problem still persist
0 Likes
Message 13 of 15

d.salas.lazzari
Participant
Participant

Hello @A.Acheson, thank you very much for the answer. It is unfortunate that Inventor doesn't compute after the unsuppression, even if the icons showing that adaptivity is active are there. I am studying to parametrize the profiles so they assum the shape inside the ipt file, for this kind of shape is ok, since it is regulare, if it wasn't, your solution is clearly the way to go as it is the most generic one.

I really hope Autodesk solve this in the future, it surely is a nice feature to have.

0 Likes
Message 14 of 15

Z0methink
Enthusiast
Enthusiast

The problem is not in the code, but in the adaptive elements. You must get rid of them.

0 Likes
Message 15 of 15

Z0methink
Enthusiast
Enthusiast

Copy Object and Solid Geometry

If the original geometry changes size or position, the copied geometry does not update.

You can copy a solid to the part environment by using the Derive command.

0 Likes