I would like to understand how to set conditions on when a worker is called to an importer, specifically on the worker carries the part away setting for a station.
I found this post:
However, when I tried to implement the solution posted by 'simulator' in my own model, the worker does not collect all of the entities that are moved. I have attached my model, please can someone help me to understand why this is happening.
Thanks in advance!
EDIT: Im using version 14. Looking at the event debugger, it seems like when I call the move command for the last entity to enter the buffer (which is the first move call so that I can use buffer.mu(i)) then it issues a 'DeliverParts' event for the worker and an 'Out' event for the entity. The 'DeliverParts' event happens first and this entity isnt collected.
using this code from the post you found
waituntil ?.NumMU >= 5 Prio 1; for var i := 5 downto 1 if ?.mu(i)/= VOID then ?.mu(i).move end next
and inserting it into your OnExit control should make your model work. Otherwise you could also solve this problem by removing the exit control OnExit from both your buffer and your workplace. Afterwards you would have to set your workers capacity to five and adjust the maximum dwell time on the exit tab of the buffer accordingly (e.g. 40-60 seconds, depending on the interval set in your source). After that, the worker will always wait until he has loaded up his maximum capacity (e.g. 5 parts) before he moves on. Was this what you intended with your model, or did you want to specifically control the import of workers to their workstations in your model? I have attached a model where adjusting the dwell time worked out for me.