CHANGING POSITION EACH 10 ITERATION

classic Classic list List threaded Threaded
10 messages Options
TP
Reply | Threaded
Open this post in threaded view
|

CHANGING POSITION EACH 10 ITERATION

TP

Hi Guys,

I have a question. Is possible changing the position of the one tool each 10 iteration?, I mean from 1 to 9 iteration the position gets keep in the same place (0,0,0) and in the 10 iteration change the position to (0,1,0). Then, from 11 to 19 iteration the position gets keep (0,1,0) and the 20 iteration change the position whatever (0,2,0) and so on.

I know that the the plugin Imposedisplacement have coordinates (X,Y,Z), for example each iteration i can move 1.3m in Y direction applying this  X=0, Y= 1.3*it, Z=0. However, I want to move each 10 iteration. Is possible with this plugin or I need create one?

Thanks for your answer

CP
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

Damien André
Administrator
Hello, you can add the "IterLoop" option as :
<PlugIn Id="_ImposeDisplacement" X="0" Y="1.3*it" Z="0"  IterLoop="10"/>

Hope this help, Damien.
TP
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

TP
Thanks Damien,

It works. Now, is possible displacement the tool in shape angular?. According to the picture. is possible to go from point 1 to point 2 only angularly?. Is there any function can i apply in the plugin Imposedisplacement or can be with imposeorientation?

plugin=_imposeorientation X=0 Y=0 Z=1 R=30. Is correct?

Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

Damien André
Administrator
Hello, no, the plugin "_ImposeOrientation" will not produce the expected result.  

To do this kind of movement , prefer the "_ImposeRotation" plugin. You can use it  as :
<PlugIn Id="_ImposeRotation" Axis="( 0,0,1)" Center="(0,0,0)" Angle="30°" Set="Cylinder-xMax"/>

kind regards, Damien
TP
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

TP

Thanks Damien,

I have a question, when the discrete elements take the contact with the piece, the piece get moves a bit (due to the contact). I wish that the workpiece do not move, so after that, I applied Imposedisplacement clamped. and It works. the piece with the contact do not get moves.

 <PlugIn Id="_ImposeDisplacement" Clamp="Yes" Set="Piece"

But, after the contact I wish to move the workpiece 0.5m up, is that

 <PlugIn Id="_ImposeDisplacement" X="0" Y="0.5" Z="0" " Set="Piece"

How could do that, whether I clamped the workpiece?. There is any plugin that help me, that during the contact, the piece do not get moves and i can displace the piece after the contact in the same simulation?

<nabble_img src="1.png" border="0"/>
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

Damien André
Administrator
Hello, no sorry. There is no plugin that can do your expectation.

Maybe, you can use the "TriggerIf" trick. If you know by advance the range of iteration values when the contact appears and vanishes, you can trigger/untrigger the plugin. For example :

<PlugIn Id="_ImposeDisplacement" Clamp="Yes" Set="Piece" TriggerIf="it < 1000" />
<PlugIn Id="_ImposeDisplacement"  Id="_ImposeDisplacement" X="0" Y="0.5" Z="0" " Set="Piece" TriggerIf="it > 1000" />

Damien.


   
TP
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

TP
Thank you very much indeed Damien,

I have idea with your advice. However, the contact is periodic


  <PlugIn Id="_ImposeDisplacement" Clamp="Yes" Set="WorkingPiece" TriggerIf="it>5" />

    <PlugIn Id="_ImposeDisplacement" X="0." Y="4.6e-5*cos(240*t)"  Z="4.6e-5*sin(240*t)" Set="WorkingPiece" IterLoop="114240" TriggerIf="it>114239" />

I would like in each iteration, in this case, each 114240 iteration , the first plugi does not work and the second plugin work (trigger), in order to displace it

is there any function that "untrigger" in each IterLoop in this case, 114240 iteration, the first plugin?

In this way, but it doesnt work

    <PlugIn Id="_ImposeDisplacement" Clamp="Yes" Set="WorkingPiece" UnTrigger="IterLoop=114240" /> 

    <PlugIn Id="_ImposeDisplacement" X="0." Y="4.6e-5*cos(240*t)"  Z="4.6e-5*sin(240*t)" Set="WorkingPiece" IterLoop="114240"  /> 
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

Damien André
Administrator
Hello, you can use complex expression with TriggerIf. For example :
<PlugIn Id="_ImposeDisplacement"  .... TriggerIf="it < 20000 and it%100 == 0" />

will trigger your plugin each 100 iterations if the iteration number is lower than 2000.
TP
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

TP

Thanks Damien,

So, there is no something that deactivates (untriggerif or something?) .... I understand that there is only something that activates (Triggerif)

I thought there was a command that would disable the function at one time. It would be much easier to apply it in my project.

In any case, thank you very much Demian
Reply | Threaded
Open this post in threaded view
|

Re: CHANGING POSITION EACH 10 ITERATION

Damien André
Administrator
Hello, you can activate or desactivate with TriggerIf.

For example :
<PlugIn Id="_ImposeDisplacement"  .... TriggerIf="it < 20000 and it%100 == 0" />
will trigger your plugin each 100 iterations if the iteration number is lower than 2000.
<PlugIn Id="_ImposeDisplacement"  .... TriggerIf="not(it < 20000 and it%100 == 0)" />
will untrigger your plugin each 100 iterations if the iteration number is lower than 2000.

That's the same thing, you just have to put not(...)

Kind regards, Damien.