question

Jon Abbott avatar image
0 Likes"
Jon Abbott asked Jason Lightfoot commented

Preserve item orientation when placing into a rack using a robot?

Hello! When I place objects onto a gravity flow rack using a robot, it appears to be losing the orientation that is set for the objects in the flowitem bin. This doesn't seem to happen when operators are used, or a direct port connection. Please see the attached model for an example. I would like for the robot to preserve the orientation that is set for these two objects as they are defined in the flowitem bin. Is this possible? Thanks in advance for all of your assistance.

tote_rotation_in_rack3.fsm

FlexSim 20.0.9
rackrobotflexsim 20.0.9flowitem binflow item orientation
5 |100000

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

1 Answer

Jason Lightfoot avatar image
1 Like"
Jason Lightfoot answered Jason Lightfoot commented

The problem here is that the Robot's onSend behavior sets the rotation to (0,0,0)

To alter it we can override that behavior by adding the OnSend node to the robot with our own code.

That's done here:

And requires us to know what it should be so I attached a label "zrot" to the item.

And can then place this in the OnSend:

Object involved=i;
involved.rotation=Vec3(0,0,involved.zrot);

Model attached.

tote-rotation-in-rack3_jl.fsm


· 3
5 |100000

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

Jason Lightfoot avatar image Jason Lightfoot ♦♦ commented ·

Actually - while that does the job visually I don't think it's early enough to have the correct rotation for the rack to correctly consider the space available. It might be better to rotate the item after it is loaded and before it's unloaded.

0 Likes 0 ·
Jon Abbott avatar image Jon Abbott Jason Lightfoot ♦♦ commented ·

Thanks @jason.lightfoot. I see what you mean about the rack not calculating space correctly. I tried adding the rotate activities you mentioned, but it doesn't seem to work as expected (see attached). Please let me know if you had a different rotation approach in mind for this.

Any chance the developers can add a checkbox somewhere in the Robot properties that says "Preserve item orientation" to automate all of these steps? I'm thinking it should be checked by default to match the behavior of other task executers. Please let me know if I should send this suggestion to [email protected], thanks.


tote-rotation-in-rack3-jl2.fsm

0 Likes 0 ·
Jason Lightfoot avatar image Jason Lightfoot ♦♦ Jon Abbott commented ·

That was almost the solution, but the items needs to be rotated just once and to the value of the original items - so not always 90 - it's token.item.zrot.

Model attached.tote-rotation-in-rack3-jl3.fsm

Feel free to post the issue to the dev email. If you do, a link to this post will probably help too.

0 Likes 0 ·