Jump to content

Empfohlene Beiträge

Geschrieben (bearbeitet)

Diese Beispiel soll darstellen wie man eine Anlage in der Ereignisverwaltung (EV) programmieren könnte ohne den Ablauf linear (jeden Zug direkt) zu steuern. Es wurde bewusst auf Signale, Bremsen beim Einfahren in die Bahnhöfe, langsames An-Fahren in den Bahnhöfen und sonstige Details oder Ausschmückung verzichtet, da die EV so schon recht komplex ist und jedes weitere Detail diese nur unnötig vergrößern würde.

Grundlegend kann bei diesem Beispiel jeder Zug auf jedes Gleis bei den beiden Bahnhöfen fahren, entscheidend ist welches Gleis belegt oder frei ist (dazu weiter unten im Text mehr).

Der Aufbau:

Die Anlage ist in vier Abschnitte aufgeteilt:

1.            Bahnhof (BH) Blaue und Hellblaue Gleise

2.            Schattenbahnhof (SB) Gelbe und Goldene Gleise

3.            Linke Fahrstrecke (L01) Grüne Gleise (und Weiß)

4.            Rechte Fahrstrecke (R01) Magenta Gleise (und Weiß)

Bei der Steuerung gibt es jeweils Überlagerungen mit dem angrenzenden Abschnitt (hellblauer und goldener Bereich). Bei dieser Anlage wurde jedes Gleis mit einer eigenen Bezeichnung versehen, damit in der EV besser nachvollzogen werden kann welches Gleis als Auslöser oder mit welcher Funktion programmiert wurde.

 

image.thumb.jpeg.c2f17c9a4423e835fcd0d7349785f9d7.jpeg

  

Die Funktion:

Stoppen eines Zuges:

Betritt ein Zug das Ende eines Bahnhofgleises (rotes Gleis) wird dieser Angehalten. Da die Gleise beidseitig befahren werden können wurde in der EV die Bedingung hinterlegt dass ein Zug gleichzeitig auf dem davorliegenden Gleis (in Fahrtrichtung gesehen) stehen muss, somit wird ausgeschlossen dass ein Zug, wenn er von der anderen Seite das Bahnhofsgleis betritt bereits am Anfang eines Bahnsteiges stehen bleibt. Gleichzeitig, mit dem Stoppen, wird die Lampe vor dem Zug auf Grün geschaltet um der EV zu signalisieren dass ein Zug abfahrtbereit auf dem Gleis steht.

 

Starten eines Zuges:

Hierzu  wurde ein 6 stufiger Endloscountdown hinterlegt (3 Gleise je Bahnhof mal 2 Fahrtrichtungen). Aktiviert wird der Countdown über einen Schalter, so lang dieser aktiv geschaltet ist läuft der Countdown immer weiter und fängt nach der letzten Stufe wieder von vorn an zu laufen (siehe EV). Wann welches Gleis zum Starten eines Zuges abgefragt wird ist an den Nummern unter den Lampen zu sehen. Die Countdownverteilung wurde so angeordnet dass sich keine Ereignisse überschneiden können (zwei Züge starten gleichzeitig zu einem Gleis), daher ist die linke Bahnhofsaufahrt nur mit gerade Zahlen und die linke Schattenbahnhofsausfahrt mit ungeraden Zahlen programmiert wurden. Auf der anderen Ausfahrtseite jedes Bahnhofes ist es auch entgegengesetzt für den Fall dass ein Zug (zb: ICE) in beide Richtungen den Bahnhof verlassen kann (auf dieser Anlage nicht berücksichtigt).  Die Zuordnung und die Länge der Countdownsequenz muss für jede Anlage abgestimmt werden, da sonst gegeben falls immer das gleiche Gleis einen Startbefehl bekommt und somit keine Abwechslung entsteht.

Läuft ein Countdown ab werden in der EV als Erstes die Bedingungen für einen möglichen Start überprüft. Als Beispiel dient der Bahnhof mit Gleis 1 in linke Fahrtrichtung: 1. Befindet sich ein Zug in der entsprechenden Fahrtrichtung auf dem Gleis „Schalter steht auf Position: An“ (ist die Lampe Grün), 2. Ist die Fahrstrecke frei „Variable besitzt den Wert: L01 = 0“ (Variablen müssen vorher in der EV separat angelegt werden), 3. Ist ein Gleis im Schattenbahnhof frei, damit der Zug nicht auf der Strecke stehenbleiben muss (bei Anlagen mit langen Fahrstrecken und Abzweigungen könnte dies auch weggelassen oder durch andere Faktoren ergänzt werden) „Variable besitzt den Wert: Schattenbahnhof < 2,5“ (<2,5 bedeutet es sind weniger als 2,5 (3) Gleise belegt, bei 3 Gleisen bedeutet es im Umkehrschluss es ist mindestens ein Gleis frei).  Wenn alle Bedingungen erfüllt sind bekommt der Zug einen Fahrbefehl bei Aktionen („Fahrzeuggeschwindigkeit setzen“), damit es keine Unfälle gibt werden mit dem Fahrbefehl weitere Aktionen ausgelöst. Zum einen wird die Lampe wieder auf rot geschaltet, damit die EV erkennt dass kein Zug mehr auf dem Gleis auf einen Fahrbefehl wartet („Schalter betätigen“), des weiteren wird die Fahrstrecke für alle anderen Züge gesperrt „Variable setzen: L01 +1“ (wird wieder aufgehoben sobald der Zug die Fahrstrecke verlässt, in diesem Fall das letzte goldene Gleis (Siehe EV Ordner Variablen).  Gleichzeitig wird ein Schattenbahnhofgleis reserviert „Variable setzen: Schattenbahnhof +1“, damit kein weiter Zug über die andere Fahrtrichtung mehr erhalten kann wenn alle 3 Gleise im Schattenbahnhof belegt (reserviert) sind. Wenn ein Zug einen Bahnhofes verlässt (letzte Weiche) wird die jeweilige Variable um 1 zurückgesetzt (Zug verlässt Gleis „Variable setzen: Bahnhof -1), damit kann die EV erkennen ob ein weiterer Zug zum Bahnhof starten kann.

 

Einfahrt in den Bahnhof (Zuordnung der Gleise):

Erst wenn der Zug das jeweilige weiße Gleis vor der Bahnhofseinfahrt (vor der ersten Weiche) betritt wird überprüft welches Gleis frei ist und ein entsprechendes zugeordnet. In der Funktion werden die Gleise immer in Fahrtrichtung von rechts nach links überprüft, daher können keine zwei Züge, bei entgegenkommender Einfahrtsrichtung, das gleiche Gleis zugeordnet bekommen. Jedes Bahnhofsgleis besitzt eine eigene Variable (Gleis BH01; Gleis BH02;…). Wird ein Gleis zugewiesen wird diese auf 1 gesetzt (belegt), verlässt ein Zug das Gleis wird die Variable auf 0 gesetzt (frei).

 

Ich hoffe ich konnte den Aufbau Halbwergs nachvollziehbar erklären, wenn etwas fehlt oder es Fragen gibt stehe ich gern Rede und Antwort. Der ganze Aufbau ist natürlich noch ausbaufähig und erweiterbar, bei Interesse kann ich gern auf weitere Möglichkeiten eingehen.

Wer sich ansehen möchte wie diese Steuerung in erweiterter Funktion auf einer kompletten Anlage zum Einsatz kommt kann sich im Onlinekatalog gern diese zwei Anlagen von mir anschauen:

Mittlere Bahnanlage mit Straßenverkehr (Content ID: B2B3DF4C-676D-463A-B0DA-243AB366141E)

TT Heimanlage 3500x1200 (Content ID: C67BD531-103A-4437-8104-173B8F3710C7)

Gruß Frank

Beispielanlage3.mbp

Bearbeitet von fzonk
Ergänzung
Geschrieben

Hallo fzonk ( Frank )

Anhand deines Beispiel ist mir dieses passiert , woran kann denn das liegen .

Wenn ich das richtig verstanden habe , darf der einfahrende Zug nur auf das freie Gleis passieren . 

Kann das sein das hier eine Bedingung noch ergänzt werden muss ? 

Zweitens verstehe ich auch jetzt nicht , wie ein Minus entsteht in der Anzeige Tafel !

Der Vorgang finde ich gut , auch die Gruppenfassung in der EV - es fällt auch was zusammen gehört . 

Screenshot_146.thumb.jpg.0d60d9f6a964215ffb0cd1237d5c04c5.jpg

Ich hab den Schalter betätigt und gewartet  kein Zug fuhr los . dann hab ich ein Zug ausgewählt und klickte auf der Lok mit Geschwindigkeit 30 km/h .

Zug fuhr los bis zur Ausfahrt und bliebt stehen . OK ! 

Das hab ich zwei drei mal gemacht und dann kam das hier . Uhie ! 

Nach deiner Beschreibung und EV sollte das NICHT passieren . 

Oder bin ich falsch vorgegangen , dass das hier so passierte . 

Ich hab verstanden das ein Zug nur auf ein  freies Gleis zugewiesen wird , in der EV fand ich auch kein Fehler nach meinen Wissen .

Kann ich da bitte eine Begründung bekommen !   Vielen Dank ! 

 

PS: Das würde mir auch helfen bei den Straßenbereich .

Viele Grüße

H:xnS

Geschrieben

Hallo Hans @h.w.stein-info

Ich sehe auf deinem Bild gleich mehrere Fehler, bevor ich jetzt in die detaillierte Fehlersuche gehe hätte ich zwei Fragen.

1.       Kann es sein das du noch mit V3 arbeitest? Die Züge in den Bahnhöfen stehen nicht an den Stellen auf den roten Gleisen wie sie es eigentlich machen.

2.       Hast du eventuell die Züge manuell gestartet (einer Lok selber eine Geschwindigkeit gegeben), was zum einen auch wieder die „Fehlstellung“ aus Punkt 1 erklären würde und zum anderen die negativen Variablen, damit wurde ein Fahrbefehl nicht von der EV ausgelöst und die Variable nicht richtig gesetzt. Diese Anlage unterliegt in ihrer Programmierung einer Vollautomatik, was auch so viel bedeutet: es darf kein weiterer Einfluss auf die Züge genommen werden, da sonst die EV nicht mehr richtig arbeiten kann. Bei dieser Anlage beschränkt sich die Aktivität des Betrachters nur auf das Starten per Schalter. Jeder weitere Einfluss verursacht Störungen.

Zugegeben, es könnte für den ein oder anderen langweilig sein einfach nur zuzuschauen wie die Züge selbstständig fahren, für diejenigen die gern aktiv Einfluss nehmen wollen gibt es die Möglichkeit die Steuerung auf eine Teilautomatik zu verändern. Dazu bedarf es aber ein paar Erweiterungen (auch in der Programmierung),  wenn sich jemand dafür interessier kann ich dies gern auch mit einer Anleitung erstellen.

Gruß Frank

P.S: ich habe die Anlage sehr intensiv getestet bevor ich sie hier eingestellt habe, solche Fehler (vor allen bei den Variablen) gab es bei mir nie…

Geschrieben

Hallo Frank @ fzonk

Ja , ich hab gedacht weil kein Zug sich bewegte einen manuell gestartet . So kann ich mir auch erklären das es mein Bedienungsfehler meiner Seite ist .

Sorry !  Da sollte man doch ein wenig mehr Geduld haben .

Denke bei der Anzeige mit den MINUS wird daher rühren durch den manuellen Eingriff .

Danke Dir für eine kurze Erklärung .

Viele Grüße

H:xnS

  • 3 Wochen später...
Geschrieben

Hallo an Alle,

ich habe hier eine Musteranlage mit umschaltbarer Voll- und Halbautomatik. Die Grundlage ist die Vollautomatikanlage. Die EV ist mal wieder sehr komplex und umfangreich.

Die Umschaltung von Vollautomatik auf Halbautomatik oder auch andersherum  kann zu jedem Zeitpunkt erfolgen, es muss dabei auf nichts Rücksicht genommen werden, da die EV immer die Abläufe überwacht oder besser gesagt auch weiterhin steuert.

Der Unterschied zwischen den beiden Modi ist aktuell „nur“ dass bei Halbautomatik der Nutzer bestimmen kann wann er welchen Zug starten möchte. Die Streckenführung und Gleiszuweisung in den Bahnhöfen übernimmt auch weiterhin die EV.

Jetzt noch ein paar Informationen zur Funktionsweise des Steuerpultes. Die sichtbaren Signale auf dem Steuerpult signalisieren nur dass das entsprechende Gleis für die EV freigeschaltet ist (daher bei Vollautomatik alle grün). Beim umschalten auf Halbautomatik schalten alle auf gesperrt (rot), somit startet die EV keine Züge mehr. Gleichzeitig tauchen an den Stellen wo Züge abfahrbreit sind zusätzliche Schalter auf. Beim betätigen des jeweiligen Schalters (doppelklick) wird das Signal auf Grün geschaltet, dies bedeutet noch nicht dass der Zug abfährt, sondern signalisiert der EV nur dass dieser Zug gestartet werden soll. Die EV überprüft daraufhin erst ob eine (Unfallfreie-)Fahrt bis in den nächsten Bahnhof möglich ist. Erst wenn diese Überprüfung positiv ist startet die EV den Zug. Es könne auch mehrere Züge ein Startsignal bekommen, an dieser Stelle entscheidet wieder die EV welcher Start wann stattfindet.

Ich würde mich über eure Meinung freuen.

Gruß Frank

Voll und Halbautomatik.mbp

Geschrieben
vor 43 Minuten schrieb fzonk:

Die EV überprüft daraufhin erst ob eine (Unfallfreie-)Fahrt bis in den nächsten Bahnhof möglich ist.

Hallo Frank,

genauso sollte die EV in u.a. in einer neuen Version des MBS im "Hintergrund" funktionieren. Der Algorithmus ist schon sehr zukunftsweisend. Wenn Neo das in etwa hinbekommt, sollten wir uns gemeinsam überlegen, wie wir Dir als Vordenker und ihm als "graue Eminenz" ein würdiges Monument bauen.

Gruß

streit_ross

 

Geschrieben

Hallo Frank,
erst einmal: Blitzsaubere Arbeit, Glückwunsch!
Ich werde mir die EV mal ganz genau anschauen, insbesondere daraufhin, inwieweit sie sich von meinem Konzept unterscheidet.
Will aber meine jetzt erst einmal steuerungstechnisch vollenden. Ich habe da jetzt noch vier Abstellgleise, von denen es gilt wieder wegzukommen, vor mir.
Und einiges an Kopfzerbrechen erwartet mich noch bei der Einbindung der Drehscheibe. Derzeit wirkt die nur wie ein einfaches Abstellgleis.
Diese Bausteine sollten noch rein. Danach gibt's auch was zu sehen.
Meinem Nonstandard-Stellpult können nun Infos und Statuslampen zugeschaltet werden. Das ist beim Debuggen nützlich. Interessant wird's allemal, selbst wenn man nur mit dem
Stellpult fährt und gar nicht auf die Anlage schaut. Eine aufgesetzte gezielte mit Zufallselementen versehene Vollautomatik dürfte danach recht einfach zu installieren sein.

Grüße Andy

Geschrieben

Hallo streit_ross

vor 15 Stunden schrieb streit_ross:

genauso sollte die EV in u.a. in einer neuen Version des MBS im "Hintergrund" funktionieren.

Dies direkt in der EV zu hinterlegen dürfte schwierig sein, da der Funktionsablauf (Algorithmus) auf jede Anlage individuell angepasst werden muss. Diese Musteranlage soll „nur“ aufzeigen dass eine Halb-Vollautomatik mit einem gewissen Zufallseffekt durch Steuerung der EV möglich ist. Es gibt im Onlinekatalog einige Anlagen die mit einem Steuerpult gebaut wurden, was für die Nutzer sehr viel Abwechslung bringt, aber oftmals ist es schwierig die Funktionsweise zu erkennen und wenn man dann den falschen Knopf drückt gibt es einen „Unfall“. Mit dieser Steuerung wird dies um einiges reduziert, da die EV die gewählten Aktionen erst prüft.

 

Hallo Andy
 

vor 11 Stunden schrieb Andy:

Ich werde mir die EV mal ganz genau anschauen, insbesondere daraufhin, inwieweit sie sich von meinem Konzept unterscheidet.

Der größte Unterschied bei der Herangehensweise dürfte sein dass ich erst die Vollautomatik geschrieben habe und in diese dann die Halbautomatik integriert habe. Ich bin schon auf deine Steuerung gespannt, denn bekanntlich führen ja viele Wege nach Rom.

Gruß Frank

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