Botless, balanced 6 blue belts into 2 wagons loader with perfect throughput
gfycat.com/PastelFirmGallinulePosted Nov 18, 2017, 11:47 PM UTC
Posted Nov 18, 2017, 11:47 PM UTC
The dedication to the look and functionality is what gets me - it's easy to see that you really care about this and spent some serious time on it, so thank you for that and for sharing it with us.
If you're going to over-engineer, might as well do it in style.
Edit: By the way, it's funny you say that because I've tidied it up just a bit more earlier.
!blueprint: https://pastebin.com/jimBVXjD
Some of you may remember my old design from a couple months ago. It was good, but it had a flaw that this new one fixes.
The old one, despite claiming perfect throughput, was only roughly 95-97% of the maximum. This one however transfers the full 14,400 items per minute. (After testing, it actually had perfect throughput. Not sure why I thought it didn't, maybe a memory from a slightly older version)
The other flaw was that in the old one, chests were slightly imbalanced. The inserters picking up from the curved belts would get a few more items than the ones picking up from the underground belts. I tried fixing it through timing and stack sizes, but it never worked quite right. This new one balances each belt into 4 chests as close to perfectly as should be expected. You still need to balance the belts beforehand if you want them to be even though.
The principle is pretty simple: Feed each inserter resources on a single side of an underground belt, guaranteeing that the travel time between items is minimized. Then have the inserters deactivate twice a second so that each half-belt is constantly being picked up by an inserter.
Why all the sideways underneathies just before the inserters? Wouldn't regular belts work just fine?
They do, the same loader with regular belts instead of the underground ones has the same throughput and properties. However it doesn't force the inserters to sync up as effectively as the other one, and it has a lot more inserter head movement. It doesn't really matter because either way they're fast enough to unload belts entirely, but I'm afraid that in some cases they might break the sync enough to reduce throughput. Honestly, you could probably use belts instead and never notice a difference.
Additionally, you can strip that part entirely and insert directly from the final splitters, and it works exactly the same with just 3% throughput loss.
Edit: I realize I haven't actually answered the question, the underground belts are there to force all the items to be in one place, letting inserters be basically static while they pick up their load.
I just made a quick clip to demonstrate this concept: https://gfycat.com/ForcefulValuableAgama
You can see that with this much simpler design, at the beginning while everything is flowing perfectly the throughput is at 100% (rounding errors make it display slightly lower for a while, but if I let it run for a long time it would indicate 7200 items/minute). However, once it backs up and starts again, a lot of the arms are moving around much more than they would ideally need to and the throughput drops to around 6200 items/minute, or a full 14% less. With underground belts, items are always roughly at the same position so it avoids this problem.
Edit again: I just realized another upside of the underground belt that I hadn't thought of before. Single underground belts can hold only 2 items on each side, which means that almost as soon as the inserter stops grabbing, the underground belt gets filled and the full throughput of the splitter goes to the other inserter instead of being split and building up a buffer.
Updoot for excellent explanation, especially the edit gfy.
Wow, this is great!
Uh... Holy shit. Don't suppose you've got an unloader this slick?
No, sadly unloaders are much easier so it's a lot less fancy.
!blueprint: https://pastebin.com/0GQH5AWR
There is a smaller way by using underground belts and syncing the inserters correctly:
I tried this design, I'm really not a fan of it. It's extremely timing-sensitive, and any slight change in the outgoing throughput will throw it off.
Yes, but if you are not using full throughput why would you care about your train unloader efficiency? ;)
I have no idea what the fuck this does but it looks cool so have an upvote.
I cannot figure out why you're using underground belts like that. What purpose does that serve?
See my explanation here.
Thanks so much! I doubt I will ever get to that level of sophistication but it's neat to see someone else take it there!
If it's balanced what are the circuits for on the loading stack inserters?
They deactivate the inserters every second so they're synchronized. If both inserters pick up from the belt at the same time, then when they swing back the belt backs up for a second and slows the whole thing down.
Should I use a belt balancer layout in front of this contraption? This doesn't balancer the belts right? It just splits them neatly?
Yes, the belts and lanes should be balanced. The "balanced" part here just means that it won't unbalance them through loading over time.
Gotcha, thanks :)
I think this no longer has perfect throughput in 0.16
Very possible, but it might be fixed if they go through making sideloading compress again
Finally more people that spend time with efficient loading.