I have modelled a simplified system consisting of a feeder which feeds products onto a conveyor.
Further downstream the products should be picked from the conveyor and placed into a sink.
The throughput is thus high that I would like to have two robots alternate between picking-and-placing the products from its respective station to its respective sink:
To accomplish this I wrote a script for the first station using a counter:
The counter is initially 0 such that Station 1 passes the transport out onto the conveyor, moving the first product to Station 2.
When the second product arrives at Station 1, the counter is 1 and the transport out is set to ‘next process’ (and the counter is reset to 0)
For testing purposes I connected the respective stations and sinks by interpolating transport:
TransportOut to next process (Send to next process)
Station 2
TransportIn from conveyor
TransportOut to next process (Send to next process)
This should work, however, I create a simple layout to test, the result is a little bit strange.
Station 1, same variable for 2 workpiece, both stations would be blocked.
This approach can also work, but in general it would be better that a product does not enter a process it doesn’t actually belong to, and PM does provide the capability to pass through transport nodes without entering any associated process.
I have modelled the feeder by means of distributions, and indeed I want every other product to pass to station 2, so I can’t fix it with product properties.
I can’t find a set next process statement, and for your final solution; when I try to use the transportout statement to send it to the sink I unfortunately run into other problems.
Here is example of my solution using a Product property and product filter.
The flow sequence and both processes are very simple. The products’ history for flow sequence evaluation and statistics also remains clean using this approach.