question

Adrián SC avatar image
0 Likes"
Adrián SC asked Marcello Rosadini answered

Warehouse reception

Hi,

I'm building a model where I simulate a goods reception. These items are subjected to a quality inspection and after joining them depending on the kind of product and combining them with their container, they are stored in the right rack.

Once they have been stored, one task executer is in charge of transport them to another warehouse in order to separate two pallets of each itemtype and have available these products as safety stock for ecommerce sales.

warehouse-reception.fsm

I have identified four problems in the model I have attached before.

1.- The transporter3's load time should be different depending on the port because the load proccess when it has to get the palletized products in the first warehouse is more difficult than the return of the empty pallets from the second warehouse. I have tried to modify the load time including the values by case "port.type" but it doesn't work.

2.- I have had to add a closeoutput trigger (getoutput(current)>1) in the first warehouse racks in order to limit the number of items which are being transported to the second one. The problem is that there is a redundant proccess because the pallet is introduced in the rack and a few minutes after that it's loaded by the other transporter. Is there someone who know how to do it without storing the pallet and using a queue as the fifth port?

3.- After combining all the products (24 items / pallet), there are items which haven't been stored due to the quantity is under the minimum. Is there any way to program the combiner and release the products although this quantity hasn't been reached?

4.- Does someone know to apply the "by expression" send to port instead of the default separator option in the second warehouse separator in order to avoid the use of the Queue2 and release the pallet and the items in their proper racks (products) or queue (empty pallets)?

Thanks in advance,

Adrian.

FlexSim 17.2.5
combinerwarehouseseparatortriggersload time
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Marcello Rosadini avatar image
2 Likes"
Marcello Rosadini answered Adrián SC commented

Adrian,

I've attached some simple examples in one model that might help you.

1.-I've used a subflow in the use transport alternative. This generates a token that includes the port information in the label port. Then, on the subflow I have added a Delay activity that depends on the value of this port label. The zone is placed to avoid multiple items being loaded at once.

2.-You could use a pull strategy instead. This way, the pallets will stay in the racks untl the downstream racks "call them". In the example there is no criteria, but you could specify whatever you need for the pull condition.

3.-I've made a small process flow that every time a pallet enters, waits for its exit. In the salida-tiempo max activity there is a Max Wait Timer. If this time has passed and the pallet has at least one box on it, it will be released(moved) to a queue, releasing the combiner.

4.-Probably the easiest way would be to assign an item type to the pallets too. This way you can just connect the empty pallets queue to the port that matches the type of the pallet (5 for instance) and the corresponding racks to the ports that match the boxes Types.

Hope is clear enough!

180117-soporte.fsm

180117-soporte.fsm (42.4 KiB)
· 5
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Adrián SC avatar image Adrián SC commented ·

Thanks for your propmt reply Marcello. I have fixed most of these problems.

I haven't been able to do it in the first case because I don't achieve the subflow works.

Concerning of the third one, I have created a proccess flow flow for each combiner but sometimes it combines two pallets and twenty three boxes instead of 1/24. I supposed it's related with the proccess flow but I haven't be able to find what I can do to avoid that.

warehouse-reception-20.fsm

By the way, I finally solve the second case using another method. I've changed the logic in each rack and the transporter always start to store pallets in the first level. It allows the following task executer to get the pallet directly from the floor and reducing the proccess time.

Thanks again for your help.

0 Likes 0 ·
Marcello Rosadini avatar image Marcello Rosadini Adrián SC commented ·

I have modified your model for the subflow to work. In the racks, instead of using the object attached to the central port as transport, you need to tell it to use the subflow as method of transport. You will see a menu then when you can choose all the information that you will pass from the "3D" to the "subflow" (like port, etc) I've noticed that you disabled the offset travelling of the transporter, so he doesn't go from the node to the racks to pick the pallets, but they are picked in the node. Just want to make sure that, that is what you wanted.170124-soporte-subflow.fsm

0 Likes 0 ·
Adrián SC avatar image Adrián SC commented ·

Hi Marcello, Thanks a lot. I hadn't seen the "ProcessFlow: Use Task Sequence Sub Flow" option.

By the way, do you know what happens to the Combiners? I'm not able to figure out why they combine two pallets and twenty three boxes instead of one pallet and twenty four boxes. It's related with the ProcessFlow but I've changed a lot of parameters without success.

Thanks in advance.

0 Likes 0 ·
Marcello Rosadini avatar image Marcello Rosadini Adrián SC commented ·

Adrian, I have reviewed your model and cannot find any reason for the combiner not to work properly. Attached you will find a model with he exact same configuration which works exactly as expected. My recommendation would be to delete the Combiner objects and replace them with new ones, maybe something "broke" inside de logic of the combiner.

170126-soporte-combiner.fsm

0 Likes 0 ·
Adrián SC avatar image Adrián SC Marcello Rosadini commented ·

Hi Marcello, I've just seen your model and it works until you add an Operator in order to transport the FlowItems. In this case, it happens the same. It combines two pallets with the boxes instead of one.

0 Likes 0 ·
Marcello Rosadini avatar image
0 Likes"
Marcello Rosadini answered

Adrian, in the previous version, when a pallet was completed the process flow would make a move of a non existing object (a pallet that hasn't entered and apparently it created a void). I have added an additional condition that verifies if the pallet was completed and then treats it differently. It should work now.

170129-soporte-combiner.fsm


5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.