Zugkraft über Script file berechnen und setzen

Discord Einladung
Trete unserem Discord-Server bei (klicke hier zum Beitreten).
  • Liebe Community!


    Um die Reichweite an potentiellem Wissen zu vergrößern, möchte ich mein Problem auch hier schildern. Ich arbeite derzeit an einem Skriptupdate für den RSSLO 4010er (apparently nutzt er das Skript von der SZ363). Das sollte der erste Step für ein weiteres Soundupdate sein. Als ersten Schritt habe ich dafür im Skript die Fortschaltgrenzen und Zeiten richtig gesetzt und die Motorströme und die Leistung anhand der korrekten Formeln für Reihenschlussmotoren berechnet. Dies passiert in jedem Simulationsschritt. Damit die TractiveEffortVsSpeed/Throttle nicht dazwischenpfuschen, habe ich sie quasi neutralisiert, indem ich in der Speed-File eine konstante Leistung etwas über der maximalen Leistung angegeben habe und den Throttle auf 1 gesetzt hab, sodass es dafür keine Multiplikatoren gibt. Im Skript wird für den Regulator schließlich ein Wert zwischen 0 und 1 normiert auf die angegebene Maximalleistung pro Motor gesetzt. Das schien mir der beste Approach für eine möglichst genaue Simulation zu sein. Die Motorwiderstände sind dabei aus der Leistungstafel des Motors und mehreren Leistungspunkten über die Verlustleistung berechnet. Da die Induktivität mit dem Arbeitspunkt schwankt, habe ich als Dämpfung eine Exponentialfunktion verwendet, um nicht im Skript langsame DGLS lösen zu müssen.

    So viel zur Beschreibung. Mein Problem ist jetzt, dass, obwohl die Werte alle aus dem realen Fahrzeug stammen und in meinen Augen korrekt berechnet werden, die Leistung im Spiel viel zu hoch ist. Bereits bei der ersten Stufe gerät das Fahrzeug direkt ins Schleudern und beschleunigt über alle Maßen. Habe ich irgendwas falsch verstanden, wie der Train Sim mit Leistungen und Kräften umgeht? Hab ich was übersehen oder stimmt etwas in meiner Logik im Script selber nicht? Nachdem RWA einige sehr genaue Addons erschaffen hat, würde ich mich freuen, wenn ihr mich auf die richtige Spur leiten könntet. Die geänderten Files sind im Anhang ersichtlich.


    (Anm.: Ich habe einige Programmiererfahrung in C# und Java, für Lua ist das jedoch mein erstes Projekt, deswegen bitte hinsichtlich des Codestyles nachsichtig sein.)

  • Steve

    Hat das Thema freigeschaltet.
  • Moin Transalpin4010

    nur ganz kurz angerissen, denn mein Kenntnisstand zu diesem Thema äußerst rudimentär - ÖHM!

    Anbei hier ein Diagramm einer E-Lok: (Link zum Diagramm https://www.johannes-strommer.…leistung-geschwindigkeit/ )


    An dieser Diagrammkurve arbeitet sich die Engine des TSC ab. Wobei die senkrechte Y-Achse in Kilonewton (kN) und die waagerechte X-Achse in Miles per Hours (MPH) gesetzt werden muss.

    Wo sind dann diese Werte zu finden, in welcher Datei?
    Pfad jeweils irgendwie dann hin zu (Beispiel hier der ICE aus RailValley1)


    \RailWorks\Assets\DTG\RhineValley1\RailVehicles\Electric\ICE3\Default\Simulation\

    TractiveEffortVsSpeed.dcsv

    Diese Datei wird mit einem normalen Editor (z.B. Notepad++) bearbeitet. Es werden zwei Werte eingetragen; zu der jeweiligen Geschwindigkeit in mph die dazugehörige Kraft in kN. Und ja, immer MPH eintragen, auch wenn dann im Game km/h angezeigt werden.
    Die Physik der Exponentialfunktion des steigenden Gegendrucks des Luft- und Rollwiderstandes, ist im Kernel des TSW eingepflegt - will sagen, k.A. wo man das verändern könnte?

    Anbei als Beispiel noch die Kraft/Geschwindigkeitsdatei eines ICE als TractiveEffortVsSpeed.7z. Bitte entpacken! Diese Datei stammt aus einem Update, Link:
    [DTG] [MK] ICE 3M Funktionsupdate Beta v0.3 - Rail-Sim.de - Die deutsche Train Simulator Community

    Viel Erfolg mit deinem Projekt!

    Hoffe, habe nicht zu viel dummes Zeug geschrieben, verbleibe ich

    mfG

    Henry