Hallo,
ich habe mir eine Testanlage mit einem Gleis aufgebaut. Am Endgleis steht ein unsichbares Signal(1). und ein Ausfahrtssignal(3).
Bei der Einfahrt sind 2 Soundkontakte gesetzt. Der erste prüft die Geschwindigkeit, der zweite zeitverzögert setzt die Umkehr der Geschwindigkeit.
Sobald ich das Ausfahrtssignal auf Fahrt gehe fährt der Zug jedoch weiter zum Prellbock.
Die Lua Befehle stimmen, da die neue Geschwindigkeit angzeigt wird, aber EEP reagiert nicht.
Was ist dann an meinem Code falsch?
Code
clearlog()
setmetatable(_ENV,{__index=function(s,k) local p=load(k);if p then local f=function(z) local s=Zugname;Zugname=z;p();Zugname=s end;_ENV[k]=f;return f end;return nil end})
print("Hey let's start, EEP Version is: ", EEPVer)
function EEPMain()
return 1
end
if EEPGetSignal(3) == 2 then --Ausfahrtsignal auf Fahrt
EEPSetSignal(1,2)
end
function Geschwindigkeit(Zugname) --Die Geschwindigkeit ermitteln ob sie negativ oder positiv ist
hResult, speed = EEPGetTrainSpeed(Zugname)
if hResult then
print(speed)
if speed < 0 then --bei negativer Wert ist neuer Wert positiv
newSpeed = 40
else --bei positiven Wert ist neuer Wert negativ
newSpeed = -40
end
end
end
function Umkehren(Zugname) --
print (Zugname)
print (newSpeed)
hResult, route = EEPGetTrainRoute(Zugname) -- Routenabfrage um die Ausfahrts-Geschwindigkeit festzulegen
print (route)
if route == "Kuehlzug" then
EEPSetTrainSpeed(Zugname,newSpeed) --Übergabe der Geschwindigkeit an den Zug
elseif route == "Personenzug" then
EEPSetTrainSpeed(Zugname,newSpeed + 20)
end
end
end
Alles anzeigen
Gruß Gerhard