Posts by Tovak

    good grief!


    LUA Source Code: Verspätungen
    1. function neueAbfahrt(Abfahrt, Ankunft, Warte)
    2. if(Abfahrt - Ankunft - Warte) % 86400 > 43200 then
    3. return (Ankunft + Warte) % 86400
    4. else
    5. return Abfahrt
    6. end
    7. end

    Das übernehme ich gleich mal zum Testen .


    Danke.


    Hallo,

    ich habe beim "überfliegen" bisher gesehen, dass bei allen Varianten "nur" mit Variablen gearbeitet wird.

    Darum, wie immer, die Werte für die errechnete Abfahrtszeit für die Prüfung (auch) im Tag-Text oder Data-Slot speichern, damit die Abfahrt auch funktioniert, wenn zwischen Ankunft und Abfahrt die Anlage neu gestartet wird.

    Das sowieso. Die korrekte Anfahrtzeit kommt in entsprechende Slots und wird dann zum Vergleich mit der aktuellen Zeit herangezogen

    Hallo Rayler,


    ähnlich wie du es sagst, hat der Zug eine Mindestaufenthaltsdauer von X Minuten im Bahnhof. Dazu hat er noch eine Fahrplanmäßige Abfahrtzeit.


    Ich nutze zwar dein SPDRS60, aber nur die Elemente. Den Rest hab ich selber geschrieben, da ich näher an die Stellwerksfunktionen im Bezug auf Fahrstrassen usw. möchte, als es mit deinen Scripten möglich ist.

    ... und wenn du für den "Mitternachtssprung" einen extra Boolean setzt?


    :aq_1:

    Mach ich jetzt, indem ich den Übertrag (>1440 Minuten) dazu nutze. Wie oben schon erwähnt, addierte ich auf die aktuelle Zeit erst die Wartezeit und nutze das Modulo erst NACH dem Vergleich mit der Sollzeit.

    mal schauen, ob das klappt.

    Aber gerade eine Idee gehabt:


    Vielleicht den logischen Ablauf:
    (Achtung, kein wirkliches LUA ;) )

    Funktioniert, wenn SollAbfahrt und IstAbfahrt am gleichen Tag liegen.

    Code
    1. Abfahrt = EEPTimeH * 3600 + EEPTimeM * 60 + EEPTimeS + Aufenthaltsminuten * 60
    2.     Sollabfahrt = Abfahrtszeiten[zugname] --oder andere Quelle für die Sollabfahrtszeit
    3. If Sollabfahrt > Abfahrt then Abfahrt = Sollabfahrt

    Genau da gibt es Probleme, wenn der Tagwechsel passiert.


    Beispiel:


    Sollabfahrt = 23:58 und IstAbfahrt = 00:02, da Verspätung


    Dann würde der Zug erst am nächsten Tag um 23:58 abfahren.

    Soweit ist mir das auch schon klar, wobei man das


    1. if Abfahrt > 86400 then -- 24 * 3600 = 86400
    2. Abfahrt = Abfahrt - 86400
    3. end


    einfach mit


    Abfahrt = Abfahrt mod 86400 


    ergänzen kannst.


    Das Problem ist die Entscheidung: Abfahrtzeit nach Fahrplan oder Zug verspätet und nur Wartezeit. abwarten, Wenn das am Tageswechsel passiert, kann man eben nicht mehr mit kleiner als prüfen.

    Hallo an die LUA Profis ;)


    ich überlege schon einige Zeit, aber mir will keine Lösung in LUA für folgendes Problem einfallen:

    Ein Zug hat eine Abfahrtzeit um hh:mm, soll aber mindestens X Minuten am Bahnsteig stehen. Wenn er pünktlich kommt, würde er zur Abfahrtzeit losfahren, wenn er aber etwas verspätet ankommt, dann würde er aber mindestens die X Minuten am Bahnsteig warten.


    Mit dem EEP Internen Fahrplan kann man das Problem nicht lösen, da man nicht weiß, ob zu der hinterlegten Abfahrzeit nicht ein Güterzug noch in dem Gleis steht.

    Hauptproblem bei den Gedanken ist der Tageswechsel. Sprich wenn der Zug z.B. um 23:58 abfahren soll, aber erst um 00:02 ankommt.


    Die Abfahrzeiten, zu stellendes Signal können der Funktion übergeben werden.


    Wie kann man das Problem mit LUA lösen ?

    Ich hab gerade meinen Arbeitsspeicher von 32 GB auf 64GB im laptop erweitert.


    Vorher: Anlage ca: 28 im Arbeitsspeicher (laut Taskmanager). Aber recht schnell fing Windows 10 an, die Daten zu komprimieren im Speicher. Wenn die Kamera sich oder der Zug sich schnell bewegte gingen die Frames für einen Augenblick in den Keller. aber die Festplatten LED ging kurz an.


    Jetzt mit 64 GB komprimiert Windows kaum noch und diese Mini-Lags der FPS sind weg. Scheinbar versucht Windows ca. 50% des Speichers frei zu halten durch komprimieren bzw. swappen.