OpenDCC GBM16: Gleisbesetztmelder / BiDi-Belegtmelder

Kehrschleife?

    Kehrschleifen gibt es sowohl 'klassisch', also wirklich als Schleife und der Zug fährt wieder auf dem gleichen Gleis zurück, als auch mehr oder minder versteckt in Gleisdreiecken, Hundeknochenanlagen (bei der Zufahrt aus dem Schattenbahnhof), usw. Allen 'Kehrschleifen'-Situationen ist gemeinsam, dass an irgendeiner Stelle unterschiedliche Gleispolaritäten zusammentreffen und sich an dieser Stelle ohne weitere Maßnahmen bei der Überfahrt ein Kurzschluß ergibt.

    Dieser Kurzschluß wird durch geeignete Umpolung verhindert, wobei man ja bei DCC den Vorteil der Trennung von Gleispolarität und Fahrtrichtung hat, d.h. man darf unter dem fahrenden Zug die Polarität des Gleises umschalten, der Zug behält Fahrstufe und Richtung bei. Diese 'geeignete' Umpolung kann man mit separaten Modulen realisieren, eine besonders elegante Möglichkeit ist die Integration in den Gleisbesetztmelder: hier sind ja bereits Sensoren vorhanden, welche eine die Belegung erkennen - daraus kann man dann eventuelle Umschaltoperationen ableiten.

Regeln für die Kehrschleifenanordnung

  • Der umzuschaltende Abschnitt muß länger als der längste Zug sein: nur so ist sichergestellt, dass es beim Umschalten nicht zu einem Kurzschluß kommt (z.B. durch ein Fahrzeug, welches noch über der Trennstelle steht).
  • Der umzuschaltende Abschnitt besteht im Prinzip aus drei Teilabschnitten: Ein langer Abschnitt (im Beispiel: C), welcher den Zug komplett aufnimmt und an beiden Ende kurze Sensorabschnitte (im Beispiel: B und D), welche der Kehrschleifenlogik das zu erwartende Überfahren einer Trennstelle ankündigen.
    Vor und hinter diesem dreitteiligen Umschaltabschnitt ist je ein weiterer Sensorabschnitt (im Beispiel: A und E) angeordnet, welcher auch die Überfahrt über eine Trennung ankündigt.
  • Die Auslöser für Schaltaktionen sind so zu setzen, dass die Zugfahrt in Richtung voraus geebnet wird: also der jeweils voraus liegende Polaritätsfehler wird weggeschaltet. Was hinter dem Schlußwagen passiert, geht uns prinzipiell nichts an.
  • Nie einen Block schalten, in dem weder der Zug aktuell ist noch demnächst sein wird. Nur einen Block umschalten, welcher bereits für diesen Zug reserviert ist bzw. der Zug dorthin mit Hp1/Hp2 fahren darf.
  • Wenn möglich, die Umschaltstrecke linear (und ohne Weichen) aufbauen (siehe Beispiel unten)
  • Wenn Weichen beteiligt sind und die zulaufenden Strecken zu den Weichen unterschiedliche Polarität haben, dann kann unter Einbeziehung der Weichenstellung eine Lösung gefunden werden. Siehe hierzu den Abschnitt 'Kehrschleife mit Weiche'.

Erweiterung des GBM16T für Kehrschleifenautomatik

    Der Gleisbesetztmelder kann mit einer Zusatzplatine zu einer automatischen Kehrschleife erweitert werden. Dabei kommt das Sensorprinzip zum Einsatz, das eine absolut störungsfreie Durchfahrt durch den Kehrschleifenabschnitt erlaubt.
    Die Sensorgleise und das eigentliche Kehrschleifengleis können frei gewählt werden, zudem kann die Umschaltung zusätzlich auch von der Zentrale erfolgen - damit ist auch eine rechnergestütze Kehrschleifenautomatik möglich.

    Das ist ein sehr preiswerte und elegante Möglichkeit für eine Kehrschleife, weil auf dem GBM die Sensorerfassung bereits vorhanden ist. Die Signale der Gleisbelegtmeldung werden im Gleisprozessor entsprechend verknüpft und damit wird eine Zusatzplatine mit Umpolschaltern angesteuert.

Schaltung der Zusatzplatine


    Die Spulen der bistabilen Relais werden mit Standard-FETs (z.B. BSS123 oder BSS138) angesteuert, eine Doppeldiode (z.B. BAS70-05) übernimmt den Strom im Abschaltmoment. Zur Positionskontrolle ist ein einfaches RS-Flip-Flop aus 2 NOR-Gattern vorhanden. Die LED sind low current bzw. mit mind. 50mcd@20mA gewählt, dann kann man diese direkt aus den Gattern ansteuern.
    Die verwendeten Relais haben ein Schaltleistung von 2A, was typischerweise für H0 ausreicht. Damit die Relais als Polwender agieren, sind die Lötbrücken SJ1 bis SJ6 zu schließen.
    Angesteuert wird die Zusatzplatine mit kurzen Schaltimpulsen von der Grundplatine und wegen der bistabilen Relais wird nur im Schaltmoment ein Strom von etwa 110mA verbraucht, sonst liegt die Stromaufnahme bei 2mA.

    Der Schaltzustand wird mit einem simplen RS-FlipFlop (gebaut aus 2 NOR-Gattern) auf zwei LEDs angezeigt. Die LED1 '||' kennzeichnet den 1:1-Verbindungszustand, die LED2 'X' den umgepoltem Zustand. Das Nor-Gatter ist ein 74HCT02 (wichtig ist das T, damit die Eingangsschwelle zur 3,3V Logik des Atxmega passt).

Layout der Zusatzplatine


    Layout, nur 49 x 25mm


    Bauteilseite


    Lötseite

Aufbauanleitung, Einbau

    Auf der Zusatzplatine sind SMD-Bauelemente gemäß Bestückungsplan zu bestücken. Die Relais sind bistabile Relais, latching-type mit 2 Spulen, mit 5V Betriebsspannung. Typebezeichnung: TQ2SA-L2 bzw. FRT5-L2-5V, es sind sowohl SMD als auch THT bestückbar. Die Kontakte der Relais sind als Polwender verdrahtet, es sind alle Lötbrücken SJ1 bis SJ6 zu schließen.
    Es empfiehlt sich, den Verbindungsstecker zum Trackproc erst nach der Montage festzulöten.

    Die Zusatzplatine wird auf den Steckern J10 und J11 des Trackprocs aufgesteckt. Der Abstand der Zusatzplatine zur Grundplatine wird mit zwei Abstandssäulen definiert, auf diesen Abstand sind auch die Verbindungsstecker festzulöten. Alternativ kann man die Zusatzplatine auch mit einem kleinen 6-poligen Flachbandkabel (Raster 2.54) anschließen.

    Wichtig: Der Trackproc muß bei Benutzung der Relaisplatine mit einer externen, separaten Gleichstromversorgung 5V (also z.B. eine USB-Netzteil) versorgt werden. Diese 5V müssen unbedingt separat erzeugt werden, hier darf keine Versorgung aus einem PC o.ä. erfolgen.

Beispiel

    Kehrschleifenprinzip
    Das Beispiel zeigt eine Strecke, bestehend aus 5 Abschnitten: A sei 'rechts' gepolt, B, C, D bilden den umschaltbaren Abschnitt, Abschnitt E ist 'links' gepolt. Die Abschnitte A und B bilden die Sensorgleise für das 'Rechts'-Schalten der Kehrschleife, D und E entsprechend die Abschnitte für das 'Links'-Schalten.

    Fährt nun ein Zug in A ein, so werden die Abschnitte B, C, D nach 'rechts' geschaltet und der Zug kann problemlos einfahren. Erreicht der Zug den Abschnitt D, werden die Abschnitte B, C, D nach 'links' geschaltet und der Zug kann ausfahren. In Gegenrichtung löst E das 'Links'-Schalten aus und B dann die Schaltung nach 'rechts'.

    Verdrahtung: Die mittleren Abschnitte werden über die Relaisplatine geführt, diese macht die Umpolung. Alle Abschnitte werden dann auf den GBM16 verdrahtet, dabei ist es egal, wohin welcher Abschnitt verdrahtet wird. Im Beispiel ist A auf 2, B auf 5, C auf 11, D auf 7 und E auf 13 angeschlossen.

    CV-Einstellung: Die Melder A und B (also 2 und 5) sollen das Einschalten der Kehrschleife auslösen, damit ergibt sich folgendes Bitmuster für CV47 und CV48 (Bits und Melder werden je beginnend bei 0 gezählt):
    CV48 (On, Highbyte)CV47 (On, Lowbyte)
    151413121110 9 8  7 6 5 4 3 2 1 0
    00000000 00100100
    Wert: 0Wert: 36
    Die Melder D und E (also 7 und 13) sollen das Ausschalten der Kehrschleife auslösen, damit ergibt sich folgendes Bitmuster für CV49 und CV50 (Bits und Melder werden je beginnend bei 0 gezählt):
    CV50 (On, Highbyte)CV49 (On, Lowbyte)
    151413121110 9 8  7 6 5 4 3 2 1 0
    00100000 10000000
    Wert: 32Wert: 128
    Wichtig: Der eigentliche Kehrschleifenabschnitt C muß länger als der Zug sein, die Sensorabschnitte B und D dürfen nicht gleichzeitig ausgelöst werden.

    Info: Sollte gewünscht sein, dass der Kehrschleifenabschnitt C aus mehr als einem Meldeabschnitt besteht (z.B. weil man das in der Zugfahrtsüberwachung so braucht), dann kann man mittels eines weiteren Relaismodul auch mehr als drei Meldabschnitte schalten lassen. Auf die Funktion hat das keinen Einfluß. Es ist wichtig, dass alle Triggermelder auf dem gleichen GBM angeschlossen sind.

Einstellung mit dem Debug-IF

    Eine einfache Konfigurationsmöglichkeit bietet das Debug-Interface. Man verbindet sich mit dem GBM16T über ein FTDI-Kabel und einen Monitorprogramm wie z.B. hterm. Die Einstellung ist 115200, 8N1, Kommandos sind mit <cr> (=Entertaste) abzuschließen.
    Es gibt die Befehle R, RA und RM:
  • R<cr>
    Die momentane Einstellung der Kehrschleife wird angezeigt z.B.
    RevsON[15..0]: .... .... ..*. ....
    Tracks[15..0]: .... .... ..*. ....
    RevOFF[15..0]: .... .... ...* .... #

    Die Zeile RevsON zeigt alle Auslöser für das Einschalten der Kehrschleife, die Zeile Tracks zeigt die aktuelle Belegung und die Zeile RevOFF zeigt alle Auslöser für das Ausschalten der Kehrschleife. Das Zeichen # (=Hashtag) markiert die aktuelle Position der Kehrschleife. Weitere Angaben zur Schaltadresse und zur Stellung der Inhibitoren (siehe unten: Kehrschleife mit Weiche) folgen.

    Wenn der Befehl zusammen mit einem Parameter eingegeben wird, so wird die DCC-Schaltadresse der Kehrschleife eingestellt. Mit einer Eingabe > 2048 kann man die Schaltadresse wieder ungültig machen.
  • RA zustand track <cr>
    Mit diesem Befehl kann man einen Auslöser hinzufügen: zustand gibt an, welcher Auslöser hinzugefügt wird, track bestimmt, an welcher Stelle er hinzugefügt wird. Beispiel: RA 1,5 <cr> fügt den Track 5 bei den Einschaltern hinzu.
  • RM zustand track <cr>
    Mit diesem Befehl kann ein Auslöser wieder gelöscht werden.
  • Am besten stellt man sich ein Fahrzeug auf die Anlage und bewegt dieses langsam durch die Kehrschleife. Man sieht die Belegungen und kann mit den obigen Befehlen diese Belegung zu den Ein- bzw. Ausschaltern hinzufügen.

Kehrschleife mit Weiche

    Manchmal ist es aus Platzgründen wünschenswert, eine Weiche in den Sensorabschnitten unterzubringen. Die Belegungsmeldung der Weiche ist dann ein Sensorgleis. Es kann dabei auch der Fall auftreten, dass je nach Weichenstellung die Kehrschleife gar nicht nötig wäre, d.h. wenn die beiden Gleise 'hinter' der Kehrschleife unterschiedliche Polarität haben, kann bei einer Weichenstellung eine Kehrschleifenautomatik erforderlich sein, in der anderen Stellung nicht.

    Der GBM16T bietet hierfür zwei Methoden, um dieses Problem zu lösen:
  • Direktes Schalten:
    Die Kehrschleife kann über einen DCC-Weichen-Schaltbefehl direkt umgeschaltet werden. Damit kann aus der Steuerungssoftware abhängig vom geplantem Weg die Polarität vorgegeben werden.
    Voraussetzungen für direktes Schalten:
    • Es muß eine gültige Adresse mit CV1 und CV9 hinterlegt sein. Diese Adresse kann man mit dem Befehl R anzeigen lassen bzw. mit R <addr> oder mit den CV-Befehlen einstellen.
    • Das direkte Schalten muß in CV46, Bit 0 freigegeben sein (ist es in der Default-Einstellung)
  • Sensorgesteuertes Schalten unterbinden (Inhibit): (ab V 2.04) Die Auslösung der Umpolung an einen oder am anderen Ende kann temporär verhindert werden. Damit kann bei einer Weichenstellung, welche die Kehrschleife gar nicht benötigen würde, ein fälschliches Umpolen blockiert werden. Hierzu gibt es folgende Einstellungen:
    • Der GBM16T wertet zwei zusätzliche, vollkommen frei einstellbare Weichenadressen aus. Auch der ausgewertete Begriff (also rot / grün) ist frei wählbar.
    • Diese beiden Adressen arbeiten als normaler Schaltdekoder auf einen (virtuellen) Schalter 'Kehrschleife Inhibit', wobei je eine Adresse für Inhibit der off-Schaltung (=||) und eine Adresse für Inhibit der on-Schaltung (=X) vorgesehen ist.
    • Diese Adressen sind mit dem Debug-IF einstellbar und abfragbar (Befehl RI (reverser inhibit)). Die Syntax hierfür lautet:
      RI [0|1] Weichenaddr Aspect <cr>
       -   [0|1] bezeichnet den Wirkungsbereich: 0 = off-Schaltung, 1= on-Schaltung
       -   Weichenaddr ist die DCC Adresse der Weiche. Hier wird die echte DCC-Adresse angegeben, man muß daher beachten, ob und welchen Offset die jeweilige Zentrale verwendet. Oft ist ein Offset von 1 verwendet, bei der Multimaus ein Offset von -3: ruft man Weiche 1 auf, wird DCC-Adresse 4 gesendet.
       -   Aspect ist der Schaltzustand der Weiche, das kann 0 (rot) oder 1 (grün) sein. Dieser Schaltzustand setzt den Inhibit, mit dem anderen Schaltzustand wird der Inhibit wieder aufgehoben.

      Beispiele für Befehl RI
      RI 0 123 R
      (oder RI 0 123 0)
      Reverser Inhibit für die Kehrschleifenschaltung Richtung 0 (=||) wird mit DCC Adresse 123, rot eingeschaltet. (und damit implizit bei DCC 123, grün wieder aus).
      RI 1 123 G
      (oder RI 1 123 1)
      Reverser Inhibit für die Kehrschleifenschaltung Richtung 1 (=X) wird mit DCC Adresse 123, grün eingeschaltet. (und damit implizit bei DCC 123, rot wieder aus).

      (Zu beachten: DCC Adresse ist die echte Adresse, beginnend bei 0. Je nach Zentrale / Hostprotokoll muß man da die Weiche 124 dafür betätigen.)

      Der Zustand der Inhibitoren wird mit dem Befehl R angezeigt. Auch beim Eintreffen eines entsprechenden DCC-Befehls für einen Inhibitor wird im Debug-IF angezeigt. Inhibitoren kann man durch Eingabe einer Weichenadresse > 2048 wieder ungültig machen. Wenn man einen Inhibitor ungültig macht, wird auch eine eventuell gesetzter Inhibit-Zustand gelöscht.

      Wenn ein Inhibitor ungültig wird, dann wird die aktuelle Belegung ausgewertet, um fallweise ein Schalten der Kehrschleife auszulösen (für den Fall, dass bereits ein Zug in einer entsprechenden Zufahrt wartet).

      Ein schneller Test ist mit dem Befehl st >track< möglich: st simuliert eine Belegung, so kann man schnell überprüfen, ob die Einstellung wie gewünscht funktioniert.
  • Mit diesen Methoden ist z.B. das Problem der 'klassischen' Kehrschleife mit nur 2 Sensorgleisen zu lösen. Diese werden als Haltabschnitte sowieso benötigt, damit beträgt der zusätzliche Aufwand für die Kehrschleife nur die Relais!

Anwendungsbespiel: Kehrschleife bei Gleiswechsel

    Gegeben sei folgende Situation:
    Kehrschleife bei Gleiswechsel
    Die schwarzen Pfeile geben jeweils die Gleispolarität wieder, das gezeigte Gleisbild soll in allen möglichen Wegen und allen Richtungen befahren werden können.

    Lösung:
    Es werden zwei Kehrschleifen angeordnet, Kehrschleife A im oberen Gleis, Kehrschleife B im unteren Gleis. Zusätzlich wird noch ein Umpol-Relais für Abschnitt C benötigt.

    Einstellungen der Kehrschleifen
     Auslöser 'ON'Auslöser 'OFF'
    Kehrschleife A C, A3 A1, Z
    Kehrschleife B C, B3 B1, Q
    Aktionen bei Fahrten
     Kehrschleife AKehrschleife BRelais C
    Fahrt Z ↔ X
    Fahrt Q ↔ Y
    Inhibit ON aktiviert Inhibit ON aktiviert Stellung normal
    Fahrt Z ↔ Y kein Inhibit Inhibit ON aktiviert Stellung umgepolt
    Fahrt Q ↔ X Inhibit ON aktiviert kein Inhibit Stellung normal

    Hinweise:
  • Hier sind zwei Kehrschleifen erforderlich, also werden auch zwei GBM16T benötigt.
  • Der Abschnitt C ist als Auslöser in beiden Kehrschleifen enthalten. Hier gibt es zwei Möglichkeiten:
    a) C wird auf beide GBM16T parallel verdrahtet. Das ist möglich, sofern die beiden GBM16T gleich gepolt sind und am gleichen Booster hängen.
    b) Der Abschnitt B3 wird geteilt und die beiden Teile als Auslöser für die Kehrschleife B verwendet. Das bedeutet aber auch ein weiteres Umpolrelais.
  • Das Umpolrelais kann synchron zur Weiche C1 geschaltet werden (je nach Antrieb kann man hier das Polaritisierungsrelais des Herzstückes verwenden.

Stückliste

    BauteilWertDeviceAlternative/Order
    C110uC-EUC1206K
    C2100nC-EUC0805K
    D1BAS70-05SOT23BAT 54C SMD
    D2BAS70-05SOT23
    D3BAS70-05SOT23
    IC174HCT02DSO14
    J10J-03-Stiftleiste, HDR-100-1X03
    J11J-03-Stiftleiste, HDR-100-1X03
    K1TQ2SA-L2-5VLOW PROFILE 2 FORM C RELAY NAiSFRT5 - L2 DC 5V
    K2TQ2SA-L2-5VLOW PROFILE 2 FORM C RELAY NAiS
    K3TQ2SA-L2-5VLOW PROFILE 2 FORM C RELAY NAiS
    LED1LEDCHIP-LED0805LED
    LED2LEDCHIP-LED0805LED
    Q1BSS123NFET, SOT23
    Q2BSS123NFET, SOT23
    Q3BSS123NFET, SOT23
    Q4BSS123NFET, SOT23
    Q5BSS123NFET, SOT23
    Q6BSS123NFET, SOT23
    R11kR-EU_R0603_SJ
    X1RIA267-04Printklemme, stacked, Grid 3,5
    X2RIA267-04Printklemme, stacked, Grid 3,5
    X3RIA267-04Printklemme, stacked, Grid 3,5