All the different ways to increase the efficiency of a nuclear power plant

Power Plants, Energy Storage and Reliable Energy Supply. All about efficient energy production. Turning parts of your factory off. Reliable and self-repairing energy.
mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by mrvn »

Tertius wrote:
Mon Sep 20, 2021 2:59 pm
mrvn wrote:
Mon Sep 20, 2021 1:37 pm
Yes, I pulled all my hair off while trying to balance the steam level in all the tanks. Impossible with that approach of having large turbine fields, so I added some more tanks than necessary. But gradual failing of turbines is not fatal, since it only comes to this if the power requirement is below 100%, and in this case not every turbine is required anyway. The reactors are re-heated soon enough before a brownout due to the steam level threshold kicking in.

In stress tests, I went from 0 to 100 and from 100 to 0 and all in between for the 2x6 plant, and I was not able to provoke a brownout. I was satisfied with that, so I didn't look further if it is possible to reduce a few tanks. Experience has shown, this is only possible with vastly increasing complexity (more wiring, circuits, pumps, pipes, more ground) that eat up a possible benefit.
It's quite impossible to balance it. For starters the heat levels aren't balanced since the corner reactors put out less heat. But they conduct heat from the inside reactors. So in effect they just add a little distance to the heat source. And turbines are at different distances from the reactors. Heat falls of as it moves through the heat pipes and is used up. So steam generation itself already isn't balanced. You would have to balance filling each steam tank with a pump wasting a lot of energy for no gain.
Tertius wrote:
Mon Sep 20, 2021 2:59 pm
As far as I see it, you can see your solar panel plant as blackbox (includes accumulators for buffer) and your nuclear plant (includes steam tanks for buffer). Arrange wiring and switching between these blackboxes.
  1. provide power from the solar power plant
  2. the solar power plant handles charging/discharging its accumulators internally according to external energy demand
  3. If demand is higher than the solar power plant is able to provide, provide power from the nuclear power plant by switching it on
  4. the nuclear power plant handles filling/emptying its steam tanks internally according to external energy demand
  5. if demand is again less than the solar power plant is able to provide, switch the nuclear power plant off. Surplus heat is going into its steam buffers.
This switching on/off of the nuclear power plant can be done by an independent circuit. It's not necessary (as far as I see) to reach into the internal workings of the respective power plant. Since energy and heat storage is lossless, it doesn't matter how long and how much steam is stored in a currently inactive nuclear power plant.

One criteria of "the solar power plant is able to provide enough energy" is actually "accumulator charge is above <threshold>". I see it's a challenge to determine the other criteria if the accumulator charge is below threshold but energy demand is lower than the solar panels are able to provide on their own. If this isn't properly computed, the nuclear plant would be never switched off again, or its power would be misused to charge the accumulators. There are no power diodes available for the energy network, are they?
That's what I thought at first too. A solar farm with panels and accumulators is just another energy generator. But that doesn't work out well. The problem is that accumulators get filled by nuclear power. So every time you connect the nuclear plant to the solar plant the nuclear reactor will shoot straight up to 100% and refill the accumulators. That is usually not what you want and a big waste. Makes the accumulators 100% pointless because they will never be charged by solar cells and buffering nuclear power in accumulators is less efficient than steam tanks or heat pipes.

So for efficient use you have to split the solar plant into separate units: The solar panels and the accumulators. You can always leave the solar cells on the power grid, the game mechanics regulate them. But the accumulators you have to control with power switches if you want them to be charged only be solar energy.

I think for the ultimate control for solar panels, accumulators and nuclear (or steam engines, same problem) you have to measure steam consumption to know when solar cells provide enough energy and you can start charging accumulators. And you have to use the accumulator level to detect when the solar cells aren't sufficient. Either method alone is not sufficient as far as I can see.

But as you say that doesn't affect the refueling of the nuclear reactors. As you can see in my screenshot the daylight detection and power switches (black box) are completely separate from the reactor itself. The external switching just increases efficiency by reducing the usage of nuclear power.

Tertius
Filter Inserter
Filter Inserter
Posts: 905
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by Tertius »

I understand now why it's necessary to separate the solar panels from the accumulators, and now I understand the left part of your power plant.
However, I have no idea how to find out directly if the solar panel production is higher than the energy demand to connect the accumulators and at the same time disconnect the nuclear power.

Wild idea for measuring power demand and supply:
Disconnect solar panels and nuclear plant and connect accumulators for 1 tick, then reconnect plants and disconnect accumulators. Measure charge level of the accumulators before and after (must start with a reasonable amount of charge, of course)
Power demand (1 tick) = accumulator capacity * accumulator charge * (level before - level after)/100

Solar power production can be measured the same, by charging a different, separate accumulator for this 1 tick.
Solar power production (1 tick) = accumulator capacity * accumulator change * (level after - level before)/100

Both values could be compared and used for a latch, which could be used for the power switch entity.

mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by mrvn »

When the accumulators are charged you can watch if their level drops.

But once you have disconnected them you need to check if you can reconnect them. If you just connect solar panels and accumulators but no nuclear power and the solar panels are insufficient then the accumulators will drop. Do that a few times and they will be at 0 charge and you get a brownout or even blackout at night. So that doesn't work.

To see if the solar panels produce sufficient energy you can connect a turbine or steam engine to the power network with a steam tank and watch if the steam level drops. As soon as the steam level remains steady for some ticks (I would give it a few seconds) you can disconnect the nuclear power and connect the accumulators.

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by foamy »

xaetral wrote:
Sat Sep 18, 2021 8:07 pm
5. Side Channel Power Production Monitoring
That's actually my favourite, what lies behind that bit of a cryptic name is actually quite simple.
If you have a steam turbine or a steam engine on the same power grid as others, they will all be used equally the same (in percentage).
So if on your power grid you have many steam turbine and a single steam engine, you can get how much steam has been produced (like the 4th automation, steam flow) by simply counting how many fuel items has been inserted in the burner making steam for that steam engine.

You got it, the downsides are the need for an external ressource (although a single depleted oil well is enough to make all the solid fuel you need) and you can't add any other steam turbine or steam engine without fucking the system up (which is ok if your factory is well planned).
Not tested but adding solar panels or accumulators should not interfere at all.
On another hand, it requires no storage tank, it doesn't take too much space and is very suitable for 2xN setups.
You can also measure the steam directly for that with a flow monitor. Needs two tanks and two pumps. Boiler or heat exchanger feeds a reservoir tank, which is drawn on by a pump that feeds a measurement tank, which is drained by a second pump. The only purpose of the pumps is to ensure that the measurement tank is only ever doing one thing at a time, to avoid confusing measurements. Since a pump's flow rate tank-to-tank is approximately 200 units per tick, and a turbine on maximum flow will only consume 1 unit per tick, the internal buffer of a turbine is more than adequate to cover the occasional ticks where the measuring tank is refilled. It will then recover as soon as the output pump reactivates, without loss of information to the circuitry about how much steam's been consumed.

While this is a bit more complex than just feeding solid fuel into a boiler, it's a more precise and responsive measure of exactly how much power is being consumed.

This side-channel system is also noteworthy in that it need not be anywhere near the main reactor plant and can in fact control any number of reactor complexes, provided only that the steam consumption signals are available.


A side point: You can create a self-starting, one-cell-at-a-time, override-capable automation for a nuclear plant using exactly one arithmetic combinator, set to subtract used fuel cells from fresh fuel cells and output the result as on the fresh fuel cell signal. Wire input to output to the input inserter of a reactor, which is set to activate only if all signals are 0 and to do a pulse-read of its hand contents (with stack size limited to 1). Wire the other input of the combinator to the output inserter for the reactor, which is set to pulse-read hand contents (again, limited stack size to 1). This will ensure only one cell at a time is ever inserted into the reactor and will self-boot. You can then daisychain the control signal from the input inserter of the clock reactor to all the other input inserters, so they will act in synchronicity, and you can also attach other 'do not insert' signals to that same wire, e.g. any of the schemes suggested above. It technically cannot run a reactor at actual full capacity, since there's the time of an inserter swing to account for, but if your reactor is bottlenecked by that you should've built another one ages ago.

User avatar
Impatient
Filter Inserter
Filter Inserter
Posts: 883
Joined: Sun Mar 20, 2016 2:51 am
Contact:

Re: All the different ways to automate a nuclear power plant

Post by Impatient »

eradicator wrote:
Sat Sep 18, 2021 10:56 pm
You're forgetting heat pipes and unfuled reactors as a heat-storage method. They are lossless but not directly measurable. Personally I've never seen a large scale design using this approach but I'm sure they must be out there.
...
It is because the math says, that reactors are incredibly eypensive to store energy and need a huge area compared to storage tanks with steam. I am pretty sure, there aren't any out there, except for lols. Modders made heat storage units though.

User avatar
Khagan
Fast Inserter
Fast Inserter
Posts: 248
Joined: Mon Mar 25, 2019 9:40 pm
Contact:

Re: All the different ways to automate a nuclear power plant

Post by Khagan »

Impatient wrote:
Sat Sep 25, 2021 6:49 am
eradicator wrote:
Sat Sep 18, 2021 10:56 pm
You're forgetting heat pipes and unfuled reactors as a heat-storage method. They are lossless but not directly measurable. Personally I've never seen a large scale design using this approach but I'm sure they must be out there.
...
It is because the math says, that reactors are incredibly eypensive to store energy and need a huge area compared to storage tanks with steam.
Reactors are indeed very expensive, but only need a slightly larger area than steam tanks, with a storage density of 0.20 GJ/tile vs 0.27 GJ/tile. Heat pipes are moderately expensive, but need the least area (0.50 GJ/tile).

mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to automate a nuclear power plant

Post by mrvn »

Khagan wrote:
Sat Sep 25, 2021 10:23 am
Impatient wrote:
Sat Sep 25, 2021 6:49 am
eradicator wrote:
Sat Sep 18, 2021 10:56 pm
You're forgetting heat pipes and unfuled reactors as a heat-storage method. They are lossless but not directly measurable. Personally I've never seen a large scale design using this approach but I'm sure they must be out there.
...
It is because the math says, that reactors are incredibly eypensive to store energy and need a huge area compared to storage tanks with steam.
Reactors are indeed very expensive, but only need a slightly larger area than steam tanks, with a storage density of 0.20 GJ/tile vs 0.27 GJ/tile. Heat pipes are moderately expensive, but need the least area (0.50 GJ/tile).
Wasn't the point of unpowered reactors the heat conductivity and not the heat capacity? It's like underground pipes vs. pipes.

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: All the different ways to automate a nuclear power plant

Post by foamy »

mrvn wrote:
Sat Sep 25, 2021 4:08 pm
Khagan wrote:
Sat Sep 25, 2021 10:23 am
Impatient wrote:
Sat Sep 25, 2021 6:49 am
eradicator wrote:
Sat Sep 18, 2021 10:56 pm
You're forgetting heat pipes and unfuled reactors as a heat-storage method. They are lossless but not directly measurable. Personally I've never seen a large scale design using this approach but I'm sure they must be out there.
...
It is because the math says, that reactors are incredibly eypensive to store energy and need a huge area compared to storage tanks with steam.
Reactors are indeed very expensive, but only need a slightly larger area than steam tanks, with a storage density of 0.20 GJ/tile vs 0.27 GJ/tile. Heat pipes are moderately expensive, but need the least area (0.50 GJ/tile).
Wasn't the point of unpowered reactors the heat conductivity and not the heat capacity? It's like underground pipes vs. pipes.
That's my understanding -- they only count as one tile for that purpose, so you can use them to distribute to a longer line of exchangers. Although I'd think you'd then start to have issues with fluid flow.

quyxkh
Smart Inserter
Smart Inserter
Posts: 1031
Joined: Sun May 08, 2016 9:01 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by quyxkh »

Really, a 1km² accumulator buffer is a quarter million accumulators, 56×56 substations. Sure it's big, but you can put it anywhere, it's purely fire-and-forget. It's also cheap, and it'll supply a 3GW deficit for a full game day, so you can build a new always-on 1GW nuc plant at your leisure whenever you notice any accumulator anywhere isn't full at sundown with all kinds of safety margin. Size your (now pure-panel) solar farms to taste.

mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by mrvn »

quyxkh wrote:
Sat Sep 25, 2021 5:22 pm
Really, a 1km² accumulator buffer is a quarter million accumulators, 56×56 substations. Sure it's big, but you can put it anywhere, it's purely fire-and-forget. It's also cheap, and it'll supply a 3GW deficit for a full game day, so you can build a new always-on 1GW nuc plant at your leisure whenever you notice any accumulator anywhere isn't full at sundown with all kinds of safety margin. Size your (now pure-panel) solar farms to taste.
Or I can build a 100x100 nuclear reactor at a fraction of the cost for 3GW as long as the fuel lasts.

What is your point?

quyxkh
Smart Inserter
Smart Inserter
Posts: 1031
Joined: Sun May 08, 2016 9:01 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by quyxkh »

mrvn wrote:
Sat Sep 25, 2021 11:14 pm
quyxkh wrote:
Sat Sep 25, 2021 5:22 pm
Really, a 1km² accumulator buffer is a quarter million accumulators, 56×56 substations. Sure it's big, but you can put it anywhere, it's purely fire-and-forget. It's also cheap, and it'll supply a 3GW deficit for a full game day, so you can build a new always-on 1GW nuc plant at your leisure whenever you notice any accumulator anywhere isn't full at sundown with all kinds of safety margin. Size your (now pure-panel) solar farms to taste.
Or I can build a 100x100 nuclear reactor at a fraction of the cost for 3GW as long as the fuel lasts.

What is your point?
Well, I had thought fire-and-forget, cheap, dirt simple to build, zero running cost unlike all competitors and built-in days and days of need-to-build-more-nucs-soon notice was enough of a point.

mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by mrvn »

quyxkh wrote:
Sun Sep 26, 2021 1:21 am
mrvn wrote:
Sat Sep 25, 2021 11:14 pm
quyxkh wrote:
Sat Sep 25, 2021 5:22 pm
Really, a 1km² accumulator buffer is a quarter million accumulators, 56×56 substations. Sure it's big, but you can put it anywhere, it's purely fire-and-forget. It's also cheap, and it'll supply a 3GW deficit for a full game day, so you can build a new always-on 1GW nuc plant at your leisure whenever you notice any accumulator anywhere isn't full at sundown with all kinds of safety margin. Size your (now pure-panel) solar farms to taste.
Or I can build a 100x100 nuclear reactor at a fraction of the cost for 3GW as long as the fuel lasts.

What is your point?
Well, I had thought fire-and-forget, cheap, dirt simple to build, zero running cost unlike all competitors and built-in days and days of need-to-build-more-nucs-soon notice was enough of a point.
No, that in no way makes a nuclear reactor more efficient.

quyxkh
Smart Inserter
Smart Inserter
Posts: 1031
Joined: Sun May 08, 2016 9:01 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by quyxkh »

Well, I'll stick with my definition, where the power and UPS used to operate and control and buffer the reactor plant count against its efficiency.

User avatar
xaetral
Long Handed Inserter
Long Handed Inserter
Posts: 50
Joined: Sun Apr 28, 2019 2:25 pm
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by xaetral »

foamy wrote:
Fri Sep 24, 2021 10:26 pm

You can also measure the steam directly for that with a flow monitor. Needs two tanks and two pumps. Boiler or heat exchanger feeds a reservoir tank, which is drawn on by a pump that feeds a measurement tank, which is drained by a second pump. The only purpose of the pumps is to ensure that the measurement tank is only ever doing one thing at a time, to avoid confusing measurements. Since a pump's flow rate tank-to-tank is approximately 200 units per tick, and a turbine on maximum flow will only consume 1 unit per tick, the internal buffer of a turbine is more than adequate to cover the occasional ticks where the measuring tank is refilled. It will then recover as soon as the output pump reactivates, without loss of information to the circuitry about how much steam's been consumed.

While this is a bit more complex than just feeding solid fuel into a boiler, it's a more precise and responsive measure of exactly how much power is being consumed.
This is what the n°3 is.
And it is not better than measuring solid fuel: here you need around 15 fuel cells to trigger the cell insertion while you would need like 3 tank filling/emptying cycles to trigger, so n°5 is around 5 times more accurate than n°3 (ofc you may add some combinators to have a more continuous measurement but it would be insanely big and complicated).
also n°3 needs stuff per reactor, while n°5 needs stuff per power plant (or as you mentionned, per electric network).

User avatar
xaetral
Long Handed Inserter
Long Handed Inserter
Posts: 50
Joined: Sun Apr 28, 2019 2:25 pm
Contact:

Re: All the different ways to automate a nuclear power plant

Post by xaetral »

Impatient wrote:
Sat Sep 25, 2021 6:49 am
eradicator wrote:
Sat Sep 18, 2021 10:56 pm
You're forgetting heat pipes and unfuled reactors as a heat-storage method. They are lossless but not directly measurable. Personally I've never seen a large scale design using this approach but I'm sure they must be out there.
...
It is because the math says, that reactors are incredibly eypensive to store energy and need a huge area compared to storage tanks with steam. I am pretty sure, there aren't any out there, except for lols. Modders made heat storage units though.
Also reactors store 200MJ/tile while heatpipes store 500MJ/tile, am I right?
And a steam tank stores around 270MJ/tile so it should be better to use heatpipes.


User avatar
xaetral
Long Handed Inserter
Long Handed Inserter
Posts: 50
Joined: Sun Apr 28, 2019 2:25 pm
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by xaetral »

disentius wrote:
Mon Sep 27, 2021 11:40 am
Doesn't work quite like that:
https://wiki.factorio.com/Heat_pipe
Ah, indeed, tho 400 chained heatpipes would still result in a heat capacity of 300MJ/tile (first one 500, last one 100), which totals to 120GJ and that's only on one dimention.
Well, only if you draw power where you produce it, otherwise that's like 300MJ/tile with a length of 200 heatpipes, which is still a fair amount (60GJ).

mrvn
Smart Inserter
Smart Inserter
Posts: 5797
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by mrvn »

xaetral wrote:
Mon Sep 27, 2021 12:31 pm
disentius wrote:
Mon Sep 27, 2021 11:40 am
Doesn't work quite like that:
https://wiki.factorio.com/Heat_pipe
Ah, indeed, tho 400 chained heatpipes would still result in a heat capacity of 300MJ/tile (first one 500, last one 100), which totals to 120GJ and that's only on one dimention.
Well, only if you draw power where you produce it, otherwise that's like 300MJ/tile with a length of 200 heatpipes, which is still a fair amount (60GJ).
If you draw power where you produce it then you are wrong. The reactor needs to be 1000° to get the last heat pipe to 600°. And then you have to get the reactor down to 200° before the last heat pipe releases it's energy again. Which you can't because the heat exchangers start working at 500° only. You have to draw power at the end of the line to get the energy out of the last heatpipe.

And if you draw the energy only at the end then the reactor can't get below 900°. Every one of the heatpipes will have only a 100° range. So it's 100MJ/tile, not 300MJ/tile. Actually in that setup, reactor at one end, heat exchanger at the other, the heat capacity per tile falls the longer the chain with 500 tiles having 0 heat capacity. Optimal length would be 22.36 tiles I think.

Real setups have have heat exchangers along the way. But if the last one falls below 500° the generated steam drops off. So if you only care about full power then you have to model it only till the furthest heat exchanger stops. The closer you can get the heat exchangers to the reactor the more range the heatpipes can use.

Now my question is: Does it make sense to extend the heatpipes past the heat exchangers?

Lets look at it with just one heat exchangers and the above 400 chained heat pipes. At the end it can lower every heat pipe by 100°. But lets put it 100 tiles from the end. Now it can lower the first 300 heatpipes by 200° and the rest between 200° and 0°. Any closer through and it can't lower the end of the chain at all and some length will be wasted. So what's the optimal position for just one heat exchanger and how long a chain of heatpipes to get the maximum heat capacity? That's still simple math but I'm all mathed out now so I leave that as homework. :)

Can someone show proof what the optimal number and placement for heat exchangers is? Assume a tileable setup, i.e. an infinite reactor.

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by foamy »

xaetral wrote:
Mon Sep 27, 2021 8:22 am
This is what the n°3 is.
And it is not better than measuring solid fuel: here you need around 15 fuel cells to trigger the cell insertion while you would need like 3 tank filling/emptying cycles to trigger, so n°5 is around 5 times more accurate than n°3 (ofc you may add some combinators to have a more continuous measurement but it would be insanely big and complicated).
also n°3 needs stuff per reactor, while n°5 needs stuff per power plant (or as you mentionned, per electric network).

You misunderstand. I'm talking about measuring the flow of the *steam* in #5, instead of the inputs. I thought that was clear given the mention of boilers and my specific quoting of #5, and the fact that I reference the other properties of #5. Don't get confused by the word 'steam' into thinking I'm talking about measuring the steam levels (or flows) in the main reactors.

I have a post about doing so from August of last year: viewtopic.php?f=193&t=87694.

One unit of nuclear steam in a turbine represents 97kJ and is an effectively un-buffered measurement, and it responds with tick-level speed. Meanwhile, even if the inserter to a boiler is hand-limited to 1, each unit of solid fuel represents 12MJ. A boiler's minimum measurement interval is therefore ~6.67 seconds under full load, and potentially significantly longer if the power draw on your plant is less that full.

Another option with flow measure is that you can use a pilot nuclear plant instead a boiler one, which simplifies the inbound logistics somewhat. You can also use it on a boiler system as well, of course; the math needed downstream doesn't even change.

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: All the different ways to increase the efficiency of a nuclear power plant

Post by foamy »

mrvn wrote:
Mon Sep 27, 2021 3:31 pm
Can someone show proof what the optimal number and placement for heat exchangers is? Assume a tileable setup, i.e. an infinite reactor.
I don't have math, but what I did with my 2xN layout was to have every single tile not strictly being used for something else (fuel in/out & power supply) be a heat pipe. Because of the tiling requirements I needed a horizontal bus *anyway*, and I simply made that one tile wider than needed in order to gain a lot of buffer capacity without a major lengthening of the heat exchanger rows.

Images here: viewtopic.php?f=208&t=87432&p=504270#p504270

Post Reply

Return to “Energy Production”