Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- Brzdeni vlaku pred nakladkou/vykladkou a vypousteni vlaku po dokonceni nakladky/vykladky.
- Instalace jako autorun: pastebin get HuWGeigy startup .
- LocoControl (mode Computer) na strane horni (top), detector s redstonem za pocitacem ve smeru jizdy.
- Po prejezdu detectoru se zaradi neutral a aktivuji brzdy na 100%, pro vyslani odbrzdime a nastavime uroven plynu (viz tabulky nize).
- Brzdna vzdalenost a rychlost neni konstantni, zalezi na vaze vlaku (rychlost/brzdna vzdalenost).
- Loko GE B40-8, 2x cisterna US2 (po 85b nafty):
- plyn 0.2 0.25 0.3 0.35
- plny 11/1 22/3 38/12 61/33
- prazdny 18/1 35/8 60/26 96/67
- Loko GE B40-8, 2x vagon USRA Boxcar RR-40 (po 90st dreva):
- plyn 0.2 0.25 0.3 0.35
- plny 14/1 26/5 45/24 71/39
- prazdny 22/2 41/9 70/28 103/71
- --]]
- -- Urceni, zda se jedna o nakladku/vykladku a nastaveni stran redstonovych vstupu
- local Nakladka = true -- nakladka je true, vykladka je false
- local SideVlak = "left" -- strana detektoru prijezdu vlaku (log.1 pri pritomnosti vlaku)
- local SideLoad = "bottom" -- strana redstonu nakladky/vykladky (log.1 pri ukonceni)
- -- Urovne plynu pri vypousteni plneho/prazdneho vlaku (viz tabulky vyse)
- local Plyn = {plny = 0.25, prazdny = 0.25}
- -- Nastaveni periferii a prvotnich promennych
- local Loko = peripheral.wrap("top") -- LocoControl augment na horni strane
- -- Vymazani okna terminalu
- term.clear()
- term.setCursorPos(1,1)
- -- Nekonecna smycka (hlavni telo programu)
- while true do
- -- Cekame na prijezd vlaku
- print("Cekam na vlak...")
- repeat os.pullEvent("redstone") until (rs.getInput(SideVlak))
- -- Zastavime ho a chvilku pockame (eliminace falesnych eventu)
- Loko.setThrottle(0); Loko.setBrake(1); sleep(10)
- -- Cekame na ukonceni nakladky/vykladky (na log.1)
- print("Cekam na dokonceni nakladky/vykladky...")
- repeat os.pullEvent("redstone") until (rs.getInput(SideLoad))
- -- Muzeme vypustit vlak do sveta
- if (Nakladka)
- then Loko.setBrake(0); Loko.setThrottle(Plyn.plny) -- vlak plny a tezky
- else Loko.setBrake(0); Loko.setThrottle(Plyn.prazdny) -- prazdny a lehky
- end
- print("Nakladka/vykladka dokoncena, vlak odjizdi...")
- sleep(30) -- pozastavime program (eliminace falesnych eventu)
- end
- --[[
- local RSVlak = false
- local RSLoad = false
- -- Nekonecna smycka (hlavni telo programu)
- while true do
- -- Cekame na zachyceni eventu (zmena redstone na nejake strane)
- os.pullEvent("redstone")
- -- Je pritomen vlak?
- RSVlak = rs.getInput(SideVlak)
- -- event vyvolal vlak, budeme brzdit
- if (RSVlak) then Loko.setThrottle(0); Loko.setBrake(1); sleep(5); RSLoad = rs.getInput(SideLoad) end
- -- event vyvolala nakladka/vykladka
- if ((RSVlak) and (RSLoad)) then
- if (Nakladka) -- je ukoncena nakladka (true) nebo vykladka (false)?
- then Loko.setBrake(0); Loko.setThrottle(Plyn.plny) -- vlak plny a tezky
- else Loko.setBrake(0); Loko.setThrottle(Plyn.prazdny) -- prazdny a lehky
- end
- sleep(30) -- pozastavime program - eliminace falesnych eventu pri odjezdu vlaku
- end
- end
- --]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement