From 2ca5fa463e28242e8a244279277c7ba415ee694d Mon Sep 17 00:00:00 2001 From: Superkooka Date: Sat, 21 Jun 2025 18:14:30 +0200 Subject: [PATCH] pressure control Signed-off-by: Superkooka --- pneumaticraft/pressure_control.lua | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 pneumaticraft/pressure_control.lua diff --git a/pneumaticraft/pressure_control.lua b/pneumaticraft/pressure_control.lua new file mode 100644 index 0000000..be32ed2 --- /dev/null +++ b/pneumaticraft/pressure_control.lua @@ -0,0 +1,36 @@ +local computer = require("computer") +local rs = require("component").redstone +local sides = require("sides") + +local lastPowerValue = -1 +local compressorState = false +local cutValue = 8 + + +print("The cut value is fixed at " .. cutValue .. ". At this value, it will automatically stop compressor.") +while true do + local power = rs.getInput(sides.back) + if power ~= lastPowerValue then + lastPowerValue = power + print("[" .. + os.date():sub(9) .. "]" .. " Current redstone value: " .. power .. "/16.0 (" .. power / 2 .. "BAR +-)") + end + + if (power < cutValue) then + rs.setOutput(sides.left, 14) + if compressorState ~= true then + print("[" .. os.date():sub(9) .. "]" .. " Turning ON compressor...") + compressorState = true + computer.beep() + end + else + rs.setOutput(sides.left, 0) + if compressorState ~= false then + print("[" .. os.date():sub(9) .. "]" .. " Turning OFF compressor...") + compressorState = false + computer.beep() + end + end + + os.sleep(2) +end