Shelf Trolley - fill up then transport

I can’t quite figure out how to create the following situation. Let’s say that:

  • There’s a work area and a warehouse separated by a path
  • 2 humans create products and load them onto 2 shelf trolleys
  • Trolleys have capacity of 12 products
  • When trolley is full - either human should carry it to the warehouse where a warehouse worker will unload the boxes.
  • When trolley is empty - human carries it back to the work area and repeats cycle.

Can’t figure out the loading part - how to connect the FillTrolleys process point with the positions on the trolleys. How should this be connected? Thanks!

Layout so far:
Shelf trolley fill and transport.vcmx (721.5 KB)

Update - I found one possible solution to this scenario following the Assembly Cart Method in the Resource Tool Trolley layout (interesting solution, where the trolley is actually an assembly, not a tool).

That layout proposes different ways of using the trolley either as a tool (always attached to the human) or part of an assembly (better in my case where trolley is brought to a certain point, after which human is free to transport in the products):

Scaling this up with more workers, it’s bothering me that the human resources are always changing work stations. I would like each of them to be assigned to a specific workstation - how to achieve this if there’s just one controller? :thinking:

I looked into adding a separate controller per human, but that doesn’t work, because I need the trolley transport to be shared by all humans.

Yes the Assembly Cart Method is the best way to go here.

For the resources changing place, you can try using the Resource Reservation method: Resource Reservation | Visual Components Academy See the Layout Template “Fixed Process Order (reserve resource)” in the eCatalog

1 Like

That’s exactly what I was looking for. :+1:

Having to send an empty string to reserve a resource is for sure a strange solution, but alright.

In the string you enter the name of the component which reserves the resource.

In Send Signal or Wait Signal statements you can set SelectedComponent property on “Null” to use a signal in the same component in which the process is. Here you do the same with the empty string to select the component in which the process is.

That makes sense :+1:

Followup question to the previous scenario - I now want to replace the “carry trolley to the warehouse” part with 2 mobile robots and am trying to build the flow with them.

This time I’m trying to go with the “Tool Cart Method” from the same example layout (trolley is used as tool by the mobile robot).

I created a quick test and am having the following issues:

  1. Robot stops not on top of the node, but 1m before it, even though there’s no frame there.
  2. Human is not placing the boxes to where the frames of the trolley are.
  3. Even though I set the robot capacity to 12, it only picks up 2 products before moving out.
  4. At the end of each cycle, robot drops the trolley at a random place!

What am I missing with this?

Test layout:
Mobile robot shelf.vcmx (451.8 KB)

After a bunch of testing, looks like using mobile robots and tools simply isn’t working properly, so I retried the same “Assembly Cart Method” with some adjustments:

  1. Add a work statement for 1s using the mobile robot before create trolley, to make sure robot is in the right place.
  2. Reserve and Release resource signals for the robot during filling and unloading the trolley.

And it’s working fine.