m Fixed uranium leak caused by ejecting an empty fuel rod at startup, remove mass uranium leak warning |
mNo edit summary |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
<br />'''''Warning: |
<br />'''''Warning: Automatic reactors that use microcontroller need you to know lua pilot''''' |
||
''It is recommended to use delay wire auto reactors'' |
''It is recommended to use delay wire auto reactors'' |
||
Line 12: | Line 12: | ||
Delay wire reactors are easiest and cheapest |
Delay wire reactors are easiest and cheapest |
||
For first you need make temperature control, put 2 temperature sensors on reactor and put polysilicon on them both. After config left one to 0:1000 and its polysilicon be deactivate, and on right one put 1000:inf and dont change |
For first you need make temperature control, put 2 temperature sensors on reactor and put polysilicon on them both. After config left one to 0:1000 and its polysilicon be deactivate, and on right one put 1000:inf and dont change polysilicon mode. |
||
[[File:Scheme of delay wire autoreactor.png|thumb|Scheme of delay wire autoreactor red is transformer black is delay wire gray is dispencer orange is trigger wire green is flip flop poly and yellow is reactor]] |
[[File:Scheme of delay wire autoreactor.png|thumb|Scheme of delay wire autoreactor red is transformer black is delay wire gray is dispencer orange is trigger wire green is flip flop poly and yellow is reactor]] |
||
Line 55: | Line 55: | ||
for i=1, #fuel do |
for i=1, #fuel do |
||
if fuel[i] <= eject_treshold then |
if fuel[i] <= eject_treshold then |
||
-- Don't eject when there no fuel in there |
-- Don't eject when there's no fuel in there |
||
if fuel[i] ~= 0 then |
if fuel[i] ~= 0 then |
||
TriggerPort(3) -- Eject fuel |
TriggerPort(3) -- Eject fuel |
Latest revision as of 12:54, 23 September 2023
Warning: Automatic reactors that use microcontroller need you to know lua pilot
It is recommended to use delay wire auto reactors
Automatic Reactor is a term used for reactors which are regulated through mechanisms rather than the player. They are necessary for feasible multi-reactor power systems.
Delay Wire Auto Reactor[edit | hide all | hide | edit source]
Delay wire reactors are easiest and cheapest
For first you need make temperature control, put 2 temperature sensors on reactor and put polysilicon on them both. After config left one to 0:1000 and its polysilicon be deactivate, and on right one put 1000:inf and dont change polysilicon mode.
Delay wire reactors use 1 delay wire with delay 200, 4 delay wires connected to flip flop poly with config 1-4,
1 delay wire with delay 9,
and one with delay 4.
Microcontroller Auto Refuel Reactor[edit | hide | edit source]
There are two mechanisms per reactor, one for managing temperature, the other for dispensing uranium when it runs out. Rod control is achieved through temperature sensors, which read the reactor's temperature when attached to it, and sends signals when it moves out of range. When used with polysilicons, the signals can be used to lower or raise the control rods.
A sensor set to 0:1000 that sends signals through a blue polysilicon (Mode 1) will lower the rods when the temperature is between 0F and 1000F, increasing temperature. The opposite can be done with a pink polysilicon (Mode 0) and a 1000:1230 temperature range, which will raise them when the temperature is between 1000F and 1230F, therefore decreasing the temperature. The reactor will explode at 1200F, so the pink polysilicon is absolutely necessary.
Additionally, you can place a Mode 2 (Flip-Flop) polysilicon to eject Uranium/NuclearWaste.
To refill a reactor automatically, here's a few steps.
- Firstly, get a microcontroller and put it on the Reactor.
- Get a port (Configure PortID to 1) and attach it to the Reactor. This has to also be attached to the microcontroller.
- Get a dispenser and attach it to another port (Configure PortID to 2) above the Reactor.
- Get another port and configure it to PortID 3, then attach a Flip-Flop polysilicon to it, touching the Reactor.
- Put the script below into the microcontroller and power it.
- Keep it mind, that you have to turn the microcontroller on, obviously. For this you should use a transformer with an Activate polysilicon to turn it on everytime you rejoin. Transformers have to be powered in order to work.
The code will use port ID 1 to read the reactor's fuel status, port ID 2 to control the dispenser and port ID 3 to eject nuclear waste.
--How much fuel is left in the reactor before the microcontroller ejects it.
--Change this to control when you want to refuel (0 to 1) (Recommeded is 0.2 to 0.5)
local eject_treshold = 0.25
local reactor = GetPartFromPort(1, "Reactor")
local dispenser = GetPartFromPort(2, "Dispenser")
while wait() do
local fuel = reactor:GetFuel()
for i=1, #fuel do
if fuel[i] <= eject_treshold then
-- Don't eject when there's no fuel in there
if fuel[i] ~= 0 then
TriggerPort(3) -- Eject fuel
end
dispenser:Dispense() -- Dispense fresh fuel
wait(1)
end
end
end
Note: Microcontrollers have to be powered to function.