Jump to content

Bedingungen für Gleiskontakte


fzonk

Empfohlene Beiträge

Hallo @Neo

Gibt es vielleicht die Möglichkeit eine Bedingung für Gleiskontakte mit einzufügen welche als Option beinhaltet „in Richtung A“ und „in Richtung B“. Man kann jetzt schon für die Gleiskontakte eine oder beide Richtungen Einstellen, jetzt habe ich aber den Fall dass ich einen Gleiskontakt mehrfach in der Steuerung nutzen will, die Richtungen in die die Züge fahren sind wichtig. Ich möchte dass der Zug in Richtung A eine andere Aktion auslöst als in Richtung B. Aktuell kann ich aber nur im Gleiskontakt „einmalig“ die gewünschte Richtung hinterlegen oder eben für alle Ereignisse beide Richtungen hinterlegen. In meinem Anwendungsbeispiel handelt es sich um Rangierabläufe, daher ständig wechselnde Richtungen. Durch eine Bedingung für Gleiskontakte könnte ich mir zusätzliche sparen.

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 3 Monate später...

Moin,

habe das mal für das setzen einer Geschwindigkeitsbegrenzung benutzt, in Richtung 1 = 40 km/h und in Richtung -1 = Reisegeschwindigkeit aus einer Lok-Variabeln.

Funktioniert soweit auch gut, wenn es sich um vorwärts fahrende Fahrzeuge handelt. Wenn eine Lock mit -60 km/h ankommt, dann bekommt sie die Anweisung +40 km/h und wechselt somit die Fahrrichtung.

Wie ich eine aktuelle Geschwindigkeit ermittle, in eine Variable schreibe und den Wert wieder an das Fahrzeug übergebe ..... ist mir soweit klar.

Was ich optimalerweise bräuchte, wäre dass beim Betreten des Gleiskontakts das Vorzeichen ermittelt wird und z.B. beim Verlassen des gleichen Gleiskontakts die 40 km/h mit dem richtigen Vorzeichen an das Fahrzeug übergeben wird.

Gibts da eine Lösung ohne Lua ?

Danke Gruß Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nochmal ein Update.........

 

Beim Testen ist mir noch ein Problem aufgefallen ..... das mit der Geschwindigkeitsbegrenzung funktioniert einwandfrei aber .....

Wenn die Lok auf Ihre eigene Reisegeschwindigkeit beschleunigen soll, so funktioniert das bei Vorwärtsfahrt ebenfalls sehr gut.

Aber was ist bei Rückwärtsfahrt, da fährt sie dann in die falsche Richtung.

Ich habe den Loks jetzt eine "Reise Speed +" und eine Reise Speed -" gegeben, in denen die Reisegeschwindigkeit einmal mit z.B. +80 km/h und einmal mit -80 km/h festgelegt ist.

In Abhängigkeit der aktuellen Geschwindigkeit beim betreten des GLK +x oder -x, wird dann die Reisegeschwindigkeit ausgewählt.

Wenn VIst > 0, dann wird "Speed Reise 80" ausgewählt, sonst "Speed Reise -80".

GLK Speed Richtung 1 -1.JPG

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo bigrala,

über die allgemeinere Aktion "Eigenschaft/Variable setzen" kannst du die Zielgeschwindigkeit per Multiplikation negieren:

Rechnen.jpg.4b6383c9487a8d3ec374fb8988714b52.jpg

Somit brauchst du nur die absolute Geschwindigkeit in den Loks zu speichern und das Negieren nur bei einer negativen Ist-Geschwindigkeit durchführen.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @bigrala,

die Triebfahrzeuge auf meinen (zumindest neueren) Anlagen besitzen grundsätzlich zwei Objektvariablen "VSoll" (Reisiegeschwindigkeit) und "VBrems" (Brems- oder Annäherungsgeschwindigkeit an Haltepunkt). Bei der Definiton dieser Objektvariablen (die für jedes Fahrzeug individuell eingestellt werden können) sind die Werte zunächst einmal alle positiv. Nun frage ich an durch einen Gleiskontakt  definierten "neuralgischen Punkten" (z.B. an den Bahnhofs-Einfahrten, auch in meinen Anlagen-Bausteinen) beim Passieren die Ist-Geschwindigkeit ab. Ist deren Vorzeichen entgegengesetzt zum Vorzeichen der Objektvariablen VSoll und VBrems, wird deren Vorzeichen umgekehrt, sodass nun die "Richtung" der Soll- und Bremsgeschwindiglkeit mit jener der aktuellen Ist-Geschwindigeit übereinstimmt.

Wenn nun aus irgend einem Grund die Fahrtrichtung des Zuges umgekehrt werden soll, verknüpfe ich diese Aktion gleich mit der Umkehrung des Vorzeichens bei den Objektvariablen VSoll und VBrems.

So habe ich immer die Gewähr, dass die Ausrichtung der in den Objektvariablen hinterlegten Geschwindigkeitswerte immer mit der aktuell für den Zug "eingestellten" Fahrtrichtung übereinstimmt. Soll nun dem Zug irgedwo die Soll- oder Bremsgeschwindigkeit zugewiesen werden, braucht nur der Wert aus der jeweiligen Objektvariable übernommen zu werden. Soll dagegen ein anderer Wert als in den Objektvariablen VSoll und VBrems hinterlegt zugewiesen werden, genügt eine einfache Abfrage auf das Vorzeichen der Objektvariable VSoll (oder VBrems), um dem zuzuweisenden "anderen" Geschwindigkeitswert das "richtige" Vorzeichen mitgeben zu können.

Dieser Mechanismus funktioniert insbesondere auch beim Start eines stehenden Zuges. Soll die neue Geschwindigkeit einem fahrenden Zug zugewiesen werden, genügt auch eine Abfrage auf das Vorzeichen von dessen aktueller Ist-Geschwindigkeit, um sich für das korrekte Vorzeichen der zuzuweisenden Geschwindigkeit zu entscheiden.

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...