question

Steven Chen avatar image
2 Likes"
Steven Chen asked Claire Krupp answered

Disable ASRS initial lift height

Hello,

In properties of ASRS, there is an option called Initial Lift Height. On ASRS finished a task it will move lift to the specific height.

Can I disable the feature to make the ASRS maintains its height after unload?

If not I think I have to use BasicTE to build my own ASRS. Hope one day I can copy the build-in objects as BasicTE and modify its code, so I don't have to make one from empty object.

FlexSim 18.2.2
asrsbasicte
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Phil BoBo avatar image
1 Like"
Phil BoBo answered

You can try to fight against the ASRS's built-in kinematics by manually adjusting them with code (shown below) after performing an offset travel operation, but using a BasicTE would be better and easier if you want custom behavior that is different from the current ASRS behavior.

treenode forkkinematics = getvarnode(token.ASRS, "forkkinematics");

double extenderloc = getkinematics(forkkinematics, KINEMATIC_Y, 0, time());
double forkheight = getkinematics(forkkinematics, KINEMATIC_Z, 0, time());
initkinematics(forkkinematics, 0, extenderloc, forkheight, 0,0,0, KINEMATIC_DO_NOT_PRUNE);
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Claire Krupp avatar image
3 Likes"
Claire Krupp answered

Hi @Steven Chen , I know it has been a long time since you wrote this question, but I had the same problem, and I eventually found a solution which might help others.

Instead of switching off the automatic "return to home" tendency of the ASRS vehicle, I tricked it into thinking that the current level is it's "home" position.

I put the following custom code snippet in after each unload activity: (My ASRS vehicle is representing a shuttle in this case, token.shuttle.)


Object shuttle = token.shuttle;

double newlevel = 26 + (token.T_level-1)* 90.0;

shuttle.setProperty("InitialLiftHeight", newlevel);


This makes the ASRS vehicle stay at it's current location while idle.


I hope this helps anyone searching for the same solution.


Regards,

5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.