Balancer mechanics: Difference between revisions
DragonMudd (talk | contribs) (2 to 4 can go down to 50%) |
(→Mechanics: added secction about throughput) |
||
Line 190: | Line 190: | ||
[[File:Balancer_Mechanics1.png|thumb|200px|right|1 full input belt gets split into two 50% full belts which get split into 4 belts that are each 25% full.]] | [[File:Balancer_Mechanics1.png|thumb|200px|right|1 full input belt gets split into two 50% full belts which get split into 4 belts that are each 25% full.]] | ||
Belt balancers use the mechanic that splitters output items in a 1:1 ratio onto both their output belts. That means that a splitter can be used to put an equal amount of items on two belts. Since the process can be repeated infinitely, balancers with 2 | Belt balancers use the mechanic that splitters output items in a 1:1 ratio onto both their output belts. That means that a splitter can be used to put an equal amount of items on two belts. Since the process can be repeated infinitely, balancers with 2<sup>n</sup> output belts are easy to create. | ||
{{clear}} | {{clear}} | ||
[[File:Balancer_Mechanics2.png|thumb| | [[File:Balancer_Mechanics2.png|thumb|250px|right|First the belts A and B go through a splitter so that the output belts contain an equal amount of items from each input belt (AB). The same is done with belts C and D. Then the mixed belts AB and CD go through splitters so that their output belts contain items from each input belt (ABCD)!]] | ||
Balancers also use the mechanic that splitters take an equal amount of items from both input belts. That means that a splitter connected to two input belts will evenly distribute those items onto the the two output belts. To balance belts it has to be made sure that the output belts contain an equal number of items from each input belt. | Balancers also use the mechanic that splitters take an equal amount of items from both input belts. That means that a splitter connected to two input belts will evenly distribute those items onto the the two output belts. To balance belts it has to be made sure that the output belts contain an equal number of items from each input belt. | ||
{{clear}} | |||
=== Throughput === | |||
[[File:4to4_balancer_throughput_limit_demo.gif|right]] | |||
The above collection of balancers often states that the throughput of balancers can go down to x% which means that the balancer is '''throughput limited'''. To be '''throughput ''un''limited''', a balancer must fulfil the following conditions: | |||
#100% throughput under full load | |||
#Any arbitrary amount of input belts should be able to go to any arbitrary amount of output belts | |||
All balancers in the collection meet the first condition, but only some meet the second one. This is the case because the balancers have internal bottlenecks. The gif on the right shows a 4 → 4 balancer being fed by two belts, but only outputting one belt which means that its througput in that arrangement is 50%. The bottleneck in this balancer is that the two middle belts only get input from one splitter. So, if only one side of that splitter gets input, as can be seen in the gif, it can only output one belt even though the side of the splitter is fed by a splitters which gets two full belts of input. In this particular case, the bottleneck can be fixed by feeding the two middle output belts with more splitters. This is done by adding two more splitters at the end of the balancer, as it can be seen here: [[File:4to4_balancer.png|100px]] | |||
However most balancers' bottlenecks can't be solved as easily. A guaranteed method to achieve throughput unlimited balancers is to place two balancers back to back that fulfil the first condition for throughput unlimited balancers (100% throughput under full load). The resulting balancer is usually larger than a balancer that was initially designed to be throughput unlimited. This is the case because they use more splitters than the minimum required amount of log<sub>2</sub>(n)-n/2 <small>(where n is the power-of-two number of belts)</small> splitters for a throughput unlimited balancer. | |||
{{clear}} | {{clear}} | ||
Revision as of 19:47, 3 August 2017
Balancers are used to evenly distribute items over multiple belts or multiple belt lanes.
Belt balancers are usually used to balance multiple belts before or after train stations to ensure even loading of buffer chests and train wagons. They are also used to even out production by placing them in front of large machine arrays with multiple input belts. Belt balancers do not balance the individual belt lanes!
Lane balancers are usually placed after production to ensure that a belt is fully compressed or before consumption to ensure that both lanes of the belt are evenly drained.
Lane Balancers
Input Unbalanced, Output Balanced
These balancers evenly distribute the items onto the output lanes but do not "pull" evenly from the input lanes when the output is backed up. They are input unbalanced.
The last two balancers are a special case, they only work when there are items on only one side of the input belt.
- Corner-lane balancer.png
- One lane-corner-lane balancer.png
Input Balanced, Output Unbalanced
These balancers evenly distribute the items onto the output lanes and "pull" evenly from the input lanes when the output is backed up. They are input balanced. These balancers are not output lane-balanced , this means when there is less than 100% input, the output lanes are not balanced.
- Input balanced-lane balancer-1belt.png
1 Belt
- Input balanced-lane balancer-2belt.png
2 Belts
- Input balanced-lane balancer-4belt-smaller.png
4 Belts v.1
- Input balanced-lane balancer-4belt.png
4 Belts v.2
Belt Balancers
These belt balancers are all tested to be input balanced and output balanced. Remember, belt balancers do not balance the individual belt lanes! Throughput under full load is 100% and min throughput with blocked in- and outputs is also tested, it is noted when that is under 100%. Tests are done using this handy tool by d4rkpl4y3r on the Factorio Forums. When there are multiple versions of balancers that have the same stats but different sizes, the balancer with the smallest footprint is shown.
Blueprint book string to import all of the balancers as blueprints (only works in version 0.15 or higher)
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
1 belt → x belts
- 1to2 balancer.png
1 to 2
- 1to3 balancer.png
1 to 3
- 1to4 balancer.png
1 to 4
- 1to5 balancer.png
1 to 5
- 1to6 balancer.png
1 to 6
- 1to7 balancer.png
1 to 7
- 1to8 balancer.png
1 to 8
- 1to16 balancer.png
1 to 16
2 belts → x belts
- 2to1 balancer.png
2 to 1
- 2to2 balancer.png
2 to 2
- 2to3 balancer a.png
2 to 3: Throughput can go down to 75%.
- 2to3 balancer b.png
2 to 3: Throughput can go down to 75%.
- 2to4 balancer.png
2 to 4: Throughput can go down to 50%.
- 2to5 balancer b.png
2 to 5: Throughput can go down to 50%.
- 2to5 balancer.png
2 to 5: Throughput can go down to 50%.
- 2to6 balancer.png
2 to 6: Throughput can go down to 50%.
- 2to7 balancer.png
2 to 7: Throughput can go down to 50%.
- 2to8 balancer.png
2 to 8: Throughput can go down to 50%.
- 2to16 balancer.png
2 to 16: Throughput can go down to 50%.
3 belts → x belts
- 3to1 balancer.png
3 to 1: Throughput can go down to 50%.
- 3to2 balancer.png
3 to 2: Throughput can go down to 75%.
- 3to3 balancer.png
3 to 3: Throughput can go down to 50%.
- 3to4 balancer.png
3 to 4: Throughput can go down to 83%.
- 3to5 balancer.png
3 to 5: Throughput can go down to 50%.
- 3to6 balancer.png
3 to 6: Throughput can go down to 50%.
- 3to7 balancer.png
3 to 7: Throughput can go down to 50%.
- 3to8 balancer.png
3 to 8: Throughput can go down to 50%.
4 belts → x belts
- 4to1 balancer.png
4 to 1
- 4to2 balancer.png
4 to 2: Throughput can go down to 50%.
- 4to3 balancer.png
4 to 3: Throughput can go down to 83%.
- 4to5 balancer.png
4 to 5: Throughput can go down to 62.5%.
- 4to6 balancer.png
4 to 6: Throughput can go down to 50%.
- 4to7 balancer.png
4 to 7: Throughput can go down to 50%.
- 4to8 balancer.png
4 to 8: Throughput can go down to 50%.
5 belts → x belts
- 5to1 balancer.png
5 to 1: Throughput can go down to 50%.
- 5to2 balancer.png
5 to 2: Throughput can go down to 50%.
- 5to3 balancer.png
5 to 3: Throughput can go down to 50%.
- 5to4 balancer.png
5 to 4: Throughput can go down to 62.5%.
- 5to5 balancer.png
5 to 5: Throughput can go down to 62.4%.
- 5to6 balancer.png
5 to 6: Throughput can go down to 50%.
- 5to7 balancer.png
5 to 7: Throughput can go down to 62.4%.
- 5to8 balancer.png
5 to 8: Throughput can go down to 62.5%.
6 belts → x belts
- 6to1 balancer.png
6 to 1: Throughput can go down to 50%.
- 6to2 balancer.png
6 to 2: Throughput can go down to 50%.
- 6to3 balancer.png
6 to 3: Throughput can go down to 50%.
- 6to4 balancer.png
6 to 4: Throughput can go down to 50%.
- 6to5 balancer.png
6 to 5: Throughput can go down to 50%.
- 6to6 balancer.png
6 to 6: Throughput can go down to 50%.
- 6to7 balancer.png
6 to 7: Throughput can go down to 50%.
- 6to8 balancer.png
6 to 8: Throughput can go down to 50%.
7 belts → x belts
- 7to1 balancer.png
7 to 1: Throughput can go down to 50%.
- 7to2 balancer.png
7 to 2: Throughput can go down to 50%.
- 7to3 balancer.png
7 to 3: Throughput can go down to 50%.
- 7to4 balancer.png
7 to 4: Throughput can go down to 50%.
- 7to5 balancer.png
7 to 5: Throughput can go down to 62.5%.
- 7to6 balancer.png
7 to 6: Throughput can go down to 50%.
- 7to7 balancer.png
7 to 7: Throughput can go down to 50%.
- 7to8 balancer.png
7 to 8: Throughput can go down to 70%.
8 belts → x belts
- 8to1 balancer.png
8 to 1
- 8to2 balancer.png
8 to 2: Throughput can go down to 50%.
- 8to3 balancer.png
8 to 3: Throughput can go down to 50%.
- 8to4 balancer.png
8 to 4: Throughput can go down to 50%.
- 8to5 balancer.png
8 to 5: Throughput can go down to 62.5%.
- 8to6 balancer.png
8 to 6: Throughput can go down to 50%.
- 8to7 balancer.png
8 to 7: Throughput can go down to 70%.
- 8to8 balancer.png
8 to 8: Throughput can go down to 50%.
- 8to8 balancer b.png
8 to 8: Throughput can go down to 50%.
Mechanics
Belt balancers use the mechanic that splitters output items in a 1:1 ratio onto both their output belts. That means that a splitter can be used to put an equal amount of items on two belts. Since the process can be repeated infinitely, balancers with 2n output belts are easy to create.
Balancers also use the mechanic that splitters take an equal amount of items from both input belts. That means that a splitter connected to two input belts will evenly distribute those items onto the the two output belts. To balance belts it has to be made sure that the output belts contain an equal number of items from each input belt.
Throughput
The above collection of balancers often states that the throughput of balancers can go down to x% which means that the balancer is throughput limited. To be throughput unlimited, a balancer must fulfil the following conditions:
- 100% throughput under full load
- Any arbitrary amount of input belts should be able to go to any arbitrary amount of output belts
All balancers in the collection meet the first condition, but only some meet the second one. This is the case because the balancers have internal bottlenecks. The gif on the right shows a 4 → 4 balancer being fed by two belts, but only outputting one belt which means that its througput in that arrangement is 50%. The bottleneck in this balancer is that the two middle belts only get input from one splitter. So, if only one side of that splitter gets input, as can be seen in the gif, it can only output one belt even though the side of the splitter is fed by a splitters which gets two full belts of input. In this particular case, the bottleneck can be fixed by feeding the two middle output belts with more splitters. This is done by adding two more splitters at the end of the balancer, as it can be seen here:
However most balancers' bottlenecks can't be solved as easily. A guaranteed method to achieve throughput unlimited balancers is to place two balancers back to back that fulfil the first condition for throughput unlimited balancers (100% throughput under full load). The resulting balancer is usually larger than a balancer that was initially designed to be throughput unlimited. This is the case because they use more splitters than the minimum required amount of log2(n)-n/2 (where n is the power-of-two number of belts) splitters for a throughput unlimited balancer.
References
- Command line belt balancer analyzer
- Collection of lane balancers
- Best collection of belt balancers, most of them are used here.
- Collection of belt balancers, most of these contain a lot of unnecessary splitters
- Another collection of belt balancers, some of these are not input balanced