Jump to content
Zum Start hinzufügen

Weitere Informationen

3D-Modellbahn Studio

Eine Vollbild-App auf Ihrem Startbildschirm mit Push-Benachrichtigungen und mehr.

So installieren Sie diese App auf iOS und iPadOS
  1. Tippen Sie auf das Teilen-Symbol in Safari
  2. Scrollen Sie durch das Menü und tippen Sie auf Zum Startbildschirm hinzufügen.
  3. Tippen Sie oben rechts auf Hinzufügen.
So installieren Sie diese App auf Android
  1. Tippen Sie auf das 3-Punkte-Menü (⋮) in der oberen rechten Ecke des Browsers.
  2. Tippen Sie auf Zum Startbildschirm hinzufügen oder App installieren.
  3. Bestätigen Sie durch Tippen auf Installieren.

Empfohlene Beiträge

Geschrieben

Habe mal wieder eine Frage....

Vor einiger Zeit haben wir eine gute Steuerung für die Einfahrt in Bahnhöfe entwickelt. Diese funktioniert auch soweit so gut.
Nun kommt es aber vor, dass zunächst alle Bahnhofsgleise belegt sind und und am Einfahrsignal ein Zug wartet.
Bei der Steuerung funktioniert das "vormerken" von Fahrstraßen nicht. Daher will ich beim verlassen des Bahnhofssignals abfragen, ob am "Einfahrsignal hinten" oder am "Einfahrsignal vorn" ein Zug steht und ihn dann einfahren lassen.

Aktuell ist es so, dass beim Betreten des Einfahrsignals zunächst der Zugtyp im Benutzerereignis "Zugtyp" ermittelt wird und in Abhängigkeit des Zugtyps eine Liste mit möglichen Fahrstraßen festgelegt wird, welche im Signal hinterlegt wird. Anschließend wird In dem Benutzerereignis "Gleisermittlung" ein freies Gleis ermittelt und die entsprechende FS aktiviert.
Soweit der Normalbetrieb.

Abfrage wartender Züge;
Da ja bereits beim Betreten des Einfahrsignals der Zugtyp und somit die Liste mit möglichen FS bestimmt wurde, kann ich auf diesen Teil verzichten.
In jedem Bahnhofssignal ist das "Einfahrsignal vorn" und Einfahrsignal hinten" als Objekt hinterlegt.
Beim Verlassen des Bahnhofssignals will ich jetzt abfragen ob am "Einfahrsignal hinten" ein Zug steht, wenn ja dann soll das Benutzerereignis "Gleisermittlung" ausgeführt werden. Steht kein Zug am hinteren Signal, so soll geschaut werden ob am "Einfahrsignal vorn" ein Zug steht und wenn ja, ebenfalls das Benutzerereignis "Gleisermittlung" ausgeführt werden.

Das funktioniert auch soweit, aber ..... es kommt leider ab und zu vor, dass zwei entgegengesetzte Züge gleichzeitig auf ein Gleis geschickt werden.
Wie kann das sein, wenn doch in der Gleisermittlung gefragt wird ob eine FS frei ist und aktiviert werden kann. Da dürfte es soch zu solchen zusammenstößen nicht kommen.

Wo denke ich da falsch ?

 

Ich habe mal eine reduziertes Beispiel zum testen angehängt.

 

 

Bearbeitet von bigrala

Geschrieben

Hallo @bigrala ,

zunächst einmal solltest Du die Variablennamen im Ereignis "BHF verlassen" korrigieren. Dort hast Du bei den Belegt-Abfragen wohl noch alte Namen (Einfahrtsignal und Einfahrtsignal-zurück) verwendet.

Meine Empfehlung: Wenn Du so etwas testest, lass das Ereignisprotokoll mitlaufen. Die Ausführung stoppt sofort, wenn ein Fehler auftritt.

Viele Grüße,
   Wolfgang

Geschrieben
  • Autor

Ja sorry, hatte das für hier in vorn und hinten umbenannt und da vergessen es in der Abfrage ebenfalls zu ändern.

Trotzdem kommt es zu den Zusammenstößen und das Protokoll hilft da auch nicht, weil es trotz Crash ohne Fehler durchläuft

 

Hier nochmal die korrigierte Version

Einfahrt mit wartenden.mbp

Geschrieben
vor einer Stunde schrieb bigrala:

Trotzdem kommt es zu den Zusammenstößen

Hallo @bigrala

es liegt an deinen Gleisen. Die Gleiskontakte zweier gegenläufiger Fahrstraßen dürfen (z.Z.) nicht auf demselben Gleis liegen. 

Screenshot2024-09-26190756.thumb.jpg.82d0127344ca7d7642fd6ea3b951d1b8.jpg 

Das Problem ist bekannt und @Neo wollte das mit V9 auch beheben.  Aber momentan ist die Lösung das lange Gleis aufzuteilen, so das die Gleiskontakte der Fahrstraßen auf verschiedenen Gleisen liegen. 

VG,

Hawkeye 

Bearbeitet von Hawkeye

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Push-Benachrichtigungen konfigurieren

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.