question

Brandon I avatar image
0 Likes"
Brandon I asked Brandon I commented

AGV loading multiple items from queue issue

Hey guys,

I have an annoying issue that I'm not sure where I'm going wrong. What I'm trying to do is the same concept as:

https://answers.flexsim.com/questions/21455/how-to-make-the-forklift-transport-more-than-one-i.html

However, I'm trying to make it a lot simpler for myself within the process flow. The problem is that the AGV will go try load, but it will only take just 1 item and unload it, then freeze (probably because of errors being generated somewhere?).

I believe it's got to do with my load & unload instructions using "Object from Label Array" and how its parameterized.

I tried following how they set up the load instruction within the linked question like this according to my Pull from List:

however, I just get the following error:

I also tried used the following inputs instead:

but the "Index" field defaults to "LastEntry" as seen which is why I think it's just taking only one box from the queue.

I've tried creating a label to hold the "token.pulled.length" for the Index so that it doesn't default to the "LastEntry", but I run into the same error as above basically.

I just want to load all items from queue (5) onto AGV and drop them off at the conveyor, rinse, repeat.

I've attached the model with last method I attempted.

Any help would be appreciated, thank you!

Kind regards,

Brandon

agvstackload.fsm

FlexSim 19.0.0
agv process flowlist pullqueue contentstack
1-load.png (17.0 KiB)
loadarray.png (16.5 KiB)
2-label.png (13.9 KiB)
agvstackload.fsm (37.9 KiB)
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

SudheerReddy avatar image
1 Like"
SudheerReddy answered Brandon I commented

@Brandon I

I have added Run Sub Flow for loading and unloading. Please have a look into the model and process flow. Attaching the fixed model.

26567-agvstackload.fsm


agvsolved.jpg (57.0 KiB)
· 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.

Brandon I avatar image Brandon I commented ·

I see it works fine, but I don't understand the need for the sub flow at all, could you maybe clarify why? I thought the sub flow is just to split continuity within the flow. I didn't realize it can send values like that.

Also, for the load section, I see the "Item" input field is now token.item, but I don't see any reference to that within the process flow, why would the label name defined within the "Pull from List" such as "token.pulled" not work?

Thank you for the answer, I appreciate it.

0 Likes 0 ·
capture.png (26.5 KiB)
SudheerReddy avatar image SudheerReddy Brandon I commented ·

@Brandon I

token.pulled is array of 5 and your below code is not having reference to all 5 items to load. Instead you are giving reference to only one item as explained below

token.pulled[1] token.pulled[2] and so on are index of pulled items. In similar way your code executes as token.pulled[5]. Because token.pulled.length is 5. So you are giving reference to only one item of index 5.

Where as Run Sub Flow is used to run 5 times so you can get reference to all items in array.

token.pulled[token.pulled.length]

Here Sub flow is used to Load 5 items at once instead of writing 5 times load activity in main loop

In Run Sub Flow, you can see label called item is created with reference to token.pulled[1,2,3,4,5] as creation rank

1 Like 1 ·
dt.jpg (22.9 KiB)
item.jpg (30.0 KiB)
Brandon I avatar image Brandon I commented ·

I understand, thank for the clarification! @Sudheer R

0 Likes 0 ·