Self-Made Belt Balancers
Self-Made Belt Balancers
Hello,
I know there are millions of belt balancer blueprints out there, but I like to build them myself. By now I've just copied the 4-to-4, the 8-to-8 and the 6-to-6 balancer. But the rest I want to develop myself. As far as I've understood you always build a 4-to-4 or a 8-to-8 (or a 4-to-2, or a 4-to-8 and so on), and then you add or subtract what is too little or too much. So if you build a 3-to-3 you build a 4-to-4 and then you take one output and put it back in the input. Right?
Here are my first very simple self-built 3-to3 and 3-to-1 balancers. Can you please tell me, if they are correct?
I know there are millions of belt balancer blueprints out there, but I like to build them myself. By now I've just copied the 4-to-4, the 8-to-8 and the 6-to-6 balancer. But the rest I want to develop myself. As far as I've understood you always build a 4-to-4 or a 8-to-8 (or a 4-to-2, or a 4-to-8 and so on), and then you add or subtract what is too little or too much. So if you build a 3-to-3 you build a 4-to-4 and then you take one output and put it back in the input. Right?
Here are my first very simple self-built 3-to3 and 3-to-1 balancers. Can you please tell me, if they are correct?
- NotRexButCaesar
- Smart Inserter
- Posts: 1133
- Joined: Sun Feb 16, 2020 12:47 am
- Contact:
Re: Self-Made Belt Balancers
Thank you. Time to build more
Re: Self-Made Belt Balancers
I just take the easy way out. Since most balancers are not designed to be Unlimited Throughput Unlimited, but seem to me they can effectively be made so simply by doubling them up (pasting the BP twice, one right after the other) I just go for the smallest BP that can handle the number of input belts, and then just take however many output belts I need.
I admit I have not gone for any X:1 reductions, but this seems to ensure an even draw upon the source belts regardless of the number of output belts, at the cost of a fair amount of space and Splitters.
I admit I have not gone for any X:1 reductions, but this seems to ensure an even draw upon the source belts regardless of the number of output belts, at the cost of a fair amount of space and Splitters.
Re: Self-Made Belt Balancers
Both balancers are correct. The first one can be improved (with a fun twist).
The first one will work correctly even without the self-looping parts and will then essentially be a perfect 1-4-to-1-4 balancer, that is it'll work regardless of how many and which inputs and outputs are used; it's equivalent to the 4-belt throughput unlimited balancer which is so ubiquitous in the community.
There exists an 8-belt version which is of course much bigger but still very much worth using when you need more belts. (Of course, theoretically there exist any-belt throughput unlimited balancers but I find it far easier to just use a few ones, 4-belts and 8-belts in this case, because they still perfectly support any number of inputs and outputs up to 4 and 8 belts respectively and the resource cost difference is pretty minimal, certainly compared to the effort of finding proper designs for all the possible versions.)
Also congratulations on figuring out the designs, it's always rewarding to do it out on your own!
The first one will work correctly even without the self-looping parts and will then essentially be a perfect 1-4-to-1-4 balancer, that is it'll work regardless of how many and which inputs and outputs are used; it's equivalent to the 4-belt throughput unlimited balancer which is so ubiquitous in the community.
There exists an 8-belt version which is of course much bigger but still very much worth using when you need more belts. (Of course, theoretically there exist any-belt throughput unlimited balancers but I find it far easier to just use a few ones, 4-belts and 8-belts in this case, because they still perfectly support any number of inputs and outputs up to 4 and 8 belts respectively and the resource cost difference is pretty minimal, certainly compared to the effort of finding proper designs for all the possible versions.)
Also congratulations on figuring out the designs, it's always rewarding to do it out on your own!
Re: Self-Made Belt Balancers
For your 3:1 balancer, make sure to set output priority to the right on the output balancer. Otherwise if you have a full blue belt on the leftmost input and nothing on the right inputs, half of it will feed back into the input, and the output will be only 1/2 speed.
Without the loop back, it won’t end up a perfect 2 to 3 balancer. Half of the input (1 full belt) will be distributed to each of the output splitters, but one output splitter serves 2 belts and the other only 1 belt, so ends up with (1, 1/2, 1/2) output.MEOWMI wrote: ↑Fri Nov 13, 2020 3:19 am Both balancers are correct. The first one can be improved (with a fun twist).
The first one will work correctly even without the self-looping parts and will then essentially be a perfect 1-4-to-1-4 balancer, that is it'll work regardless of how many and which inputs and outputs are used; it's equivalent to the 4-belt throughput unlimited balancer which is so ubiquitous in the community.
- NotRexButCaesar
- Smart Inserter
- Posts: 1133
- Joined: Sun Feb 16, 2020 12:47 am
- Contact:
Re: Self-Made Belt Balancers
or set the input priority on the input splitter to leftFor your 3:1 balancer, make sure to set output priority to the right on the output balancer. Otherwise if you have a full blue belt on the leftmost input and nothing on the right inputs, half of it will feed back into the input, and the output will be only 1/2 speed.
Ⅲ—Crevez, chiens, si vous n'étes pas contents!
Re: Self-Made Belt Balancers
Under full load, after stabilizing, the output splitter would output 2 full belts, and take in 2 full belts, the input splitter on the left would pull all from the loopback and none from the input belt. The input splittter on the right would take 1/2 from each belt.AmericanPatriot wrote: ↑Fri Nov 13, 2020 7:17 amor set the input priority on the input splitter to leftFor your 3:1 balancer, make sure to set output priority to the right on the output balancer. Otherwise if you have a full blue belt on the leftmost input and nothing on the right inputs, half of it will feed back into the input, and the output will be only 1/2 speed.
With the output priority under full load after stabilizing the output splitter will draw 4/3. 3/3 going to the output belt, 1/3 going to the loopback. Each input splitter provides 2/3 of a belt, with each input belt providing 1/3 of a belt including the loopback.
Re: Self-Made Belt Balancers
No it will not. Test this 3-3 derived from a 4-4 with just 2 saturated inputs. You will notice that the belt, that shares a last splitter with the belt that is not used, gets double the amount of items.
Re: Self-Made Belt Balancers
@X
If you really want to do a lot of balancer development then you need to set up a test area.
I once redid the standard 8-8 balancer and published it on factorioprints. The blueprints also include the test area. The test area also includes the circuitry to measure the running average on each input and output belt.
Check it out:
https://www.factorio.school/view/-LiuJWojdnc1zyQCl_MJ
Actually, I just noticed, that the description of the test setup is not complete. The blueprint for the test setup uses mods creative items, miniloader AND nixie tubes (for display of the running average). I need to update that description.
If you really want to do a lot of balancer development then you need to set up a test area.
I once redid the standard 8-8 balancer and published it on factorioprints. The blueprints also include the test area. The test area also includes the circuitry to measure the running average on each input and output belt.
Check it out:
https://www.factorio.school/view/-LiuJWojdnc1zyQCl_MJ
Actually, I just noticed, that the description of the test setup is not complete. The blueprint for the test setup uses mods creative items, miniloader AND nixie tubes (for display of the running average). I need to update that description.
Re: Self-Made Belt Balancers
Wouldnt the left Belt have twice as many items as the others without the loop?MEOWMI wrote: ↑Fri Nov 13, 2020 3:19 am Both balancers are correct. The first one can be improved (with a fun twist).
The first one will work correctly even without the self-looping parts and will then essentially be a perfect 1-4-to-1-4 balancer, that is it'll work regardless of how many and which inputs and outputs are used; it's equivalent to the 4-belt throughput unlimited balancer which is so ubiquitous in the community.
There exists an 8-belt version which is of course much bigger but still very much worth using when you need more belts. (Of course, theoretically there exist any-belt throughput unlimited balancers but I find it far easier to just use a few ones, 4-belts and 8-belts in this case, because they still perfectly support any number of inputs and outputs up to 4 and 8 belts respectively and the resource cost difference is pretty minimal, certainly compared to the effort of finding proper designs for all the possible versions.)
Also congratulations on figuring out the designs, it's always rewarding to do it out on your own!
And yes it really is fun once youve found out how IT works. Ive built a 7 to 5 for fun and made IT even quite compact (based on a compact 8 to 8 though)
Re: Self-Made Belt Balancers
Fair critique from both of you, I don't know why I was thinking that. You would indeed need the loopback belt (and similarly in other larger balancers).
Re: Self-Made Belt Balancers
If you want a balancer that works in every combination of input and output, no questions asked, for example a 4 to 4 that can be used as anything up to 4 to 4 and balance correctly, you basically need to build an 8 by 8 balancer, and have each output splitter have 1 standard output and 1 loopback, and each input splitter takes one standard input and one loopback. Balancing the loopbacks can help it stabilize faster, for example this balancer.
With that no matter how many inputs or outputs stall or are backed up, the loopbacks will provide the feedback nescessary to have it pull fairly from all inputs, and output fairly to all outputs. It can scale to any power of 2 by building it out of a balancer that's twice as large, everything up to 8 to 8 from a 16 to 16 for example (the balancers it's built with don't need to be throughput unlimited). It's just a lot of extra space and complexity that's usually not nescessary.
With that no matter how many inputs or outputs stall or are backed up, the loopbacks will provide the feedback nescessary to have it pull fairly from all inputs, and output fairly to all outputs. It can scale to any power of 2 by building it out of a balancer that's twice as large, everything up to 8 to 8 from a 16 to 16 for example (the balancers it's built with don't need to be throughput unlimited). It's just a lot of extra space and complexity that's usually not nescessary.
- NotRexButCaesar
- Smart Inserter
- Posts: 1133
- Joined: Sun Feb 16, 2020 12:47 am
- Contact:
Re: Self-Made Belt Balancers
I guess if you want to only input one belt into your 3x1 balancer that would be an issue. The output priority option also fails with two fully compressed inputs: the one on the no-loop side gets twice the utilizationZanthra wrote: ↑Fri Nov 13, 2020 12:05 pm Under full load, after stabilizing, the output splitter would output 2 full belts, and take in 2 full belts, the input splitter on the left would pull all from the loopback and none from the input belt. The input splittter on the right would take 1/2 from each belt.
With the output priority under full load after stabilizing the output splitter will draw 4/3. 3/3 going to the output belt, 1/3 going to the loopback. Each input splitter provides 2/3 of a belt, with each input belt providing 1/3 of a belt including the loopback.
Last edited by NotRexButCaesar on Fri Nov 13, 2020 4:53 pm, edited 3 times in total.
Ⅲ—Crevez, chiens, si vous n'étes pas contents!
- NotRexButCaesar
- Smart Inserter
- Posts: 1133
- Joined: Sun Feb 16, 2020 12:47 am
- Contact:
Re: Self-Made Belt Balancers
You actually only need two splitters per loop, and don't need to balance themZanthra wrote: ↑Fri Nov 13, 2020 12:05 pm If you want a balancer that works in every combination of input and output, no questions asked, for example a 4 to 4 that can be used as anything up to 4 to 4 and balance correctly, you basically need to build an 8 by 8 balancer, and have each output splitter have 1 standard output and 1 loopback, and each input splitter takes one standard input and one loopback. Balancing the loopbacks can help it stabilize faster, for example this balancer.
With that no matter how many inputs or outputs stall or are backed up, the loopbacks will provide the feedback nescessary to have it pull fairly from all inputs, and output fairly to all outputs. It can scale to any power of 2 by building it out of a balancer that's twice as large, everything up to 8 to 8 from a 16 to 16 for example (the balancers it's built with don't need to be throughput unlimited). It's just a lot of extra space and complexity that's usually not nescessary.
Ⅲ—Crevez, chiens, si vous n'étes pas contents!
Re: Self-Made Belt Balancers
I don't think you should put output priority on a balancer. That just unbalances everything. Of course you get less throughput without output priority. But only for a few seconds until the looping belt is full. And then it works as it should. A balancer is for balancing in the first place. Throughput shouldn't be minimized in the long run, but may take a few seconds. Output priorities are a good thing when it comes to putting material into the production like here:
The unbalanced input might be an issue. But I think that happens with all balancers, that have less output than input, and where not all inputs are being used.
The balancers are important that, in case we don't have perfect prodction, still every belt gets some material and all production lines have at least something to work on. And not that there is enough iron for the circuits, but nothing left for the science packs.The unbalanced input might be an issue. But I think that happens with all balancers, that have less output than input, and where not all inputs are being used.
Re: Self-Made Belt Balancers
[EDIT] - Deleted - I think I got it. Are you aware that this is Sparta?AmericanPatriot wrote: ↑Fri Nov 13, 2020 4:45 pmYou actually only need two splitters per loop, and don't need to balance themZanthra wrote: ↑Fri Nov 13, 2020 12:05 pm If you want a balancer that works in every combination of input and output, no questions asked, for example a 4 to 4 that can be used as anything up to 4 to 4 and balance correctly, you basically need to build an 8 by 8 balancer, and have each output splitter have 1 standard output and 1 loopback, and each input splitter takes one standard input and one loopback. Balancing the loopbacks can help it stabilize faster, for example this balancer.
With that no matter how many inputs or outputs stall or are backed up, the loopbacks will provide the feedback nescessary to have it pull fairly from all inputs, and output fairly to all outputs. It can scale to any power of 2 by building it out of a balancer that's twice as large, everything up to 8 to 8 from a 16 to 16 for example (the balancers it's built with don't need to be throughput unlimited). It's just a lot of extra space and complexity that's usually not nescessary.
1.jpg
Re: Self-Made Belt Balancers
Try the 3 to 1 balancer with a full belt of input only on the left most belt, and no backup on the output belt. Since the output splitter sends half back to the input, because that splitter can only ouptut 1 belt, it stalls the leftmost input belt to draw fairly from the loopback causing a loss of throughput. The loopback never backs up, and you only get half a belt of output. As long as the priorities are applied in a balanced manner, they will not unbalance your balancer.<X> wrote: ↑Fri Nov 13, 2020 6:48 pm I don't think you should put output priority on a balancer. That just unbalances everything. Of course you get less throughput without output priority. But only for a few seconds until the looping belt is full. And then it works as it should. A balancer is for balancing in the first place. Throughput shouldn't be minimized in the long run, but may take a few seconds. Output priorities are a good thing when it comes to putting material into the production like here: The balancers are important that, in case we don't have perfect prodction, still every belt gets some material and all production lines have at least something to work on. And not that there is enough iron for the circuits, but nothing left for the science packs.
The unbalanced input might be an issue. But I think that happens with all balancers, that have less output than input, and where not all inputs are being used.
The good thing about output priority on the 3 to 1 balancer is that it will operate no worse in any case than the one without priority.AmericanPatriot wrote: ↑Fri Nov 13, 2020 4:42 pmI guess if you want to only input one belt into your 3x1 balancer that would be an issue. The output priority option also fails with two fully compressed inputs: the one on the no-loop side gets twice the utilizationZanthra wrote: ↑Fri Nov 13, 2020 12:05 pm Under full load, after stabilizing, the output splitter would output 2 full belts, and take in 2 full belts, the input splitter on the left would pull all from the loopback and none from the input belt. The input splittter on the right would take 1/2 from each belt.
With the output priority under full load after stabilizing the output splitter will draw 4/3. 3/3 going to the output belt, 1/3 going to the loopback. Each input splitter provides 2/3 of a belt, with each input belt providing 1/3 of a belt including the loopback.
That makes sense yeah. The 8 to 8 balancer can be a 4 to 4 balancer internally, and you only need 50% capacity on the loopback, so each loopback line can be shared by 2 output splitters and 2 input splitters. If you do that the input priorities also become critical (along with the output priorities which are critical in any case) for full throughput since each input splitter can only ouput 1 full belt into the 4 to 4 internal splitter, and must be set to accept from the normal input belts first.AmericanPatriot wrote: ↑Fri Nov 13, 2020 4:45 pmYou actually only need two splitters per loop, and don't need to balance themZanthra wrote: ↑Fri Nov 13, 2020 12:05 pm If you want a balancer that works in every combination of input and output, no questions asked, for example a 4 to 4 that can be used as anything up to 4 to 4 and balance correctly, you basically need to build an 8 by 8 balancer, and have each output splitter have 1 standard output and 1 loopback, and each input splitter takes one standard input and one loopback. Balancing the loopbacks can help it stabilize faster, for example this balancer.
With that no matter how many inputs or outputs stall or are backed up, the loopbacks will provide the feedback nescessary to have it pull fairly from all inputs, and output fairly to all outputs. It can scale to any power of 2 by building it out of a balancer that's twice as large, everything up to 8 to 8 from a 16 to 16 for example (the balancers it's built with don't need to be throughput unlimited). It's just a lot of extra space and complexity that's usually not nescessary.
1.jpg
Nevermind what I wrote below about reducing the length without a throughput unlimited balancer. Without fully balancing the loopback belts when distributing to the 4 input splitters, it will be throughput limited.
PS: You don't need the throughput unlimited 4 to 4 splitter internally either since the loopback will feed the missing 50% output back to the empty input lines, you can shorten by 2 tiles if you remove the second stage of output splitters from the inner 4 to 4:
Last edited by Zanthra on Fri Nov 13, 2020 10:19 pm, edited 4 times in total.
Re: Self-Made Belt Balancers
Damn, those little things are even more complicated than I've thought.
Are there some kind of "rules" that you need to remember? Like "no 'decreasing' splitter with loop input without any extra"?
This should work, too, right? The example in the wiki (https://wiki.factorio.com/Balancer_mechanics) has another reason to be throughput limited. I think you really need a test world for those things
Are there some kind of "rules" that you need to remember? Like "no 'decreasing' splitter with loop input without any extra"?
This should work, too, right? The example in the wiki (https://wiki.factorio.com/Balancer_mechanics) has another reason to be throughput limited. I think you really need a test world for those things
Re: Self-Made Belt Balancers
That should work yes.
I don't really have any sort of hard rule to share, but basically if you have a loop to a splitter with only one output available, it won't have enough output to clear the other input under all conditions. With the splitter to share the left and center input belts, that allows the load to move over to the right splitter in that case.
I don't really have any sort of hard rule to share, but basically if you have a loop to a splitter with only one output available, it won't have enough output to clear the other input under all conditions. With the splitter to share the left and center input belts, that allows the load to move over to the right splitter in that case.