На других языках: Čeština Deutsch English Français Italiano 日本語 Polski Português, Brasil Українська 简体中文

Circuit network/ru: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
m (Resolved redirect, removed redlink to page that should not exist)
m (Заменил слова "семафор" на "светофор". Внутриигровые ж/д светофоры не обладают сигнализирующими крыльями, а потому семафорами не являются.)
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Languages}}
{{Languages}}
'''Логические сети''' создаются при помощи красных или зеленых проводов и позволяют контролировать [[Automatic control/Devices/ru#Приемник|устройства-приемники]], используя передачу информации в сеть со всех [[Automatic control/Devices/ru#Передатчики|устройств-передатчиков]]. Большая часть передатчиков – устройства хранения, они транслируют информацию по специальному каналу, в зависимости от предмета или типа жидкости, хранящейся в устройстве хранения. Каждая логическая сеть имеет канал на каждый тип предмета, а также на 45 дополнительных [[Automatic control/Virtual signals/ru|Виртуальных сигналов]] которые используются как настраиваемые пользовательские каналы.
'''Логические сети''' строятся с использованием [[Red wire/ru|красного]] и [[green wire/ru|зеленого проводов]], предоставляя возможность удаленного управления, основанного на передаче управляющего сигнала подключенными к сети передатчиками. Большая часть передатчиков – устройства хранения, которые транслируют информацию по специальному каналу, в зависимости от типа предмета или жидкости, хранящейся в устройстве хранения. Каждая логическая сеть имеет канал на каждый тип предмета и жидкости, а также на 48 дополнительных [[#Виртуальные сигналы|виртуальных сигналов]], которые используются как настраиваемые пользовательские каналы. Так же доступны сигналы типа '<span style="color:#FF6666">Все</span>', '<span style="color:#99FF99">Любой</span>' и '<span style="color:#FFFF99">Каждый</span>'.


:[[File:InnerOfGreenCable.jpg|right|400px]]
[[File:shared_circuit_network.png|thumb|600px|right|Две логические сети проходят через одну [[small electric pole/ru|деревянную опору ЛЭП]].]]
 
== Применение ==
=== Транслируемая информация ===
Передатчики передают информацию о количестве предметов или жидкости находящихся в них по каналу соответствующего предмета, представленное десятичным числом, или другую информацию, определяемой игроком. Например, цистерна, в которой содержится 1000 единиц нефти, будет передавать в сеть значение 1000 по каналу "нефть".
 
Каналы отделены друг от друга, благодаря чему через сеть можно одновременно передавать информацию об каждом предмете и жидкости в игре, а так же виртуальные сигналы (цифры 0-9, буквы A-Z, и 9 разных цветов). По всем неиспользуемым каналам передается значение 0.
 
Если источников информации, использующие один и тот же канал, несколько, то их значения складываются: две цистерны, содержащие 1000 единиц нефти и подключенные к одной сети, по каналу "нефть" передают значение 2000.
 
Все провода одного цвета, соединенные между собой, функционируют как одна сеть, т.е. сигналы будут распространятся по всем проводам. Например, если два красных провода подключены ко входу комбинатора, то они принимают сигналы друг от друга. Это может привести к обратной связи (смотри ниже [[#Комбинаторы|арифметический комбинатор]]), если не принять необходимые меры.
 
Значения представлены целочисленным знаковым 32 битным числом, т.е. от -2147483648 до 2147483647 включительно,  в [https://ru.wikipedia.org/wiki/Дополнительный_код дополнительном коде]. При переполнении, числа оборачиваются, т.е. 2147483647 + 10 станет -2147483639. При вводе числа в комбинатор может показаться, что оно превышает предел 32-битного числа, однако, когда графический интерфейс будет закрыт, число переполнится. [https://forums.factorio.com/58419] (англ.)
 
=== Управляемые устройства ===
Принимаемые сигналы, наиболее часто используются для включения/выключения устройства, сравнения значений между различными каналами или значения канала с константой.
 
Приемники суммируют все сигналы каждого подключенного провода, причем и красного, и зеленого. Например, если на манипулятор по красному проводу приходит значение 20 по каналу "медные пластины", а по зеленому - 10, то значение сигнала на этом же канале для манипулятора будет равно 30.
 
Несколько проводов одного цвета будут передавать и суммировать свои сигналы. Для примера, 3 ящика A, B и C, соединенные одной линией (A -> B -> C) зеленым проводом, будут передавать сумму содержимого в ящиках. Однако, если красный провод подключен к ящику A и манипулятору, то манипулятор будет получать информацию о содержимом только ящика A.
 
== Устройства ==
 
Каждое устройство, которое может быть подключено к логической сети, имеет иконку [[File:Circuit network panel.png]] в верхнем правом углу информационной панели. Нажав на эту иконку, можно увидеть опции для доступных сетей (примечание: красный или зеленый провод должны быть подключены, иначе будет получено сообщение "не подключено"). Нажав на иконку [[File:Logistic network panel.png]], устройство может быть подключено к логистической сети, если оно находится в ее зоне действия, что позволяет устанавливать дополнительные условия.
 
Условия могут устанавливаться по логической (сигналы по красному и зеленому проводам суммируются) и логистической сетям, которые складываются по логическому И.
 
Ниже представлены устройства, которые могут быть подключены к логической сети.
 
{| class="wikitable mw-collapsible"
|-
! Иконка !! Имя !! Возможные выходные сигналы !! Возможные опции управления
|-
| {{Icon|Transport belt}} || {{L|Transport belts}} || Конвейер отсылает информацию о своем содержимом.
*''Импульсный режим'': Сигнал, длительностью 1 тик, посылается, когда предмет входит в конвейер.
*''Непрерывный режим'': Сигнал посылается пока предмет проходит конвейер.
|| Конвейер может быть включен по условию.
|-
| {{Icon|Inserter}} || {{L|Inserters}} || Манипулятор отправляет информацию о взятых предметах.
*''Импульсный режим'': Сигнал, длительностью 1 тик, посылается, когда предмет взят.
*''Непрерывный режим'': Сигнал посылается пока предмет удерживается манипулятором.
|| Манипулятор может быть включен по условию. Размер пачки может изменяться управляющим сигналом (настраивается).
|-
| {{Icon|Filter inserter}} || {{L|Filter inserter}} || То же, что и выше. || В фильтрующем манипуляторе дополнительно могут настраиваться его фильтры: до 5 предметов, сигналы которых имеют положительное значение.
|-
| {{Icon|Wooden chest}} || {{L|Chests}} || Все сундуки отправляют информацию о их содержимом. Логистические сундуки дополнительно отправляю ту же информацию в [[logistic network/ru|логистическую сеть]]. ||
|-
| {{Icon|Requester chest}} || {{L|Requester chest}} || То же, что и выше. || Устанавливаются запрашиваемые предметы из логистической сети.
|-
| {{Icon|Storage tank}} || {{L|Storage tank}} || Резервуар отправляет информацию о жидкостях. ||
|-
| {{Icon|Gate}} || {{L|Gate}} || Ворота посылают сигнал в логическую сеть. || Ворота могут быть открыты по условию.
|-
| {{Icon|Rail signal}} || {{L|Rail signal}} || Ж/д светофор отправляет в сеть информацию о своем состоянии. || Ж/д светофор по условию может показывать красный сигнал.
|-
| {{Icon|Rail chain signal}} || {{L|Rail chain signal}} || То же, что и выше. ||
|-
| {{Icon|Train stop}} || {{L|Train stop}} || Ж/д станция передает содержимое и идентификатор остановившегося поезда. Количество поездов, идущих к станции, отправляется в логическую сеть.<br>При чтении содержимого поезда, количество жидкостей округляется вниз до ближайшего целого, исключая случай, когда жидкости < 1, тогда число округляется до 1. || Ж/д станция передает сигналы из логической сети поезду, которые используются в условиях ожидания. Помимо этого сеть может включать и выключать станцию. Максимальное число поездов, способных на движение к станции ("лимит поездов"), можно установить логической сетью.
|-
| {{Icon|Accumulator}} || {{L|Accumulator}} || Отправляет значение уровня заряда в процентах. ||
|-
| {{Icon|Roboport}} || {{L|Roboport}} || Отправляет информацию о содержимом логистической сети и/или статистику по дронам. Сигналы статистики по дронам настраиваются. ||
|-
| {{Icon|Burner mining drill}} || {{L|Mining drill}} || Бур отправляет информацию об ожидаемых ресурсах, либо только от этого бура, либо со всего месторождения. || Бур может быть включен по условию.
|-
| {{Icon|Pumpjack}} || {{L|Pumpjack}} || Отправляет текущих уровень добычи. || Нефтяная вышка может быть включена по условию.
|-
| {{Icon|Power switch}} || {{L|Power switch}} || || Выключатель питания может включить электрическую сеть по условию.
|-
| {{Icon|Programmable speaker}} || {{L|Programmable speaker}} || || Показывает предупреждение и издает звук, основанную на логическом сигнале. Может использоваться для создания простейших мелодий.
|-
| {{Icon|Lamp}} || {{L|Lamp}} || || Фонарь может быть включен по условию. Если передается цветовой сигнал, то он будет светиться этим цветом.
|-
| {{Icon|Offshore pump}} || {{L|Offshore pump}} || || Насос может быть включен по условию.
|-
| {{Icon|Pump}} || {{L|Pump}} || || Помпа может быть включена по условию.
|}


== Физическая структура сети ==
== Физическая структура сети ==
Логическая сеть включает в себя только те устройства, которые соединены проводом одного цвета. Провод может быть проятнут напрямую от устройства к устройству, либо через столбы ЛЭП.
Логическая сеть состоит только из тех устройств, которые соединены проводом одного цвета. Провод может быть натянут непосредственно между устройствами или посредством опор ЛЭП. Длина провода ограничена предыдущим подключением.


Важно понять, что каждый подключенный набор проводов создает отдельную сеть. Например возможно иметь четыре сети с красными проводами и три – с зелеными. Красные и зеленые сети всегда будут отдельными, даже если они соприкоснутся где-либо на столбах ЛЭП или в устройстве.
Важно: каждый установленный провод создает отдельную сеть. К примеру, вполне возможно иметь 4 сети на основе красного провода и 3 на основе зеленого. Если красный и зеленый провод проходят через один и тот же столб ЛЭП или устройство, то они все равно остаются отдельными сетями. Однако, в случае проводов одинакового цвета, провода соединятся и образуют одну сеть. Используйте разные цвета проводов для разделения сетей находящихся в непосредственной близости друг от друга.


* Для совединения проводов или кабелей к столбу ЛЭП просто протяните провод до основания столба.
* Для соединении сигнальных или силовых проводов, кликните на объект, а после на основание опоры ЛЭП.
* Чтобы убрать провод или кабель, протяните провод того же цвета над текущим соединением. Провод/кабель назад не возвращается.
* Для демонтажа сигнальных или силовых проводов, поместите провод того же цвета поверх существующего соединения. Демонтированный провод не возвращается.
* Для того, чтобы убрать '''все''' подключения к конкретному столбу ЛЭП, используйте сочетание SHIFT+ЛКМ. Первый щелчок уберет все электрические провода, второй – все зеленые и красные провода. Назад провода вы не получите.
* Для удаления '''всех''' соединений с опоры, нажмите на нее, удерживая Shift. Первый клик уберет все силовые провода, а второй - сигнальные. Демонтированные провода не возвращается.
* Во время подключения к [[Arithmetic combinator/ru|арифметическому комбинатору]] или [[Decider combinator/ru|Сравнивающему комбинатору]], внимательно следите за тем, чтобы подключить провод на правильную сторону – на вывод или на ввод. Чтобы узнать это включите детализированный режим (ALT).
* При подключении к [[arithmetic combinator/ru|арифметическому комбинатору]] или [[decider combinator/ru|сравнивающему комбинатору]], позаботьтесь о том, чтобы подключить провод к правильной стороне входа или выхода. Для этого используйте режим "дополнительной информации" (Alt), показывающий ориентацию комбинатора.
* Наведя курсор на устройство, все подключения подсветятся.
* Наведя курсор на опору ЛЭП, которая является частью логической сети, будут отображены ее сигналы. При наведении курсора, некоторые устройства, такие как комбинаторы, отображают и входные, и выходные сигналы.


== Транслируемая информация ==
== Комбинаторы ==
[[Automatic control/Devices/ru#Передатчики|Передающие устройства]] транслируют количество  [[Items/ru|предметов]] или [[Fluid system/ru|жидкости]] которые на данный момент содержатся в них, либо любые другие данные, обозначенные игроком. Каждый транслируемый объем является числовым значением в 'канале', соответствующему хранящемуся премету. К пример, Цистерна, содержащая 1000 единиц нефти будет транслировать значение равное 1000 по каналу «Нефть».


Несколько трансляций одного предмета или жидкости складываются: если к сети подключено две цистерны, в которые залито по 1000 единиц нефти, значение канала «нефть» будет равна 2000.
Комбинаторы совмещают в себе возможности приемников и передатчиков и дают возможность проводить сложные операции в логической сети.


Провода, соединенные вместе будут передавать сигналы по одному цвету. Например, если два красных провода подключнеы к входу одного комбинатора, оба провода будут получать сведения друг от друга. Если не принять мер, может начаться проблема обратной связи. Подробней об этой проблеме ниже.
* {{L|Constant combinator}} способен передавать до 20 значений по любым каналам в сеть, к которой он подключен (на данный момент, нельзя указать на каком канале должен быть сигнал - красном или зеленом, поэтому, в случае необходимости, используйте два комбинатора). Вы можете использовать канал любого предмета и любого [[#Виртуальные сигналы|виртуального сигнала]].
** Примечание: использование двух из 20 слотов для формирования постоянного сигнала на одном и том же канале, равнозначно одному слоту со значением их суммы.
* {{L|Arithmetic combinator}} выполняет арифметические операции со значениями на входе, а результат по заданному каналу передает на выход. Как входные, так выходные сигналы могут передаваться по любому каналу.
** Подключение: арифметический комбинатор подключается к красной или зеленой логической сети со стороны входа (контакты установлены на корпусе и выглядят как автомобильные свечи зажигания); результат арифметической операции передается по заданному каналу на выход комбинатора (представляет собой провода несколько вынесенные за корпус комбинатора).
** Обратная связь: важно чтобы входная сеть и выходная не были одной и той же сетью. При соединении входа и выхода комбинатора, образуется петля обратной связи. К примеру, прибавляя 1 к значению медных пластин и передавая результат по тому же каналу, в случае соединения входа и выхода, образуется бесконечный цикл ([https://ru.wikipedia.org/wiki/Положительная_обратная_связь положительная обратная связь]), в котором выходное значение быстро растет. Скорость роста значения определяется [[Game-tick/ru||игровым тиком]. Эта особенность комбинаторов вкупе со сравнивающим комбинатором может использоваться для создания электронных часов, ворот и других систем. Более подробно тут: {{L|Tutorial:Combinator tutorial}}.
** Сигнал "Каждый": арифметический комбинатор может использовать сигнал "Каждый" на вход и на выход, благодаря которому можно произвести арифметическую операцию сразу над всеми не нулевыми сигналами, а результат передать на выход. Используя сигнал "Каждый" на вход и выход и не изменяющую операцию (такую как прибавление нуля), можно получить эквивалент "однонаправленного" провода: вся информация на входе передается на выход, а обратно - нет.
** Мульти-сеть: арифметический комбинатор может объединять красную и зеленую сети на входе, передавая на выход их сумму.
* {{L|Decider combinator}} во многом похож на арифметический, но в основном предназначен для сравнения значений. По сути, это условный оператор. Особенности подключения, обратной связи и использования сигнала "каждый" аналогичны арифметическому комбинатору. Дополнительно, он может работать с сигналами "Любой" и "Все", позволяющие выполнять более сложные операции, чем объединение сетей. Более подробно тут: {{L|Decider combinator}}.


== Использование информации ==
== Виртуальные сигналы ==  
[[File:smart_inserter.png|thumb|250px|Условие примера: "Работать только если количество железных пластин ниже, чем количество стальных."]]
[[Automatic control/Devices/ru|Приемники]] могут использовать транслируемую информацию, в большинстве случаев, чтобы включить/выключить устройство.


Они могут либо сравнивать значения разных каналов, либо сравнивать значение канала с фиксированным значением. Манипулятор на картинке работает, если количество жлезных пластин ниже, чем количество стальных.
[[File:Virtual Signals dialog box.png|thumb|Виртуальные сигналы]]
Виртуальные сигналы - это специальные символьные сигналы. За исключением трех логических сигналов, виртуальные сигналы не отличаются от сигналов предметов.


Приемники суммируют все сигналы с каждого провода, подключенного к ним. Даже если это и красные, и зеленые провода. К примеру, если манипулятор подсоединен к красному проводу, по которому идет информация о 20 железных пластинах, к зеленому проводу, несущему сведения о 10 медных пластинах, и еще одному зеленому проводу с информацией о 5 железных пластинах, входящий сигнал на манипулятор будут 25 железных пластин и 10 медных.
Всего виртуальных сигналов 48: числа от 0 до 9, буквы от A до Z, иконки галочки и инфо, точка, а так же цвета: красный, зеленый, синий, желтый, пурпурный, голубой, белый, серый и черный.


== Основы ==
=== Логические сигналы ===
[[File:circuit-network-example-1.png|thumb|256px|Несложная логическая сеть позволит заполнить сундук заданным количеством предметов.]]
[[File:logic_signals.png|300px|thumb|Иконки логических сигналов]]
Три виртуальных сигнала не являются сигналами в привычном понимании - они представляют собой логические операции над несколькими сигналами.


Простейшую сеть можно создать, соединив програмируемый манипулятор с сундуком рядом. Так можно контролировать количество предметов в сундуке.  
==== Все ====
(обратите внимание, что вам не обязательно использовать столбы ЛЭП для соединения – как показано на картинке. Можете соединить их напрямую)
Сигнал ''<span style="color:#FF6666">все</span>'' используется в левой части условия. Условие истинно тогда, когда оно выполняется для всех входных сигналов или на входе нет ничего. ''<span style="color:#FF6666">Все</span>'' аналогичен [https://ru.wikipedia.org/wiki/Квантор_всеобщности квантору всеобщности].


== Комбинаторы ==
Когда на входе сравнивающего комбинатора установлен сигнал ''<span style="color:#FFFF99">каждый</span>'', на выходе может использоваться сигнал ''<span style="color:#FF6666">все</span>''. При его использовании комбинатор будет выводить сигнал по каждому каналу с ненулевым значением на входе до тех пор, пока выполняется условие; значение будет либо соответствовать входному значению, либо единице, в зависимости от настройки комбинатора.
Комбинаторы совмещают в себе возможности приемников и передатчиков, что позволяет логической сети использовать сложные функции.


* [[Constant combinator/ru|Постоянный комбинатор]] транслирует до 15 значений в любой из каналов, по любой из подключенных к нему сетей. (На данный момент вы не можете уточнять, какое именно значение – красное или зеленое – использовать. Если нужны разные значения – используйте два комбинатора – под каждый цвет). Вы можете использовать канал любого предмета либо каналы [[Automatic control/Virtual signals/ru|виртуальных сигналов]].
==== Любой ====
**Обратите внимание, что использовать два из 15 слотов для трансляции значений на '''том же''' канале – это то же самое, что транслировать сумму двух значений в один слот.
Сигнал ''<span style="color:#99FF99">любой</span>'' используется в левой части условия. Когда на входе нет ни одного сигнала, ''<span style="color:#99FF99">любой</span>'' выдает ложь. Условие истинно, когда оно выполняется по крайней мере для одного сигнала.''<span style="color:#99FF99">Любой</span>'' аналогичен [https://ru.wikipedia.org/wiki/Квантор_существования квантору существования].


* [[Arithmetic combinator/ru|Арифметический комбинатор]] выполняет арифметические операции с поступаемыми значениями и транслирует результат на указанном канале вывода. Каналы входа и вывода могут занимать канал любого предмета, либо любой из каналов виртуальных сигналов.
==== Каждый ====
** Подключение: Арифметический комбинатор подключается к красной или зеленой сети в свою  '''входную''' сторону (терминалы ставятся на корпус и выглядят как свечи зажигания) и выполняет арифметические вычисления, которые затем транслируются по указанному каналу на стороне '''выхода''' (провода на этой стороне как будто слегка вылезают наружу).  
Сигнал ''<span style="color:#FFFF99">каждый</span>'' может использоваться только в левой части ввода и вывода сравнивающих и арифметических комбинаторов. Он может использоваться на выходе лишь в том случае, когда используется на входе. Когда этот сигнал используется на входе и выходе одновременно, комбинатор обрабатывает каждый входной сигнал в отдельности. В случае, когда ''<span style="color:#FFFF99">каждый</span>'' используется только на входе, на выход будет передаваться сумма результатов над каждым входным сигналом.
** Обратная связь: Обратите внимание, что входная и выходная сети не являются '''одной и той же сетью'''.  Соединение выхода к сети, которая направляется на вход приведет к петле обратной связи. К примеру, добавив 1 к значению медных пластин и трансляция в канал медных пластин приводит к тому, что в случае подключения ввода-вывода друг к другу результат создает бесконечный цикл. Количество медных пластин быстро (но не мгновенно) начнет расти. Эту особенность можно использовать с логикой Сравнивающего комбинатора для создания электронных часов, ворот и других систем. Подробней можно ознакомиться вот тут: [[Combinator Tutorial/ru]].
** Каждый:  Этот комбинатор может использовать сигнал 'Каждый' и для ввода и для вывода. В данном случае '''все''' каналы ввода, не равные нулю будут задействовать комбинатор и транслироваться на вывод. Использование сигнала Каждый для ввода и для вывода при использовании неизменной операции (например прибавление нуля) эквивалентно использованию провода 'в одном направлении'. Вся информация из сети ввода будет копирована в сеть вывода. Обратное невозможно.
**Мультисетевая работа: Арифметический комбинатор может быть подключен одновременно к красной и зеленой сети на сторону ввода и будет складывать их значения.


* Функции [[Decider combinator/ru|Сравнивающего комбинатора]] сильно напоминают функции Арифметического, но он предназначен для сравнения значений. Говоря о соединении, обратной связи и сигнала Каждый его особенности аналогичны описаным выше. Вдобавок он может обрабатывать сигналы Все и Ничего и при подключении к нескольким сетям выполнять более сложные чем сложение функции. Чтобы понять, как лучше его использовать, прочтите эту статью: [[Decider combinator/ru|Сравнивающй комбинатор]].
== Руководства ==
*'''{{L|Tutorial:Circuit network cookbook}}''' - ''Туториал для начинающих, которые хотят разобраться и начать использовать логические сети.''
*'''{{L|Tutorial:Combinator tutorial}}''' - ''В основном текстовый, но детальный туториал.''


== Логистическая сеть ==
== Логистическая сеть ==
Логистическая сеть используется [[Logistic robot/ru|Логистическими дронами]] и считается, наряду с зеленой и желтой сетью, третьей (безпроводной). Логистическая сеть действует, используя [[Roboport/ru|Дронстанции]].


Некоторые устройства можно подключить к логистической сети. Если для устройства определены условия как в логической, так и в логистической сети, активация произойдет если будут выполнены условия обеих сетей.
Логистическая сеть используется [[logistic robot/ru|логистическими роботами]], которая является беспроводной третьей сетью, помимо зеленой и красной. Она строится на основе близкорасположенных друг от друга [[roboport/ru|дронстанций]].
 
Некоторые устройства, помимо логической, могут присоединятся и к логистической сети. Если в устройстве установлены условия для логической и логистической сетей, оно будет активировано только при выполнении обоих условий.
 
Более подробно тут: {{L|Logistic network}} и {{L|Roboport}}.
 
== История изменений ==
 
{{history|0.15.0|
* Значительно улучшена производительность логической сети. До 25 раз уменьшена нагрузка на ЦП и на 10% уменьшено потребление оперативной памяти.
* Добавлен программируемый динамик: показывает предупреждение и издает звук, основанную на логическом сигнале. Может использоваться для создания простейших мелодий.
* Ж/д станция выдает содержимое прибывшего поезда.
* Ж/д станция может быть выключена логической сетью. Поезда пропускают выключенные станции, что позволяет управлять поездами.
* Бур может быть включен/выключен сетью. Помимо этого он возвращает количество ожидаемых ресурсов.
* Нефтяная вышка может быть включена/выключена сетью. Возвращает текущий уровень добычи.
* В арифметический комбинатор добавлены операции: остаток от деления, возведение в степень, побитовые сдвиг влево, сдвиг вправо, И, ИЛИ и ИСКЛЮЧАЮЩЕЕ ИЛИ.
* Добавлены дополнительные операции в сравнивающий комбинатор и логические условия.}}
 
{{history|0.13.0|
* Большее количество машин можно подключить к логической сети.
* Провода в объектах-призраках убраны.
* При наведении курсора на провода, они подсвечиваются.}}
 
{{history|0.12.33|
* Теперь, при передаче значения жидкостей в логическую сеть, оно округляется до ближайшего целого, а не вниз.}}
 
{{history|0.12.1|
* Теперь можно скопировать условия логической сети между [[Inserter/ru|манипулятором]], [[Lamp/ru|фонарем]], [[Pump/ru|помпой]] и [[Offshore pump/ru|насосом]].}}


Подробнее здесь: [[Logistic network/ru|Логистическая сеть]].
{{history|0.12.0|
* Улучшены соединения логической сети, теперь можно подключить несколько проводов одного цвета к одному объекту.
* {{L|Lamp}}, {{L|Storage tank}}, {{L|Pump}} и {{L|Offshore pump}} теперь можно подключить к логической сети.}}


== [[Automatic_control/Devices/ru|Предметы/Устройства]] ==
{{history|0.10.0|
В версии v0.13 разработчики сделали множество устройств подключаемыми к логической сети. Теперь стало еще больше возможностей программировать и контролировать фабрику при помощи условий.
* {{L|Blueprint}} копирует соединения логической сети.}}


=== Примеры (''устаревшие'') ===
{{history|0.8.3|
* [http://www.factorioforums.com/forum/viewtopic.php?f=5&t=3149 Статья на форуме по основам использования]
* Слоты сигналов логической сети окрашены в цвет сети.}}
* [http://www.factorioforums.com/forum/viewtopic.php?f=9&t=696&p=24183#p24183 О сравнении логических проводов с примерами из реальной жизни]
* [http://www.factorioforums.com/forum/viewtopic.php?f=8&t=348 Логические Ворота, Детектор кромки]
* [http://www.factorioforums.com/forum/viewtopic.php?f=6&t=4728&p=37251#p37157 Логические ворота, исправленные]
* [http://www.factorioforums.com/forum/viewtopic.php?f=8&t=298 Разделители материалов]
* [http://www.factorioforums.com/forum/viewtopic.php?f=8&t=6839 Логические ворота, используя мод side inserter]


==Также смотрите ==
{{history|0.1.0|
* [[Circuit network (research)/ru|Логическая сеть]]
* Добавлен.}}
* [[Belt transport system/ru|Транспортная сеть]]
* [[Combinators/ru|Комбинаторы]]


[[Category: Circuit network/ru]]
[[Category: Circuit network/ru]]

Latest revision as of 09:00, 4 December 2020

Логические сети строятся с использованием красного и зеленого проводов, предоставляя возможность удаленного управления, основанного на передаче управляющего сигнала подключенными к сети передатчиками. Большая часть передатчиков – устройства хранения, которые транслируют информацию по специальному каналу, в зависимости от типа предмета или жидкости, хранящейся в устройстве хранения. Каждая логическая сеть имеет канал на каждый тип предмета и жидкости, а также на 48 дополнительных виртуальных сигналов, которые используются как настраиваемые пользовательские каналы. Так же доступны сигналы типа 'Все', 'Любой' и 'Каждый'.

Две логические сети проходят через одну деревянную опору ЛЭП.

Применение

Транслируемая информация

Передатчики передают информацию о количестве предметов или жидкости находящихся в них по каналу соответствующего предмета, представленное десятичным числом, или другую информацию, определяемой игроком. Например, цистерна, в которой содержится 1000 единиц нефти, будет передавать в сеть значение 1000 по каналу "нефть".

Каналы отделены друг от друга, благодаря чему через сеть можно одновременно передавать информацию об каждом предмете и жидкости в игре, а так же виртуальные сигналы (цифры 0-9, буквы A-Z, и 9 разных цветов). По всем неиспользуемым каналам передается значение 0.

Если источников информации, использующие один и тот же канал, несколько, то их значения складываются: две цистерны, содержащие 1000 единиц нефти и подключенные к одной сети, по каналу "нефть" передают значение 2000.

Все провода одного цвета, соединенные между собой, функционируют как одна сеть, т.е. сигналы будут распространятся по всем проводам. Например, если два красных провода подключены ко входу комбинатора, то они принимают сигналы друг от друга. Это может привести к обратной связи (смотри ниже арифметический комбинатор), если не принять необходимые меры.

Значения представлены целочисленным знаковым 32 битным числом, т.е. от -2147483648 до 2147483647 включительно, в дополнительном коде. При переполнении, числа оборачиваются, т.е. 2147483647 + 10 станет -2147483639. При вводе числа в комбинатор может показаться, что оно превышает предел 32-битного числа, однако, когда графический интерфейс будет закрыт, число переполнится. [1] (англ.)

Управляемые устройства

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

Приемники суммируют все сигналы каждого подключенного провода, причем и красного, и зеленого. Например, если на манипулятор по красному проводу приходит значение 20 по каналу "медные пластины", а по зеленому - 10, то значение сигнала на этом же канале для манипулятора будет равно 30.

Несколько проводов одного цвета будут передавать и суммировать свои сигналы. Для примера, 3 ящика A, B и C, соединенные одной линией (A -> B -> C) зеленым проводом, будут передавать сумму содержимого в ящиках. Однако, если красный провод подключен к ящику A и манипулятору, то манипулятор будет получать информацию о содержимом только ящика A.

Устройства

Каждое устройство, которое может быть подключено к логической сети, имеет иконку Circuit network panel.png в верхнем правом углу информационной панели. Нажав на эту иконку, можно увидеть опции для доступных сетей (примечание: красный или зеленый провод должны быть подключены, иначе будет получено сообщение "не подключено"). Нажав на иконку Logistic network panel.png, устройство может быть подключено к логистической сети, если оно находится в ее зоне действия, что позволяет устанавливать дополнительные условия.

Условия могут устанавливаться по логической (сигналы по красному и зеленому проводам суммируются) и логистической сетям, которые складываются по логическому И.

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

Иконка Имя Возможные выходные сигналы Возможные опции управления
Transport belt.png
Конвейеры Конвейер отсылает информацию о своем содержимом.
  • Импульсный режим: Сигнал, длительностью 1 тик, посылается, когда предмет входит в конвейер.
  • Непрерывный режим: Сигнал посылается пока предмет проходит конвейер.
Конвейер может быть включен по условию.
Inserter.png
Манипуляторы Манипулятор отправляет информацию о взятых предметах.
  • Импульсный режим: Сигнал, длительностью 1 тик, посылается, когда предмет взят.
  • Непрерывный режим: Сигнал посылается пока предмет удерживается манипулятором.
Манипулятор может быть включен по условию. Размер пачки может изменяться управляющим сигналом (настраивается).
Filter inserter.png
Фильтрующий манипулятор То же, что и выше. В фильтрующем манипуляторе дополнительно могут настраиваться его фильтры: до 5 предметов, сигналы которых имеют положительное значение.
Wooden chest.png
Сундуки Все сундуки отправляют информацию о их содержимом. Логистические сундуки дополнительно отправляю ту же информацию в логистическую сеть.
Requester chest.png
Сундук запроса То же, что и выше. Устанавливаются запрашиваемые предметы из логистической сети.
Storage tank.png
Резервуар Резервуар отправляет информацию о жидкостях.
Gate.png
Ворота Ворота посылают сигнал в логическую сеть. Ворота могут быть открыты по условию.
Rail signal.png
Ж/д светофор Ж/д светофор отправляет в сеть информацию о своем состоянии. Ж/д светофор по условию может показывать красный сигнал.
Rail chain signal.png
Проходной ж/д светофор То же, что и выше.
Train stop.png
Железнодорожная станция Ж/д станция передает содержимое и идентификатор остановившегося поезда. Количество поездов, идущих к станции, отправляется в логическую сеть.
При чтении содержимого поезда, количество жидкостей округляется вниз до ближайшего целого, исключая случай, когда жидкости < 1, тогда число округляется до 1.
Ж/д станция передает сигналы из логической сети поезду, которые используются в условиях ожидания. Помимо этого сеть может включать и выключать станцию. Максимальное число поездов, способных на движение к станции ("лимит поездов"), можно установить логической сетью.
Accumulator.png
Аккумуляторный блок Отправляет значение уровня заряда в процентах.
Roboport.png
Дронстанция Отправляет информацию о содержимом логистической сети и/или статистику по дронам. Сигналы статистики по дронам настраиваются.
Burner mining drill.png
Бур Бур отправляет информацию об ожидаемых ресурсах, либо только от этого бура, либо со всего месторождения. Бур может быть включен по условию.
Pumpjack.png
Нефтяная вышка Отправляет текущих уровень добычи. Нефтяная вышка может быть включена по условию.
Power switch.png
Выключатель питания Выключатель питания может включить электрическую сеть по условию.
Programmable speaker.png
Программируемый динамик Показывает предупреждение и издает звук, основанную на логическом сигнале. Может использоваться для создания простейших мелодий.
Lamp.png
Фонарь Фонарь может быть включен по условию. Если передается цветовой сигнал, то он будет светиться этим цветом.
Offshore pump.png
Насос Насос может быть включен по условию.
Pump.png
Помпа Помпа может быть включена по условию.

Физическая структура сети

Логическая сеть состоит только из тех устройств, которые соединены проводом одного цвета. Провод может быть натянут непосредственно между устройствами или посредством опор ЛЭП. Длина провода ограничена предыдущим подключением.

Важно: каждый установленный провод создает отдельную сеть. К примеру, вполне возможно иметь 4 сети на основе красного провода и 3 на основе зеленого. Если красный и зеленый провод проходят через один и тот же столб ЛЭП или устройство, то они все равно остаются отдельными сетями. Однако, в случае проводов одинакового цвета, провода соединятся и образуют одну сеть. Используйте разные цвета проводов для разделения сетей находящихся в непосредственной близости друг от друга.

  • Для соединении сигнальных или силовых проводов, кликните на объект, а после на основание опоры ЛЭП.
  • Для демонтажа сигнальных или силовых проводов, поместите провод того же цвета поверх существующего соединения. Демонтированный провод не возвращается.
  • Для удаления всех соединений с опоры, нажмите на нее, удерживая Shift. Первый клик уберет все силовые провода, а второй - сигнальные. Демонтированные провода не возвращается.
  • При подключении к арифметическому комбинатору или сравнивающему комбинатору, позаботьтесь о том, чтобы подключить провод к правильной стороне входа или выхода. Для этого используйте режим "дополнительной информации" (Alt), показывающий ориентацию комбинатора.
  • Наведя курсор на устройство, все подключения подсветятся.
  • Наведя курсор на опору ЛЭП, которая является частью логической сети, будут отображены ее сигналы. При наведении курсора, некоторые устройства, такие как комбинаторы, отображают и входные, и выходные сигналы.

Комбинаторы

Комбинаторы совмещают в себе возможности приемников и передатчиков и дают возможность проводить сложные операции в логической сети.

  • Постоянный комбинатор способен передавать до 20 значений по любым каналам в сеть, к которой он подключен (на данный момент, нельзя указать на каком канале должен быть сигнал - красном или зеленом, поэтому, в случае необходимости, используйте два комбинатора). Вы можете использовать канал любого предмета и любого виртуального сигнала.
    • Примечание: использование двух из 20 слотов для формирования постоянного сигнала на одном и том же канале, равнозначно одному слоту со значением их суммы.
  • Арифметический комбинатор выполняет арифметические операции со значениями на входе, а результат по заданному каналу передает на выход. Как входные, так выходные сигналы могут передаваться по любому каналу.
    • Подключение: арифметический комбинатор подключается к красной или зеленой логической сети со стороны входа (контакты установлены на корпусе и выглядят как автомобильные свечи зажигания); результат арифметической операции передается по заданному каналу на выход комбинатора (представляет собой провода несколько вынесенные за корпус комбинатора).
    • Обратная связь: важно чтобы входная сеть и выходная не были одной и той же сетью. При соединении входа и выхода комбинатора, образуется петля обратной связи. К примеру, прибавляя 1 к значению медных пластин и передавая результат по тому же каналу, в случае соединения входа и выхода, образуется бесконечный цикл (положительная обратная связь), в котором выходное значение быстро растет. Скорость роста значения определяется [[Game-tick/ru||игровым тиком]. Эта особенность комбинаторов вкупе со сравнивающим комбинатором может использоваться для создания электронных часов, ворот и других систем. Более подробно тут: Обучение: Руководство по комбинаторам.
    • Сигнал "Каждый": арифметический комбинатор может использовать сигнал "Каждый" на вход и на выход, благодаря которому можно произвести арифметическую операцию сразу над всеми не нулевыми сигналами, а результат передать на выход. Используя сигнал "Каждый" на вход и выход и не изменяющую операцию (такую как прибавление нуля), можно получить эквивалент "однонаправленного" провода: вся информация на входе передается на выход, а обратно - нет.
    • Мульти-сеть: арифметический комбинатор может объединять красную и зеленую сети на входе, передавая на выход их сумму.
  • Сравнивающий комбинатор во многом похож на арифметический, но в основном предназначен для сравнения значений. По сути, это условный оператор. Особенности подключения, обратной связи и использования сигнала "каждый" аналогичны арифметическому комбинатору. Дополнительно, он может работать с сигналами "Любой" и "Все", позволяющие выполнять более сложные операции, чем объединение сетей. Более подробно тут: Сравнивающий комбинатор.

Виртуальные сигналы

Виртуальные сигналы

Виртуальные сигналы - это специальные символьные сигналы. За исключением трех логических сигналов, виртуальные сигналы не отличаются от сигналов предметов.

Всего виртуальных сигналов 48: числа от 0 до 9, буквы от A до Z, иконки галочки и инфо, точка, а так же цвета: красный, зеленый, синий, желтый, пурпурный, голубой, белый, серый и черный.

Логические сигналы

Иконки логических сигналов

Три виртуальных сигнала не являются сигналами в привычном понимании - они представляют собой логические операции над несколькими сигналами.

Все

Сигнал все используется в левой части условия. Условие истинно тогда, когда оно выполняется для всех входных сигналов или на входе нет ничего. Все аналогичен квантору всеобщности.

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

Любой

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

Каждый

Сигнал каждый может использоваться только в левой части ввода и вывода сравнивающих и арифметических комбинаторов. Он может использоваться на выходе лишь в том случае, когда используется на входе. Когда этот сигнал используется на входе и выходе одновременно, комбинатор обрабатывает каждый входной сигнал в отдельности. В случае, когда каждый используется только на входе, на выход будет передаваться сумма результатов над каждым входным сигналом.

Руководства

Логистическая сеть

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

Некоторые устройства, помимо логической, могут присоединятся и к логистической сети. Если в устройстве установлены условия для логической и логистической сетей, оно будет активировано только при выполнении обоих условий.

Более подробно тут: Логистическая сеть и Дронстанция.

История изменений

  • 0.15.0:
    • Значительно улучшена производительность логической сети. До 25 раз уменьшена нагрузка на ЦП и на 10% уменьшено потребление оперативной памяти.
    • Добавлен программируемый динамик: показывает предупреждение и издает звук, основанную на логическом сигнале. Может использоваться для создания простейших мелодий.
    • Ж/д станция выдает содержимое прибывшего поезда.
    • Ж/д станция может быть выключена логической сетью. Поезда пропускают выключенные станции, что позволяет управлять поездами.
    • Бур может быть включен/выключен сетью. Помимо этого он возвращает количество ожидаемых ресурсов.
    • Нефтяная вышка может быть включена/выключена сетью. Возвращает текущий уровень добычи.
    • В арифметический комбинатор добавлены операции: остаток от деления, возведение в степень, побитовые сдвиг влево, сдвиг вправо, И, ИЛИ и ИСКЛЮЧАЮЩЕЕ ИЛИ.
    • Добавлены дополнительные операции в сравнивающий комбинатор и логические условия.
  • 0.13.0:
    • Большее количество машин можно подключить к логической сети.
    • Провода в объектах-призраках убраны.
    • При наведении курсора на провода, они подсвечиваются.
  • 0.12.33:
    • Теперь, при передаче значения жидкостей в логическую сеть, оно округляется до ближайшего целого, а не вниз.
  • 0.12.0:
    • Улучшены соединения логической сети, теперь можно подключить несколько проводов одного цвета к одному объекту.
    • Фонарь, Резервуар, Помпа и Насос теперь можно подключить к логической сети.
  • 0.8.3:
    • Слоты сигналов логической сети окрашены в цвет сети.