Forte40

Solar Generator Controller

Apr 21st, 2014
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.93 KB | None | 0 0
  1. local lightLevel = 4   -- when to transmit
  2. local genSide = "left" -- side generator is touching
  3. local senSide = "top"  -- side sensor is touching
  4.  
  5. local gen = peripheral.wrap(genSide)
  6. if gen == nil then
  7.   print("Place computer next to generator")
  8.   return
  9. end
  10. local transmitting = false
  11.  
  12. term.clear()
  13. while true do
  14.   -- check status of generator
  15.   local energy = gen.getEnergyStored(genSide)
  16.   local max = gen.getMaxEnergyStored(genSide)
  17.   -- switch modes
  18.   if transmitting == false
  19.       and (energy >= max
  20.       or rs.getAnalogInput(senSide) <= lightLevel) then
  21.     rs.setAnalogOutput(genSide, 15)
  22.     transmitting = true
  23.   elseif transmitting
  24.       and energy <= 0 then
  25.     rs.setAnalogOutput(genSide, 0)
  26.     transmitting = false
  27.   end
  28.   term.setCursorPos(1, 1)
  29.   print(string.format("Energy  : %6d     \nDaylight: %2d \nTransmit: %s ",
  30.       energy, rs.getAnalogInput(senSide), tostring(transmitting)))
  31.   sleep(10)
  32. end
Advertisement
Add Comment
Please, Sign In to add comment