Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- CC programmierbarer Timer/Zeitschaltuhr/Nachtlicht by redled72 6/2012
- -- Hinweis!! Zeitspannen, welche åBCber Mitternacht hinaus gehen, måBCssen geteilt
- -- angegeben werden zB. 19:00 bis 6:15 wird dann so geschrieben:
- -- zeiten[1] = {1900,2359}
- -- zeiten[2] = {0000,0615}
- local lout1 = ("back") -- Steuerausgang / Output hinten
- local lout2 = ("left") -- Steuerausgang / Output links
- local onoff = ("top") -- aktiv/inaktiv Switch
- local refresh = 0.8 -- Time to Refresh (100ms-800ms; 0.1 = faster, 0.8 = slower)
- zeiten = {}
- zeiten[1] = {0001,0500}
- zeiten[3] = {0601,1100}
- zeiten[5] = {1201,1700}
- zeiten[7] = {1801.2300}
- zeiten[2] = {0101,0600}
- zeiten[4] = {0700,1200}
- zeiten[6] = {1300,1800}
- zeiten[8] = {1900,2359}
- -------------------------------------------------------------------------------------
- local varfill = 0
- function _fill(varfill) -- "9" -> "09"
- if varfill < 10 then varfill = "0" ..varfill end
- return varfill
- end
- function _ftime() -- format time
- nHour = math.floor(os.time())
- nMinute = math.floor((os.time() - nHour)*60)
- stime = _fill(nHour) .._fill(nMinute)
- return stime
- end
- function _akttime()
- pzeit = os.time()
- pzeit = textutils.formatTime(pzeit, true)
- return pzeit
- end
- function _testtime(zeiten,lout,onoff,refresh)
- for i = 1, #zeiten, 1 do
- lstart = zeiten[i][1]
- lstop = zeiten[i][2]
- if tonumber(_ftime()) >= lstart and tonumber(_ftime()) <= lstop then
- shell.run("clear")
- print(_akttime().." | "..lstart.." : "..lstop)
- if i==1 or i==3 or i==5 or i==7 then
- rs.setOutput(lout1, true)
- else
- rs.setOutput(lout2, true)
- end
- else
- if i==1 or i==3 or i==5 or i==7 then
- rs.setOutput(lout1, false)
- else
- rs.setOutput(lout2, false)
- end
- end
- sleep(refresh)
- end
- end
- while true do
- shell.run("clear")
- print("aktuelle Zeit: ".._akttime())
- _testtime(zeiten,lout1,onoff,refresh)
- sleep(refresh)
- end
Add Comment
Please, Sign In to add comment