question

Zenix avatar image
0 Likes"
Zenix asked Felix Möhlmann answered

AGV Transfer Logic (with Priority and Charging Behavior)

First of all, I would like to sincerely thank you for your help and support so far. Although I have made some progress, I have been struggling with the rest of the implementation. This is my last question for this exercise scenario, so I would really appreciate your guidance and advice on the following questions.

1745470997616.png1745471010135.png


  • Weight Class Routing:

    • 600Kg AGVs are exclusively used for handling Console, Longrail, RR Glass, Head Lining items.

    • 1500Kg AGVs are designated for transporting R LBM items.


To clarify, I’ll use the Console as an example below. Kindly note that buffer AGVs are not relevant to this particular question.

  • Trigger Condition:
    When an item enters Console InQueue5, a 600Kg AGV is assigned to handle the item transfer.

  • Item Pulling Logic:
    Items are pulled based on longest waiting time (older items have higher priority).

  • AGV Pulling Logic:
    AGVs are pulled based on the shortest travel distance between the AGV and the item.

  • Transport Process:
    The selected AGV loads the item and transports it to CS Task Queue 1, where it is unloaded.
    Although not visually represented in the 3D model, a processing step (implemented via Delay in the Process Flow) occurs after unloading.

  • Post-Processing Logic:
    After processing is complete, the item is loaded again and transported to Console OutQueue5, where it is unloaded.

  • Fallback Queues:
    If CS Task Queue 1 is occupied, the next available queues will be used in the following order:
    CS Task Queue 2, followed by CS Task Queue 3.
    In this case, even if the item is placed in the queue, the AGV stays within the designated zone during the processing phase.

  • Charging Behavior:
    During processing (i.e., when the AGV is idle), it travels to the nearest available recharge point to begin charging.

  • Preemptive Charging Interruption Logic:

    • Once CS Task Queue 1 becomes available:

      • The AGV waiting at CS Task Queue 2 stops charging immediately, loads the item, and transfers it to CS Task Queue 1.

      • After unloading, it travels to the nearest recharge point and resumes charging during the new processing phase.

    • Likewise, the AGV at CS Task Queue 3 follows up by unloading at CS Task Queue 2, then goes to charge.

  • Idle State Behavior:
    If all CS Task Queues are occupied, AGVs with no assigned tasks automatically move to the nearest recharge point for charging.

@Felix Möhlmann

AGV TEST.fsm

FlexSim 25.0.4
agvagv recharge
1745470997616.png (361.4 KiB)
1745471010135.png (171.6 KiB)
agv-test.fsm (213.1 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

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered

I think it makes more sense to model this from the perspective of the item in this case. The token pulls the furthest queue possible and an AGV. If it's CS Task Queue1 it runs through the logic you already had in place. If not, the token creates an extra token that has the AGV pick up the item and transport it to the pulled Queue. At the same time, the 'main' token continues to try and pull a queue farther along in the chain.

Since each queue seems to have its own recharge CP I used centerport-connections to send the AGV there if it's not the final position.

agv-test_1.fsm

For the general recharge logic (not implemented in the attached model) I would not rely on the OnResourceAvailable trigger, because this would complicate keeping the AGV parked at a task queue. Instead the availability is only managed by the list.

Meaning that each AGV gets a 'recharge-token' that continuously tries to pull the AGV with a low priority (Back Order Queue Strategy in list properties). If pulled, the token would also pull the closest recharge location from a list and send the AGV there, though without waiting for the task to finish. It then pushes the AGV to the AGV-list again immediately, so other tasks can preempt the charging (if that is wanted).

In general, the model still requires a lot more CPs and control areas to work effectively.


agv-test-1.fsm (221.3 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.