How does it work? The system works by synchronizing when trains leave stations with a network of combinators that controls which stations are enabled/disabled as well as choosing which trains to send to which locations. As was mentioned above simple enabling and disabling the stations is not enough, so every destination station (What I will call a core station) has a number of stations in front of it (What I will call a seeker station), the number of seeker stations is dependent on the number of trains in your system, as every train requires its own unique seeker station. Every core station is only enabled during a certain phase of the circuit network, and every seeker station is enabled from when a train leaves it storage, until it arrives at its destination, once it arrives the station disables itself. In the image below you can see the core station in the top of the screen, and the 6 seeker stations at the bottom.
![Image](https://forums.factorio.com/images/ext/ddfc9c43057beedd4ce0a74df8ab34cd.jpg)
Below is a screenshot of what a train's route looks like, Iron-4 is the storage yard, Iron-X-4 is the seeker station for core station X, and Iron 1 and Iron 2 are core stations.
![Image](https://forums.factorio.com/images/ext/4b83a0d58368c77c47c560ffec629a60.jpg)
The circuit network has two main phases, the send phase and the return phase. During the send phase the controller pings mining bases and decides which mining bases need trains sent to them, chooses the first mining base that needs a pickup, chooses the first available train and sends a signal to the station telling it to enable the seeker station at for that train. After the base enables the seeker station, the train leaves and the system moves on to the return phase. During the return phase, the controller enables all of the core mining stations, which allows for any train currently waiting at a seeker station to move to begin loading at the core mining station. While the train is moving to the core mining station a signal is sent out which disables the controller from leaving the return phase, as if it were to enter the send phase the core station would become disabled, which would re-route the train back to unload without ever having picked up its cargo. Once all the trains that were waiting at a seeker station have moved to the core station, the controller returns to the send phase and the cycle repeats.
![Image](https://forums.factorio.com/images/ext/fe0be0a3e98472f7203f47a6f79a76cc.jpg)
You could expand the system to as many core stations as you can make you're controller capable of supporting (the one in this base supports 5 even though I'm only using two), and as many trains as you are willing to build seeker stations for.
The system as a whole is quite interconnected, so I cant really give a blueprint, so instead I've attached the save file.