Please make pickup points behave like dropoff points

Please make pickup points behave like dropoff points

osman_eralp1
Not applicable
516 Views
7 Replies
Message 1 of 8

Please make pickup points behave like dropoff points

osman_eralp1
Not applicable

[ FlexSim 16.2.1 ]

I have noticed that pickup points behave differently than dropoff points. Specifically,

1. When an item is delivered to a dropoff point, it shows up in the queue that the point is attached to. That is good. When an item is created at a queue with a pickup point, the item shows up at the pickup point. That is not so good. This creates the odd behavior of items on AGV tracks:

3176-screenclip.png

I think the item should be in queue until it is picked up.

2. When an item is delivered to a dropoff point, the AGV goes to the point with the highest priority. That is good. When an item is create at a queue with a pickup point, the item is created at the pickup point that is closest to the queue, and thus that is where the AGV goes. That is not so good. Compare this image with the last one:

3177-screenclip2.png

I moved the queue and the item appears at a different point.

In summary, at pickup points, I would like to see the item created in the queue, and the AGV should stop at the unoccupied CP with this highest priority. This would be consistent with the behavior of dropoff points.

Accepted solutions (1)
517 Views
7 Replies
Replies (7)
Message 2 of 8

sam_stubbsYXX86
Community Manager
Community Manager

If possible could I see your model? I believe this may be a setting on your queue, not on the AGV loading. Because the defaults of the AGV shouldn't change the visual of where the boxes appear within the queue.

0 Likes
Message 3 of 8

sam_stubbsYXX86
Community Manager
Community Manager

Your issue is that you were using pickup point connections. The pickup points are what's causing the item to be placed at that point. If you just want them to remain in the queue, simply have the queue connected to the points you want it to be connected to.

Message 4 of 8

osman_eralp1
Not applicable

I tried what you suggest. I connected the queue to multiple control points:

3275-screenclip3.png

That configuration didn't have the desired behavior because the AGV always picked up from the first control point. Do you have any other suggestions on how to reproduce the dropoff behavior at pickup points?

Message 5 of 8

joerg_vogel_HsH
Mentor
Mentor

@Osman Eralp Can you change the travel destination of the taskexecuter to a decision point instead of the queue and then next to load from the queue?

0 Likes
Message 6 of 8

anthony_johnsonT83CM
Autodesk
Autodesk
Accepted solution

The pickup points implementation was designed to be essentially a mirror of the dropoff points implementation. When there are pickup points, the item moves from the queue to the pickup point, then is loaded by the AGV. When there are dropoff points, the item is unloaded from the agv into the dropoff point, and then eventually moves into the queue. You don't see the items in the dropoff points because you've left the dropoff retrieval time at 0, so the dropoff retrieval process happens in 0 time, and the item is moved immediately into the destination queue.

If you don't want the queue to actually move the items into the pickup location, you can change the Item Pickup section to not do that. The logic there selects a pickup point (Get an Available Pickup Point) and then moves it into the pickup point (Move Item Into Pickup Point). You could remove the activity that moves it into the pickup point, and instead assign a label named pickupPoint to the item that references the selected pickup point. To do this, add an Assign Labels activity with an Assign Labels To of Label: item, and a single label assignment with the name pickupPoint and a value of Label: pickupPoint (this copies the selected pickupPoint from the token to the item itself). Then in the load logic change the agv's destination from wherever the item is held to the item's pickupPoint label (in Travel to Pickup Location change Destination to getlabel(getlabel(token, "item"), "pickupPoint"), i.e. the pickup point that was assigned to that item.

Also, in selecting a pickup point (Get an Available Pickup Point), I set the default query to ORDER BY distance, simply because I didn't know a good prioritization what would work for everyone. If you want to prioritize different, you can just change that query. You could add "priority" labels to each of the pickup points, and then use a query like ORDER BY priority DESC.

0 Likes
Message 7 of 8

riccardo_p3
Not applicable

I try to implement this solution, it's possible that I get something wrong, because in my model with this modifications the AGV template don't work correctly. I would like to use the AGV advanced template, but I want to eliminate the movement of the load unit on the pickup point and leaving it in the assigned location (on the rack or processor for example) when the agv go to pick up it.

If Someone is able to give me a hand, I will really appreciate.


pickuplogic.png

AGv_Test3.fsm


0 Likes
Message 8 of 8

eric_m3
Not applicable

Hi @Riccardo P3, there were just two additional changes that needed to be made both in the Item Pickup section. In the "Wait for Item to be Loaded" activity, instead of referencing the pickupPoint, I changed this to token.item.up because the item isn't leaving the pickupPoint anymore, it's leaving whatever its container is (which the ".up" returns). I also added an Assign Labels activity in the "No" branch of the "Does CP have Pickup Points" activity. Because the rack doesn't have pickup points, the AGV didn't know where to travel in order to load the item. I copied the original Assign Labels activity and just changed the value from token.pickupPoint, to token.item.up.

agv-test3-em.fsm

0 Likes