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.
Post Reply
User avatar
xaetral
Inserter
Inserter
Posts: 26
Joined: Sun Apr 28, 2019 2:25 pm
Contact:

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

Post by xaetral »

You know the thing about nuclear power, reactor burns fuel to heat up and continues to do so even at max temperature (1000°C), thus wasting fuel.

But how many different techniques can overcome this problem? 1? 2?
I know 5 of them for now, let's discuss a bit about them.

As a reminder, the reactor turns the fuel item into heat which is stored into reactors and heatpipes.
The heat is turned into steam in the heat exchanger, that steam is stored into pipes and turbines but they can also be stored in tanks.
The steam turbines are then making electricity from that steam.

Also I assumed everyone already knew this but:
The fuel cells must be inserted at the same time if you have multiple reactors so you maximise the neighbor bonus.
The cells also must be inserted one by one to allow for these automation systems.

1. Steam Level
This is currently the most popular, you just store some steam in storage tanks and add cells when the steam level is too low.
There are two main things to consider in this setup:
- the minimum amount of steam that can be used to continue producing power between the moment the cell is inserted in the reactor and the moment the steam level stops falling (this value can be found by looking at how much steam dips under an arbitrary threshold value with the power plant running at 100%)
- the maximum amount of steam that the reactor will produce with a single cell (this value can be found by looking how much steam is rising above the threshold value with the power plant running at 0%)

This setup is quite easy to understand and thus works well for small power plants (1 to 4 reactors) its downside being that it requires a lot of storage tanks.

Image

2. Steam Production
To be clear I'm talking here about detecting if steam is produced or not, as a boolean.
In order to do that, you take the furthest heat exchanger, and plug it to a pump, then a tank then another pump before going into the rest of the system.
The first pump is only here to prevent the tank from being filled too much, so the automation stays nice and reactive.
The second pump is setup so it never empties too much.
Now if the tank is low (second pump is disabled) that means the heat exchanger is cold, so a new cell must be inserted.

This automation is a bit hard to setup, but it has the advantage of requiring only one tank for the whole power plant.
So it's really nice for power plants with a fixed amount of reactors.

Image

3. Steam Flow
In theory, when you put a fuel cell in a reactor, it will produce a very accurate amount of steam (without reactor bonuses it's around 82474 steam per fuel cell).
Well, in practice this is also the case.
And a way to measure the amount of steam produced is to fill a tank completely, then emptying before filling it again, thus making exact steps of 25400 fluid (a pump holds 400 units on its output).
Note that due to floating point rounding it might be between 25400 and 25399 but only if the flowrate is less than 60 fluid per second, and it's still insanely accurate so that's fine.
You can also fill a tank while you empty another, making the throughput much higher and constant.

This automation is very complex but is tileable and require much less tanks than the steam level automation.
So it works well for 2xN setups.

Image

4. Honorable Mention: Accumulator Level Monitoring
Aka the most impractical solution of all.
It technically works, just like steam level automation except you measure electric charge level.
How bad it is? Well you need more than 500 accumulators per reactor on a 2xN setup (the bottleneck being power throughput and not power capacity).

So yeah, don't use this.

Image

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 3rd 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.

Image

TL;DR
Here's a quick summary of all these kind of automation:
Image


I was only planning to discuss about these but I can provide blueprints, saves and detailed setup tutorials if you want so.

The factory must grow.
Last edited by xaetral on Mon Nov 08, 2021 9:24 am, edited 4 times in total.

User avatar
eradicator
Smart Inserter
Smart Inserter
Posts: 5201
Joined: Tue Jul 12, 2016 9:03 am
Contact:

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

Post by eradicator »

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.

(Also when optimizing for UPS accumulators are actually better than steam tanks. Though when optimizing for UPS not building complicated control circuits is even better so this is more of an "honorable mention" as the topic doesn't seem to want to be another UPS topic (aka fuel control vs no fuel control).)
Author of: Belt Planner, Hand Crank Generator, Screenshot Maker, /sudo and more.
Mod support languages: 日本語, Deutsch, English
My code in the post above is dedicated to the public domain under CC0.

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

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

Post by mrvn »

I'm not sure what your 4th method is but I'm doing Accumulator Level Monitoring differently.

I have solar panels with accumulators in the usual setup. So during the day the accumulators charge from solar and and night they discharge. Now comes the nuclear power plant and ruins it all. Now at night the nuclear power is used and the accumulators are wasted. So the nuclear power plant has to monitor the accumulator level to know when to switch on. Best way for this is to have pumps before the turbines that activate when the accumulators are low. All you need for that is 1 accumulator next to the power plant, not 500 accumulators per reactor.


I think the problem you have that you need 500 accumulators per reactor is that you have no steam tank at all. So in your setup when the heat exchangers run out of heat the turbines run out of steam and only then the accumulators are starting to drop. So you insert fuel but then it takes a while for heat to build back up. You need those 500 accumulators to cover the time till new steam is produced.

Now instead of using the accumulators use a tank to store steam with 2 pumps like in method 2 but connected to all heat echangers. Control the pumps with an accumulator and a timer. When the accumulator goes low you enable the pump that empties the tank and shut down the pump filling the tank and you start the timer. After say 90 seconds (half fuel seems like a good point in time) you reset, turn on the pump filling the tank and shut down the pump emptying the tank.

Reactor control is more complex
You forgot a few key points when controlling your reactor:
  • Larger reactors should be fueled all simultaneous. So you should check that each reactor has a fuel cell ready to go in. If your fuel production is too slow and you only fill a few reactors then you loose the neighbour bonus and you go into a death spiral with each cycle producing less energy so less fuel.
  • Only put in one fuel cell at a time. So set the stack override in the inserters to 1.
  • In your setups the refueling can trigger while the reactor is still running.
I don't control the fueling of the reactor using steam or accumulators but rather I have one reactor that is designated as master. For the master the inserter removing the spend fuel cell is controlled by whatever method you prefer. That one inserter is set to read hand content and is connected to all the inserters for refueling the reactors. Those are set to enabled when spend-fuel-cell > 0. That way the reactors can not be refueled before the previous fuel cell was spend.

If you build your reactor full out with the maximum number of heat exchangers and turbines then the rate steam is used gets quite high. Buffering enough steam can be a problem taking up too much space. If you want to minimize the number of tanks needed you run into the problem that during high power draws you run out of steam while during low power draws you refuel too early and overheat. A few years back someone had a post with a circuit that monitored the rate of steam usage, estimating how long the remaining steam would last and how much surplus steam the next fuel cell you produce and used both of those to refuel midpoint between running out of steam and overheating.

GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 426
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

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

Post by GrumpyJoe »

eradicator wrote:
Sat Sep 18, 2021 10:56 pm

aka fuel control vs NO fuel control
I don't think the latter is exclusively
about UPS.

I always found this topic quite interesting, but in the end, I'm always going for the "why bother approach"

Unless you have a very complicated chain of production (aka non vanilla nuclear fuel) IMHO it's not worth the trouble.
If you like circuit puzzles, there are other opportunities.

Don't wanna derail this, but no control deserves an honorable mention

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

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

Post by xaetral »

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.
I've totally taken that into account actually, the 1st one (steam level) has only one storage tank because of that (instead of 4 because as mentioned, 1 fuel cell produces around 82k steam).
It's not an automation system, it just affects them.

mrvn wrote:
Sun Sep 19, 2021 3:08 am
I think the problem you have that you need 500 accumulators per reactor is that you have no steam tank at all. So in your setup when the heat exchangers run out of heat the turbines run out of steam and only then the accumulators are starting to drop. So you insert fuel but then it takes a while for heat to build back up. You need those 500 accumulators to cover the time till new steam is produced.

Now instead of using the accumulators use a tank to store steam with 2 pumps like in method 2 but connected to all heat echangers. Control the pumps with an accumulator and a timer. When the accumulator goes low you enable the pump that empties the tank and shut down the pump filling the tank and you start the timer. After say 90 seconds (half fuel seems like a good point in time) you reset, turn on the pump filling the tank and shut down the pump emptying the tank.
This is very smart but sadly it won't work. It would really decrease the amount of electric capacity needed but as I mentioned, the bottleneck is not the capacity but rather the throughput of the accumulators, you will have to power your entire factory only using accumulators during the time the capacity gets from 100% to 99%, then during the time it takes for your stored steam to flow back to aaaall your steam turbines.
Nice try though :p

mrvn wrote:
Sun Sep 19, 2021 3:08 am
You forgot a few key points when controlling your reactor:
  • Larger reactors should be fueled all simultaneous. So you should check that each reactor has a fuel cell ready to go in. If your fuel production is too slow and you only fill a few reactors then you loose the neighbour bonus and you go into a death spiral with each cycle producing less energy so less fuel.
  • Only put in one fuel cell at a time. So set the stack override in the inserters to 1.
  • In your setups the refueling can trigger while the reactor is still running.
I just assumed everyone knew about this before reading the topic.
You're referring to n°3 and n°5, right? Good job noticing it but it is actually made on purpose.
You see, they are both using an error dithering circuit, which basically means they will almost always be a bit late or a bit early, thus meaning that if the reactor runs near full capacity, a fuel cell might be inserted while the current one hasn't finished burning but this is the behavior you want because as the error dithers through the cycles, on average the error will be 0.
Even in the impossible scenario that it adds to much cells, it would be eaten away when the reactor reaches 1000°C (but again, that will never happen, the feed signal is during only 2 ticks).

GrumpyJoe wrote:
Sun Sep 19, 2021 6:00 am
I always found this topic quite interesting, but in the end, I'm always going for the "why bother approach"

Unless you have a very complicated chain of production (aka non vanilla nuclear fuel) IMHO it's not worth the trouble.
If you like circuit puzzles, there are other opportunities.

Don't wanna derail this, but no control deserves an honorable mention
I completely agree on that, uranium is literally free, the fuel cell usage is extremely low, no control is a valid option.
But in the mean time this is exactly why I love this game, I enjoy designing (and over-engineering) stuff, just like doing sushi belts, it's not that useful but it's very pleasant to design.
So feel free to not use any of the design I described here, as long as you're playing the game the way it gives you the most satisfaction :D

mmmPI
Filter Inserter
Filter Inserter
Posts: 839
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

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

Post by mmmPI »

xaetral wrote:
Sat Sep 18, 2021 8:07 pm
You know the thing about nuclear power, reactor burns fuel to heat up and continues to do so even at max temperature (1000°C), thus wasting fuel.

But how many different techniques can overcome this problem? 1? 2?
I know 5 of them for now, let's discuss a bit about them.
"All the different ways to prevent wasting fuel in a nuclear power plant" would be a more accurate description !

Even more precise maybe: "[self-regulated] ways to prevent ...." since your design are, but maybe you want to open up discussion to weirder methods:

I tried only once for a specific scenario a 2x3 or 2x4 nuke plant (memories sorry ), designed thinking that it takes 200 sec to burn a cell no matter the adjacency, i timed the used-fuel-cell extraction with a clock where i could modify easily the timing, and used the extracting inserter, to trigger the refuel at the same time.

The energy was stored in heat pipes. 1 uranium fuel cell is 8 GJ (factor in adjacency here), 1 heat pipes can store 500 MJ (1 MJ/°C but only from 500°C to 1000°C in this context) and a reactor 5 GJ with the same range of temperature.

The used-fuel was kept sitting in the reactor until an arbitrary clock signal was received which prevented any insertion of fuel.

It's not self regulated like OP's , you need to adjust manually, if your consumption is 75% of the maximum theoric output for long period (3/4), you need to set the clock to 200sec + (4/3)*200 .
[Edited with correct value]


Does that count as automated way to nuclear power plant :) ?
Last edited by mmmPI on Thu Oct 14, 2021 5:26 pm, edited 1 time in total.

Tertius
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

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

Post by Tertius »

The "why bother" approach is very interesting because of its simplicity, but on the other hand, I do bother. It's a decision I made. It's a challenge to never waste fuel, and at the same time always provide the requested amount of energy. And it's not very difficult to create circuits for perfect refuel, so the cost of bothering is not high.

If we discuss the proposed designs, I miss one important thing: All these designs except one and almost all designs I see in blueprints all over the world are made for almost constant energy consumption. They assume it's possible to predict consumption, so they can only follow slowly rising or slowly falling energy consumption, but they are not able to accommodate to a factory suddenly requiring no power at all for a given time. Or to suddenly require 100% energy. And all that in the worst possible moment, i. e. dropping to 0% right after a new fuel cell was inserted, or going to 100% after the reactors and heat pipes cooled down to 500°C because steam buffers provided steam for a longer time.

Since you cannot predict energy consumption, you need to go for steam storage on top of the heat storage of reactor+heat pipes. So the only solution for the above challenge I see is a solution controlled by the steam level - this is design 1. Minimum steam capacity has to ensure reactors(+heat pipes) don't reach 1000°C after a new cell was just inserted but energy consumption drops to 0 at the same time.
And it has to have enough capacity to provide enough steam to allow the reactors+heat pipes heat up above 500°C to fully power the most far away heat exchangers - under 100% energy demand.

For my own solution, I found by trial+error (was too lazy to actually compute it) that you need about 1 storage tank for every 3 steam turbines to achieve the above goal. Actual amount varies with the number of heat pipes. And with bigger plants, steam flow is not homogenous, so you need more storage tanks, because some tanks never get filled to maximum. Except you use pumps, but this increases complexity and footprint of the layout.

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

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

Post by xaetral »

mmmPI wrote:
Sun Sep 19, 2021 1:16 pm
"All the different ways to prevent wasting fuel in a nuclear power plant" would be a more accurate description !
Indeed!
Fixed.

mmmPI wrote:
Sun Sep 19, 2021 1:16 pm
Does that count as automated way to nuclear power plant :) ?
If no automation counts, then this does indeed.
I'll add this in my sheets 👍

Tertius wrote:
Sun Sep 19, 2021 1:34 pm
The "why bother" approach is very interesting because of its simplicity, but on the other hand, I do bother. It's a decision I made. It's a challenge to never waste fuel, and at the same time always provide the requested amount of energy. And it's not very difficult to create circuits for perfect refuel, so the cost of bothering is not high.
This, exactly.

Tertius wrote:
Sun Sep 19, 2021 1:34 pm
If we discuss the proposed designs, I miss one important thing: All these designs except one and almost all designs I see in blueprints all over the world are made for almost constant energy consumption. They assume it's possible to predict consumption, so they can only follow slowly rising or slowly falling energy consumption, but they are not able to accommodate to a factory suddenly requiring no power at all for a given time. Or to suddenly require 100% energy. And all that in the worst possible moment, i. e. dropping to 0% right after a new fuel cell was inserted, or going to 100% after the reactors and heat pipes cooled down to 500°C because steam buffers provided steam for a longer time.
Can't tell for all the design I have shown here but I have to say that when I build a powerplant I always do two important stress-tests:
- the first one is to consume 10% of the max power (or less) to let the whole plant cool down, then I push the power draw to 90% (or more) to see if the power plant chokes.
- the second test is the same but in reverse, I draw 90% or more, let the heat gradient get to a maximum and at the very moment a fuel cell is inserted I drop to 10% or less and look if the reactors get close to 1000°C.
I don't often have issues even with such big stress tests so most of them are fairly resilient (I think it's mostly due to the heat capacity and stuff like that).

Some automation types are even immune to this, like n°1 (steam level) since the minimum threshold and the minimum storage size both exist for that very reason.
Good point nonetheless.

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

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

Post by mrvn »

xaetral wrote:
Sun Sep 19, 2021 12:36 pm
mrvn wrote:
Sun Sep 19, 2021 3:08 am
I think the problem you have that you need 500 accumulators per reactor is that you have no steam tank at all. So in your setup when the heat exchangers run out of heat the turbines run out of steam and only then the accumulators are starting to drop. So you insert fuel but then it takes a while for heat to build back up. You need those 500 accumulators to cover the time till new steam is produced.

Now instead of using the accumulators use a tank to store steam with 2 pumps like in method 2 but connected to all heat echangers. Control the pumps with an accumulator and a timer. When the accumulator goes low you enable the pump that empties the tank and shut down the pump filling the tank and you start the timer. After say 90 seconds (half fuel seems like a good point in time) you reset, turn on the pump filling the tank and shut down the pump emptying the tank.
This is very smart but sadly it won't work. It would really decrease the amount of electric capacity needed but as I mentioned, the bottleneck is not the capacity but rather the throughput of the accumulators, you will have to power your entire factory only using accumulators during the time the capacity gets from 100% to 99%, then during the time it takes for your stored steam to flow back to aaaall your steam turbines.
Nice try though :p
First the accumulators will start to fall as turbines reduce their production, which in larger reactors happens gradually as heat exchangers further from the reactor shut down first. So there is some overlap between turbines and accumulators. I haven't tested this but if you only have one accumulator then I think that will fall to 99% long before the steam turbines all run out of steam.

Second you are both right and wrong. At least for me the use of an accumulator is to work together with solar power. You need enough accumulators to provide as much power as the solar cells provide. The nuclear is the backup in case the power at night exceeds the stored capacity. For example when aliens attack and the laser turrets go crazy. So while it might end up with 500 accumulators per reactor that fact is hidden by the solar farms having all those 500 accumulators already.

If you don't want to power the night with accumulators then I really recommend having just one at the nuclear reactor to control fuel or use steam to control the reactor.

Note: i really wish vanilla had turbines that wouldn't charge accumulators.
xaetral wrote:
Sun Sep 19, 2021 12:36 pm
mrvn wrote:
Sun Sep 19, 2021 3:08 am
You forgot a few key points when controlling your reactor:
  • Larger reactors should be fueled all simultaneous. So you should check that each reactor has a fuel cell ready to go in. If your fuel production is too slow and you only fill a few reactors then you loose the neighbour bonus and you go into a death spiral with each cycle producing less energy so less fuel.
  • Only put in one fuel cell at a time. So set the stack override in the inserters to 1.
  • In your setups the refueling can trigger while the reactor is still running.
I just assumed everyone knew about this before reading the topic.
You're referring to n°3 and n°5, right? Good job noticing it but it is actually made on purpose.
You see, they are both using an error dithering circuit, which basically means they will almost always be a bit late or a bit early, thus meaning that if the reactor runs near full capacity, a fuel cell might be inserted while the current one hasn't finished burning but this is the behavior you want because as the error dithers through the cycles, on average the error will be 0.
Even in the impossible scenario that it adds to much cells, it would be eaten away when the reactor reaches 1000°C (but again, that will never happen, the feed signal is during only 2 ticks).
But with the inserter stack bonus of 4 you insert up to 4 fuell cells every time.

In my control circuit the needs to refuel signal goes on until there is no longer a need to refuel. And the removal of the spend cell acts as a trigger to insert the fuel. So I have a downtime of 7 ticks between the removal and insertion of new fuel. I never had a problem with that. The removal inserter acts as a flank detector.
xaetral wrote:
Sun Sep 19, 2021 12:36 pm
GrumpyJoe wrote:
Sun Sep 19, 2021 6:00 am
I always found this topic quite interesting, but in the end, I'm always going for the "why bother approach"

Unless you have a very complicated chain of production (aka non vanilla nuclear fuel) IMHO it's not worth the trouble.
If you like circuit puzzles, there are other opportunities.

Don't wanna derail this, but no control deserves an honorable mention
I completely agree on that, uranium is literally free, the fuel cell usage is extremely low, no control is a valid option.
But in the mean time this is exactly why I love this game, I enjoy designing (and over-engineering) stuff, just like doing sushi belts, it's not that useful but it's very pleasant to design.
So feel free to not use any of the design I described here, as long as you're playing the game the way it gives you the most satisfaction :D
Unless you go crazy with nukes. :)

It's mostly a concern at the start. Especially before the covarex process. You need a ton of uranium to make a fuel cell because of the ratios of each type.

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

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

Post by xaetral »

mrvn wrote:
Sun Sep 19, 2021 4:58 pm
First the accumulators will start to fall as turbines reduce their production, which in larger reactors happens gradually as heat exchangers further from the reactor shut down first. So there is some overlap between turbines and accumulators. I haven't tested this but if you only have one accumulator then I think that will fall to 99% long before the steam turbines all run out of steam.
really wish vanilla had turbines that wouldn't charge accumulators.
I think this wouldn't work if the power draw is small, but I haven't tested it as well so dunno...

mrvn wrote:
Sun Sep 19, 2021 4:58 pm
But with the inserter stack bonus of 4 you insert up to 4 fuell cells every time.
You mean with the +2 bonus you insert up to 3 cells per swing, well all my inserters are overwritten to 1.

mrvn wrote:
Sun Sep 19, 2021 4:58 pm
In my control circuit the needs to refuel signal goes on until there is no longer a need to refuel. And the removal of the spend cell acts as a trigger to insert the fuel. So I have a downtime of 7 ticks between the removal and insertion of new fuel. I never had a problem with that. The removal inserter acts as a flank detector.
Well that's how n°1, 2 and 4 are working. (also n°5 but that's only because I haven't run into the same issue as n°3 yet)

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

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

Post by mrvn »

xaetral wrote:
Sun Sep 19, 2021 5:26 pm
mrvn wrote:
Sun Sep 19, 2021 4:58 pm
But with the inserter stack bonus of 4 you insert up to 4 fuell cells every time.
You mean with the +2 bonus you insert up to 3 cells per swing, well all my inserters are overwritten to 1.
Exactly. That isn't visible from screenshots and actually gets lost when you blueprint the reactor and haven't researched the inserter capacity bonus yet. Most annoyingly. I started to add a constant combinator "S=1" and set the inserters to "Override stack size (S)" for blueprints. Kind of future proofing them for when I use them in a new game where I don't have the inserter capacity bonus yet.

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

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

Post by xaetral »

mrvn wrote:
Sun Sep 19, 2021 5:49 pm
[...] and actually gets lost when you blueprint the reactor and haven't researched the inserter capacity bonus yet.
Damn I didn't know, it almost sounds like a bug.

Tertius
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

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

Post by Tertius »

mrvn wrote:
Sun Sep 19, 2021 4:58 pm
In my control circuit the needs to refuel signal goes on until there is no longer a need to refuel. And the removal of the spend cell acts as a trigger to insert the fuel.
I tried using this concept, but I was not satisfied. A design should be simple, but this is too simple. The trigger on spent cells is unreliable if you have supply issues, and the initial start is tedious, because you need manual intervention for every non-standard situation. I'm too lazy to do anything manually.

So I made a small circuit with 4 combinators. 1 is a constant combinator providing parameters. 1 is a counter for the ticks since last insertion. 1 checks the steam threshold. And 1 combines the counter and the threshold and returns true if the ticks are > 12000 AND the steam level is below threshold. If it returns true, the inserters for refuel are activated. The pulse from the inserter arms triggers the counter reset, so the inserters are deactivated again, and everything starts again.

The nice thing is that whatever happens, after fixing any issues with water or fuel or energy for the circuits, at most 200 seconds later the fuel supply is running again without me inserting or removing anything. The power for the circuits (and for the water pumps for bigger plants) are supplied by solar panels+accumulators, so it cannot fail.

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

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

Post by Khagan »

xaetral wrote:
Sun Sep 19, 2021 2:50 pm
I have to say that when I build a powerplant I always do two important stress-tests:
- the first one is to consume 10% of the max power (or less) to let the whole plant cool down, then I push the power draw to 90% (or more) to see if the power plant chokes.
- the second test is the same but in reverse, I draw 90% or more, let the heat gradient get to a maximum and at the very moment a fuel cell is inserted I drop to 10% or less and look if the reactors get close to 1000°C.
I effectively do the same for my nuclear plant designs, but only the first test really matters: a design that fails the first test risks a factory-wide brown-out, which is a Very Bad Thing; a design that fails the second just risks wasting a small amount of nuclear fuel, which is hardly noticeable (and at some point the capital cost of avoiding the wastage becomes more than it is worth). Also, the only solution to a failure of the first test is more steam storage (below the test level); the second can be solved either by more steam storage (above the test level) or by more heat storage.
Tertius wrote:
Sun Sep 19, 2021 1:34 pm
I found by trial+error (was too lazy to actually compute it) that you need about 1 storage tank for every 3 steam turbines to achieve the above goal. Actual amount varies with the number of heat pipes.
I find that 4 storage tanks for each line of 12 exchangers and 20 turbines is plenty (i.e. 1 to 5, rather than 1 to 3).

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

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

Post by mrvn »

Tertius wrote:
Sun Sep 19, 2021 9:57 pm
mrvn wrote:
Sun Sep 19, 2021 4:58 pm
In my control circuit the needs to refuel signal goes on until there is no longer a need to refuel. And the removal of the spend cell acts as a trigger to insert the fuel.
I tried using this concept, but I was not satisfied. A design should be simple, but this is too simple. The trigger on spent cells is unreliable if you have supply issues, and the initial start is tedious, because you need manual intervention for every non-standard situation. I'm too lazy to do anything manually.

So I made a small circuit with 4 combinators. 1 is a constant combinator providing parameters. 1 is a counter for the ticks since last insertion. 1 checks the steam threshold. And 1 combines the counter and the threshold and returns true if the ticks are > 12000 AND the steam level is below threshold. If it returns true, the inserters for refuel are activated. The pulse from the inserter arms triggers the counter reset, so the inserters are deactivated again, and everything starts again.

The nice thing is that whatever happens, after fixing any issues with water or fuel or energy for the circuits, at most 200 seconds later the fuel supply is running again without me inserting or removing anything. The power for the circuits (and for the water pumps for bigger plants) are supplied by solar panels+accumulators, so it cannot fail.
I use the spend fuel cell instead of the counter. This gets me down to 2 combinators. One to check the steam level and one to check if fuel is present because I never want a half fueled reactor complex. All the other logic is in the inserters itself.
nuclear-night-power.png
nuclear-night-power.png (3.65 MiB) Viewed 1968 times


The logic is quite simple if you go through it step by step:
  1. filter inserters insert exactly 1 fuel into the wooden chests. this speeds up start up time.
  2. each reactor generates a black signal if it has no fuel for insertion, this is checked with "black = 0 ===> 1x green"
  3. steam level is checked from 2 tanks (one top, one bottom) with the green wire on the big electric pole with "steam < 49000 ===> 1x green"
  4. on one reactor (left bottom) the inserter to remove fuel is set to "enable if green >= 2, read hand content"
  5. 1x fuel is inserted on "spend fuel > 0"
The spend fuel signal replaces your clock, as said. Hmm, I just noticed, I could bring this down to 1 combinator by using "steam > 49000 ====> 1x black" and enable fuel removal on "black = 0". So, after that change, I use one quarter the combinators you do. :) I've updated the blueprint and world download but not the screenshot.


You claim starting this thing up is to hard. Well, all you need to do is place one fuel in the left bottom reactor. Everything else starts up on its own then. Still to complex? Add another 3 combinators, a splitter, a wooden box and an inserter (the red boxed construct) and the system is self starting. It needs 3 combinators so it waits for all reactors to have fuel for insertion and then inserts fuel once without removing a spend cell. The wooden chest is the memory cell for this. It wastes a few fuel cells but that way it can be 100% blueprinted and is blackout proof.

You can download the attached world and start fuel production by turning on the "R" constant combinator. It might insert 2 fuel cells at the start so don't wonder about that. The reactor easily needs those to get to a working temperature when you build it. (In the world it's pre heated). After that it always uses just one fuel cell at a time.

The design is easily expandable by repeating the middle 2 reactors. Remove the pipes between the heat exchangers and the tanks for the last row and you can place a blueprint of the middle+right part right over it. Always place an extension so it overlaps at least a full reactor so the red/green wires get connected. The left most and right most reactors have fewer turbines because they have less neihgbour bonus.

The control logic, inserter and pumps are on their own power grid. Initially powered by 2 solar cells and 1 accumulator (optional, needed for startup at night). Once running extra power is provided by 1 steam turbine. This is needed when you expand past the initial 8 reactors. At some point 2 second turbine would be needed and the yellow belts can be upgraded to red or blue for really big setups. Or when you include the ore mining, processing and fuel cell assembling. Just be careful never to connect the control power grid to the outside or use more power than the control grid has. The steam pumps will shut down and dump you into a near instant blackout.

The reactor is self starting after blueprinting due to the red boxed construct and the 2 solar cells powering up the control power grid. The solar cells also restart the reactor if it is without fuel for a long time and the control grid runs out of steam.


In the world download I also included a "accumulator charge and daylight" sensor. This is the ultimate in fuel saving as it will use solar and accumulators down to 10% charge and doesn't charge the accumulators using nuclear power. If you use this better make sure you have enough solar cells though. It doesn't like it when you run out of power during the day. It's still a work in progress. You might notice I have far too few accumulators and just over the needed amount of solar cells to charge the accumulators back up during the day.

Note: Under full load like in the world download there is a small brownout, a few MW dip, when the steam runs low at midnight. A single steam tank just isn't enough to keep the turbines running under full load by just a smidgen. By the time you have a constant 100% draw you should be building more reactors ASAP.
Attachments
Nuclear-night-power.zip
(5.73 MiB) Downloaded 32 times
Last edited by mrvn on Sun Sep 19, 2021 11:59 pm, edited 2 times in total.

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

Increasing efficiency when using solar cells

Post by mrvn »

Most reactor designs I've seen are made to use all the heat the reactor provides and all the steam to produce electricity. At full load the reactor will run 100% of the time. And then you have some control logic to save fuel when not under full load.

Now if you are using solar cells for the day time power generation without any accumulators then the reactor will run under only 1/3 load. So what if you design the reactor for that scenario. Run the reactor 100% of the time but the steam turbines only at night (~1/3 of the time with some flanks). What's the best design then and how does the control logic change to handle less than full load. Do you just add a ton of steam tanks to buffer the days steam production? Or a mix of heat pipes and steam tanks?

Why is that relevant? Because running a reactor only 1/3 of the time is inefficient. Waste of resources.

Tertius
Long Handed Inserter
Long Handed Inserter
Posts: 62
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 »

Ok, then I will post my designs, since they have minimal wiring, at least no such complex wiring as in your examples.
The first is a 2x2 plant:
screenshot-tick-59964266.png
screenshot-tick-59964266.png (2.62 MiB) Viewed 1958 times
Blueprint:


The circuit:
screenshot-tick-59968305.png
screenshot-tick-59968305.png (3.45 MiB) Viewed 1958 times
Combinator settings:
constant.png
constant.png (34.61 KiB) Viewed 1958 times
latch reset.png
latch reset.png (37.79 KiB) Viewed 1958 times
counter.png
counter.png (37 KiB) Viewed 1958 times
steam threshold.png
steam threshold.png (41.09 KiB) Viewed 1958 times
Fuel Inserter settings:
(this is more interesting, since it uses activation as well as hand reading. Also note the override stack size to 1)
fuel inserter.png
fuel inserter.png (66.19 KiB) Viewed 1958 times
A quarter of the steam tanks is used for computing the steam threshold - it's of course sufficient to use only one tank, but in this picture I didn't change that yet.

The left combinator is the counter. It uses the "C=1" from the constant combinator to count. Reset works like this: as long as there is no fuel signal from the inserter hands, the combinator outputs its input count, which is the counter value (signal C). As soon as there is some fuel signal from the hand holding a fuel cell, the output is 0.
The middle combinator checks if the counter value C is above end value Z=12000 and emits signal green=1 if true.
The right combinator checks if the steam value is below signal S and emits signal green=1 if true.
The fuel inserters activate on green=2 (both conditions are true).
If the fuel inserter's hands hold a fuel cell, the fuel cell signal is != 0, so the counter is reset.

That's all, nothing more required.

This works identically with an arbitrary number of reactors:
2x4:
screenshot-tick-59620795.png
screenshot-tick-59620795.png (1.57 MiB) Viewed 1958 times


2x6:
screenshot-tick-59959372.png
screenshot-tick-59959372.png (3.23 MiB) Viewed 1958 times


The next step would probably be a tileable plant, but I didn't need such thing yet.

The point in letting the power plant run with only 1/3 load is that you're building a big power plant as soon as you are able to build it, then you have much much time to expand your base without the need of thinking about the power supply. It simply adjusts to the power requirement. Only if your base grew out of the current plant, you need to build another one. And it's always a chore to get the water supply right. Water is the real chore of building huge nuclear power plants.

mrvn
Smart Inserter
Smart Inserter
Posts: 5098
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 1:40 am
The point in letting the power plant run with only 1/3 load is that you're building a big power plant as soon as you are able to build it, then you have much much time to expand your base without the need of thinking about the power supply. It simply adjusts to the power requirement. Only if your base grew out of the current plant, you need to build another one. And it's always a chore to get the water supply right. Water is the real chore of building huge nuclear power plants.
You missed my point. When you first build your plant you run it 100% of the time at say 10% of maximum power. As you grow your power usage goes up.

Not so if you use nuclear as backup to solar cells. Than you only run the plant 33% of the time at say 10% of maximum power. As you grow power usage goes up but the time usage never goes above 33% unless you lack behind building solar cells. Just like with steam engines as backup power for solar you can run 3 times the turbines per reactor if you have enough buffering because the reactor can produce heat/steam ahead of time while the solar cells have the load.

mrvn
Smart Inserter
Smart Inserter
Posts: 5098
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 1:40 am
In your screenshot you can see nicely how the steam level is different for different tanks. Some are already empty while other still have steam. The turbine output at the end will fall gradually, not go from 100% to 0% in one tick.

That should be good for using the accumulator control method. But using that without causing brownouts when you have only few accumulators is basically impossible. What I was thinking of when I read method 4 is something different. Lets call that:
6. accumulator control to use solar power at daytime
While like method 4 you use an accumulator to measure power the accumulators aren't mend to provide power when the nuclear reactor is off, the solar cells are supposed to provide sufficient power. And that really only works when you have sufficient solar cells (or sufficient accumulators), otherwise the measuring accumulator with flip between charged and not charged within ticks and every time it's charged you have a brownout.

So for method 6 you need thousands of solar cells per reactor. But it's the most fuel saving and you might already have a mix of solar cells and accumulators from before you researched nuclear.


As a side note: Method 4 doesn't even deserve an honorable mention I think. Storing energy in steam tanks is more space efficient than storing it in accumulators. So really why would anyone ever build an accumulator energy storage without solar cells (which would better use method 6)

Tertius
Long Handed Inserter
Long Handed Inserter
Posts: 62
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 »

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.


You are using solar panels to extend the downtime of your reactors on daytime, but in this case you leave the field of managing the efficiency of a nuclear power plant. That is the field of managing and prioritizing different types of energy production in general.

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?

Post Reply

Return to “Energy Production”