https://wiki.factorio.com/api.php?action=feedcontributions&user=Klennart&feedformat=atomOfficial Factorio Wiki - User contributions [en]2024-03-29T07:20:04ZUser contributionsMediaWiki 1.38.2https://wiki.factorio.com/index.php?title=Rocket_launcher&diff=166666Rocket launcher2018-12-31T10:41:39Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Infobox:Rocket launcher}}<br />
<br />
The rocket launcher is a strong weapon against [[Enemies|enemy bases]]. It has long range and high damage, but as the ammo is very expensive it is recommended to avoid using it against [[Enemies|enemy creatures]].<br />
<br />
==Fire==<br />
<br />
To fire a rocket launcher, Put the mouse pointer over target. If a red ring is shown, you are out of range. If a green ring is shown, press 'c' to fire.<br />
<br />
== History ==<br />
<br />
{{history|0.1.0|<br />
* Introduced}}<br />
<br />
==See also==<br />
* [[Enemies]]<br />
* [[Damage|Damage & resistances]]<br />
<br />
{{CombatNav}}<br />
{{C|Weapons}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&diff=151917Tutorial:Nuclear power2017-11-19T18:15:58Z<p>Klennart: /* Heat exchanger */</p>
<hr />
<div>[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It's a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.<br />
<br />
This guide is written for people who want to know exactly how nuclear power works, but don't necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn't tell you what to do or exactly how to solve the problems.<br />
<br />
== First steps ==<br />
<br />
:'''Technology required:''' [[Nuclear power (research)|Nuclear power]]<br />
:''You can mine uranium ore sooner, but you'll need the nuclear power technology to do anything useful with it.''<br />
<br />
=== [[Uranium ore]] ===<br />
To start, you'll need uranium ore. It glows green, so you can't miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.<br />
<br />
Like every other ore in the game, you can mine it with a [[electric mining drill| Electric mining drill]]. Unlike every other ore, however, only the [[electric mining drill| Electric mining drill]] wii do. You also need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.<br />
<br />
:'''Mixed ores:''' If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.<br />
<br />
=== [[Uranium processing|Ore processing]] ===<br />
Once you've got raw uranium ore, you'll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.<br />
<br />
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.<br />
<br />
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:<br />
<br />
{| class="wikitable" |-<br />
! Count !! Product <br />
|-<br />
| 7 || U-235 <br />
|-<br />
| 993 || U-238<br />
|}<br />
<br />
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won't matter so much. However, when you first start out, this will be an important bottleneck.<br />
<br />
:'''Regarding averages:''' Be aware, random is random. These values are ''average'' values. Which means that over the long term, they work out to about these figures. In reality, you'll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won't matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don't find yourself without power when you hit an unlucky stretch.<br />
<br />
=== Fuel ===<br />
Before you can burn it in a nuclear reactor, you need to create [[uranium fuel cell]]s. You'll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.<br />
<br />
You won't want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You're going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.<br />
<br />
Fuel cells are produced in stacks of 10, and to produce one such stack you need 1 U-235, 19 U-238, and 10 iron plate.<br />
<br />
:'''Tip:''' It isn't a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won't run out before you get bots and replace it with a requester.<br />
<br />
Each fuel cell has a nominal energy value of 8 GJ, but it's possible to make them go even farther with reactor neighbor bonuses (more on that later).<br />
<br />
=== [[Nuclear reactor]] ===<br />
Once you've got fuel, you'll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.<br />
<br />
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.<br />
<br />
Once expended, reactors will produce a "[[used up uranium fuel cell]]", which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.<br />
<br />
:'''Working backward:''' A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you'll need about one processing centrifuges per reactor.<br />
<br />
The reactor need input of water (using normal pipes), and produce heat (hot water) that need to be exported using [[heat pipe]] that goes to a [[heat exchanger]] (unless a [[heat exchanger]] is attached to the reactor)<br />
<br />
=== [[Heat exchanger]] ===<br />
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you're placing it.<br />
<br />
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).<br />
<br />
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.<br />
<br />
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they've reached it.<br />
<br />
Heat exchangers transfer 10 MW of power, so you'll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)<br />
<br />
The [[steam]] can then be transported to the [[Steam turbine]] using normal [[Pipe]]s<br />
<br />
==== [[Heat pipe]]s ====<br />
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. <br />
<br />
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don't block movement, though, so you can walk right over them.<br />
<br />
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous "Heat pump". Here are some rough limits on transfer distance:<br />
<br />
{| class="wikitable" |-<br />
! Power !! Distance<br />
|-<br />
| 40 MW || ~140<br />
|-<br />
| 80 MW || ~80<br />
|-<br />
| 120 MW || ~55<br />
|-<br />
| 160 MW || ~45<br />
|}<br />
<br />
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.<br />
<br />
:'''Heat pipe storage:''' Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It's very easy to lose more power than you store with an inefficient design.<br />
<br />
=== [[Steam turbine]] ===<br />
These are the steam engine's beefy big brother. Using regular fluid pipes, you'll pipe the steam produced by heat exchangers into these turbines.<br />
<br />
:'''Perfect matches:''' The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it's very wasteful and there's no real reason to do it.<br />
<br />
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You'll require a separate pump for every 20 turbines.<br />
<br />
=== Simplest thing that works ===<br />
At this point, you have all the parts to build your very first reactor:<br />
<br />
* A few uranium miners, supplied with sulfuric acid<br />
* 1 Centrifuge, processing uranium ore<br />
* 1 Assembling machine, making uranium fuel cells<br />
* 1 Nuclear reactor<br />
* 4 Heat exchangers, supplied by a single off-shore pump<br />
* 8 Steam turbines<br />
<br />
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.<br />
<br />
== Moving forward ==<br />
Past your simplest reactor, there are some additional nuclear features of which you should be aware.<br />
<br />
=== Neighbor bonus ===<br />
This is a critical part of how nuclear designs scale, but it's not complicated. Simply put:<br />
<br />
'''Every reactor gets +100% heating power for every active neighboring reactor.'''<br />
<br />
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.<br />
<br />
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!<br />
<br />
This, of course, means you'll need more heat exchangers and steam turbines to turn that heat into electricity.<br />
<br />
{| class="wikitable" |-<br />
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor<br />
|-<br />
| Single || 1 || 4 || 7 || 40MW || 40MW<br />
|-<br />
| 2x1 || 2 || 16 || 28 || 160MW || 80MW<br />
|-<br />
| 2x2 || 4 || 48 || 83 || 480MW || 120MW<br />
|-<br />
| 2x3 || 6 || 80 || 138 || 800MW || 133MW<br />
|}<br />
<br />
'''How to count heat exchangers:''' Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That's your count of Heat Exchangers. You'll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.<br />
<br />
=== Always on! ===<br />
Unlike every other power generation technique, nuclear reactors '''DO NOT''' scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.<br />
<br />
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.<br />
<br />
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won't consume heat if there's nowhere to put the steam.<br />
<br />
:'''Turbines and engines:''' Be aware that steam turbines and steam engines are both the same "class" of energy producer, so they'll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!<br />
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.<br />
<br />
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the "fill gauge"; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.<br />
<br />
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won't get full neighbor bonuses. If you can't keep it from over-fueling, you can also add extra tanks to lengthen the cycle.<br />
<br />
=== Enrichment ===<br />
:'''Required technology:''' [[Kovarex enrichment process (research)|Kovarex enrichment process]]<br />
:''Kovarex Enrichment allows you to turn some U-238 into U-235, but it's slow and takes a lot of U-235 as catalyst.''<br />
<br />
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.<br />
<br />
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.<br />
<br />
:'''All the things!:''' Before you ''enrich all the things!'', be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.<br />
<br />
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.<br />
<br />
=== Reprocessing fuel ===<br />
:'''Required technology:''' [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]<br />
:''Reprocessing turns your spent fuel into U-238.''<br />
<br />
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.<br />
<br />
=== Weapons ===<br />
:'''Required technology:''' [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]<br />
:''Better bullets / Bigger bombs''<br />
<br />
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you've probably got plenty of it lying around.<br />
<br />
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it's advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they're an expensive weapon.<br />
<br />
== Version ==<br />
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.<br />
<br />
:'''License:''' [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]<br />
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&diff=151916Tutorial:Nuclear power2017-11-19T18:09:42Z<p>Klennart: /* Nuclear reactor */</p>
<hr />
<div>[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It's a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.<br />
<br />
This guide is written for people who want to know exactly how nuclear power works, but don't necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn't tell you what to do or exactly how to solve the problems.<br />
<br />
== First steps ==<br />
<br />
:'''Technology required:''' [[Nuclear power (research)|Nuclear power]]<br />
:''You can mine uranium ore sooner, but you'll need the nuclear power technology to do anything useful with it.''<br />
<br />
=== [[Uranium ore]] ===<br />
To start, you'll need uranium ore. It glows green, so you can't miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.<br />
<br />
Like every other ore in the game, you can mine it with a [[electric mining drill| Electric mining drill]]. Unlike every other ore, however, only the [[electric mining drill| Electric mining drill]] wii do. You also need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.<br />
<br />
:'''Mixed ores:''' If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.<br />
<br />
=== [[Uranium processing|Ore processing]] ===<br />
Once you've got raw uranium ore, you'll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.<br />
<br />
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.<br />
<br />
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:<br />
<br />
{| class="wikitable" |-<br />
! Count !! Product <br />
|-<br />
| 7 || U-235 <br />
|-<br />
| 993 || U-238<br />
|}<br />
<br />
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won't matter so much. However, when you first start out, this will be an important bottleneck.<br />
<br />
:'''Regarding averages:''' Be aware, random is random. These values are ''average'' values. Which means that over the long term, they work out to about these figures. In reality, you'll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won't matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don't find yourself without power when you hit an unlucky stretch.<br />
<br />
=== Fuel ===<br />
Before you can burn it in a nuclear reactor, you need to create [[uranium fuel cell]]s. You'll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.<br />
<br />
You won't want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You're going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.<br />
<br />
Fuel cells are produced in stacks of 10, and to produce one such stack you need 1 U-235, 19 U-238, and 10 iron plate.<br />
<br />
:'''Tip:''' It isn't a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won't run out before you get bots and replace it with a requester.<br />
<br />
Each fuel cell has a nominal energy value of 8 GJ, but it's possible to make them go even farther with reactor neighbor bonuses (more on that later).<br />
<br />
=== [[Nuclear reactor]] ===<br />
Once you've got fuel, you'll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.<br />
<br />
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.<br />
<br />
Once expended, reactors will produce a "[[used up uranium fuel cell]]", which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.<br />
<br />
:'''Working backward:''' A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you'll need about one processing centrifuges per reactor.<br />
<br />
The reactor need input of water (using normal pipes), and produce heat (hot water) that need to be exported using [[heat pipe]] that goes to a [[heat exchanger]] (unless a [[heat exchanger]] is attached to the reactor)<br />
<br />
=== [[Heat exchanger]] ===<br />
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you're placing it.<br />
<br />
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).<br />
<br />
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.<br />
<br />
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they've reached it.<br />
<br />
Heat exchangers transfer 10 MW of power, so you'll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)<br />
<br />
==== [[Heat pipe]]s ====<br />
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. <br />
<br />
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don't block movement, though, so you can walk right over them.<br />
<br />
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous "Heat pump". Here are some rough limits on transfer distance:<br />
<br />
{| class="wikitable" |-<br />
! Power !! Distance<br />
|-<br />
| 40 MW || ~140<br />
|-<br />
| 80 MW || ~80<br />
|-<br />
| 120 MW || ~55<br />
|-<br />
| 160 MW || ~45<br />
|}<br />
<br />
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.<br />
<br />
:'''Heat pipe storage:''' Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It's very easy to lose more power than you store with an inefficient design.<br />
<br />
=== [[Steam turbine]] ===<br />
These are the steam engine's beefy big brother. Using regular fluid pipes, you'll pipe the steam produced by heat exchangers into these turbines.<br />
<br />
:'''Perfect matches:''' The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it's very wasteful and there's no real reason to do it.<br />
<br />
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You'll require a separate pump for every 20 turbines.<br />
<br />
=== Simplest thing that works ===<br />
At this point, you have all the parts to build your very first reactor:<br />
<br />
* A few uranium miners, supplied with sulfuric acid<br />
* 1 Centrifuge, processing uranium ore<br />
* 1 Assembling machine, making uranium fuel cells<br />
* 1 Nuclear reactor<br />
* 4 Heat exchangers, supplied by a single off-shore pump<br />
* 8 Steam turbines<br />
<br />
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.<br />
<br />
== Moving forward ==<br />
Past your simplest reactor, there are some additional nuclear features of which you should be aware.<br />
<br />
=== Neighbor bonus ===<br />
This is a critical part of how nuclear designs scale, but it's not complicated. Simply put:<br />
<br />
'''Every reactor gets +100% heating power for every active neighboring reactor.'''<br />
<br />
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.<br />
<br />
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!<br />
<br />
This, of course, means you'll need more heat exchangers and steam turbines to turn that heat into electricity.<br />
<br />
{| class="wikitable" |-<br />
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor<br />
|-<br />
| Single || 1 || 4 || 7 || 40MW || 40MW<br />
|-<br />
| 2x1 || 2 || 16 || 28 || 160MW || 80MW<br />
|-<br />
| 2x2 || 4 || 48 || 83 || 480MW || 120MW<br />
|-<br />
| 2x3 || 6 || 80 || 138 || 800MW || 133MW<br />
|}<br />
<br />
'''How to count heat exchangers:''' Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That's your count of Heat Exchangers. You'll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.<br />
<br />
=== Always on! ===<br />
Unlike every other power generation technique, nuclear reactors '''DO NOT''' scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.<br />
<br />
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.<br />
<br />
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won't consume heat if there's nowhere to put the steam.<br />
<br />
:'''Turbines and engines:''' Be aware that steam turbines and steam engines are both the same "class" of energy producer, so they'll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!<br />
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.<br />
<br />
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the "fill gauge"; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.<br />
<br />
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won't get full neighbor bonuses. If you can't keep it from over-fueling, you can also add extra tanks to lengthen the cycle.<br />
<br />
=== Enrichment ===<br />
:'''Required technology:''' [[Kovarex enrichment process (research)|Kovarex enrichment process]]<br />
:''Kovarex Enrichment allows you to turn some U-238 into U-235, but it's slow and takes a lot of U-235 as catalyst.''<br />
<br />
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.<br />
<br />
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.<br />
<br />
:'''All the things!:''' Before you ''enrich all the things!'', be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.<br />
<br />
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.<br />
<br />
=== Reprocessing fuel ===<br />
:'''Required technology:''' [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]<br />
:''Reprocessing turns your spent fuel into U-238.''<br />
<br />
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.<br />
<br />
=== Weapons ===<br />
:'''Required technology:''' [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]<br />
:''Better bullets / Bigger bombs''<br />
<br />
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you've probably got plenty of it lying around.<br />
<br />
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it's advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they're an expensive weapon.<br />
<br />
== Version ==<br />
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.<br />
<br />
:'''License:''' [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]<br />
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&diff=151915Tutorial:Nuclear power2017-11-19T18:07:53Z<p>Klennart: /* Nuclear reactor */</p>
<hr />
<div>[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It's a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.<br />
<br />
This guide is written for people who want to know exactly how nuclear power works, but don't necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn't tell you what to do or exactly how to solve the problems.<br />
<br />
== First steps ==<br />
<br />
:'''Technology required:''' [[Nuclear power (research)|Nuclear power]]<br />
:''You can mine uranium ore sooner, but you'll need the nuclear power technology to do anything useful with it.''<br />
<br />
=== [[Uranium ore]] ===<br />
To start, you'll need uranium ore. It glows green, so you can't miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.<br />
<br />
Like every other ore in the game, you can mine it with a [[electric mining drill| Electric mining drill]]. Unlike every other ore, however, only the [[electric mining drill| Electric mining drill]] wii do. You also need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.<br />
<br />
:'''Mixed ores:''' If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.<br />
<br />
=== [[Uranium processing|Ore processing]] ===<br />
Once you've got raw uranium ore, you'll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.<br />
<br />
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.<br />
<br />
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:<br />
<br />
{| class="wikitable" |-<br />
! Count !! Product <br />
|-<br />
| 7 || U-235 <br />
|-<br />
| 993 || U-238<br />
|}<br />
<br />
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won't matter so much. However, when you first start out, this will be an important bottleneck.<br />
<br />
:'''Regarding averages:''' Be aware, random is random. These values are ''average'' values. Which means that over the long term, they work out to about these figures. In reality, you'll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won't matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don't find yourself without power when you hit an unlucky stretch.<br />
<br />
=== Fuel ===<br />
Before you can burn it in a nuclear reactor, you need to create [[uranium fuel cell]]s. You'll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.<br />
<br />
You won't want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You're going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.<br />
<br />
Fuel cells are produced in stacks of 10, and to produce one such stack you need 1 U-235, 19 U-238, and 10 iron plate.<br />
<br />
:'''Tip:''' It isn't a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won't run out before you get bots and replace it with a requester.<br />
<br />
Each fuel cell has a nominal energy value of 8 GJ, but it's possible to make them go even farther with reactor neighbor bonuses (more on that later).<br />
<br />
=== [[Nuclear reactor]] ===<br />
Once you've got fuel, you'll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.<br />
<br />
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.<br />
<br />
Once expended, reactors will produce a "[[used up uranium fuel cell]]", which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.<br />
<br />
:'''Working backward:''' A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you'll need about one processing centrifuges per reactor.<br />
<br />
The reactor need input of water (using normal pipes), and produce heat (hot water) that need to be exported using [[heat pipe]] (unless a heat exchanger is attached to the reactor)<br />
<br />
=== [[Heat exchanger]] ===<br />
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you're placing it.<br />
<br />
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).<br />
<br />
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.<br />
<br />
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they've reached it.<br />
<br />
Heat exchangers transfer 10 MW of power, so you'll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)<br />
<br />
==== [[Heat pipe]]s ====<br />
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. <br />
<br />
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don't block movement, though, so you can walk right over them.<br />
<br />
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous "Heat pump". Here are some rough limits on transfer distance:<br />
<br />
{| class="wikitable" |-<br />
! Power !! Distance<br />
|-<br />
| 40 MW || ~140<br />
|-<br />
| 80 MW || ~80<br />
|-<br />
| 120 MW || ~55<br />
|-<br />
| 160 MW || ~45<br />
|}<br />
<br />
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.<br />
<br />
:'''Heat pipe storage:''' Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It's very easy to lose more power than you store with an inefficient design.<br />
<br />
=== [[Steam turbine]] ===<br />
These are the steam engine's beefy big brother. Using regular fluid pipes, you'll pipe the steam produced by heat exchangers into these turbines.<br />
<br />
:'''Perfect matches:''' The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it's very wasteful and there's no real reason to do it.<br />
<br />
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You'll require a separate pump for every 20 turbines.<br />
<br />
=== Simplest thing that works ===<br />
At this point, you have all the parts to build your very first reactor:<br />
<br />
* A few uranium miners, supplied with sulfuric acid<br />
* 1 Centrifuge, processing uranium ore<br />
* 1 Assembling machine, making uranium fuel cells<br />
* 1 Nuclear reactor<br />
* 4 Heat exchangers, supplied by a single off-shore pump<br />
* 8 Steam turbines<br />
<br />
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.<br />
<br />
== Moving forward ==<br />
Past your simplest reactor, there are some additional nuclear features of which you should be aware.<br />
<br />
=== Neighbor bonus ===<br />
This is a critical part of how nuclear designs scale, but it's not complicated. Simply put:<br />
<br />
'''Every reactor gets +100% heating power for every active neighboring reactor.'''<br />
<br />
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.<br />
<br />
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!<br />
<br />
This, of course, means you'll need more heat exchangers and steam turbines to turn that heat into electricity.<br />
<br />
{| class="wikitable" |-<br />
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor<br />
|-<br />
| Single || 1 || 4 || 7 || 40MW || 40MW<br />
|-<br />
| 2x1 || 2 || 16 || 28 || 160MW || 80MW<br />
|-<br />
| 2x2 || 4 || 48 || 83 || 480MW || 120MW<br />
|-<br />
| 2x3 || 6 || 80 || 138 || 800MW || 133MW<br />
|}<br />
<br />
'''How to count heat exchangers:''' Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That's your count of Heat Exchangers. You'll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.<br />
<br />
=== Always on! ===<br />
Unlike every other power generation technique, nuclear reactors '''DO NOT''' scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.<br />
<br />
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.<br />
<br />
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won't consume heat if there's nowhere to put the steam.<br />
<br />
:'''Turbines and engines:''' Be aware that steam turbines and steam engines are both the same "class" of energy producer, so they'll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!<br />
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.<br />
<br />
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the "fill gauge"; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.<br />
<br />
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won't get full neighbor bonuses. If you can't keep it from over-fueling, you can also add extra tanks to lengthen the cycle.<br />
<br />
=== Enrichment ===<br />
:'''Required technology:''' [[Kovarex enrichment process (research)|Kovarex enrichment process]]<br />
:''Kovarex Enrichment allows you to turn some U-238 into U-235, but it's slow and takes a lot of U-235 as catalyst.''<br />
<br />
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.<br />
<br />
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.<br />
<br />
:'''All the things!:''' Before you ''enrich all the things!'', be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.<br />
<br />
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.<br />
<br />
=== Reprocessing fuel ===<br />
:'''Required technology:''' [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]<br />
:''Reprocessing turns your spent fuel into U-238.''<br />
<br />
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.<br />
<br />
=== Weapons ===<br />
:'''Required technology:''' [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]<br />
:''Better bullets / Bigger bombs''<br />
<br />
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you've probably got plenty of it lying around.<br />
<br />
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it's advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they're an expensive weapon.<br />
<br />
== Version ==<br />
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.<br />
<br />
:'''License:''' [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]<br />
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&diff=151914Tutorial:Nuclear power2017-11-19T18:05:18Z<p>Klennart: /* Nuclear reactor */</p>
<hr />
<div>[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It's a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.<br />
<br />
This guide is written for people who want to know exactly how nuclear power works, but don't necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn't tell you what to do or exactly how to solve the problems.<br />
<br />
== First steps ==<br />
<br />
:'''Technology required:''' [[Nuclear power (research)|Nuclear power]]<br />
:''You can mine uranium ore sooner, but you'll need the nuclear power technology to do anything useful with it.''<br />
<br />
=== [[Uranium ore]] ===<br />
To start, you'll need uranium ore. It glows green, so you can't miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.<br />
<br />
Like every other ore in the game, you can mine it with a [[electric mining drill| Electric mining drill]]. Unlike every other ore, however, only the [[electric mining drill| Electric mining drill]] wii do. You also need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.<br />
<br />
:'''Mixed ores:''' If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.<br />
<br />
=== [[Uranium processing|Ore processing]] ===<br />
Once you've got raw uranium ore, you'll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.<br />
<br />
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.<br />
<br />
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:<br />
<br />
{| class="wikitable" |-<br />
! Count !! Product <br />
|-<br />
| 7 || U-235 <br />
|-<br />
| 993 || U-238<br />
|}<br />
<br />
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won't matter so much. However, when you first start out, this will be an important bottleneck.<br />
<br />
:'''Regarding averages:''' Be aware, random is random. These values are ''average'' values. Which means that over the long term, they work out to about these figures. In reality, you'll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won't matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don't find yourself without power when you hit an unlucky stretch.<br />
<br />
=== Fuel ===<br />
Before you can burn it in a nuclear reactor, you need to create [[uranium fuel cell]]s. You'll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.<br />
<br />
You won't want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You're going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.<br />
<br />
Fuel cells are produced in stacks of 10, and to produce one such stack you need 1 U-235, 19 U-238, and 10 iron plate.<br />
<br />
:'''Tip:''' It isn't a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won't run out before you get bots and replace it with a requester.<br />
<br />
Each fuel cell has a nominal energy value of 8 GJ, but it's possible to make them go even farther with reactor neighbor bonuses (more on that later).<br />
<br />
=== [[Nuclear reactor]] ===<br />
Once you've got fuel, you'll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.<br />
<br />
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.<br />
<br />
Once expended, reactors will produce a "[[used up uranium fuel cell]]", which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.<br />
<br />
:'''Working backward:''' A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you'll need about one processing centrifuges per reactor.<br />
<br />
The reactor need input of water (using normal pipes), and produce hot water that need to be exported using [[heat pipe]]<br />
<br />
=== [[Heat exchanger]] ===<br />
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you're placing it.<br />
<br />
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).<br />
<br />
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.<br />
<br />
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they've reached it.<br />
<br />
Heat exchangers transfer 10 MW of power, so you'll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)<br />
<br />
==== [[Heat pipe]]s ====<br />
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. <br />
<br />
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don't block movement, though, so you can walk right over them.<br />
<br />
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous "Heat pump". Here are some rough limits on transfer distance:<br />
<br />
{| class="wikitable" |-<br />
! Power !! Distance<br />
|-<br />
| 40 MW || ~140<br />
|-<br />
| 80 MW || ~80<br />
|-<br />
| 120 MW || ~55<br />
|-<br />
| 160 MW || ~45<br />
|}<br />
<br />
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.<br />
<br />
:'''Heat pipe storage:''' Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It's very easy to lose more power than you store with an inefficient design.<br />
<br />
=== [[Steam turbine]] ===<br />
These are the steam engine's beefy big brother. Using regular fluid pipes, you'll pipe the steam produced by heat exchangers into these turbines.<br />
<br />
:'''Perfect matches:''' The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it's very wasteful and there's no real reason to do it.<br />
<br />
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You'll require a separate pump for every 20 turbines.<br />
<br />
=== Simplest thing that works ===<br />
At this point, you have all the parts to build your very first reactor:<br />
<br />
* A few uranium miners, supplied with sulfuric acid<br />
* 1 Centrifuge, processing uranium ore<br />
* 1 Assembling machine, making uranium fuel cells<br />
* 1 Nuclear reactor<br />
* 4 Heat exchangers, supplied by a single off-shore pump<br />
* 8 Steam turbines<br />
<br />
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.<br />
<br />
== Moving forward ==<br />
Past your simplest reactor, there are some additional nuclear features of which you should be aware.<br />
<br />
=== Neighbor bonus ===<br />
This is a critical part of how nuclear designs scale, but it's not complicated. Simply put:<br />
<br />
'''Every reactor gets +100% heating power for every active neighboring reactor.'''<br />
<br />
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.<br />
<br />
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!<br />
<br />
This, of course, means you'll need more heat exchangers and steam turbines to turn that heat into electricity.<br />
<br />
{| class="wikitable" |-<br />
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor<br />
|-<br />
| Single || 1 || 4 || 7 || 40MW || 40MW<br />
|-<br />
| 2x1 || 2 || 16 || 28 || 160MW || 80MW<br />
|-<br />
| 2x2 || 4 || 48 || 83 || 480MW || 120MW<br />
|-<br />
| 2x3 || 6 || 80 || 138 || 800MW || 133MW<br />
|}<br />
<br />
'''How to count heat exchangers:''' Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That's your count of Heat Exchangers. You'll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.<br />
<br />
=== Always on! ===<br />
Unlike every other power generation technique, nuclear reactors '''DO NOT''' scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.<br />
<br />
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.<br />
<br />
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won't consume heat if there's nowhere to put the steam.<br />
<br />
:'''Turbines and engines:''' Be aware that steam turbines and steam engines are both the same "class" of energy producer, so they'll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!<br />
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.<br />
<br />
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the "fill gauge"; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.<br />
<br />
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won't get full neighbor bonuses. If you can't keep it from over-fueling, you can also add extra tanks to lengthen the cycle.<br />
<br />
=== Enrichment ===<br />
:'''Required technology:''' [[Kovarex enrichment process (research)|Kovarex enrichment process]]<br />
:''Kovarex Enrichment allows you to turn some U-238 into U-235, but it's slow and takes a lot of U-235 as catalyst.''<br />
<br />
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.<br />
<br />
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.<br />
<br />
:'''All the things!:''' Before you ''enrich all the things!'', be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.<br />
<br />
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.<br />
<br />
=== Reprocessing fuel ===<br />
:'''Required technology:''' [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]<br />
:''Reprocessing turns your spent fuel into U-238.''<br />
<br />
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.<br />
<br />
=== Weapons ===<br />
:'''Required technology:''' [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]<br />
:''Better bullets / Bigger bombs''<br />
<br />
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you've probably got plenty of it lying around.<br />
<br />
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it's advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they're an expensive weapon.<br />
<br />
== Version ==<br />
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.<br />
<br />
:'''License:''' [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]<br />
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&diff=151913Tutorial:Nuclear power2017-11-19T17:59:16Z<p>Klennart: /* Uranium ore */</p>
<hr />
<div>[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It's a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.<br />
<br />
This guide is written for people who want to know exactly how nuclear power works, but don't necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn't tell you what to do or exactly how to solve the problems.<br />
<br />
== First steps ==<br />
<br />
:'''Technology required:''' [[Nuclear power (research)|Nuclear power]]<br />
:''You can mine uranium ore sooner, but you'll need the nuclear power technology to do anything useful with it.''<br />
<br />
=== [[Uranium ore]] ===<br />
To start, you'll need uranium ore. It glows green, so you can't miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.<br />
<br />
Like every other ore in the game, you can mine it with a [[electric mining drill| Electric mining drill]]. Unlike every other ore, however, only the [[electric mining drill| Electric mining drill]] wii do. You also need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.<br />
<br />
:'''Mixed ores:''' If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.<br />
<br />
=== [[Uranium processing|Ore processing]] ===<br />
Once you've got raw uranium ore, you'll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.<br />
<br />
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.<br />
<br />
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:<br />
<br />
{| class="wikitable" |-<br />
! Count !! Product <br />
|-<br />
| 7 || U-235 <br />
|-<br />
| 993 || U-238<br />
|}<br />
<br />
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won't matter so much. However, when you first start out, this will be an important bottleneck.<br />
<br />
:'''Regarding averages:''' Be aware, random is random. These values are ''average'' values. Which means that over the long term, they work out to about these figures. In reality, you'll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won't matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don't find yourself without power when you hit an unlucky stretch.<br />
<br />
=== Fuel ===<br />
Before you can burn it in a nuclear reactor, you need to create [[uranium fuel cell]]s. You'll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.<br />
<br />
You won't want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You're going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.<br />
<br />
Fuel cells are produced in stacks of 10, and to produce one such stack you need 1 U-235, 19 U-238, and 10 iron plate.<br />
<br />
:'''Tip:''' It isn't a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won't run out before you get bots and replace it with a requester.<br />
<br />
Each fuel cell has a nominal energy value of 8 GJ, but it's possible to make them go even farther with reactor neighbor bonuses (more on that later).<br />
<br />
=== [[Nuclear reactor]] ===<br />
Once you've got fuel, you'll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.<br />
<br />
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.<br />
<br />
Once expended, reactors will produce a "[[used up uranium fuel cell]]", which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.<br />
<br />
:'''Working backward:''' A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you'll need about one processing centrifuges per reactor.<br />
<br />
=== [[Heat exchanger]] ===<br />
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you're placing it.<br />
<br />
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).<br />
<br />
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.<br />
<br />
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they've reached it.<br />
<br />
Heat exchangers transfer 10 MW of power, so you'll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)<br />
<br />
==== [[Heat pipe]]s ====<br />
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. <br />
<br />
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don't block movement, though, so you can walk right over them.<br />
<br />
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous "Heat pump". Here are some rough limits on transfer distance:<br />
<br />
{| class="wikitable" |-<br />
! Power !! Distance<br />
|-<br />
| 40 MW || ~140<br />
|-<br />
| 80 MW || ~80<br />
|-<br />
| 120 MW || ~55<br />
|-<br />
| 160 MW || ~45<br />
|}<br />
<br />
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.<br />
<br />
:'''Heat pipe storage:''' Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It's very easy to lose more power than you store with an inefficient design.<br />
<br />
=== [[Steam turbine]] ===<br />
These are the steam engine's beefy big brother. Using regular fluid pipes, you'll pipe the steam produced by heat exchangers into these turbines.<br />
<br />
:'''Perfect matches:''' The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it's very wasteful and there's no real reason to do it.<br />
<br />
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You'll require a separate pump for every 20 turbines.<br />
<br />
=== Simplest thing that works ===<br />
At this point, you have all the parts to build your very first reactor:<br />
<br />
* A few uranium miners, supplied with sulfuric acid<br />
* 1 Centrifuge, processing uranium ore<br />
* 1 Assembling machine, making uranium fuel cells<br />
* 1 Nuclear reactor<br />
* 4 Heat exchangers, supplied by a single off-shore pump<br />
* 8 Steam turbines<br />
<br />
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.<br />
<br />
== Moving forward ==<br />
Past your simplest reactor, there are some additional nuclear features of which you should be aware.<br />
<br />
=== Neighbor bonus ===<br />
This is a critical part of how nuclear designs scale, but it's not complicated. Simply put:<br />
<br />
'''Every reactor gets +100% heating power for every active neighboring reactor.'''<br />
<br />
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.<br />
<br />
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!<br />
<br />
This, of course, means you'll need more heat exchangers and steam turbines to turn that heat into electricity.<br />
<br />
{| class="wikitable" |-<br />
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor<br />
|-<br />
| Single || 1 || 4 || 7 || 40MW || 40MW<br />
|-<br />
| 2x1 || 2 || 16 || 28 || 160MW || 80MW<br />
|-<br />
| 2x2 || 4 || 48 || 83 || 480MW || 120MW<br />
|-<br />
| 2x3 || 6 || 80 || 138 || 800MW || 133MW<br />
|}<br />
<br />
'''How to count heat exchangers:''' Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That's your count of Heat Exchangers. You'll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.<br />
<br />
=== Always on! ===<br />
Unlike every other power generation technique, nuclear reactors '''DO NOT''' scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.<br />
<br />
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.<br />
<br />
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won't consume heat if there's nowhere to put the steam.<br />
<br />
:'''Turbines and engines:''' Be aware that steam turbines and steam engines are both the same "class" of energy producer, so they'll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!<br />
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.<br />
<br />
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the "fill gauge"; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.<br />
<br />
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won't get full neighbor bonuses. If you can't keep it from over-fueling, you can also add extra tanks to lengthen the cycle.<br />
<br />
=== Enrichment ===<br />
:'''Required technology:''' [[Kovarex enrichment process (research)|Kovarex enrichment process]]<br />
:''Kovarex Enrichment allows you to turn some U-238 into U-235, but it's slow and takes a lot of U-235 as catalyst.''<br />
<br />
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.<br />
<br />
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.<br />
<br />
:'''All the things!:''' Before you ''enrich all the things!'', be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.<br />
<br />
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.<br />
<br />
=== Reprocessing fuel ===<br />
:'''Required technology:''' [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]<br />
:''Reprocessing turns your spent fuel into U-238.''<br />
<br />
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.<br />
<br />
=== Weapons ===<br />
:'''Required technology:''' [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]<br />
:''Better bullets / Bigger bombs''<br />
<br />
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you've probably got plenty of it lying around.<br />
<br />
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it's advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they're an expensive weapon.<br />
<br />
== Version ==<br />
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.<br />
<br />
:'''License:''' [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]<br />
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=138774Tutorial:Circuit network cookbook2017-06-12T18:08:57Z<p>Klennart: /* Lamp showing chest content condition */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible. To see the settings of combinators without opening them, the option "Show combinator settings when detailed info is on" in the graphics options has to be checked and detailed info has to be turned on.<br />
<br />
==Lamp showing chest content condition==<br />
[[File:LightWiredToChest.png|right|218 × 412px]]<br />
[[File:LamponBarrelCondition.png.png|right|400x400px]]<br />
<br />
This is the simplest possible use of circuit-network. A lamp is light depending on the number of goods (in this example empty barrels) in a chest.<br />
<br />
===Setting up circuit connection===<br />
* The lamp is connected to the chest<br />
* the lamp is set to light if the chest contain less than 10 empty barrels.<br />
<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><br />
<br />
===To set the light condition===<br />
# open the lamp (right click on it)<br />
# Set the input to barrels<br />
# Set the operator to < (las than)<br />
# Set the constant number:<br />
## Right lick on the constant number<br />
## Draw the slide until 10 is shown, or edit the value box directly<br />
## Press set<br />
<br />
Depending on the condition you set you may light the lamp if the barrel is empty, or contain a decent number of articles.<br />
<br />
The draw back with this scenario is that the lamp have a white light , and is therefore difficult to differ from ordinary lamp at night.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the [[Lamp]] and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]] with the [[lamp]].<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
{{clear}}<br />
<br />
<br />
[[File:combinatorMultiplierDetailed.png|left|400x400px]]<br />
=== Multiplier and Dictionaries/Arrays ===<br />
* Multiplying two signals together is simple and requires only a single combinator, however multiplying a set of signals is more complicated.<br />
* A proof is shown below for the equation and why it works.<br />
* A dictionary is a system that allows a value on a specific signal to be accessed. For example, A can contain many signals (either from a constant combinator or memory cell) and B can contain 1 of a specific signal (such as blue signal). What remains is the blue-signal value from A. This is because all the other signals are multiplied by 0.<br />
* Arrays are similar to dictionaries, but instead of using a signal as a key, we use a number. Constant combinators are placed mapping each signal to a unique number (such as 1 yellow belt, 2 red belt, 3 blue belt, 4 burner inserter, etc). Then, use a combinator of "each = index OUTPUT 1 of each" and plug that in as the input to a dictionary.<br />
[[File:combinatorMultiplierMath.png|left|400x400px]]<br />
<br />
((A+B)^2 - (A-B)^2)/4 = AB<br />
(A+B)^2 - (A-B)^2 = 4AB<br />
(A^2 + 2AB + B^2) - (A^2 - 2AB + B^2) = 4AB<br />
4AB = 4AB<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=138773Tutorial:Circuit network cookbook2017-06-12T18:00:59Z<p>Klennart: /* Lamp showing chest content condition */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible. To see the settings of combinators without opening them, the option "Show combinator settings when detailed info is on" in the graphics options has to be checked and detailed info has to be turned on.<br />
<br />
==Lamp showing chest content condition==<br />
[[File:LightWiredToChest.png|right|218 × 412px]]<br />
[[File:LamponBarrelCondition.png.png|right|400x400px]]<br />
<br />
This is the simplest possible use of circuit-network. A lamp is light depending on the number of goods (in this example empty barrels) in a chest.<br />
<br />
===Setting up circuit connection===<br />
* The lamp is connected to the chest<br />
* the lamp is set to light if the chest contain less than 10 empty barrels.<br />
<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><br />
<br />
===To set the light condition===<br />
# open the lamp (right click on it)<br />
# Set the input to barrels<br />
# Set the operator to < (las than)<br />
# Set the constant number:<br />
## Right lick on the constant number<br />
## Draw the slide until 10 is shown, or edit the value box directly<br />
## Press set<br />
<br />
Depending on the condition you set you may light the lamp if the barrel is empty, or contain a decent number of articles.<br />
The draw back with this scenario is that the lamp have a white light , and is therefore difficult to differ from ordinary lamp at night.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the [[Lamp]] and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]] with the [[lamp]].<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
{{clear}}<br />
<br />
<br />
[[File:combinatorMultiplierDetailed.png|left|400x400px]]<br />
=== Multiplier and Dictionaries/Arrays ===<br />
* Multiplying two signals together is simple and requires only a single combinator, however multiplying a set of signals is more complicated.<br />
* A proof is shown below for the equation and why it works.<br />
* A dictionary is a system that allows a value on a specific signal to be accessed. For example, A can contain many signals (either from a constant combinator or memory cell) and B can contain 1 of a specific signal (such as blue signal). What remains is the blue-signal value from A. This is because all the other signals are multiplied by 0.<br />
* Arrays are similar to dictionaries, but instead of using a signal as a key, we use a number. Constant combinators are placed mapping each signal to a unique number (such as 1 yellow belt, 2 red belt, 3 blue belt, 4 burner inserter, etc). Then, use a combinator of "each = index OUTPUT 1 of each" and plug that in as the input to a dictionary.<br />
[[File:combinatorMultiplierMath.png|left|400x400px]]<br />
<br />
((A+B)^2 - (A-B)^2)/4 = AB<br />
(A+B)^2 - (A-B)^2 = 4AB<br />
(A^2 + 2AB + B^2) - (A^2 - 2AB + B^2) = 4AB<br />
4AB = 4AB<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=138772Tutorial:Circuit network cookbook2017-06-12T17:55:54Z<p>Klennart: /* Oil Setups */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible. To see the settings of combinators without opening them, the option "Show combinator settings when detailed info is on" in the graphics options has to be checked and detailed info has to be turned on.<br />
<br />
==Lamp showing chest content condition==<br />
[[File:LightWiredToChest.png|right|218 × 412px]]<br />
[[File:LamponBarrelCondition.png.png|right|400x400px]]<br />
This is the simplest possible use of circuit-network. A lamp is light depending on the number of goods (in this example empty barrels) in a chest.<br />
* The lamp is connected to the chest<br />
* the lamp is set to light if the chest contain less than 10 empty barrels.<br />
<br />
To set the light condition:<br />
# open the lamp (right click on it)<br />
# Set the input to barrels<br />
# Set the operator to < (las than)<br />
# Set the constant number:<br />
## Right lick on the constant number<br />
## Draw the slide until 10 is shown, or edit the value box directly<br />
## Press set<br />
<br />
Depending on the condition you set you may light the lamp if the barrel is empty, or contain a decent number of articles.<br />
The draw back with this scenario is that the lamp have a white light , and is therefore difficult to differ from ordinary lamp at night.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the [[Lamp]] and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]] with the [[lamp]].<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
{{clear}}<br />
<br />
<br />
[[File:combinatorMultiplierDetailed.png|left|400x400px]]<br />
=== Multiplier and Dictionaries/Arrays ===<br />
* Multiplying two signals together is simple and requires only a single combinator, however multiplying a set of signals is more complicated.<br />
* A proof is shown below for the equation and why it works.<br />
* A dictionary is a system that allows a value on a specific signal to be accessed. For example, A can contain many signals (either from a constant combinator or memory cell) and B can contain 1 of a specific signal (such as blue signal). What remains is the blue-signal value from A. This is because all the other signals are multiplied by 0.<br />
* Arrays are similar to dictionaries, but instead of using a signal as a key, we use a number. Constant combinators are placed mapping each signal to a unique number (such as 1 yellow belt, 2 red belt, 3 blue belt, 4 burner inserter, etc). Then, use a combinator of "each = index OUTPUT 1 of each" and plug that in as the input to a dictionary.<br />
[[File:combinatorMultiplierMath.png|left|400x400px]]<br />
<br />
((A+B)^2 - (A-B)^2)/4 = AB<br />
(A+B)^2 - (A-B)^2 = 4AB<br />
(A^2 + 2AB + B^2) - (A^2 - 2AB + B^2) = 4AB<br />
4AB = 4AB<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=File:LightWiredToChest.png&diff=138771File:LightWiredToChest.png2017-06-12T17:50:56Z<p>Klennart: </p>
<hr />
<div></div>Klennarthttps://wiki.factorio.com/index.php?title=Rocket_silo&diff=136658Rocket silo2017-05-04T17:19:34Z<p>Klennart: </p>
<hr />
<div>{{languages}}<br />
{{:Rocket silo/infobox}}<br />
<br />
The '''Rocket Silo''' is currently the only win condition. Once the silo has been built and placed it can be filled with [[low density structure]]s, [[rocket fuel]], and [[rocket control unit]]s which will allow [[rocket part]]s to be created within the silo. <br />
<br />
You need 100 Rocket part to be able to launch. Each rocket part need 10 [[low density structure]], 10 [[rocket fuel]], and [[rocket control unit]].<br />
<br />
When all rocket parts have been completed the rocket silo interface will be at 100% and allow the player to input a [[satellite]] component. Launching the rocket with a satellite will complete the game and a win menu will be displayed that shows all kills and the playing time, asking the player to exit the current game, continue, or view the replay.<br />
<br />
However, launching the silo without the satellite is sadly pointless, as it won't count as a win, and will be a massive waste of resources. More resources will be needed to make another rocket.<br />
<br />
Building a silo requires, among other things, [[Electric engine unit]]s, [[Engine unit]]s, and [[Processing unit]]s, which must be produced in [[assembling machine]]s and cannot be crafted by hand from raw. The rocket itself can also only be produced in the silo.<br />
<br />
== Achievements ==<br />
{{Main|Achievements}}<br />
The rocket silo, which is used to win the game, is directly connected to the following game win based achievements:<br />
* Smoke me a kipper, I'll be back for breakfast<br />
: Finish the game.<br />
* No time for chit-chat<br />
: Finish the game in 15 hours.<br />
* There is no spoon<br />
: Finish the game in 8 hours.<br />
* Raining bullets<br />
: Win the game without building a [[laser turret]].<br />
* Steam all the way<br />
: Win the game without using a [[solar panel]].<br />
* [[Logistic network]] embargo<br />
: Win the game without building [[active provider chest]] and [[requester chest]].<br />
* So long and thanks for all the fish<br />
: ''Spoiler! For a hint on how this is related, see [[Achievements]].''<br />
<br />
== History ==<br />
<br />
{{history|0.13.9|<br />
* Rocket parts from building rockets in the silo now show in production statistics.}}<br />
<br />
{{history|0.12.7|<br />
* Updated icon.}}<br />
<br />
{{history|0.12.4|<br />
* Rocket silo now behaves correctly when out of electricity.}}<br />
<br />
{{history|0.12.0|<br />
* Introduced}}<br />
<br />
== See also ==<br />
* [[rocket defense]] (the previous win condition)<br />
* [[Satellite]]<br />
<br />
{{CombatNav}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Railway&diff=136384Railway2017-05-01T08:55:19Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
<br />
:''For the research see [[Railway (research)]]''<br />
<br />
The Railway is one of the main transport methods in Factorio. Although the installation of such a network can be complicated, and requires a large amount of resource and space, it is faster and more efficient than [[Belt transport system|belts]] and [[Logistic network|robot logistics]], especially over large distances.<br />
<br />
Railway construction, however, is not understood instantly. It takes some time to learn the basics, such as automating transportation. Learning how to manage and maintain upkeep of a larger train network takes time and experience.<br />
<br />
== Infrastructure ==<br />
<br />
To build a railway, tracks (also called rails) must be built for the train to ride on. Typically, this is done via the [[Rail planner]], but can also be done manually. Bear in mind that rails can rails are placed on a two-tile grid, so you cannot move a rail by only one tile.<br />
<br />
=== Minimum manually operated railway ===<br />
As a minimum for a manually operated railway, you need to be able to build:<br />
* [[Rail]]s (tracks)<br />
* [[Locomotive]]s<br />
* [[Wagon]]s<br />
<br />
You may manually operate the locomotive the same way you enter a [[car]], by standing nest to it and press the RETURN button.<br />
<br />
=== Switches ===<br />
* There is no visual representation of a working switch, however the rails will appear to merge. Using the rail planner, the player must place a [[rail]] overlapping an existing rail to form a switch. Switches are forks in tracks that allow a train to pick between two directional options.<br />
* The crossing of two straight tracks is not usable as switch, as trains have a limited turning radius. They do, however, connect [[Rail signal| signal blocks]] which helps prevent collisions.<br />
* Parallel tracks do not interact with each other and generally have no problems. However, switching from one track to the other can require extra resources if they are too close together; the track must turn away from the other parallel track and then turn back to it. This can create complicated networks of signals and, as such, one should generally not build parallel tracks unless they are spaced adequately. (Generally, 2 track widths apart works well)<br />
<br />
=== Crossing tracks ===<br />
<br />
[[File:fff-140-controlled-gates.gif|thumb|An example of a safe railway crossing.]]<br />
<br />
'''Be careful when crossing tracks! Trains are one of the highest damaging entities in the game, and will kill most players instantly on contact.'''<br />
<br />
A checklist of proper track crossing etiquette:<br />
<br />
# Zoom out, so that you can see a train coming.<br />
# Look left, then right.<br />
# Check for signals nearby: If a [[rail signal]] suddenly jumps from green to red or green to yellow, a train is coming. Do not cross.<br />
# Avoid walking near the tracks, as you do not need to be fully on the tracks to get hit.<br />
# While it is possible to get into/out of a train while it is moving, a miss can cost your life. The sides of the train can still deal damage, as well as the player being able to slip between two rail cars.<br />
# Heavy [[Energy shield|shields]] can be used to reduce the damage taken. In extreme cases, it is possible to stop a train with your body. This will require several shield modules to not be instantly killed, and will drain a large amount of the suit's energy.<br />
# All entities with health will take damage getting hit by a train, so take care not to leave a [[Car]] or [[Tank]] on the tracks. However, this includes hostile forces!<br />
# Trains far from a [[train stop]] will be traveling at (near) max speed, so take extra precaution when crossing and zoom out further. Trains near a [[train stop]] or signal will slow down to stop, and will be traveling slower. Trains of different configurations will also move slower or faster.<br />
<br />
<br />
A safe railroad crossing like the example shown in the picture can be built. This works by restricting access to the tracks when an oncoming train has the rails reserved. When the player is on the rails, the signals are reserved by the [[circuit network]], and the train must stop and wait until the player leaves the tracks. When a player is inside the area crossing the tracks, the train gates are closed so the player can't get on the tracks outside the crossing. This is to completely ensure a safe crossing, and is often used on servers.<br />
<br />
== Trains ==<br />
<br />
Train components:<br />
<br />
{| class="wikitable"<br />
|{{imagelink|diesel-locomotive|Diesel locomotive}} || {{imagelink|cargo-wagon|Cargo wagon}} || {{imagelink|Fluid_wagon|Fluid wagon}} |-<br />
|}<br />
<br />
[[File:Railway-assemble-train.png|thumb|left|300px|Placing a [[Cargo wagon]] so it is attached to the train.]]<br />
<br />
* A train consists of at least one locomotive.<br />
* Trains can have more than one locomotive, and any number of [[Wagon]]s.<br />
* Locomotives can be '''manually''' driven forwards or backwards, however, they are generally slower going backwards. The left and right movement keys are used to change direction at switches.<br />
* Trains can only drive forwards automatically. An automatic train can drive forwards and backwards when two locomotives facing different directions are connected to the train.<br />
* A train needs [[fuel]] to drive. Despite being called Diesel Locomotives, they will take anything with a fuel value. Fuel can be added by inserters.<br />
* A common way to refuel trains is using a [[requester chest]] that requests [[fuel]], and then having a [[burner inserter]] loading the fuel into the locomotive.<br />
<br />
The locomotives' inventory is only used for [[Fuel]]. To transport items [[Cargo wagon]]s have to be attached to the train. To attach a Cargo wagon, the player may either prepare to place one near an existing train, where a green graphic will show the player that the cargo wagon will be attached, showing a connection between the train and the new wagon. Alternatively, the player may manually connect cargo wagons to trains with the stock connect key, if the cargo wagon was placed far away from a train. The cargo wagons can be filled manually or by adjacent [[Inserters]].<br />
<br />
* [[Railway/Train path finding]] - How trains find their path.<br />
<br />
{{clear}}<br />
<br />
== Stations ==<br />
<br />
Station Components<br />
<br />
{| class="wikitable"<br />
|{{imagelink|train-stop|Train stop}} || {{imagelink|straight-rail|Rail|Rails}} || {{imagelink|Inserter-icon|Inserters}}|}<br />
<br />
[[File:station-example-1.png|thumb|right|256px|A very minimal train station.]]<br />
[[File:station-example-2.png|thumb|400px|High-performance train station for short trains. Highest possible unload rate, waiting spots, refueling, defended, multi-train capable, modular, extend-able.]]<br />
A '''train station''' is a combination of at least one [[train stop]] plus a [[storage]] and/or distribution system, used to fill or empty [[Cargo wagon]]s, load [[fuel]] into the [[Diesel Locomotive|locomotive(s)]], or repair trains.<br />
<br />
'''Don't mix up ''train stations'' with ''train stops''.''' A train station is a concept, whereas a [[train stop]] is an item.<br />
<br />
[[Inserter]]s placed next to train tracks are used to load/unload trains at train stops. Inserters are the only way to get items off and onto cargo wagons.<br />
<br />
<br />
<br />
{{clear}}<br />
<br />
== Signals ==<br />
The two types of signals in Factorio:<br />
{| class="wikitable"<br />
| {{imagelink|rail-signal|Rail signal}} || {{imagelink|rail-chain-signal|Rail chain signal}} |-<br />
|}<br />
<br />
Understanding rail signals can be difficult. Several terms critical to understanding them are below:<br />
*Rail segment<br />
: A piece of track (one item).<br />
*Segment<br />
: A single path of continuous track without intersections or switches. This becomes important when signals are employed. The player may mouse over a segment to see its number. It's number is unique within the world, however does not start from 0 or 1.<br />
*Block<br />
: A set of segments defined by rail signals. By default every connected segment belongs to one block, no matter whether a train can drive on it or not, and even if it can be driven only in one direction (e.g. at a switch, both segments of the switch belong to the same block). The player can see the current block numbers of a rail piece in the info section on mouse-over.<br />
<br />
Rail signals are used to employ multiple trains automatically. Note that driving a train manually ignores most of the rules described here; other automatic trains will follow signaling indicted by the player's movement dynamically, however it will sometimes be not possible to avoid a collision for automatic trains if the player ignores red/yellow signals. Always beware automatic trains and give them the right of way.<br />
<br />
'''See [https://forums.factorio.com/viewtopic.php?f=18&t=3811#p28310 this forum post]''' for a good explanation about blocks.<br />
<br />
=== Basic Signaling Rules ===<br />
* There is at most one Train in a block at any time. A train spanning multiple blocks occupies them all.<br />
* A red signal means that the following block is occupied by a train.<br />
* A yellow signal means that a train is approaching and already has the approval to enter the following block.<br />
* [[Rail signal]]s separate a new block and reflect its state: green - free, yellow - reserved, red - occupied, blue - one of the paths is blocked<br />
* [[Rail chain signal]]s separate a new block and reflect the state of the next [[Rail signal]]<br />
* A train can only pass a signal on the right of the track, or if there is a signal on both sides on the same rail segment. Of course, manual driving overrides this.<br />
<br />
{{clear}}<br />
<br />
== Deadlocks ==<br />
<br />
A deadlock or gridlock can happen when every train is locked by another. In nearly every case two or more trains are standing so that every train blocks (by minimum) one other train.<br />
<br />
=== Deadlock occurrence ===<br />
<br />
Deadlocks occur when two+ trains are prevented from continuing through an intersection, due to an unsolvable signal conflict. There are a few different types of deadlocks:<br />
<br />
# Temporary - These are caused by a Temporary hiccup in a train's path, such as a loading train being in the way, or created by closing a signal with the [[circuit network]]. These often resolve themselves.<br />
# Semi-Permanent - These are the result of a problem with pathing, often created by a fuel-less train or broken rail, and may require player interaction in order to free.<br />
# Permanent - This type is the worst, and cannot be resolved automatically, often requiring the player to manually drive several trains to get them out of the intersection. These often are caused by incorrect signal placement or unreachable stations.<br />
<br />
It's important to remember that deadlocks can happen by chance, and by mistake of the player. Sometimes even perfectly signaled rails have issues. The rate of deadlocks is inversely proportional to the quality of Signaling, however.<br />
<br />
=== Factors that influence the deadlock chance ===<br />
<br />
* Train length (shorter trains will have a lower chance with the same rail/signal layout, due to having less effect on the rails they're on.)<br />
* Size of the blocks: More space for the blocks means lower chance of deadlock.<br />
* Track layout: Some layouts have a higher chance of locking, than others.<br />
* Quantity of trains - More trains trying to use an intersection will result in higher chance of deadlock.<br />
* The chance is also much higher if trains need to wait often in areas with rail-crossings.<br />
<br />
Knowing the factors, how can deadlocks be reduced?<br />
<br />
* Don't use 4-way junctions or roundabouts (circles) to create junctions.<br />
* Use better 3-way junctions. See [http://www.factorioforums.com/forum/viewtopic.php?f=18&t=9044 A Detailed Look at a Bidirectional Three-way Train Intersection]<br />
* Use roundabouts only for changing direction of train, and never for high traffic intersections.<br />
* Build more tracks around junctions. Don't have one junction be the only way to reach a place, add redundancy. This keeps a small problem a small problem.<br />
<br />
== Automated transport ==<br />
[[File:train-schedule-gui.png|thumb|300px|The new train GUI since 0.13 (schedule tab): 1 - switch between automatic and manual driving mode; 2 - add new train stop; 3 - delete selected train stop; 4 - send train to selected train stop; 5 - add wait condition for selected train stop; 6 - delete selected wait condition; 7 - change logical mode of selected wait condition]]<br />
<br />
This section covers items used to make trains automatically transport items between stations. The player should be familiar with creating a rail system.<br />
<br />
First, the player has to setup a rail system with at least two train stops, which are placed in the right-hand side of the expected train arrival direction. By hovering over the train stop with the mouse you see the positions of the vehicles for better setting up the train station (including (un)loading machinery, refueling/repair installations).<br />
<br />
When you set up the train schedule (see below) and fuel the train, you can start the train on it's schedule by switching from manual to automatic driving mode.<br />
<br />
=== Train schedule ===<br />
<br />
The player can set up a list of train stops in the upper window. The train will run to the stops in the given order, if it's at the end it will continue with the first. Currently, it's not possible to make a one-time schedule. Stops can be added by clicking button 2 (see picture). A pop-up appears with a list of all train stops. If you select one, another pop-up appears where you have to select a wait condition.<br />
<br />
Wait conditions are used to tell the train when to leave the station. There are 6 types of wait conditions:<br />
* '''Time passed''' - the only one available until version 0.12.<br />
* '''Inventory full''' - All inventories of the train are full.<br />
* '''Inventory empty''' - Same as above, but empty.<br />
* '''Item count''' - The train (all cargoes summed) contains a specific amount of a certain item.<br />
* '''Circuit condition''' - The train stop is connectable to the [[Circuit network]], so the signals can used for wait conditions.<br />
* '''Inactivity''' - No items were added or removed for the specified amount of seconds.<br />
<br />
Hereafter the word "term" is used to describe ''one'' type of wait condition, and the words "wait condition" are used to describe the whole set of terms (it turns a bit into maths).<br />
<br />
If you add more than one term, you can change the connection of those using the logical operators AND and OR (button 7). An AND condition will result in true if all terms are true. An OR condition will return true if at least one of the terms is true.<br />
<br />
When mixing AND and OR terms, the logic is grouped by the OR terms. When evaluating the wait condition, the first term is evaluated along with all AND terms immediately following up to but excluding the next occurring OR term. If they all evaluate true, the wait condition evaluates true. Otherwise, evaluation continues with that next occurring OR term and all AND terms immediately following it, up to the next OR term. This continues until either an OR group evaluates true and the wait condition is satisfied, or all terms have been checked.<br />
<br />
==== Examples ====<br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px"><br />
Expand for examples<br />
<div class="mw-collapsible-content"><br />
Wait until full, up to 30 seconds:<br />
<br />
<pre><br />
Full cargo inventory<br />
OR 30 seconds passed<br />
</pre><br />
<br />
Wait until cargo full, ''or'' circuit condition Oil > 3000:<br />
<br />
<pre><br />
Full cargo inventory<br />
OR Circuit condition - Oil > 3000<br />
</pre><br />
<br />
<br />
Wait until empty, ''and'' 30 seconds passed, ''and'' 5 seconds of inactivity:<br />
<br />
<pre><br />
Empty cargo inventory<br />
AND 30 seconds passed<br />
AND 5 seconds of inactivity<br />
</pre><br />
<br />
Wait until iron ore is low, ''or'' copper ore is low ''and'' at least 30 seconds passed:<br />
<br />
<pre><br />
Cargo: Iron ore < 500<br />
AND 30 seconds passed<br />
OR Cargo: Copper ore < 500<br />
AND 30 seconds passed<br />
</pre><br />
<br />
Factorio's wait condition logic is read as disjunctive normal form ([https://en.wikipedia.org/wiki/Disjunctive_normal_form DNF]), and so this last example is processed as (note the parenthesis):<br />
<br />
<pre>((Cargo: Iron ore < 500 AND 30 seconds passed) OR (Cargo: Copper ore < 500 AND 30 seconds passed))</pre><br />
<br />
Which is the same as this:<br />
<br />
<pre>((Cargo: Iron ore < 500 OR Cargo: Copper ore < 500) AND 30 seconds passed)</pre><br />
<br />
Unfortunately, there is '''no''' way to write that shorter form in the current UI.<br />
</div></div><br />
<br />
=== Troubleshooting ===<br />
<br />
Below are some things to verify if a rail system or train is not working.<br />
<br />
* Is the train fueled? Ensure that the locomotive has [[fuel]] of some kind.<br />
* Misplaced or non-functional switches? Ensure that the train can plan a path through the switches.<br />
* Another train on the same [[Railway#Segment|segment]] or [[Railway#Block|block]]? Make sure the path of the train is unobstructed.<br />
* Train stops placed correctly? Make sure that the yellow arrows when hovering on the stop point towards the end or exit of the stop.<br />
* Is the train allowed to enter signals from the right direction? Are the signals set correctly?<br />
* If a track is supposed to be two-way, the rail signals should be opposite each other. You can verify they match up by hovering the cursor over one. For a matched pair, it will show the other.<br />
<br />
<br />
==== No path ====<br />
When trains cannot reach the target, a "no path" symbol pops up over the locomotive. Check:<br />
* Can the train reach it's current destination by '''only driving forward'''? Build turning slopes or place a locomotive at both ends of a train!<br />
* Are the train stops standing in the right direction? Train stops must be on the right hand side of the track.<br />
* If you use rail signals, check that the signals are all allowing traffic in the correct direction.'' <br />
* Check for interruptions in the train tracks, drive to the station manually to check there are no rail parts missing. Especially near junctions these can be hard to spot if missing.<br />
<br />
If you are still having problems, consider:<br />
* Driving the train manually, and as you pass each switch, try switching to automatic. When it works, you will know the rough area of the problem.<br />
[http://imgur.com/a/Nq2Yk A pictorial summary of typical problems].<br />
<br />
<br />
<!-- These tutorials are no longer included because they are outdated. However, this section can be put back into the article when there are newer or in-wiki tutorials<br />
<br />
== User tips and tricks ==<br />
This section contains further links to in-depth knowledge. As a general advisory, tips given in this section detail the more intricate mechanics in the game and can be dangerous to the experience of players who wish to discover better methods on their own. '''''Be warned that much of the info below could be outdated/incorrect.'''''<br />
<br />
=== Tutorials ===<br />
==== Videos ====<br />
We recommend viewing some videos of how to build a simple railway, which makes the basic steps very simple.<br />
<br />
* [https://www.youtube.com/watch?v=mXr7y02ZG00 Rail Signaling - Easy Rules for Placing Signals]<br />
* [http://www.factorioforums.com/forum/viewtopic.php?f=54&t=6984 Factorio Tutorial: Signals and Multi-train Networks] by Gepwin (read the whole article!)<br />
* [http://www.factorioforums.com/forum/viewtopic.php?f=8&t=5451 Factorio Traintorial, all about trains] by Gepwin.<br />
* ''v0.10, English [http://www.youtube.com/watch?v=XSGYSbEPpbM Rail basics tutorial] by MangledPork Gaming.<br />
** And the second part of the tutorial [http://www.youtube.com/watch?v=k6wxl4FdSuQ Factorio Rail Tutorial Part 2: Signals]<br />
<br />
* ''[http://www.reddit.com/r/factorio/comments/26igal/train_signal_tutorial/ A train-signal tutorial with pictures].<br />
* v0.8, English [http://www.youtube.com/watch?v=RmyOdxi5hR4 Inzainia Plays: Factorio ver 0.8.0 EP:8 (Trains, Trains, Trains!!!)]<br />
* v0.6, German [http://www.youtube.com/watch?v=idOaZpX8lnA Silver's Factorio Basic Train Tutorial]<br />
<br />
--><br />
<br />
== Achievements ==<br />
{{Main|Achievements}}<br />
Trains are directly connected to the following achievement:<br />
; Trans factorio express<br />
: Have a train plan a path 1000 tiles long.<br />
<br />
== Connection to [http://www.openttd.org/ OpenTTD] ==<br />
Factorio's railway system works basically exactly like [http://wiki.openttd.org/Signals#Block_signals≈ the block signals in Open Traffic Tycoon Deluxe]. Players who have ever played that game will find some elements of it in Factorio. If not, they can learn from the OpenTTD documentation.<br />
<br />
== See also ==<br />
* [[Vehicles]]<br />
* [[Diesel Locomotive]]<br />
* [[Cargo wagon]]<br />
<br />
[[Category:Vehicles]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Nightvision&diff=136332Nightvision2017-04-30T19:40:42Z<p>Klennart: /* See also */</p>
<hr />
<div>{{Languages}}<br />
{{:Nightvision/infobox}}<br />
<br />
[[File:night-vision-example-1.png|thumb|256px|Visibility at night.]]<br />
<br />
Nightvision is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your Nightvision into its equipment grid.<br />
<br />
Having '''nightvision''' in your [[Modular armor|armor]] during the night replaces standard light-dependent vision with a green filter that ignores lighting conditions.<br />
<br />
The module activates rather early and deactivates late, meaning that during the dawn and the dusk it actually impairs the vision.<br />
<br />
Unlike other items such as exoskeletons or shields, equipping multiple night vision units has no effect.<br />
<br />
== History ==<br />
<br />
{{history|0.11.17|<br />
* Moved the night vision tint color into the night vision equipment prototype.}}<br />
<br />
{{history|0.9.1|<br />
* Show energy consumption in the tooltip.}}<br />
<br />
{{history|0.9.0|<br />
* Green color of night vision is less dense.}}<br />
<br />
{{history|0.7.0|<br />
* Introduced}}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
* [[Equipment modules]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Nightvision&diff=136331Nightvision2017-04-30T19:39:24Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Nightvision/infobox}}<br />
<br />
[[File:night-vision-example-1.png|thumb|256px|Visibility at night.]]<br />
<br />
Nightvision is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your Nightvision into its equipment grid.<br />
<br />
Having '''nightvision''' in your [[Modular armor|armor]] during the night replaces standard light-dependent vision with a green filter that ignores lighting conditions.<br />
<br />
The module activates rather early and deactivates late, meaning that during the dawn and the dusk it actually impairs the vision.<br />
<br />
Unlike other items such as exoskeletons or shields, equipping multiple night vision units has no effect.<br />
<br />
== History ==<br />
<br />
{{history|0.11.17|<br />
* Moved the night vision tint color into the night vision equipment prototype.}}<br />
<br />
{{history|0.9.1|<br />
* Show energy consumption in the tooltip.}}<br />
<br />
{{history|0.9.0|<br />
* Green color of night vision is less dense.}}<br />
<br />
{{history|0.7.0|<br />
* Introduced}}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Nightvision&diff=136330Nightvision2017-04-30T19:38:42Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Nightvision/infobox}}<br />
<br />
[[File:night-vision-example-1.png|thumb|256px|Visibility at night.]]<br />
<br />
Nightvision is a kind of Equipment modules . To activate it you need an armor that accept Equipment modules. You right klick on the armor, and add your Nightvision into its equipment grid.<br />
<br />
Having '''nightvision''' in your [[Modular armor|armor]] during the night replaces standard light-dependent vision with a green filter that ignores lighting conditions.<br />
<br />
The module activates rather early and deactivates late, meaning that during the dawn and the dusk it actually impairs the vision.<br />
<br />
Unlike other items such as exoskeletons or shields, equipping multiple night vision units has no effect.<br />
<br />
== History ==<br />
<br />
{{history|0.11.17|<br />
* Moved the night vision tint color into the night vision equipment prototype.}}<br />
<br />
{{history|0.9.1|<br />
* Show energy consumption in the tooltip.}}<br />
<br />
{{history|0.9.0|<br />
* Green color of night vision is less dense.}}<br />
<br />
{{history|0.7.0|<br />
* Introduced}}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Exoskeleton&diff=136329Exoskeleton2017-04-30T19:35:29Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Exoskeleton/infobox}}<br />
<onlyinclude><br />
'''Exoskeleton''' enhances the movement speed of your character by 30% When fully powered. It consumes 200kW (200kJ/s) of power when used.<br />
<br />
Exoskeleton is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your Exoskeleton into its equipment grid.<br />
<br />
Each exoskeleton occupies a 2x4 tall rectangle in the equipment grid. It is possible to use multiple exoskeletons in modular armor, and the speed bonus will stack additively. There is no speed limit; it is limited only by the amount of room available in your armor and by available power.<br />
<br />
Exoskeletons have a 56kJ internal electricity storage, visible as a charging bar. With no power, this will sustain them for less than a second. As the available power approaches 200kW, the charging bar will both drain more slowly and have a larger minimum size. The exoskeleton will provide a full speed bonus until the charging bar hits the minimum size, at which point the exoskeleton's speed bonus drops to what it can maintain. At 200kW or greater, the charging bar does not shrink and the speed bonus remains at maximum.<br />
<br />
Note, however, that exoskeletons are below shields in armor charging priority, and if the shields are damaged at all, exoskeletons will rapidly run dry and will not resume their full speed until the shields are fully charged. This makes them fairly useless for quick getaways.<br />
</onlyinclude><br />
While a Exoskeleton can be assembled by hand, the parts for it require automated construction to build, so it cannot be built from raw materials by hand.<br />
<br />
== Movement speed increase ==<br />
<br />
The base movement speed is '''8.902''' [[Tile|tiles]] per [[Game-second|gamesecond]]. <sup>[https://wiki.factorio.com/Talk:Exoskeleton#Movement%20speed%20experiments]</sup> Each additional exoskeleton increases the speed by 30 % of the base speed. <br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! Number of exoskeletons<br />
! Tiles/game-second<br />
! % of base speed<br />
|-<br />
| 0<br />
| 8.902<br />
| 100 %<br />
|-<br />
| 1<br />
| 11.483<br />
| 129 %<br />
|-<br />
| 2<br />
| 14.286<br />
| 161 %<br />
|-<br />
| 3<br />
| 16.866<br />
| 190 %<br />
|-<br />
| 4<br />
| 19.672<br />
| 221 %<br />
|-<br />
| 5<br />
| 22.472<br />
| 252 %<br />
|-<br />
| 6<br />
| 25.026<br />
| 281 %<br />
|}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
* [[Equipment modules]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Exoskeleton&diff=136328Exoskeleton2017-04-30T19:34:56Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Exoskeleton/infobox}}<br />
<onlyinclude><br />
'''Exoskeleton''' enhances the movement speed of your character by 30% When fully powered. It consumes 200kW (200kJ/s) of power when used.<br />
<br />
Exoskeleton is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your Exoskeleton into its equipment grid.<br />
<br />
Each exoskeleton occupies a 2x4 tall rectangle in the equipment grid. It is possible to use multiple exoskeletons in modular armor, and the speed bonus will stack additively. There is no speed limit; it is limited only by the amount of room available in your armor and by available power.<br />
<br />
<br />
Exoskeletons have a 56kJ internal electricity storage, visible as a charging bar. With no power, this will sustain them for less than a second. As the available power approaches 200kW, the charging bar will both drain more slowly and have a larger minimum size. The exoskeleton will provide a full speed bonus until the charging bar hits the minimum size, at which point the exoskeleton's speed bonus drops to what it can maintain. At 200kW or greater, the charging bar does not shrink and the speed bonus remains at maximum.<br />
<br />
Note, however, that exoskeletons are below shields in armor charging priority, and if the shields are damaged at all, exoskeletons will rapidly run dry and will not resume their full speed until the shields are fully charged. This makes them fairly useless for quick getaways.<br />
</onlyinclude><br />
While a Exoskeleton can be assembled by hand, the parts for it require automated construction to build, so it cannot be built from raw materials by hand.<br />
<br />
== Movement speed increase ==<br />
<br />
The base movement speed is '''8.902''' [[Tile|tiles]] per [[Game-second|gamesecond]]. <sup>[https://wiki.factorio.com/Talk:Exoskeleton#Movement%20speed%20experiments]</sup> Each additional exoskeleton increases the speed by 30 % of the base speed. <br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! Number of exoskeletons<br />
! Tiles/game-second<br />
! % of base speed<br />
|-<br />
| 0<br />
| 8.902<br />
| 100 %<br />
|-<br />
| 1<br />
| 11.483<br />
| 129 %<br />
|-<br />
| 2<br />
| 14.286<br />
| 161 %<br />
|-<br />
| 3<br />
| 16.866<br />
| 190 %<br />
|-<br />
| 4<br />
| 19.672<br />
| 221 %<br />
|-<br />
| 5<br />
| 22.472<br />
| 252 %<br />
|-<br />
| 6<br />
| 25.026<br />
| 281 %<br />
|}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
* [[Equipment modules]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Exoskeleton&diff=136326Exoskeleton2017-04-30T19:29:40Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Exoskeleton/infobox}}<br />
<onlyinclude><br />
'''Exoskeleton''' enhances the movement speed of your character by 30% when inserted in [[Modular armor]] and fully powered. It consumes 200kW (200kJ/s) of power when used.<br />
<br />
Each exoskeleton occupies a 2x4 tall rectangle in [[modular armor]]. It is possible to use multiple exoskeletons in modular armor, and the speed bonus will stack additively. There is no speed limit; it is limited only by the amount of room available in your armor and by available power.<br />
<br />
Exoskeleton is a kind of [[Equipment modules]] . To activate it you need an armor that accept Equipment modules. You right klick on the armor, and add your entry shield into its equipment grid.<br />
<br />
Exoskeletons have a 56kJ internal electricity storage, visible as a charging bar. With no power, this will sustain them for less than a second. As the available power approaches 200kW, the charging bar will both drain more slowly and have a larger minimum size. The exoskeleton will provide a full speed bonus until the charging bar hits the minimum size, at which point the exoskeleton's speed bonus drops to what it can maintain. At 200kW or greater, the charging bar does not shrink and the speed bonus remains at maximum.<br />
<br />
Note, however, that exoskeletons are below shields in armor charging priority, and if the shields are damaged at all, exoskeletons will rapidly run dry and will not resume their full speed until the shields are fully charged. This makes them fairly useless for quick getaways.<br />
</onlyinclude><br />
While a Exoskeleton can be assembled by hand, the parts for it require automated construction to build, so it cannot be built from raw materials by hand.<br />
<br />
== Movement speed increase ==<br />
<br />
The base movement speed is '''8.902''' [[Tile|tiles]] per [[Game-second|gamesecond]]. <sup>[https://wiki.factorio.com/Talk:Exoskeleton#Movement%20speed%20experiments]</sup> Each additional exoskeleton increases the speed by 30 % of the base speed. <br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! Number of exoskeletons<br />
! Tiles/game-second<br />
! % of base speed<br />
|-<br />
| 0<br />
| 8.902<br />
| 100 %<br />
|-<br />
| 1<br />
| 11.483<br />
| 129 %<br />
|-<br />
| 2<br />
| 14.286<br />
| 161 %<br />
|-<br />
| 3<br />
| 16.866<br />
| 190 %<br />
|-<br />
| 4<br />
| 19.672<br />
| 221 %<br />
|-<br />
| 5<br />
| 22.472<br />
| 252 %<br />
|-<br />
| 6<br />
| 25.026<br />
| 281 %<br />
|}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
* [[Equipment modules]]<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Exoskeleton&diff=136325Exoskeleton2017-04-30T19:27:53Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Exoskeleton/infobox}}<br />
<onlyinclude><br />
'''Exoskeleton''' enhances the movement speed of your character by 30% when inserted in [[Modular armor]] and fully powered. It consumes 200kW (200kJ/s) of power when used.<br />
<br />
Each exoskeleton occupies a 2x4 tall rectangle in modular armor. It is possible to use multiple exoskeletons in modular armor, and the speed bonus will stack additively. There is no speed limit; it is limited only by the amount of room available in your armor and by available power.<br />
<br />
Exoskeleton is a kind of Equipment modules . To activate it you need an armor that accept Equipment modules. You right klick on the armor, and add your entry shield into its equipment grid.<br />
<br />
Exoskeletons have a 56kJ internal electricity storage, visible as a charging bar. With no power, this will sustain them for less than a second. As the available power approaches 200kW, the charging bar will both drain more slowly and have a larger minimum size. The exoskeleton will provide a full speed bonus until the charging bar hits the minimum size, at which point the exoskeleton's speed bonus drops to what it can maintain. At 200kW or greater, the charging bar does not shrink and the speed bonus remains at maximum.<br />
<br />
Note, however, that exoskeletons are below shields in armor charging priority, and if the shields are damaged at all, exoskeletons will rapidly run dry and will not resume their full speed until the shields are fully charged. This makes them fairly useless for quick getaways.<br />
</onlyinclude><br />
While a Exoskeleton can be assembled by hand, the parts for it require automated construction to build, so it cannot be built from raw materials by hand.<br />
<br />
== Movement speed increase ==<br />
<br />
The base movement speed is '''8.902''' [[Tile|tiles]] per [[Game-second|gamesecond]]. <sup>[https://wiki.factorio.com/Talk:Exoskeleton#Movement%20speed%20experiments]</sup> Each additional exoskeleton increases the speed by 30 % of the base speed. <br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! Number of exoskeletons<br />
! Tiles/game-second<br />
! % of base speed<br />
|-<br />
| 0<br />
| 8.902<br />
| 100 %<br />
|-<br />
| 1<br />
| 11.483<br />
| 129 %<br />
|-<br />
| 2<br />
| 14.286<br />
| 161 %<br />
|-<br />
| 3<br />
| 16.866<br />
| 190 %<br />
|-<br />
| 4<br />
| 19.672<br />
| 221 %<br />
|-<br />
| 5<br />
| 22.472<br />
| 252 %<br />
|-<br />
| 6<br />
| 25.026<br />
| 281 %<br />
|}<br />
<br />
== See also ==<br />
* [[Modular armor]]<br />
<br />
<br />
{{CombatNav}}<br />
<br />
[[Category: Items]]<br />
[[Category: Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Energy_shield&diff=136324Energy shield2017-04-30T19:26:26Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Energy shield/infobox}}<br />
The [[Energy shield]] generates a basic protective shield around your character, absorbing a small amount of [[Damage]].<br />
<br />
Every shield is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your entry shield into its equipment grid.<br />
<br />
The shield is effectively an extension of hp and has to be brought to 0 for the character to suffer any actual hp damage. Like actual hp, it benefits from your armor. An improved version is [[Energy shield MK2]].<br />
<br />
It takes 4.167 seconds to recharge from 0 to 50 hp. Multiple Shields recharge simultaneously. <br />
<br />
The maximum shield recharge rate is ([number of energy shields] * 50 / 4.167) units per second, if enough power is provided by [[Modular_armor#Equipment|batteries]], [[Portable_solar_panel|solar panels]], or a [[Portable_fusion_reactor|fusion reactor]]. The maximum rate is only reached when all shields are recharging at once, i.e., all shields are depleted except the last one (or all shields are depleted including the last one).<br />
<br />
----<br />
'''See also:'''<br />
* [[Modular armor]]<br />
* [[Equipment modules]]<br />
* [[Energy shield MK2]]<br />
<br />
<br />
{{CombatNav}}<br />
<br />
[[Category:Items]]<br />
[[Category:Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Equipment_modules&diff=136323Equipment modules2017-04-30T19:25:39Z<p>Klennart: </p>
<hr />
<div>{{Languages}} <br />
<br />
{{Disambiguation}}<br />
<br />
Equipment modules can be added to [[modular armor]], [[power armor]] and [[power armor MK2]] and give the player various bonuses. Bonuses stack and can be combined with each other to suit the wearer's personal preferences. Modules take up a certain amount of space in armor and some consume energy.<br />
<br />
To add an equipment module, right klick on the armor, and it's equipment grid open, where you can add your equipment modules.<br />
<br />
All modules have their own [[technologies|technology]] that must be [[research|researched]] before they can be crafted. The following modules are available:<br />
<br />
* [[Basic exoskeleton equipment]]<br />
* [[Battery MK1]]<br />
* [[Battery MK2]]<br />
* [[Portable solar panel]]<br />
* [[Portable fusion reactor]]<br />
* [[Energy shield]]<br />
* [[Energy shield MK2]]<br />
* [[Night vision]]<br />
* [[Personal laser defense]]<br />
* [[Discharge defense]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Energy_shield&diff=136322Energy shield2017-04-30T19:23:21Z<p>Klennart: </p>
<hr />
<div>{{Languages}}<br />
{{:Energy shield/infobox}}<br />
The [[Energy shield]] generates a basic protective shield around your character, absorbing a small amount of [[Damage]].<br />
<br />
Every shield is a kind of [[Equipment modules]] . To activate it you need an armor that accept [[Equipment modules]]. You right klick on the armor, and add your entry shield into its equipment grid.<br />
<br />
The shield is effectively an extension of hp and has to be brought to 0 for the character to suffer any actual hp damage. Like actual hp, it benefits from your armor. An improved version is [[Energy shield MK2]].<br />
<br />
It takes 4.167 seconds to recharge from 0 to 50 hp. Multiple Shields recharge simultaneously. <br />
<br />
The maximum shield recharge rate is ([number of energy shields] * 50 / 4.167) units per second, if enough power is provided by [[Modular_armor#Equipment|batteries]], [[Portable_solar_panel|solar panels]], or a [[Portable_fusion_reactor|fusion reactor]]. The maximum rate is only reached when all shields are recharging at once, i.e., all shields are depleted except the last one (or all shields are depleted including the last one).<br />
<br />
----<br />
'''See also:'''<br />
* [[Modular armor]]<br />
* [[Energy shield MK2]]<br />
<br />
<br />
{{CombatNav}}<br />
<br />
[[Category:Items]]<br />
[[Category:Equipment]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Red_wire&diff=135780Red wire2017-04-21T18:54:40Z<p>Klennart: </p>
<hr />
<div>{{languages}}<br />
{{:Red wire/infobox}}<br />
<br />
'''Red wire''' is used to connect "smart" devices to a '''red''' [[Circuit network]].<br />
<br />
Select the red wire from your inventory, then left click to connect it to an item capable of using a [[Circuit network]]. You can also string wire on [[Electric network#Distribution|Electric pole]]s by clicking on the base of the pole. You will need one unit of red wire for each connection between two points.<br />
<br />
== See also ==<br />
* [[Green wire]]<br />
* [[Electric network]]<br />
* [[Circuit network]]<br />
<br />
{{LogisticsNav}}<br />
<br />
[[Category:Items]]<br />
[[Category:Circuit network]]<br />
[[Category:Electric network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135430Tutorial:Circuit network cookbook2017-03-31T20:12:19Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the [[Lamp]] and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]] with the [[lamp]].<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135429Tutorial:Circuit network cookbook2017-03-31T20:11:37Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the [[Lamp]] and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]] with the [[Lamp]].<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[Lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135428Tutorial:Circuit network cookbook2017-03-31T20:07:57Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the [[Storage tank]] you need:<BR><br />
1 Add the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]]. with the lamp.<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[Lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135427Tutorial:Circuit network cookbook2017-03-31T20:07:30Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the [[Storage tank]] you need:<BR><br />
1 Create the [[Arithmetic combinator]].<BR><br />
2 Connect the [[Storage tank]] with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the [[Arithmetic combinator]]. with the lamp.<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[Lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135426Tutorial:Circuit network cookbook2017-03-31T20:05:12Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the Petroleum Gas container you need:<BR><br />
1 Create the [[Arithmetic combinator]].<BR><br />
2 Connect the Petroleum Gas container with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the Petroleum Gas container with the lamp.<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[Lamp]]:<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135425Tutorial:Circuit network cookbook2017-03-31T20:04:46Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the Petroleum Gas container you need:<BR><br />
1 Create the [[Arithmetic combinator]].<BR><br />
2 Connect the Petroleum Gas container with the input of the [[Arithmetic combinator]].<BR><br />
3 Connect the output of the Petroleum Gas container with the lamp.<BR><br />
4 Set up the [[Arithmetic combinator]]:<BR><br />
4.1 Setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0)<BR><br />
4.2 Set the output to the Pink signal (on the bottom row of the last tab of signals.)<BR><br />
5 Set up the [[Lamp]]<BR><br />
5.1 Select the "Use colors" check box on the lamp.<BR><br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<BR><br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135424Tutorial:Circuit network cookbook2017-03-31T20:02:27Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the Petroleum Gas container you need:<br />
1 Create the [[Arithmetic combinator]].<br />
2 Connect the Petroleum Gas container with the input of the [[Arithmetic combinator]].<br />
3 Connect the output of the Petroleum Gas container with the lamp.<br />
4 Set up the [[Arithmetic combinator]], setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0) and set the output to the Pink signal (on the bottom row of the last tab of signals.)<br />
5 Set up the [[Lamp]]<br />
5.1 Select the "Use colors" check box on the lamp. <br />
5.2 Set the condition to the Pink signal, and what value you want (i.e. > 100)<br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135423Tutorial:Circuit network cookbook2017-03-31T20:00:48Z<p>Klennart: /* Colored Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need an intermediate device like an [[Arithmetic combinator]] that can send a color signal. <br />
Instead of directly connect the the lamp and the Petroleum Gas container you need:<br />
# Create the [[Arithmetic combinator]].<br />
# Connect the Petroleum Gas container with the input of the [[Arithmetic combinator]].<br />
# Connect the output of the Petroleum Gas container with the lamp.<br />
# Set up the [[Arithmetic combinator]], setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0) and set the output to the Pink signal (on the bottom row of the last tab of signals.)<br />
# Set up the [[Lamp]]<br />
## Select the "Use colors" check box on the lamp. <br />
## Set the condition to the Pink signal, and what value you want (i.e. > 15)<br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Tutorial:Circuit_network_cookbook&diff=135422Tutorial:Circuit network cookbook2017-03-31T19:42:16Z<p>Klennart: /* Conditional Lights */</p>
<hr />
<div>== Foreword == <br />
<br />
This page provides examples of simple circuit network designs and some not so simple designs that others can use, combine and modify. They are designed to be as easy to understand as possible.<br />
<br />
== Oil Setups ==<br />
[[File:LgtOilCracking.png|left|400x400px]]<br />
=== Light Oil Cracking ===<br />
* This circuit provides balanced light oil and petroleum gas production by cracking excess light oil into gas. <br />
* The [[Small pump]] is connected to the [[Storage tank]] by a [[Red wire]]. <br />
* The [[small pump]] has an enabled condition set to '''Light Oil > 2000'''.<br />
{{clear}}<br />
<br />
[[File:HvyOilCracking.png|left|400x400px]]<br />
<br />
=== Heavy Oil Cracking ===<br />
* This circuit extends on the previous circuit by adding optional heavy oil cracking to provide lubricant etc.<br />
* The [[Small pump]] has an enabled condition set to '''Heavy oil > 2000'''.<br />
{{clear}}<br />
<br />
[[file:BalancedPlasticSulfur.png|left|400x400px]]<br />
<br />
=== Petroleum split evenly between plastic and sulphuric acid ===<br />
* This circuit buffers gas in the tank until there is at least 100, then it lets the tank drain until there is less than 50 and the cycle repeats.<br />
* It has a few elements that work together to do achieve this. <br />
* Firstly the [[Small pump]] is connected to the [[Wooden chest]] by a [[Red wire]] and the enabled condition on the [[Small pump]] is set to '''Raw wood > 0'''.<br />
* Both of the [[Basic inserter]]s are connected to the [[Storage tank]] by [[Red wire]]s. <br />
* The enabled condition on the left inserter is '''Petroleum gas > 100''' <br />
* The enabled condition on the right inserter is '''Petroleum gas < 50'''. <br />
* You will need to insert a single "Raw wood" into the chest to make it all work. <br />
<br /><br />
* It is also possible to do this with [[decider combinator]]s instead of the inserters, belt and the Wood chest or even just belts.<br />
{{clear}}<br />
<br />
== Lights ==<br />
[[File:ConditionalLights.png|left|400x400px]]<br />
=== Conditional Lights ===<br />
* In this circuit we connect a series of [[lamp]]s to a [[Storage Tank]].<br />
* By setting different conditions on each [[lamp]] we can build an indicator strip. <br />
* The Enabled condition of the first [[lamp]] is '''Petroleum gas > 100'''.<br />
* The others light up when gas is greater than 200, 300, 400 and 500 respectively.<br />
{{clear}}<br />
<br />
In this scenario you can connect the storage tank to the lamps directly.<br />
<br />
<br />
[[File:ColoredLights.png|left|400x400px]]<br />
<br />
=== Colored Lights ===<br />
* To light a [[lamp]] with a color rather than white, you need to do two things. <br />
* 1. Send a colored signal to the lamp <br />
* 2. Select the "Use colors" check box on the lamp. <br />
* In this case we want to convert a Petroleum gas signal into a pink signal. <br />
* We can do this with an [[Arithmetic combinator]], setting the input to Petroleum Gas + 0 (the constant 0 not the signal 0) and set the output to the Pink signal (on the bottom row of the last tab of signals.)<br />
{{clear}}<br />
<br />
== Misc ==<br />
[[file:MulitipleChestsAndPoles.png|left|400x400px]]<br />
=== Multiple Storages === <br />
* If you connect multiple chests to a pole, the pole displays the sum of items in all the chests. <br />
* This also works with [[Storage tank]]s and [[roboport]]s.<br />
{{clear}}<br />
<br />
[[File:ConstantComb.png|left|400x400px]]<br />
<br />
=== Constant combinator ===<br />
* With a [[constant combinator]] you can generate any signals you may need. <br />
* In this example we have generated a signal of 50 Laser turrets and 200 Piercing round magazine. <br />
* Constant combinators are not of much use on their own but we shall use them later.<br />
{{clear}}<br />
<br />
[[File:LogicGates.png|left|400x400px]]<br />
<br />
=== Logic gates ===<br />
* In each case the two inputs can be connected with the same color wire or different colors. The inputs are powered by two [[Constant combinator]]s each of them output an A signal with value 1 for true and nothing or false.<br />
* You can use [[Decider combinator]]s to make all of the common logic gates.<br />
* The output for each should be set to 1 and the signal of your choice.<br />
* Use the following settings to create different gates:<br />
{{clear}}<br />
<br />
NOT A=0<br />
NOR A=0<br />
NAND A<2<br />
XOR A=1<br />
AND A=2<br />
OR A>0<br />
<br />
{{clear}}<br />
<br />
[[File:ThisASign.png|left|400x400px]]<br />
<br />
=== Constant combinator signs ===<br />
* You can use [[Constant combinator]]s to make signs, just set the letter signals in the combinator, each combinator can display 2 characters side by side.<br />
{{clear}}<br />
<br />
[[File:MemoryCell.png|left|400x400px]]<br />
<br />
=== Memory Cell / Counter ===<br />
* Basic memory cell that counts all the items moved by the inserter<br />
* The [[Fast inserter]] is connected to '''BOTH''' ends of the arithmetic combinator.<br />
<br />
* If the [[Fast inserter]] hasn't picked anything up this tick the input to the Arithmetic combinator is the same as and output and hence the values are persisted. <br />
* When the [[Fast inserter]] does pick something up its value is added to the output from the previous tick thus incrementing that item. <br />
{{clear}}<br />
<br />
<br />
[[File:BeltCache.png|left|400x400px]]<br />
<br />
=== Automatic Belt-Cache ===<br />
* Some intermediate products are huge in demand during peak-production only. To bypass the need of providing a huge amount of factories in order to cover that peaks, a cache-unit can be used. The unit stores items, while the belt has backed up (so theres obviously no current demand downstream) and releases items as soon as the belt gets too empty.<br />
* The blue area are 3 parts of Express belts. According to the wiki, each belt can hold up to 7.11 items. This means the feeding fast belt can not provide 7.11 items for the express belts as long as the belt is moving. (And while the belt is moving, we don't want to cache items, but let regular production run, or even release items from the cache.)<br />
* This means, once the counters on the two express belts are 7.11 each, the belt has backed up, so we can start "caching" items into our storage array. <br />
* For this purpose, the counters are connected to the arithmetic combinator (A) which multiples the input (*100) into green signals. So, if the belt has backed up, B shows ">1422" green signals.<br />
* This is the activation condition for the Belt (C), which will redirect the input tp the storage array.<br />
* Since items should only be released if the belt starts to clear, the counter (D) is evaluated by the belt (E) which is only activated, if item-count on (D) is smaller than 6 (this number has to be adjusted to personal needs, when the cache should become "active" and release items)<br />
* The layout can be extended to cache whatever amount of items is required. (Some balancing for the release-method would be required ofc.)<br />
<br />
{{clear}}<br />
<br />
== Inserters ==<br />
[[File:LimitItemsPlacedIntoAChest.png|left|400x400px]]<br />
=== Limit items placed into a chest ===<br />
* The [[Basic inserter]] is connected to the [[Wooden chest]] using a [[Red wire]]. <br />
* The inserter's enabled condition is '''Advanced Circuit < 10'''. <br />
* In reality this means the inserter may place more than 10 Advanced circuits in the chest because it could pick up-to 3 at once. <br />
* This effect can be even greater with Stack inserters because of their large carrying capacity. <br />
* This technique still gives far greater control than limiting the inventory on the chest.<br />
{{clear}}<br />
<br />
[[File:SmartOutpostUnloader.png|left|400x400px]]<br />
=== Keeping outpost stocked with specified items ===<br />
* This circuit keeps a [[Storage chest]] at an outpost stocked with customized levels of different items. <br />
* For example you could keep an outpost stocked with 50 laser turrets and 200 piercing magazine rounds but not have to worry about it being over filled. <br />
* The [[storage chest]] is attached to the input of the [[Arithmetic combinator]] (left side in the picture) with a [[Red wire]]. <br />
* Another couple of [[Red wire]]s join the output of the [[Arithmetic combinator]] (right side) to the [[constant combinator]] and to the [[stack filter inserter]]. <br />
* The [[Arithmetic combinator]] '''multiples''' each input value (from the storage chest) by '''-1'''. <br />
* Finally the filter stack inserter's mode of operation is set to '''Set filters'''.<br />
<br /><br />
* So the input to the [[stack filter inserter]] is '''<Constant combinator> - <Storage chest contents>''' and the filter is set to filter the item of greatest demand. <br />
{{clear}}<br />
<br />
<br />
[[File:SolarAccumalatorBalancer.png|left|400x400px]]<br />
<br />
=== Balanced Solar panel / Accumulator Production ===<br />
* This circuit balances production of [[Solar panel]]s and [[Accumulator]]s to a desired ratio in my case 24:20.<br />
* The first [[Arithmetic combinator]] takes the number of accumulators in the chest and '''multiples''' it by '''24'''. <br />
* The second [[Arithmetic combinator]] takes the output of the first combinator and '''divides''' it by '''20'''. <br />
* This gives us the number of accumulators that we can directly compare to the number of Solar panels in both inserters. <br />
* If the number of accumulators is greater we enable the Solar panels inserter, if the number of Solar panels is greater we enable the accumulators inserter. <br />
* However, if they are equal, neither machine does anything. So we add a single accumulator to one of the inserters using a constant combinator and a wire of the other color, therefore breaking the deadlock.<br />
{{clear}}<br />
<br />
== Sushi Belts ==<br />
[[File:SushiScience1.png|left|400x400px]]<br />
=== Reading Belt Design ===<br />
* Six belts in a row are connected with Red wire and set to '''Read belts contents''' and '''Hold''' <br />
* This [[Red wire]] is then connected to the inserters that insert onto the belt. <br />
* Read hand contents is unselected for all inserters.<br />
* Mode of operation is set to '''Enable/Disable''' on all inserters. <br />
* The first inserter is enabled when '''Science pack 1 = 0'''<br />
* The other inserters are set similarly for the other science packs. <br />
{{clear}}<br />
<br />
[[File:SushiScience2.png|left]|400x400px]]<br />
=== Memory Cell Design ===<br />
* This circuit counts the number of items of each type on a looping belt by counting the numbers that are added and removed from the belt by inserters.<br />
* Each inserter that takes items off the belt is connected together with Red wire and each of these inserters is set to '''Mode of operation none, Read hand content selected''' and '''Hand read mode pulse'''. <br />
* These inserters are connected to the input of the left arithmetic combinator. <br />
* The left [[Arithmetic combinator]] multiples '''each''' input by '''-1''' and outputs it to '''each'''. <br />
* The right [[Arithmetic combinator]] is a '''memory cell''' as above.<br />
* The memory cell's input is connected to the inserters that are placing items on the belt and the output of the left [[Arithmetic combinator]]. <br />
* The inserters that place items onto the belt have an enabled condition that is based on the number of items on the belt.<br />
{{clear}}<br />
<br />
== Splitters ==<br />
[[file:CondSplitter.png|left|400x400px]]<br />
=== Conditional splitter ===<br />
* This is the most simple circuit you can have for "controlling" a splitter.<br />
* A signal X=1 is transmitted from off screen when the items need to be sent down the belt.<br />
* The belt on the left is enabled when X=1.<br />
* The belt on the right is enabled when X=0.<br />
* The two belts are wired together and to a pole. <br />
{{clear}}<br />
<br />
[[File:PrioritySplitter.png|left|400x400px]]<br />
=== Priority Splitter ===<br />
* This circuit prioritizes items to the belt going of the screen to the left but will send items straight on if the belt to the left is backed up.<br />
* Its not perfect and will leak some items but its good enough for most applications. <br />
* The balancer means it will work even if the supply or demand is uneven. <br />
<br /><br />
* It is critical that the belts are setup as in this picture otherwise it may not work. <br />
{{clear}}<br />
<br />
== Power ==<br />
[[File:SteamBackup.png|left|400x400px]]<br />
=== Backup steam power ===<br />
* The [[steam engine]]s are not directly connected to the power network. They are connected to the power network through a [[Power switch]]. <br />
* The [[power switch]] is connected to one of the [[accumulator]]s in the main network. <br />
* The [[power switch]] turns on when A < 10. That is when the [[accumulator]]s are less than 10% full.<br />
{{clear}}<br />
<br />
== Latches ==<br />
[[File:SRLatch.png|left|400x400px]]<br />
=== SR latch ===<br />
* This should be familiar to anyone with any background in electronics. <br />
* The signal is set and reset with the [[constant combinator]]s on the left by setting an A=1 signal. <br />
* The latch "remembers" which one was last set and the light stays on until another signal is received.<br />
{{clear}}<br />
<br />
[[File:SRlatchinaction.png|left|400x400px]]<br />
=== Usage of SR latch ===<br />
* Here is an example of how you could use an SR latch.<br />
* The two extra [[Decider combinator]]s provide the set and reset conditions. <br />
* Petroleum gas < 50 and petroleum gas > 100. <br />
{{clear}}<br />
<br />
[[File:BeltLatch.png|left|400x400px]]<br />
=== Belt only latch ===<br />
* This is the most compact latch I am aware of. <br />
* To make it work you need to place '''3''' raw wood on the inside lane of the belt.<br />
* I believe it will have higher latency than the combinator version but in most situations you will not notice the difference. <br />
{{clear}}<br />
<br />
== Displays ==<br />
[[File:5digitDisplay.png|left|400x400px]]<br />
=== Numerical Display ===<br />
* Each digit is driven by its own [[Green wire]], that wire holds 15 signals one for each lamp used in the digit.<br />
* [[Constant combinator]]s are used to define which lamp should light up for each value. <br />
* Blueprint string including decoder [https://www.dropbox.com/s/5o13xuwthalzzfe/Brain2.txt?dl=0]<br />
{{clear}}<br />
<br />
[[File:BWDisplay.png|left|400x400px]]<br />
<br />
=== Black and White Grid Display ===<br />
* Each row has its own [[Red wire]] connection and within that row each light has a numbered signal 0-9.<br />
* We turn each light on by just setting or clearing the relevant signal.<br />
{{clear}}<br />
<br />
[[File:MultiColoredDisplay.png|left|400x400px]]<br />
=== Multicolor Display by DaveMcW ===<br />
* To understand how this works, you first need to understand how color lights choose which color to light up when there are multiple colored signals. <br />
* The [[lamp]] will light up with the colored signal that is greater than zero and earliest in this list: Red, Green, Blue, Yellow, Pink, Cyan, White. <br />
* We have a [[Red wire]] per column, that wire has each of the colored signals on it at different values and a numbered signal for each row. <br />
* There is a [[Arithmetic combinator]] for each cell that subtracts the "row" value from each of the colored signals. <br />
* And this enables us to choose the color for each cell. <br />
* Simple!<br />
{{clear}}<br />
<br />
== See Also ==<br />
* [[Arithmetic combinator]]<br />
* [[Constant Combinator]]<br />
* [[Decider Combinator]]<br />
* [[Circuit network]]</div>Klennarthttps://wiki.factorio.com/index.php?title=Lab&diff=135253Lab2017-03-24T22:25:25Z<p>Klennart: /* Production */</p>
<hr />
<div>{{Languages}}<br />
{{:Lab/infobox}}<br />
<br />
'''Labs''' are buildings that perform [[research]] by consuming [[science packs]]. Use of a lab is required to progress in Factorio.<br />
<br />
==Tips & Tricks==<br />
Labs work fairly slow, so it is a good idea to have multiple labs working at the same time. Twenty labs running at once is the community standard, but more can be used. As a secondary strategy, once one's [[science packs]] production is automated they should try to get as many labs in a row as they can before the labs consume materials too quickly to be used.<br />
<br />
==Production==<br />
Input: [[Electricity]] and [[Science pack]].<br />
<br />
There are four [[Science pack]]:<br />
* [[Science pack 1]]<br />
* [[Science pack 2]]<br />
* [[Science pack 3]]<br />
* [[Alien science pack]]<br />
<br />
Output: [[Research]] points<br />
<br />
You can research one science at the time, buy use many labs for faster results.<br />
<br />
== History ==<br />
<br />
{{history|0.12.6|<br />
* The research speed of a lab is now not dependent on it's electricity consumption, and can be scripted.}}<br />
<br />
{{history|0.12.0|<br />
* Lab research is now continuous; Science packs now have progress bars.}}<br />
<br />
{{history|0.9.2|<br />
* Labs are now named after early access backers when built from [[blueprint]].}}<br />
<br />
{{history|0.7.2|<br />
* Changed the recipe of Lab to require 4 transport belts, down from 5. }}<br />
<br />
{{history|0.6.0|<br />
* New graphics.}}<br />
<br />
{{history|0.2.7|<br />
* Contents of the Lab is now shown in the entity info. }}<br />
<br />
{{history|0.1.0|<br />
* Introduced }}<br />
<br />
==See also==<br />
* [[Electric network]]<br />
* [[Crafting network]]<br />
<br />
{{ProductionNav}}<br />
<br />
[[Category:Items]]<br />
{{C|Electric network}}<br />
{{C|Technology}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Lab&diff=135252Lab2017-03-24T22:24:26Z<p>Klennart: /* Production */</p>
<hr />
<div>{{Languages}}<br />
{{:Lab/infobox}}<br />
<br />
'''Labs''' are buildings that perform [[research]] by consuming [[science packs]]. Use of a lab is required to progress in Factorio.<br />
<br />
==Tips & Tricks==<br />
Labs work fairly slow, so it is a good idea to have multiple labs working at the same time. Twenty labs running at once is the community standard, but more can be used. As a secondary strategy, once one's [[science packs]] production is automated they should try to get as many labs in a row as they can before the labs consume materials too quickly to be used.<br />
<br />
==Production==<br />
Input: [[Electricity]] and [[Science pack]].<br />
<br />
There are four [[Science pack]]:<br />
* [[Science pack 1]]<br />
* [[Science pack 2]]<br />
* [[Science pack 3]]<br />
* [[Alien science pack]]<br />
<br />
Output: Research points<br />
<br />
You can research one science at the time, buy use many labs for faster results.<br />
<br />
== History ==<br />
<br />
{{history|0.12.6|<br />
* The research speed of a lab is now not dependent on it's electricity consumption, and can be scripted.}}<br />
<br />
{{history|0.12.0|<br />
* Lab research is now continuous; Science packs now have progress bars.}}<br />
<br />
{{history|0.9.2|<br />
* Labs are now named after early access backers when built from [[blueprint]].}}<br />
<br />
{{history|0.7.2|<br />
* Changed the recipe of Lab to require 4 transport belts, down from 5. }}<br />
<br />
{{history|0.6.0|<br />
* New graphics.}}<br />
<br />
{{history|0.2.7|<br />
* Contents of the Lab is now shown in the entity info. }}<br />
<br />
{{history|0.1.0|<br />
* Introduced }}<br />
<br />
==See also==<br />
* [[Electric network]]<br />
* [[Crafting network]]<br />
<br />
{{ProductionNav}}<br />
<br />
[[Category:Items]]<br />
{{C|Electric network}}<br />
{{C|Technology}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Lab&diff=135251Lab2017-03-24T22:23:44Z<p>Klennart: /* Production */</p>
<hr />
<div>{{Languages}}<br />
{{:Lab/infobox}}<br />
<br />
'''Labs''' are buildings that perform [[research]] by consuming [[science packs]]. Use of a lab is required to progress in Factorio.<br />
<br />
==Tips & Tricks==<br />
Labs work fairly slow, so it is a good idea to have multiple labs working at the same time. Twenty labs running at once is the community standard, but more can be used. As a secondary strategy, once one's [[science packs]] production is automated they should try to get as many labs in a row as they can before the labs consume materials too quickly to be used.<br />
<br />
==Production==<br />
Input: Electricity and [[Science pack]].<br />
<br />
There are four [[Science pack]]:<br />
* [[Science pack 1]]<br />
* [[Science pack 2]]<br />
* [[Science pack 3]]<br />
* [[Alien science pack]]<br />
<br />
Output: Research points<br />
<br />
You can research one science at the time, buy use many labs for faster results.<br />
<br />
== History ==<br />
<br />
{{history|0.12.6|<br />
* The research speed of a lab is now not dependent on it's electricity consumption, and can be scripted.}}<br />
<br />
{{history|0.12.0|<br />
* Lab research is now continuous; Science packs now have progress bars.}}<br />
<br />
{{history|0.9.2|<br />
* Labs are now named after early access backers when built from [[blueprint]].}}<br />
<br />
{{history|0.7.2|<br />
* Changed the recipe of Lab to require 4 transport belts, down from 5. }}<br />
<br />
{{history|0.6.0|<br />
* New graphics.}}<br />
<br />
{{history|0.2.7|<br />
* Contents of the Lab is now shown in the entity info. }}<br />
<br />
{{history|0.1.0|<br />
* Introduced }}<br />
<br />
==See also==<br />
* [[Electric network]]<br />
* [[Crafting network]]<br />
<br />
{{ProductionNav}}<br />
<br />
[[Category:Items]]<br />
{{C|Electric network}}<br />
{{C|Technology}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Lab&diff=135250Lab2017-03-24T22:23:23Z<p>Klennart: /* Production */</p>
<hr />
<div>{{Languages}}<br />
{{:Lab/infobox}}<br />
<br />
'''Labs''' are buildings that perform [[research]] by consuming [[science packs]]. Use of a lab is required to progress in Factorio.<br />
<br />
==Tips & Tricks==<br />
Labs work fairly slow, so it is a good idea to have multiple labs working at the same time. Twenty labs running at once is the community standard, but more can be used. As a secondary strategy, once one's [[science packs]] production is automated they should try to get as many labs in a row as they can before the labs consume materials too quickly to be used.<br />
<br />
==Production==<br />
Input: Electricity and [[Science pack]].<br />
<br />
There are four [[Science pack]]:<br />
* [[Science pack 1]]<br />
* [[Science pack 2]]<br />
* [[Science pack 3]]<br />
* [[Alien Science pack]]<br />
<br />
Output: Research points<br />
<br />
You can research one science at the time, buy use many labs for faster results.<br />
<br />
== History ==<br />
<br />
{{history|0.12.6|<br />
* The research speed of a lab is now not dependent on it's electricity consumption, and can be scripted.}}<br />
<br />
{{history|0.12.0|<br />
* Lab research is now continuous; Science packs now have progress bars.}}<br />
<br />
{{history|0.9.2|<br />
* Labs are now named after early access backers when built from [[blueprint]].}}<br />
<br />
{{history|0.7.2|<br />
* Changed the recipe of Lab to require 4 transport belts, down from 5. }}<br />
<br />
{{history|0.6.0|<br />
* New graphics.}}<br />
<br />
{{history|0.2.7|<br />
* Contents of the Lab is now shown in the entity info. }}<br />
<br />
{{history|0.1.0|<br />
* Introduced }}<br />
<br />
==See also==<br />
* [[Electric network]]<br />
* [[Crafting network]]<br />
<br />
{{ProductionNav}}<br />
<br />
[[Category:Items]]<br />
{{C|Electric network}}<br />
{{C|Technology}}</div>Klennarthttps://wiki.factorio.com/index.php?title=Lab&diff=135249Lab2017-03-24T22:19:36Z<p>Klennart: /* Tips & Tricks */</p>
<hr />
<div>{{Languages}}<br />
{{:Lab/infobox}}<br />
<br />
'''Labs''' are buildings that perform [[research]] by consuming [[science packs]]. Use of a lab is required to progress in Factorio.<br />
<br />
==Tips & Tricks==<br />
Labs work fairly slow, so it is a good idea to have multiple labs working at the same time. Twenty labs running at once is the community standard, but more can be used. As a secondary strategy, once one's [[science packs]] production is automated they should try to get as many labs in a row as they can before the labs consume materials too quickly to be used.<br />
<br />
==Production==<br />
Input: Electricity and Science pack<br />
<br />
Output: Research points<br />
<br />
Boy can research one science at the time, buy use many labs for faster results.<br />
<br />
== History ==<br />
<br />
{{history|0.12.6|<br />
* The research speed of a lab is now not dependent on it's electricity consumption, and can be scripted.}}<br />
<br />
{{history|0.12.0|<br />
* Lab research is now continuous; Science packs now have progress bars.}}<br />
<br />
{{history|0.9.2|<br />
* Labs are now named after early access backers when built from [[blueprint]].}}<br />
<br />
{{history|0.7.2|<br />
* Changed the recipe of Lab to require 4 transport belts, down from 5. }}<br />
<br />
{{history|0.6.0|<br />
* New graphics.}}<br />
<br />
{{history|0.2.7|<br />
* Contents of the Lab is now shown in the entity info. }}<br />
<br />
{{history|0.1.0|<br />
* Introduced }}<br />
<br />
==See also==<br />
* [[Electric network]]<br />
* [[Crafting network]]<br />
<br />
{{ProductionNav}}<br />
<br />
[[Category:Items]]<br />
{{C|Electric network}}<br />
{{C|Technology}}</div>Klennart