question

Ilyas Ramdzan avatar image
0 Likes"
Ilyas Ramdzan asked Felix Möhlmann commented

Process Flow Unload to Station from Item List

two-pronged-robot.fsmHi Everyone,


I have a two pronged robot where:
1. robot loads ItemA from input conveyor
2. robot loads ItemB from one of eight queues
3. robot unloads ItemA into the same queue ItemB was in
4. robot unloads ItemB into output conveyor
I'm having problem getting step 3 to work with token.ItemB.location. I suspect the location has changed after loading itemB, but I'm not sure. FlexSim newbie here. Appreciate any help. Attached sample file.

Regards,
Ilyas

FlexSim 24.2.3
process flowstationitem list
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

Adam C avatar image
0 Likes"
Adam C answered Felix Möhlmann commented

First thing, you will want to use token.itemA/B.up to reference the object that itemA/B is inside. Location seems to be used for X,Y,Z coordinates. But also, you are making this reference after you have already loaded the items into the robot so this would reference the robot, rather than the queues.

I recommend adding an Assign Labels activity before loading to capture references to the queues. Once you have loaded the items, you can reference these labels as the unload point (station) to place items in them.

· 4
5 |100000

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

Ilyas Ramdzan avatar image Ilyas Ramdzan commented ·

Hi Adam,


Thank you for your suggestion. I thought about a adding the label but am not sure how to do it with the token.itemB.location. I seem to get the same error. Can you advise?

1739323508965.png
two-pronged-robot.fsm

0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann Ilyas Ramdzan commented ·

As Adam said, use "item.up" instead of "item.location". "up" is the object the item is currently in. "location" are the coordinates of the item relative to that object.

If there are no tasks for the robot, make the token wait until there is content on either list. Otherwise the token would end up in an infinite loop in the current implementation.

You can keep a list of available clamping towers. If a new item is pulled but no finished one, the token can try to get an unused tower. If that also fails it goes back to waiting for another item to finish.

two-pronged-robot_1.fsm

Lastly, you might want to use a different motion method for the robot or set its move time before each task. I presume moving to pickup a new item after dropping off a finished one would not take 27s as the positions are quite close together.

0 Likes 0 ·
Ilyas Ramdzan avatar image Ilyas Ramdzan Felix Möhlmann commented ·

Hi Felix,


Thank you for pointing out the up vs location. I mis-read that sentence in Adam's reply.

And many thanks for looking into the file and showing me a very neat way of how to do it.

Each clamping tower holds up to 8 modules, hence, I'm going to take a different approach w.r.t. the clamping tower selection.

Regarding the move time, I'm also thinking of changing the move time based on the clamping tower, but haven't gotten to that yet. I'll give it a go first before posting for help.

Thanks again. Regards,
Ilyas

0 Likes 0 ·
Show more comments