redstone.setOutput('front', false)

load_delay = 15
level_delay = 1
wait_delay = 2

while true do
    if redstone.getInput('back') then
        print('There seems to be a train... waiting for '..load_delay..' seconds...')
        os.sleep(load_delay)
        print('Go train go...')
        redstone.setOutput('front', true)
        os.sleep(level_delay)
        redstone.setOutput('front', false)
    else
        os.sleep(wait_delay)
    end
end

