Jump to content

GBS: Variable Spur-Reservierung durch Fahrstraßen


Empfohlene Beiträge

Hallo zusammen,

könnt ihr mich bitte bei der Reservierungs-Schaltung im GBS unterstützen? Ich komme da irgendwie nicht weiter.

Mein Ziel ist die Aktivierung des Signalstatus "1 - Spur reserviert" in den GBS-Elementen, wenn das zugeordnete Gleis Teil einer aktiven Fahrstraße ist (Wer hätte das gedacht... 9_9).

Mein Problem: Ich schaffe es nicht, die Fahrstraßen-Bedingung in der EV als variablen (allgemeingültigen) Wert auszulegen.

Hier die passenden Bilder aus meiner EV:

image.jpeg.844c29d1109364e07ed9e9ec52a86952.jpeg

Jedem überwachten Gleis ist das Schlagwort "GBS" und der passende GBS-Baustein als Objekt zugewiesen.

image.thumb.jpeg.04811e611c5397c2a2ecc6f0f69385d1.jpeg

Das funktioniert bisher:

  • Ein 1 Sekunden Timer fragt den Zustand jedes mit dem GBS überwachten Gleises ab (Schlagwort "GBS").
  • Beim Aktivieren einer bestimmten Fahrstraße (Hier: "Köln -> Ds1") wird der Reservierungs-Status aktiviert.
  • Sobald ich ein Fahrzeug auf das Gleis stelle (mit oder ohne aktiver Fahrstraße), wird der Besetzt-Status aktiviert.
  • Ohne aktive Fahrstraße oder Fahrzeug auf dem Gleis fällt der Status auf "0 - Spur frei" zurück.

Ich habe bereits versucht, Fahrstraßen-Listen in den Gleisen zu hinterlegen, multiple Bedingungen zu verwenden - Das war alles nicht zielführend. Selbstverständlich habe ich mich bereits im Forum umgesehen, die Doku gecheckt und mir die bekannten Videos bei Youtube angeschaut.

Wie bekomme ich den statischen Fahrstraßen-Eintrag (Roter Pfeil) dort raus, damit:

  1. Mehrere Fahrstraßen als Bedingung für den Reservierungs-Status gelten?
  2. Ein einziger EV-Eintrag für ALLE Gleise gültig ist?

Am liebsten wäre mir ein Eintrag nach dem Prinzip: "Wenn Du (Gleis) Teil einer gerade aktiven Fahrstraße bist, dann löse den Reservierungs-Status aus!" Alles ohne Angabe von spezifischen Fahrstraßen oder Gleisbezügen.

Vielen Dank schon mal für eure Hilfe und sorry für den langen Text... :$

Gruß
Alex

Bearbeitet von alexander42
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Alexander,
gerne würde ich dir die Idee mit dem Timer ganz ausreden. Der erzeugt in deinem Fall eine Menge Ballast für den Rechner.
Jede Sekunde klapperst du damit alle (relevanten) Gleise ab, um (als Beispiel) einmal alle 10 Minuten eine Veränderung wahrzunehmen und darauf zu reagieren.

Wenn ein Fahrzeug ein neues Gleis betritt, dann ist das im Studio ein Ereignis. Dieser Fall muss von der Software sowieso behandelt werden, weil dieser Vorgang Bedeutungen für den gesamten Betriebsablauf hat. Deshalb gibt es ein Ereignis "Zug betritt Gleis", welches du nutzen kannst um dich mit einer eigenen Aktionsliste an dieses Ereignis dranzuhängen. Dieser Weg hat den Vorteil, dass du nur wenige Gleise behandeln musst. Und diese auch nur in den seltensten Fällen zum selben Zeitpunkt. Außerdem reagiert die EV zeitnah, wenn du diesen Auslöser wählst.

Dasselbe gilt für die Fahrstraßen. Die Aktivierung einer Fahrstraße ist im Studio ein Ereignis. (Es sind ja in diesem Zusammenhang Aufgaben zu erfüllen.) Damit kannst du auch diesem Ereignis in der EV weitere Aktionen hinzufügen.

Und zuletzt gibt es auch das Ereignis "Zug verlässt Gleis".

Wenn du diese Ereignisse für dich nutzt, nutzt du die Fähigkeiten der EV besser und effizienter.

Nachteil: Ein Fahrzeug, welches du händisch aufgleist, löst kein Ereignis "Zug betritt Gleis" aus. Und wenn du es wieder von der Platte schmeißt, erfährt die EV das ebenso wenig.
Aber diese beiden Fälle sind doch eher die Ausnahme. Und ein neu aufgegleister Zug meldet sich schon beim nächsten Übergang auf ein neues Gleisstück.

Vorteil: Mit den genannten Ereignissen bekommst du auch alle beteiligten Auslöser zu fassen. Und diese Auslöser sind der Schlüssel zu generischen Skripten. Die erlauben dir, dich in einem allgemein formulierten Skript auf genau die Objekte zu beziehen, die akut das Ereignis ausgelöst haben.

Wenn ich dich umstimmen konnte, dann helfe ich dir gerne bei der Entwicklung deines Skripts.

Viele Grüße
Götz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Geschrieben (bearbeitet)

Hallo @Goetz,

in Ordnung, der Timer fliegt raus. Ich habe bereits an anderen Stellen einen Timer verwendet. Auch dort hatte ich schon das Gefühl eines "Workarounds" durch Unkenntnis eines besseren Weges. Ganz blöd ist auch, dass durch die Timer extrem viele Einträge in der EV-Protokollierung erscheinen und diese praktisch unbenutzbar wird.

Die "Echtzeitüberwachung" manueller Fahrzeug-Aufgleisungen war für mich tatsächlich ein Hauptgrund für diesen Ansatz. Aber, wie Du sagst, ist das im Alltag evtl. kaum relevant. Vielleicht wird das beim Rangierbetrieb nochmal interssant. Bis dahin möchte aber erstmal eine einfache (möglichst elegante B|) Lösung bauen und diese im Live-Einsatz erleben.

Wie geht's weiter? Brauchst Du zusätzliche Infos oder Beispiele von mir?

Gruß
Alex

 

Bearbeitet von alexander42
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor einer Stunde schrieb alexander42:

Wie geht's weiter?

Darf ich dir ein etwas älteres Video von mir zeigen?
Es wurde noch mit der Version 7 des Studios erstellt.
Und es war ein Live Stream auf Twitch. Also kein zügiges Tutorial, sondern 50 Minuten holpriges Herantasten an die Aufgabe.

Aber es enthält schon einige grundlegende Infos, die für deine Zwecke eventuell nützlich sind.

Auch wenn das Gezeigte sicher nicht in allen Punkten deinen Vorstellungen entspricht, siehst du doch zumindest eine Reihe von Hilfsmitteln in der EV und ihre Verwendung.

Viele Grüße
Götz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Geschrieben (bearbeitet)

Hallo zusammen,

ich hab da mal was gebastelt... Die aktuelle Version meiner Anlage (CID E3847889-BFB3-45F5-8B0B-3C567A78DFEC) enthält die erste Version vom GBS.

@Goetz Vielen Dank für das Video. Das war sehr hilfreich, besonders das Schalten der GBS-Elemente als Signal war für mich entscheidend. Ich finde, die Umsetzung mit den Gleiskontakten ist sehr zweckmäßig. Es gibt zwar keine Echtzeit-Belegtmeldung, aber machmal ist gut halt auch gut genug (zumindest im Modell 9_9).

Ich habe mir auch gleich noch dein Video mit den Fahrstraßenschaltern genehmigt. Das war schon kniffliger und hat etwas gedauert, bis ich das Prinzip der in Listen versteckten Tabellen und Parameterübergaben begriffen hatte. Ist aber schon recht nützlich.

Für mich ist das erstmal so ok. Vielleicht komme ich später zum GBS zurück und rüste auf. Jetzt muss ich erstmal etwas anderes machen *kopfrauch*. 

Nochmals vielen Dank und ein schönes WE!

Herzliche Grüße
Alex

 

Screenshot_1.jpg

Bearbeitet von alexander42
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...