Guest User

Untitled

a guest
Jan 16th, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.28 KB | None | 0 0
  1. -- CC programmierbarer Timer/Zeitschaltuhr/Nachtlicht by redled72 6/2012
  2. -- Hinweis!! Zeitspannen, welche åBCber Mitternacht hinaus gehen, måBCssen geteilt
  3. -- angegeben werden zB. 19:00 bis 6:15 wird dann so geschrieben:
  4. -- zeiten[1] = {1900,2359}
  5. -- zeiten[2] = {0000,0615}
  6.  
  7. local lout1     = ("back")  -- Steuerausgang / Output hinten
  8. local lout2     = ("left")  -- Steuerausgang / Output links
  9. local onoff    = ("top")   -- aktiv/inaktiv Switch
  10. local refresh  = 0.8       -- Time to Refresh (100ms-800ms; 0.1 = faster, 0.8 = slower)
  11.  
  12. zeiten = {}
  13.        zeiten[1] = {0001,0500}
  14.        zeiten[3] = {0601,1100}
  15.        zeiten[5] = {1201,1700}
  16.        zeiten[7] = {1801.2300}
  17.    
  18.        zeiten[2] = {0101,0600}
  19.        zeiten[4] = {0700,1200}
  20.        zeiten[6] = {1300,1800}
  21.        zeiten[8] = {1900,2359}
  22.        
  23.  -------------------------------------------------------------------------------------
  24.  
  25. local varfill  = 0
  26.  
  27. function _fill(varfill)                 -- "9" -> "09"
  28.          if varfill < 10 then varfill = "0" ..varfill end
  29.     return varfill
  30. end
  31.  
  32. function _ftime()                       -- format time
  33.     nHour   = math.floor(os.time())
  34.     nMinute = math.floor((os.time() - nHour)*60)
  35.     stime   = _fill(nHour) .._fill(nMinute)
  36.    return stime  
  37. end
  38.  
  39. function _akttime()
  40.          pzeit = os.time()
  41.          pzeit = textutils.formatTime(pzeit, true)
  42.     return pzeit     
  43. end
  44.  
  45. function _testtime(zeiten,lout,onoff,refresh)
  46.          for i = 1, #zeiten, 1 do
  47.              lstart = zeiten[i][1]
  48.                  lstop  = zeiten[i][2]
  49.              if tonumber(_ftime()) >= lstart and tonumber(_ftime()) <= lstop then
  50.                    shell.run("clear")
  51.                    print(_akttime().." | "..lstart.." : "..lstop)
  52.             if i==1 or i==3 or i==5 or i==7 then
  53.                      rs.setOutput(lout1, true) 
  54.                           else
  55.                             rs.setOutput(lout2, true)  
  56.                           end
  57.        else
  58.              if i==1 or i==3 or i==5 or i==7 then
  59.               rs.setOutput(lout1, false)
  60.              else
  61.               rs.setOutput(lout2, false)
  62.              end
  63.        end               
  64.                    sleep(refresh)
  65.              end
  66. end
  67.  
  68. while true do    
  69.       shell.run("clear")
  70.       print("aktuelle Zeit: ".._akttime())
  71.       _testtime(zeiten,lout1,onoff,refresh)
  72.       sleep(refresh)
  73. end
Add Comment
Please, Sign In to add comment