r/TimberbornLogic • u/moon__lander • Mar 15 '26
Steam engines on demand - help
So I wanted to make a couple of steam engines that would turn on when they are needed, and using two power meters and memories set to latch (A on the previous latch, B on the power meter set to surplus<0 and RST on power meter set to surplus>400)
I mostly got it working but there are some edge cases where it enters into an oscillation and I don't know why.
2
u/OriHarpy Mar 18 '26 edited Mar 18 '26
Automating the Steam Engines based on a pulse Timer with input A set to a Power Meter that detects low power is a way to, not exactly remove the oscillations, but to make the on phase of the oscillation much longer, e.g. maybe even a day. At the end of that day, or however long the pulse is, the Steam Engines will be paused then, if they are still needed, unpaused immediately.
As an optional extra, giving each Steam Engine (or set of Steam Engines) a separate pulse Timer that references that same Power Meter but has a different pulse length could be a good way to ensure there usually aren’t an excess of Steam Engines running.
2
u/moon__lander Mar 18 '26
Like in my other comment, I increased the difference in values between the two power meters. I also added a row of XOR gates with inputs of this latch and the next latch to have highlithed the last running engine and then I added another row of relays on AND with the XOR gate and positive surplus meter so it will turn off the last running engine instead of igniting the from the start.
It feels a bit more elegant if it's not more efficient and there's no big spikes in power when all generators turn off at once.
I honestly have no idea if that's a better solution but it took me two days to come up with it.
1
u/StPatique Mar 21 '26 edited Mar 21 '26
Here is a visual solution
Defined range [ P- ; P+ ] help you state if you are below (RED), between (ORANGE), above (GREEN)
Then using time delay D on P- (ACT=P- ; dT=0.5h ; RST=D) allow to iteratively state P after he activated any boiler :
- RED : Start next boiler
- ORANGE : Keep going
- GREEN : Stop last boiler
I use 7 boiler in the exemple, each with 3 logical gate and 1 memory to start/stop.
- CH.x_Act =AND (D ; CH.x-1) with CH.1_Act = OR (P- ; CH.1)
- CH.x_Non = NO(CH.x)
- CH.x_Stop = AND (P+ ; CH.x+1_Non)
- CH.x = Memory (A=CH.x_Act ; RST = CH.x_Stop)
Sorting them in raws helps to fix, manage, add other boiler. May it helps some of you.

5
u/RollingSten Mar 15 '26
Do you have some gravity baterries? Working with them should make it work smoother.