Funktionsbeschreibung des

Bremsassistenten

 

Aufgaben des Bremsassistenten:

Die bisher im TrainWizard vorhandenen Möglichkeiten die Bremspunkte von Zügen im Automatikbetrieb festzulegen sind kaum ausreichend und die Festlegung der Einstellungen ist relativ schwierig und erfordert viel Zeit. Manche Einstellungen beeinflussen sich zudem gegenseitig und erfordern ein ständiges nachstellen der Parameter.

Der neue Bremsassistent soll automatisch die durch unterschiedliche Maximalgeschwindigkeiten und Beschleunigungen der einzelnen Loks verursachten Unterschiede beim Bremsen ausgleichen.

Außerdem soll er das Bremsverhalten der Züge automatisch an die Blocklänge anpassen und optimal punktgenau halten.

Nachteile der bisherige Beschleunigungsfunktion des TrainWizard's

Die Beschleunigung ist in Schritten im Bereich zwischen 1 und 32 einzugeben und versteht sich in Fahrstufen, die pro Sekunde an die Lok beim Beschleunigen und Bremsen ausgegeben werden.

Dieses Verfahren hat einerseits den Nachteil, dass die tatsächlich Beschleunigung von der Fahrstufenanzahl des Decoders abhängt und auch der direkte Bezug zu physikalischen Einheiten schwierig herzustellen ist.

Bei Decodern mit 28 Stufen wird mit dem Eingabewert von 1 eine Beschleunigung erreicht die fast noch zu groß ist (Bremsweg ist zu kurz). Die Verstellschritte in diesem Bereich sind aber viel zu grob da man nur Systembedingt verdoppeln oder halbieren kann. Ein Wert von 2 ist also schon viel zu groß und ein Wert von 0,5 (wenn er ginge) wäre viel zu klein.

Das Konzept funktioniert etwas besser bei 128Fahrstufen, die sind aber für den Handbetrieb nicht empfehlenswert.

Neue Beschleunigungsfunktion für den TrainWizard mit variabler Ausgabezeit

Die Beschleunigung bleibt weiter in Schritten zwischen 1 und 128 eingebbar, versteht sich aber als Beschleunigungszeit in Sekunden. Der TrainWizard muss also jetzt aus dem Eingabewert für die Beschleunigung und der Fahrstufenanzahl für den Decoder die Zeit berechnen mit der die Fahrstufen ausgegeben werden.

Um das System nicht zu überfordern, muss für die Ausgabe an die Schnittstelle eine Untergrenze für die jetzt variable Ausgabezeit eingeführt werden.

Die Ausgabezeit der Fahrstufen in 1-er Schritten an die Schnittstelle berechnet sich zu:

T_aus = T_b / (Fst_max – Fst_min) für T_aus > T_min

Für den Fall T_aus < T_min muß das aufgerundete Verhältnis T_min / T_aus berechnet werden.

T_aus wird mit diesem Faktor multipliziert und die Anzahl der pro Takt ausgegebenen Fahrstunfen ist gleich dem aufgerundeten Verhältnis T_min / T_aus

T_aus Variable Zeitbasis für die Fahrstufenausgabe in Sekunden

T_min Minimale Zeitbasis für die Fahrstufenausgabe in Sekunden

Fst_max Fahrstufenanzahl des Decoders

Fst_min Fahrstufe für v_min

T_b Eingegebene Bremszeit von v_max auf v_min

Beispiel 1:

Decoder mit 128 Stufen, Fst_min = 10, Bremszeit 10 Sekunden, T_min 0,5 Sekunden.

T_aus = T_b / (Fst_max – Fst_min) = 10 / (128 – 10) = 0,084 Sekunden.

Das ist keiner als T_min, also Verhältnis T_min / T_aus berechnen:

X = 0,5 / 0,084 = 5,9 also aufgerundet 6

Das neue T_aus ist demnach 0,084 * 6 = 0,504 Sekunden

Es werden also beim Beschleunigen und Bremsen alle 0,504 Sekunden 6 Fahrstufen ausgegeben.

Beispiel 2:

Decoder mit 28 Stufen, Fst_min = 5, Bremszeit 20 Sekunden, T_min 0,5 Sekunden.

T_aus = T_b / (Fst_max – Fst_min) = 20 / (28 – 5) = 0,87 Sekunden.

Das ist größer als T_min, also wird beim Beschleunigen und Bremsen alle 0,87 Sekunden 1 Fahrstufe ausgegeben.

Durch dieses Verfahren wird sowohl eine gleichmäßige Ausgabe der Fahrstufen bei günstiger Systemauslastung erreicht. Außerdem ist die Beschleunigung nicht mehr von der Fahrstufenanzahl des Decoders abhängig und der direkte Bezug zu einer physikalischen Einheit ist hergestellt und das ist eine grundlegende Bedingung für den Bremsassistenten.

Weitere Änderungen die für den Bremsassistenten benötigt werden

Die Maximalgeschwindigkeit ist definiert als die Istgeschwindigkeit der Lok, die bei der maximalen Fahrstufe des Decoders erreicht wird.

Am günstigsten ist ein Eingabebereich von 1 bis 128 und eine Einheit von cm/s, das deckt alle sinnvollen Modellgeschwindigkeiten von Spur 0 bis Z ab.

Aus der Gleichung

S_max = (v_max – v_min) * T_b / 2

berechnet der TW den maximalen Bremsweg der Lok von v_max auf v_min und zeigt ihn gleich an.

Die Einheiten müssen umgerechnet und v_min aus der Fahrstufe berechnet werden:

v_max = v_maxin / 100 in m/s

v_min = v_max * Fst_min / Fst_max in m/s

v_max Maximalgeschwindigkeit der Lok in m/s

v_min Minimalgeschwindigkeit der Lok in m/s

v_maxin Eingabewert der Maximalgeschwindigkeit der Lok in cm/s

Fst_min Fahrstufe für v_min

Fst_max Fahrstufenanzahl des Decoders

T_b Bremszeit von v_max auf v_min in Sekunden

S_max Maximaler Bremsweg von v_max auf v_min in Metern

Beispiel:

Decoder mit 28 Stufen, Beschleunigung 20 Sekunden, v_maxin = 35, Fst_min = 7.

v_max = 35 / 100 = 0,35 m/s

v_min = 0,35 * 7 / 28 = 0,0875 m/s

S_max = (0,35 – 0,0875) * 20 / 2 = 2,625 Meter.

Durch diese Berechnung und Anzeige in einer verständlichen Einheit hat der Benutzer sofort die Rückmeldung, ob die eingestellten Werte zu seinen Blocklängen passen.

Das einzige was der Benutzer noch tun muss, ist die Istgeschwindigkeit der Lok bei der Maximalfahrstufe des Decoders ein einziges Mal zu messen und mit dem Decoder darauf abzugleichen.

Alle anderen Werte für die Geschwindigkeiten vorwärts und rückwärts im TrainWizard als auch die Beschleunigung können nach diesem Abgleich beliebig verändert werden und der Bremsassistent wird immer optimal bremsen.

Um überall zu funktionieren benötigt der Bremsassistent die Blocklänge aller Blöcke und nicht nur die der Bahnhofsblöcke. Als Eingabefeld bietet sich da das Feld für ‚Einfahrverzögerung‘ im Sensormenü an, in das die Blocklänge in Dezimeter eingegeben wird. Als Blocklänge ist die Strecke zwischen den Mittelpunkten der Sensoren definiert.

Funktion des Bremsassistenten

Es gibt zwei unterschiedliche Fälle und Strategien, eine für den Fall S_ist < Blocklänge und eine für den Fall S_ist > Blocklänge.

Fall S_ist < Blocklänge:

Der Bremsassistent berechnet beim Erreichen des Sensors mit dem gebremst werden soll den Istbremsweg und stellt fest ob er kleiner ist als die Blocklänge:

S_ist = (v_ist – v_min) * T_b / 2 * Fst_ist / Fst_max

Die Einheiten müssen umgerechnet und v_ist aus der Fahrstufe berechnet werden:

v_min = v_max * Fst_min / Fst_max in m/s

v_ist = v_max * Fst_ist / Fst_max in m/s

v_max Maximalgeschwindigkeit der Lok in m/s

v_min Minimalgeschwindigkeit der Lok in m/s

v_ist Istgeschwindigkeit der Lok in m/s

Fst_min Fahrstufe für v_min

Fst_ist Istfahrstufe

Fst_max Fahrstufenanzahl des Decoders

T_b Bremszeit von v_max auf v_min in Sekunden

S_ist Istbremsweg in Metern

Beispiel:

Decoder mit 28 Stufen, Beschleunigung 20 Sekunden, v_maxin = 35, Fst_min = 7, Fst_ist = 14.

v_max = 35 / 100 = 0,35 m/s

v_min = 0,35 * 7 / 28 = 0,0875 m/s

v_ist = 0,35 * 14 / 28 = 0,175 m/s

S_ist = (0,175 – 0,0875) * 20 / 2 * 14 / 28 = 0,4375 Meter.

Daraus kann nun die Verschiebung des Bremspunktes berechnet werden:

S_br = S_Block / 10 – S_ist

S_br Verschiebung des Bremspunktes in Meter

S_Block Blocklänge in Dezimeter

S_ist Istbremsweg in Metern

Beispiel:

Blocklänge 30 Dezimeter, sonst wie oben

S_br = 30 / 10 – 0,4375 = 2,5625 Meter

Und daraus die Verzögerungszeit T_br für den Bremspunkt:

T_br = S_br / v_ist

Beispiel:

T_br = 2,5625 / 0,175 = 14,64 Sekunden

Der TW fährt also am Bremssensor zunächst mit v_ist weiter, beginnt nach 12,14 Sekunden mit dem Bremsen und trifft den zweiten Sensor punktgenau.

Fall S_ist > Blocklänge:

Der Bremsassistent berechnet beim Erreichen des Sensors mit dem gebremst werden soll den Istbremsweg und stellt fest ob er größer ist als die Blocklänge:

S_ist = (v_ist – v_min) * T_b / 2

Berechnung siehe oben unter S_ist < Blocklänge

In diesem Fall wird die erforderliche Bremszeit von v_max auf v_min neu berechnet:

T_b = 2 * S_Block / v_ist

Für das obige Beispiel ergibt sich bei einer Blocklänge von 1 Meter:

T_b = 2 * 1 / 0,175 = 11,42 Sekunden

Der TW beginnt am Bremssensor sofort zu Bremsen und overruled die vom Benutzer eingestellte Bremszeit von v_max auf v_min mit der berechneten Bremszeit. Damit wird der zweite Sensor wieder punktgenau getroffen.

Randbedingungen für den Bremsassistenten

Der Bremsassistent sollte pro Lok ausgeschaltet werden können, z.B. wenn die Maximalgeschwindigkeit der Lok auf 1 cm/s gesetzt wird. Damit ist die Funktion kompatibel zum bisherigen TW-Verhalten

Bei geregelten Decoder wird durch das lineare Verhalten von v_ist über t eine hohe Präzision erreicht. Ungeregelte Decoder haben die Eigenschaft dass v_ist über t nach unten durchhängt, das ergibt ein Verhalten auf der sicheren Seite, es wird also eher etwas zu schnell gebremst.

Bei Sensoren an denen gekehrt wird, muss der Bremsassistent unwirksam sein.