Integrate Automated Guided Vehicle (AGV)

An Automated Guided Vehicle (AGV) is used to move goods from one location to another autonomously. This frees up time for human workers to perform other tasks which in turn increases overall throughput in the warehouse. An AGV system is used to control and distribute tasks between the AGVs within a warehouse.

The solution is based on software provided by another party (not Ongoing) using the Ongoing WMS Automation API.

Integration workflow

Here is the recommended workflow for moving goods using an AGV:

  1. When goods in a pallet item should be moved using an AGV a movement pallet item will be created in Ongoing WMS. The movement pallet item will, in its essence, consist of a FromLocation, a ToLocation and information about the pallet item and its goods to be moved. (A pallet item in Ongoing WMS does not necessarily correspond to a physical pallet. It can, for instance, be a box or any other type of container.)
  2. In the background, the AGV system continuously polls GetMovementPalletItemsByQuery with the filter OnlyGetMovementPalletItemsToBeHandled = true, looking for movement pallet items with a specific movement type that should be handled by the AGV system.*
  3. When it encounters such movement pallet items, the AGV system immediately calls MovementPalletItemsHandled on the movement pallet item IDs (or the PalletItemId), to mark them as handled.
  4. The AGV system can now begin to move the pallet physically to the end location.
  5. When the AGV is done, the AGV system uses MovePalletItem on the pallet item to move the pallet item and its goods to the end location in Ongoing WMS. (Note that this call will also finish the movement pallet item at the same time. Thus, there is no need for a separate call to finish to the movement pallet item.)
  6. Optionally, if the extra traceability is needed, the integration can move the pallet item and its goods to an intermediate location, corresponding to the AGV itself, right after the pallet has been loaded into the AGV, before moving the pallet to the end location.
*An alternative to polling Ongoing WMS for new movement pallet items is to set up a movement pallet item webhook that gets triggered every time a new movement pallet item is created, that should be handled by the AGV system. The webhook payload will include a start location, an end location and information about the pallet item to be moved.