Jump to content

Automatisierung der Gleisaufteilung eines Bahnhofs


frieder

Empfohlene Beiträge

Hallo zusammen,

ich habe in meiner Anlage einen riesigen Bahnhof mit 14 Gleisen. Dort ist folgende Situation:

Auf Gleis 1 fährt ein Zug ab. Zugleich fährt ein anderer Zug ein und wird zunächst zu Gleis 3 geleitet. Da Gleis 1 durch die Abfahrt des Zuges frei wird, merkt das Programm dies und schaltet die Weiche um. Dadurch wird der einfahrende Zug "aufgeteilt".

Wie kann ich das Programm dazu bringen, bei Abfahrt des Zuges erst mal zu prüfen, ob ein Zug gerade auf der Weiche, die zu dem Gleis lenkt, fährt, und dann erst bei freier Weiche umschaltet?

Am besten wäre es für mich, wenn der Antworter dabei jeweils Screenshots für jedes Ereignis, dazu für jeden Reiter (Ereignis, Bedingungen, Aktionen) einfügt.

Grüße,

Frieder

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frieder,

es ist für den Leser Deiner Frage, trotz der von Dir recht verständlichen Schilderung Deines Problems, nicht immer leicht, ohne genaue Kenntnis der Ereignisverwaltung eine passende Lösung von "außen" zu finden. Es hat sich daher in jedem Fall bewährt, wenn der Fragesteller seine Anlage als mbp.Datei seinem Beitrag anfügt. Dazu exportiert Du Deine Anlage in einen Ordner Deiner Wahl - meinetwegen in (Meine) Dokumente. Das Dateiformat .mbp wird automatisch erstellt und Du musst nur noch den Namen der Anlage eingeben. Wenn Du dann Deine Anlage hier zeigen möchtest, brauchst Du nur am unteren Rand Deines Beitrages auf "Dateien auswählen" klicken und fügst die mbp.Datei ein. Das war's und jeder, der Dir helfen kann, kann Deine Anlage sozusagen live sehen und damit auch den Fehler. Und hier wird Sie dann geholfen.:)

Gruß

streit_ross

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frieder

Mal eine Idee zu der EV " Bedingungen müssen erfüllt sein ( UND ) " , dort ein Eintrag zugeben " Fahrzeug steht auf einem Gleis / eine Straße " ( Version4 ) - dann die Weiche an geben die noch besetzt ist , entsprechend die Aktionen .

Meine damit müsste es eigentlich gehen .

Ich finde leider jetzt nicht die Spalte in der ich das auch so gelöst habe " z.B. Ampelanlage-Kreuzung ( Weiche rechts ) für Rechtsabbieger über eine Kreuzung .

So lange die Weiche besetzt ist , wird die Weiche nicht umgeschaltet , erst danach wenn das Fahrzeug die Weiche verlassen - hat schaltet die Weiche wieder .

Denke das ist das was Du auch hier brauchst ! 

Hoffe man konnte mich verstehen , was ich damit aussagen wollte !

Viele Grüße

H:xnS

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frieder,

vor 33 Minuten schrieb frieder:

heißt das, dass wenn das Ereignis ausgelöst wird, dass das Programm wartet, bis die "Bedingungen wahr sind?

nein. Wenn das Ereignis ausgelöst wird, wird zunächst geprüft, ob zusätzliche Bedingungen vorhanden sind. Wenn es keine zusätzlichen Bedingungen gibt, werden die in der Ereignisdefinition hinterlegten Aktionen ausgeführt. Sind zusätzliche Bedingungen vorhanden, müssen diese erfüllt sein, damit die Aktionen ausgeführt werden. Sind beim Auslösen des Ereignisses in der Ereignisdefinition enthaltene zusätzliche Bedingungen nicht erfüllt, werden die Aktionen nicht ausgeführt. Es findet dann also keine (tatsächliche) Reaktion auf die Ereignisauslösung statt.

Wie @quackster schon anmerkte, gibt es keinen Mechanismus, bei nicht erfüllter Bedingung deren Erfüllung automatisch abzuwarten und dann die Aktionen auszuführen.

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frieder,

da Du Dich zunächst noch sträubst, Dein Anlage hier zur Ansicht freizugeben, versuche ich es trotzdem mal mit einer "Fernlösung". Also; Wenn Dein Zug Gleis 1 verlässt, schaltet er eine Weiche, die die Einfahrt des Zuges in Gleis 3 stört. Dann verlege doch das Gleis, welches die Störung verursacht nach "hinten". Zum Beispiel nimmst Du das Gleis, welches die Weiche zu Gleis 3 zu früh startet und hebst es hoch und lässt das eine oder die zwei oder die drei folgenden Gleise die Stelle des bis jetzt die Weichenstellung auslösende Gleis einnehmen. Und im Anschluss fügst Du das Auslösegleisin die neu entstandene Lücke ein.  Ich sehe gerade, dass BahnLand Dir antwortet. Du bekommst damit sehr wahrscheinlich einen neuen Lösungsvorschlag.

Gruß

streit_ross

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich noch mal...

du kannst das problem umgehen

deine weiche für gleis 1 wurde umgeschaltet (auf gleis 3) als ein zug auf gleis 1 eingefahren ist.

also sollte die weiche erst wieder umgeschaltet werden, wenn ein zug auf gleis 3 eingfahren ist.

vg quackster

Bearbeitet von quackster
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frank,

biite versetze Dich doch bitte in die Lage eines Frischlings. Wie soll derjenige Deine Worte interpretieren :""frage doch mal einen einfahrenden Zug ab". Seit wann können Züge auf eine Frage antworten und wie stelle ich sie ihnen? Du als weit fortgeschrittener Experte verstehst den Sinngehalt meiner ironischen Anmerkung aber eine "echte" Hilfe sollte angemessen anders formuliert werden.

streit_ross

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo streit_ross,

da hast du wahrscheinlich recht, dass meine Gedanken da etwas zu schnell waren. Ich werde mich die Tage mal hinsetzen und versuche eine nachvollziehbare Musteranlage zu bauen, wo man ein Beispiel bekommt wie man das Problem mit der Gleiszuordnung lösen könnte.

Für alle die es in einer meiner Anlage sich ansehen wollen, einfach mal die Anlage „TT Heimanlage 3500x1200“ (Content ID: C67BD531-103A-4437-8104-173B8F3710C7) anschauen.

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 22 Stunden schrieb BahnLand:

Wie @quackster schon anmerkte, gibt es keinen Mechanismus, bei nicht erfüllter Bedingung deren Erfüllung automatisch abzuwarten und dann die Aktionen auszuführen.

Doch! Setze eine Variable v = 0. Nun:

  Ereignis DeinEreignis -> Aktion setze v = 1.
  Ereignis Variable wird gesetzt v = 1 mit Bedingung erfüllt -> Aktion Sonstwas und setze v = 0 -> ansonsten Aktion setze v = 1.

Das frißt er so tatsächlich, probier's mal aus!

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Modellbahnfreunde

Screenshot_121.thumb.jpg.c195b4bf729a1db337e14573839ce9c1.jpg

Ich versuche eine Test-Anlage zubauen die für die EV gesteuert werden kann .

Das erste Bild zeigt die gesamte Anlage !

Nun folgen weitere Bilder von links nach rechts ........

Screenshot_123.thumb.jpg.9df2ae77ace1bffc695a4f718f3519ba.jpg

 

Screenshot_124.thumb.jpg.044f4a6eb311195205fb9cec11741943.jpg

 

Screenshot_125.thumb.jpg.7fcb5c3b4ab0b2b3712d28b128bf6e40.jpg

 

Screenshot_122.thumb.jpg.2894e0b177cdf0ca1e24a05a3d79c3b9.jpg

 

Screenshot_126.thumb.jpg.bee9edc022d3900ec9e7478af61d641c.jpg

 

Screenshot_127.thumb.jpg.6525e4c35f6bad835e6252a2cd48eb77.jpg

 

Screenshot_128.thumb.jpg.474071115e0811a49d02803907228f5d.jpg

 

Eins vorweg muss ich dabei schreiben , was so eigentlich nicht üblich ist .

Auf dieser Anlage sind mit der EV die Licht- und Formsignale mit der EV (Phase oder Signalbild ) verbunden . Das heisst z.B. : es ist vom Licht-Hauptsignal anhängig über die EV . 

Dabei ist unterteilt unter Einfahrsignale und Ausfahrtsignale und Weichensignale .

Vor den Signalen ( ausser Weichensignale ) ist immer ein SPERRWEICHE eingebaut .

Jedes Objekt ist eindeutig bezeichnet , auch mit einer Beschriftung versehen , wie jedes Objekt heisst . 

Nach der Bahn Verkehrsordnung kommen Lichtsignale oder (noch alte ) Formsignale hervor , also entweder Form- oder Lichtsignal .

+++ Auf dieser Anlage sind sie zusammen , damit man weisst was passiert , wenn man eines dieser beiden Signale arbeiten wollte +++ ( Vergleichsbild !! ) .

Heute werden keine Weichensignale mehr eingesetzt , aber auf alten Strecken sind sie noch vorhanden .

1. Frage : Jetzt müsste ich wissen  , ob ich auch noch eine oder mehr Blockstellen auf der Hauptstrecke einbauen sollte ?

Was ist auch noch einbauen wollte sind Gleise für Anmeldung , bremsen ( Langsam Fahrt ) , stopp ( und mit SPERRWEICHE ) und Abfahrtgleis .

Die neuen Signale , die mittlerweile schon für Version 4 gekommen sind  , kann ich auch noch dazu ergänzen .

 

Hier sollte auch die Frage beantwortet sein ( zumindest ein grössten Teil ) , wo Signale platziert werden mit Sonderstellung " die extra eine Markierung erhalten " .

 

2. Frage : Sollte man mit einen Bahnübergang mit einbauen ?

 

3. Frage : weitere Vorschläge , das für ein Anfänger es leicht fällt damit um zugehen und versteht ?1?

 

4. Frage : Sollte ein Beispiel mit VOLLAUTOMATIK oder auch manuelle Steuerung in der EV vorkommen ? 

 

5. Frage : Mit oder ohne GBS-Bausteine ; oder sogar Schalter/Taster ?

 

Eine Erklärung  der EV von Version 3 und 4 sind im Bereich " Anleitung und Tutorals zu finden !  Die habe ich damals aufgelistet und auch zum Vergleich .

 

Es sollten alle Möglichkeiten geben und doch noch einfach gehalten werden - so ist und war mein Gedanke .

Wie findet Ihr das ? Bittet hier um Antworten !!

 

Hier mal eine Ausfahrt ( vorne = Lichtsignal / hinten die Form-Signale ) . Angesprochen muss hier nur das Lichtsignal , denn das Form-Signal nimmt vom Lichtsignal den Status an über die EV  .

Screenshot_129.thumb.jpg.50556b3ff8cbb34e3cbf95fc9c0c1904.jpg

 

 

Viele Grüße

H:xnS  

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Andy,

vor 3 Stunden schrieb Andy:

Doch! Setze eine Variable v = 0. Nun:

  Ereignis DeinEreignis -> Aktion setze v = 1.
  Ereignis Variable wird gesetzt v = 1 mit Bedingung erfüllt -> Aktion Sonstwas und setze v = 0 -> ansonsten Aktion setze v = 1.

eigentlich hatte ich ja mit meiner Aussage einen Automatismus im Modellbahn-Studio selbst gemeint. Leider hatte ich mich da etwas falsch ausgedrückt (sorry). Mit einer zusätzlichen Programmierung in der EV bekommt man dagegen "fast" alles hin. Dein Beispiel ist eine wirklich interessante Lösung, von der ich zunächst glaubte, dass sie nicht funktioniert. Aber aufgrund Deines Beispiels habe ich gelernt, dass im Gegensatz zu den Ereignissen "Weiche schaltet auf Zustand w" und "Signal schaltet auf Zustand s", wo das Ereignis nicht ausgelöst wird, wenn der Ziel-Zustand vor dem "Schalten" bereits vorliegt, dies bei der Variable eben gerade anders ist:

Wird durch das Setzen einer Variable auf den Wert "v" dieser nicht verändert, weil die Variable diesen Wert bereits vorher besaß, wird das Ereignis "Variable wird auf v gesetzt" trotzdem ausgelöst. Wäre hier das Verhalten analog zu dem bei Weichen und Signalen gewesen, hätte das obige Beispiel nicht funktioniert.

Einen kieinen Nachteil hat das obige Verfahren jedoch:
Tritt das ursprünglich zu testende Ereignis ("DeinEreignis") auf, ohne dass die Bedingung jemals erfüllt ist, wird der Test auf den Wert 1 der Variable solange ununterbrochen durchlaufen, bis die Variable durch ine andere Aktion explizit auf 0 gesetzt wird. Nur so kann die Schleife abgebrochen werden. Um die Schleife nicht ohne Pause durchlaufen zu lassen, könnte man die Lösung auch wie folgt abwandeln:

 Ereignis DeinEreignis -> Bedingung erfüllt: Aktion Sonstwas ausführen -> Bedingung nicht erfüllt: Countdown xy mit n Sekunden mit "automatischem Neustart" aufziehen.
 Ereignis Countdown xy läuft ab -> Bedingung erfüllt: Aktion Sonstwas ausführen und Countdown xy stoppen.

Diese Lösung erfordert jedoch eine Mindest-Wartezeit (z.B. 0,1 Sekunden), damit auch andere Ereignisse zwischenzeitlich abgearbeitet werden können. Sonst kann es passieren, dass das Modellbahn-Studio auf "äußere Einflüsse" nicht mehr reagiert. Wählt man größere Wartezeiten, trägt man hiermit zur Entlastung der CPU bei, ohne dass die ursprüngliche Funktionalität verloren geht. Als "Nothalt" wird hier der Countdown durch eine separate Aktion gestoppt (entspricht dem expiziten Setzen der Variable aus obigem Beispiel auf 0). 

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo frieder!

Obwohl die EV immer noch das Kriegsbeil gegen mich ausgegraben hat, versuch ich's mal trotzdem.

Ich verstehe Dich so: Gleisbesetztmelder sagt: Zug auf Bahnsteiggleis, einfahrender Zug sieht: desgleichen, während Zug einfährt, wird aber das Bahnsteiggleis frei und die EV schickt einfahrenden Zug auf freies Bahnsteiggleis und erwischt einige Waggons auf Weichen und spaltet den Zug.

Theoretische Ansätze:

1. Erweitere die Gleisbesetztmelder auf die Gleisgabeln

2. Erweitere die EV von "Gleis besetzt" unter Bedingungen auf "und" "Zug verlässt Gleis" (irgend ein Gleis nach der Weichengabel).Vorraussetzung: der Zug ist lang genug, sich gleichzeitig auf dem Bahnsteiggleis und der Weichengabel zu befinden.

3. Grundsätzliche EV-Überarbeitung. Statt "Nächster einfahrende Zug auf frei gewordenes Gleis": Zug mit Nr. X auf Gleis X, oder wenn Zug X ausfährt: Zug X auf Gleis X.

4. Einfahrt des 2. Zugs erst wenn Einfahrtssignal grün, wird durch "Zug betritt Gleis" (ausfahrender Zug) ausgelöst wird (Länge des Zugs im Auige behalten)

Gruß, Berlioz

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...