На других языках: Deutsch English Nederlands Polski Українська 简体中文

Механика балансеров

From Official Factorio Wiki
Revision as of 18:48, 15 November 2020 by HammerMeow (talk | contribs) (comb of translate and added new section)
Jump to navigation Jump to search


Балансиры используются для равномерного распределения предметов по нескольким конвейерным линиям.

Балансир с сбалансированным входом, равномерно принимает поток предметов со всех входных конвейеров. Балансир с сбалансированным выходом, равномерно распределяет поток предметов по всем выходным конвейерам. Идеально, если у балансира сбалансированы и вход и выход.

Конвейерные балансиры

Конвейерные балансиры основаны на разделителях, которые разделяют поток в соотношении 1:1 на обоих его выходах. Таким образом, разделители можно использовать для разделения потока предметов пополам. В процессе может многократно повторяться, что позволяет создавать балансиры с количеством выходов 2n.

Балансиры так же используют механику разделителей для приема равного количества предметов с обоих входов. Иными словами, разделитель, подключенный к двум входным конвейерам, будет равномерно распределять предметы по двум выходным конвейерам.

Пропускная способность

Максимальная пропускная способность балансиров может быть ограничена, если один или несколько выходов заблокированы. Что бы пропускная способность не уменьшалась, балансир должен полностью соответствовать следующим требованиям:

  1. Максимальная пропускная способность под полной нагрузкой.
  2. Любые входы балансира, должны быть подключены к любым выходам этого балансира.

Часто балансиры полностью не соответствуют двум условиям выше, так как имеют свои узкие места. На 3 картинке в галерее, показан 4 → 4 балансир, который запитан по двум конвейерам, но выводит только один, следовательно, пропускная способность этого балансира равна 50% максимальной. Узкое место данного балансира, заключается в том, что два средних конвейера запитаны от одного разделителя. Таким образом, если только на один из входов разделителя поступает поток предметов, как видно на картинке, он может разделить только один конвейер, даже несмотря на то, что подводящий разделитель полностью запитан по двум входам. Конкретно в этом случае, недостаток балансира может быть исправлен, если на выходные конвейеры установить дополнительные разделители (4 картинка).

Однако, большинство недостатков балансиров не устраняются так просто. Гарантированный метод для достижения максимальной пропускной способности балансира заключается в установке двух балансиров спина к спине, что позволяет достичь выполнения первого условия максимальной пропускной способности (максимальная пропускная способность под полной нагрузкой). Итоговый балансир обычно получается значительно больше, чем тот, который изначально проектировался. Это связано с тем, что они используют больше разделителей, чем минимальное требуемое их количество для теоретического балансира с полной пропускной способностью. Для n → n балансира, где n - степень двойки, формула n×log2(n)−n÷2 может использоваться для расчета количества разделителей. Эта формула основана на узлах сети Бенеша (англ.), которая по сути тот же балансир с максимальной пропускной способностью - позволяющий из любого входа дойти до любого выхода.

Универсальный балансир

Многие балансиры не могут должным образом сбалансировать выходной поток, если один из выходов не используется. По сути, это означает, что балансир n-n не способен эффективно работать в режиме n-(n-1). Иногда это можно исправить, заведя неиспользуемый выход обратно на вход балансира. В других случаях, это не работает. Универсальный балансир решает эту задачу внутренней обратной связью. Если пропускная способность универсального балансира ограничена, то проблема кроется в его внутренней обратной связи или самом балансире. Универсальный балансир с ограниченной пропускной способностью может обладать устойчивостью только для нескольких неиспользуемых выходов, когда же количество неиспользуемых выходов больше допустимого, универсальный балансир ведет себя как обычный и может не балансировать поток должным образом.

Балансир полос конвейера

Балансир полос конвейера может быть с сбалансированным выходом или входом. Балансир полос конвейера с сбалансированным входом отводит одну из полос входного потока, в то время как балансир полос конвейера с сбалансированным выходом равномерно распределяет входной поток на каждую полосу выходного конвейера (5 картинка).

Галерея

Смотрите также

Рекомендации