EASY Geschrieben 12. Juli 2022 Geschrieben 12. Juli 2022 Hallo, ich habe z.B. das Signal 78722089-1B26-4AC5-AA55-91CB56A599BB ... ... und würde gerne für den Signalbegriff "2 - Hp2(Langsamfahrt)" die Werte für "Beschleunigen auf" und "Abbremsen auf" in der EV ändern... in lua gibt es trackContact.autoAccelerationSpeed womit ich z.B. den Beschleunigungswert ändern kann, nur wie muß ich dies anwenden, damit es für den Signalbegriff 2 geändert wird? P.S. ... ich kann zwar nur lua... aber gerne auch eine Lösung in der grafischen EV... Gruß EASY
prinz Geschrieben 12. Juli 2022 Geschrieben 12. Juli 2022 Hallo @EASY, Anscheinend geht das in der EV nur, wenn der Signalbegriff auch aktuell ist, also z.B. wenn das Signal schaltet. Dann kann man die Werte beeinflussen: if contact.state == 2 then contact.trackContact.autoAcceleration = true contact.trackContact.autoDeceleration = true contact.trackContact.autoAccelerationSpeed = 20 contact.trackContact.autoDecelerationSpeed = 20 end (Ich habe das Ereignis über die grafische Oberfläche erstellt und dann nach Lua "übersetzen" lassen. Grüße, Wolfgang
EASY Geschrieben 13. Juli 2022 Autor Geschrieben 13. Juli 2022 (bearbeitet) Hallo, vor 13 Stunden schrieb prinz: Anscheinend geht das in der EV nur, wenn der Signalbegriff auch aktuell ist. Hatte ich mir eigentlich auch gedacht, hat nur bei meinem Versuch nicht geklappt... ... wenn die Fahrstraße altiviert wird, sollte dem Gleiskontakt für die Signalstellung 1 ein variabler Beschleunigungswert zugewiesen werden... if route.active and not deferredCall then defer (0,5,"v1") elseif deferredCall=="v1" then if route.waypoints[1].state==1 then -- = Signal route.waypoints[1].trackContact.autoAccelerationSpeed=math.random(50,90) end end ... ich hatte sogar extra eine kleine Verzögerung mit eingebaut.... aber es ging nicht, was mich zu meiner Anfrage geführt hat. Nur die Verzögerung war zu kurz. Auf den Beschleunigungswert für die Signalstellung 1 kann erst zugegriffen werden, wenn das Signal "sicher" geschalten hat, also wenn die Animation für den Signalzustand abgelaufen ist. Ich habe das Ereignis "Fahrstraße wird aktiviert..." versuchshalber umgeschrieben... if route.active and not deferredCall then if $("FSA").state==1 then print("FS aktiviert",$("FSA").state,$("FSA").trackContact.autoAccelerationSpeed) end defer (0.5,"v1") elseif deferredCall=="v1" then if $("FSA").state==1 then print("FS aktiviert 1*0.5 verz.",$("FSA").state,$("FSA").trackContact.autoAccelerationSpeed) end defer (0.5,"v2") elseif deferredCall=="v2" then if $("FSA").state==1 then print("FS aktiviert 2*0.5 verz.",$("FSA").state,$("FSA").trackContact.autoAccelerationSpeed) end end ... und noch ein Ereignis "Signal schaltet"... if signal.state==1 then print("Signal schaltet.",$("FSA").state,$("FSA").trackContact.autoAccelerationSpeed) end Wird nun die Fahrstraße aktiviert ergibt es folgendes Ereignisprotokoll... Es wird zwar in Zeile 3 sofort der Signalzustand 1 ausgegeben, jedoch entspricht der Beschleunigungswert noch dem Wert von Signalstellung 0 (0). nach der ersten Verzögerung von 0.5 Sekunden ergibt sich in Zeile 5 das gleiche... Dann schaltet das Signal... In Zeile 8 wird der Signalzustand 1 ausgegeben und der Beschleunigungswert von Signalstellung 0 (80). nach der zweiten Verzögerung von weiteren 0.5 Sekunden stimmt nun auch der Wert beim Auslesen über die Fahrstraße in Zeile 10. Das Signal schaltet also "sicher" zwischen 0.5 und einer Sekunde (Animation ist abgelaufen). Da die Lok sehr kurz ist, und das Signal nach dem Aktivieren der Fahrstraße wieder auf 0 geschaltet wird, wenn die Mitte der Lok das Signal erreicht hat (ist nach ca. 3 Sekunden der Fall), bleibt mir ein Zeitfenster von zwischen einer und drei Sekunden um den Beschleunigungswert zu ändern. Natürlich ist der "sichere" Weg über "Signal schaltet"... aber dies ist ein zusätzliches Ereignis und ich wollte es nur über das Fahrstraßenereignis machen, da hier schon der Bezug zum richtigen Signal über die Wegpunkte der Fahrstraße gegeben ist... Kleines Fazit: ... ausgelesener Signalzustand ist nicht in jedem Fall der tatsächliche Signalzustand... Gruß EASY Bearbeitet 13. Juli 2022 von EASY
prinz Geschrieben 13. Juli 2022 Geschrieben 13. Juli 2022 vor einer Stunde schrieb EASY: Kleines Fazit: ... ausgelesener Signalzustand Ich denke, schon. Nach dem relevanten Ereignis „Signal schaltet“ stimmen die Werte. Schöner wäre es, wenn sich die Einstellungen für die Signalbegriffe einzeln über die Eigenschaften regeln ließen. Gruß, Wolfgang
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden