Tipps zur Modellbahnsteuerung mit Traincontroller

Installation des Digitalsystems

    Bei einer Anlagensteuerung gilt es, drei wesentliche Aktionen auf der Anlage mit dem Computer zu verbinden:
      Fahren (von Loks), Schalten (von Weichen und Signalen) und Melden.
    Jede Aktion für sich soll (bzw. muß) fehlerfrei ablaufen. Zu beachten ist jedoch, das "Fahren" prinzipiell mit relativ viel Energie erfolgt, dementsprechend sind hier die Ströme hoch. Darüber hinaus kann es zu starken Stromschwankungen und ev. zu Kurzschlüssen kommen, was den Empfang der Daten für andere Empfänger an diesem Bus unmöglich macht. Es wird deshalb empfohlen, die Systeme zu trennen.
    Es sind zwei Ziele, die mit der Auftrennung erreicht werden sollen.
    1. Verhinderung des "Verschluckens" eines Steuerbefehls durch Störungen aus dem Fahrbetrieb.
    2. Aufteilen der "Befehls"last auf zwei oder mehr Systeme, wichtig bei größeren Anlagen und/oder langsamen Digitalsystemen.
    Punkt a) wird bereits erreicht, wenn der Fahrstrom einem separaten Booster entnommen wird. Punkt b) wird erreicht durch komplett getrennte Digitalsysteme, wobei häufig die Rückmeldung zusätzlich abgetrennt wird.
    Die Steuerung der MEFM erfolgt mit zwei Zentralen und einem Rückmeldermodul. (OpenDCC in der Betriebsart HSI88)

Verbindungsprobleme von Traincontroller mit der Hardware

    Üblicherweise werden die Digitalsysteme mit serieller Schnittstelle angeschlossen, häufig findet die Einstellung 8 Datenbits, 1 Stopbit, no parity Verwendung. Manche Digitalgeräte definieren zusätzlich noch Hardwarehandshake bzw. BREAK zur zusätzlichen Kommunkation. Manchmal unterstützen USB-Seriell-Wandler (besonders welche aus der Frühzeit des USB) nicht alle Spielarten.

    Wenn sich das Digitalsystem nicht ansprechen läßt, so überprüfe man zuerst die Verbindung. Hier hier alles in Ordnung, dann kann man versuchen, das Digitalsystem direkt anzusprechen: 'realterm' z.B. erlaubt das Darstellen und Versenden von seriellen Nachrichten sowohl als Hex und ASCII.

    Ein weiteres Problem kann noch in Traincontroller selbst liegen: TC geht beim Start davon aus, das angeschlossene Digitalsysteme im default-Zustand sind. Falls das nicht der Fall ist, kann es sein, dass TC zwar eine Verbindung meldet, diese aber wegen unterschiedlicher Protokollzustände auf beiden Seiten der Vebindung nicht funktioniert. Und das hat nichts mit RS232 oder USB zu tun! Eine Überprüfung des default-Zustand erfolgt nicht, auch werden von TC keine Befehle abgesendet, um den default Zustand zu erzwingen.

Benötigte Rechenleistung

    Hr. Freiwald hat im Forum mal folgende Formel gegeben:
      (# of simultaneously active trains x 33 MHz) + (# of blocks x 5 MHz).
    Das bedeutet für 9 fahrende Züge auf 100 Blöcken etwa 800MHz; Das konnte vielleicht mal bei einer Version 4.7 oder 5 stimmen. Meiner Erfahrung nach liegen mit Version 8.0B die Anforderungen deutlich höher. Auf einer Anlage mit über 500 Meldeabschnitten und getrennten Digitalsystemen kommt es mit einem 2,2GHz Dualcore bei etwa 12 fahrenden Züge zu Verarbeitungsengpässen. Nach Umrüstung auf einen Quadcore mit 3,4GHz war diese Grenze bei etwa 18 parallen Fahrten. Dabei waren die Kerne nicht gleichmäßig ausgelastet, es konzentrierte sich im Wesentlichen auf einen Kern. Es mag sein, dass Blockplanberechung, Graphik usw. von Mehrkernmaschinen profitiert, die Fahrsimulation scheint es nicht zu tun. So (ganz grob abgeschätzt) kommt man also auf:
      (Anzahl fahrender Züge x 120MHz) + (Anzahl Blöcke x 5MHz)

Resetproblematik bei der Intellibox (R)

    Nachdem unsere Intellibox beim Ausstellungsbetrieb einige grundlose Resets durchführte, hier eine Reihe von Tipps, die ich im Web gesammelt habe.
  • Ferritkerne (welche?) auf dem Zuleitungen vom Gleis und auf der RS232-Schnittstelle
  • Einstellen von Sonderoptionen:
    • 025 > 1 (immer DCC-Signal senden)
    • 027 > 0 (Zeit nach letztem Refresh-Zyklus einer Lok)
    • 033 > 0 (keine Weichenbefehle über I2C-Bus)
    • 663 > 0 (Reset-Kommando deaktiviert)
    • 907 > 4 (DCC-Signal, wenn keine Lok im Refresh-Zyklus)
  • Falls jemand an der I-Box die alten Mätrix-Booster (6015, 6017) betreibt, sollte noch folgende SoOp geändert werden:
    • 901 > 3 (Booster gibt DCC-Signal aus)
  • Nachdem sich bei uns die Resetproblematik dadurch nicht gelöst hat, habe ich (zusammen mit anderen) die DCC Zentrale OpenDCC im Selbstbau entworfen.

Schienenreinigung mit LUX Gleis-Staubsauger und Schleifwagen

    Der Staubsauger hat eine eigene Adresse, der Schleifwagen wird angesteckt und per Lichtfunktion F0 eingeschaltet. Abgeschaltet wird der Schleifwagen durch Richtungswechsel.
  • Man bildet in TC einen Zug und fügt die Zuglok und den Staubsauger als Doppeltraktion dazu.
  • Wichtig: Funktion weiterleiten aktivieren, damit der Lichtausgang auch an der Traktionslok eingeschaltet wird.
  • Beim Start der Zugfahrt wird das Licht eingeschaltet, beim Stop wieder abgeschaltet. Damit läuft der Staubsauger mit an, und auch die Schleifmaschine wird eingeschaltet. Was noch nicht geht, dass die Schleifmaschine auch wieder abgeschaltet wird. Hier muß man zu einem weiteren Trick greifen:
    Lösung für Schleifwagen:
    Der Staubsauger und der Schleifwagen "fährt" virtuell allein in einem unbenutztem Block, und wird von der Zugfahrt per Funktionsaufruf und damit verbundenen Macros gesteuert.
  • Schalter "LUX Staubsauger" erzeugen.
  • Bahnwärter erzeugen, dessen Auslöser obiger Schalter ist.
  • Bei diesem Bahnwärter folgendes als Operationen eintragen:
    • EIN: Lok Funktion (F0=Licht) ein, 100ms Delay, Geschwindigkeit rückwärts, 60km/h. Damit wird der Sauger eingeschaltet.
    • AUS: Geschwindigkeit 0, Fahrtrichtung vorwärts, 100ms Delay, Lok Funktion (F0=Licht) aus. Damit wird der Sauger wieder ausgeschaltet.
  • Einen Block erzeugen, der isoliert von der Anlage ist. Melder in diesem Block ist der obige Bahnwärter. Der Staubsauger wird nun diesem Block zugwiesen.
  • Zwei Macros (LUX an, LUX aus) erzeugen, die als Operation den Schalter "LUX Staubsauger" betätigen.
  • In der Zugmaschine Funktionen (USER1, USER2) erzeugen, die diese Macros aufrufen.
  • Jetzt bei Start der Zugfahrt die Funktion USER1 aufrufen, beim Stop die Funktion USER2.
  • Neuer Vorschlag:
    3 Funktionen: Sauger an (von Typ Macro), Sauger aus (von Typ Macro), Decoder F0 on/off
    Diese Funktionen bekommen Symbole
    Macro an: User5, Forward, Speed 10
    Macro aus: delay 200, speed 0, backward, delay, user5
    Zug bilden: Zuglok und Lux, Funktionen weiterleiten

Signalansteuerung fahrwegabhängig:

    Hinweis: ab Version 5.8 sind diese Tipps hinfällig, da nunmehr direkt in den Signalen mit Auslösern und Bedingung gearbeitet werden kann. Hierbei gilt:
    • Auslöser: Hier wird für jeden Signalbegriff eingetragen, was zu einem Aktivieren dieses Begriffes führen soll. Bleibt das Feld leer, so wird dieser Begriff *immer* aktiviert; es sollte daher nur die Grundstellung des Signals einen leeren Auslöser haben, alle anderen Begriffe müssen einen Auslöser haben.
      Beispiel (dreibegriffiges Signal):
        Auslöser für grün: Weichenstrasse steht auf gerader Fahrt und das Signal des Blocks, in dem die Lok zur Zeit steht, steht auf Fahrt.
        Auslöser für grün/gelb: Weichenstrasse steht auf abzweigender Fahrt und das Signal des Blocks, in dem die Lok zur Zeit steht, steht auf Fahrt (grün oder gelb). Die Langsamfahrt erzielt man durch Einstellungen der aktuellen Zugfahrt bei der Weichenstraße.
        Auslöser für rot: bleibt leer (Grundstellung)
    Tipps für die Version bis 5.5 (funktioniern natürlich auch mit 5.8):
  • Hauptsignal, manuelle Weichenstrassen:
    1. Für jede gewünschte Weichenstrasse muß zunächst ein Weichstrassensymbol erzeugt werden. Bei eingleisigen Strecken reicht allerdings ein Symbol für beide Richtungen.
    2. Nun die Weichenstrassen aufzeichnen und als Operationen noch die Signalstellung eintragen (z.B.Hp1 oder Hp2). Bei Auflösung der Weichenstrasse Hp0 eintragen, damit das Signal wieder zurückgestellt wird. Damit lassen sich bequem alle Signale in die gewünschte Stellung bringen.
    3. Danach jeweils ein Schaltersymbol an Start- und Zielgleis eintragen.
    4. Die entsprechende Weichenstrasse kann nun durch Aufeinanderfolgendes Betätigen der Start- und Zieltaste (Reiter Start-Ziel des Weichenstrassensymbols) aktiviert werden. Dabei benutze ich immer die Einstellungen in den Kästchen 1,2 und 4
  • automatische Weichenstrassen:
      Um auch dort die korrekte Signalstellungen zu erhalten, habe ich mit den "Bahnwichteln" gearbeitet. Auch da braucht es einen Trick:
    1. Zunächst ein Signalsymbol in einem "Dummy"-Gleisbild erzeugen. Dieses Signalsymbol wird benötigt, um die Stellung des Blocksignals abzufragen (Das wäre auch ein Verbeserungsvorschlag, dieses direkt abfragen zu können). Dazu wird das Signal in dem Block eingetragen und zeigt uns nun schön die Stellung des Blocksignals an (Hp0/Hp1). Da Signalsymbole nicht verborgen werden können, schicke ich es hier in den Hintergrund, wo es nicht stört...
    2. Das korrekte Signalsymbol nun neben den Block zeichnen und wie folgt mit einem Bahnwichtel bedienen.

    3. Für jede Stellung wird ein Bahnwichtel benötigt:
      • Stellung Hp0: Auslöser ist bei mir der leere Block, an dem das Signal steht. Es wird also zurückgestellt, wenn die Zugfahrt aus dem Block verschwindet. Nicht das Blocksignal verwenden, da es zu früh auf Hp0 geht.
      • Stellung Hp1: Auslöser ist das Blocksignal Hp1. Als Bedingung nun die Weichstellungen eintragen, die vorliegen müssen, damit HP1 gezeigt wird. Da bei mir alle Weichen gerade liegen müssen, sind die Bedingungen mit "UND" verknüpft.
      • Stellung Hp2: Auslöser wieder das Blocksignal Hp1. Als Bedingung nun die Weichstellungen eintragen, die vorliegen müssen, damit HP2 gezeigt wird. Da bei mir nur eine Weiche rund liegen muss, sind die Bedingungen mit "ODER" verknüpft.
  • Vorsignale:
      Um bei einer Bahnhofsdurchfahrt mit mehreren Fahrweg die jeweils korrekte Vorsignalstellung zu erhalten, sind Bahnwärter erforderlich:
    1. Für jede Stellung des Vorsignals wird ein Bahnwärter erzeugt; in dessen Operationen wird die gewünschte Stellung eingetragen.
    2. Als Auslöser wird bei allen Bahnwärter die richtige Kombination aus Weichenstraße und Stellung des Zielsignals eingetragen.

Ausfahrt aus einem bestimmten Gleis bei mehrgleisigen Bahnhof

  • Ausgangssituation: mehrgleisiger Bahnhof, wobei jedes dieser Bahnhofs-Gleise als Startblock für eine bestimmte Zugfahrt definiert ist. Es soll nun einen Taster geben, mit dem man einen bestimmten Zug für die Zugfahrt vorwählen kann.
  • Lösung 1: Ein Taster, dieser sperrt als Operation jede andere Blockausfahrt und startet am Schluss die Zugfahrt. Die Sperren müssen natürlich wieder aufgehoben werden. Dies passt fallweise nicht zu manuellen Sperren bzw. zu Weichenüberwachung.
  • Lösung 2: Ein Taster, dieser stellt als Operation die entsprechende Weichenstraße und startet dann die Zugfahrt. Allerdings muß an gegebener Stelle diese Weichenstraße wieder aufgelöst werden - die Zugfahrt macht es nicht. D.h. im Folgeblock löst man alle Weichenstraßen auf, die dorthin führen (könnten).
  • Lösung 3: (Vorschlag von Alex) Jedes Gleis erhalt einen Taster, dieser startet die (Sammel-)Zugfahrt. In den Weichenstraße wird unter 'Bedingungen für aktuelle Zugfahrt' der jeweilige Taster des Wunschgleises als Bedingung eingetragen. So kann die Ausfahrt nur aus dem gewählten Gleis erfolgen.

Zug fährt freies Gleis im Schattenbahnhof an:

    Bei unserer Anlage starten und enden viele Züge in den Schattenbahnhöfen. Jeweils alle Gleise sind als Endblöcke definiert. Sind nun alle Gleise belegt und ein weiterer Zug nähert sich diesem Schattenbahnhof, so hält dieser ordnungsgemäß vor der Schattenbahnhofseinfahrt. Er hat sich allerdings bereits eine Fahrstraße z. B. zum Gleis 2 ausgesucht. Dummerweise, wird jedoch z.B. Gleis 4 als nächstes frei - unser Zug wartet aber auf Gleis 4.

    Hier hilft folgende Einstellung: In den Zielblöcken des Schattenbahnhofes wird bei jedem Block die Bedingung "Block ist frei" eingebaut. Wenn nun ein Block besetzt ist, wird TC diesen Block nicht auswählen, d.h. wenn alle Blöcke besetzt sind, wird der Zug warten bis irgendein Block frei wird.

Licht der Züge zentral schalten

    Prinzip: Alle Loks und Steuerwagen zu einem riesigen Zug zusammenfassen und dann bei diesem Zug das Licht schalten.

    Vorbereitung:
    a) Einen neuen Block (ohne Verbindung zum Rest der Anlage) erstellen, dieser soll den Zug aufnehmen.
    b) Einen Monsterzug mit allen Loks erzeugen. Der Name dieses Zuges sei z.B. Lichtzug. Wichtig: Bei Funktionen weiterleiten muss ein Haken gesetzt werden.
    c) Dieser Zug wird dem neuen Block im Blockplan zugewiesen.

    Ein- und Ausschalter bauen:
    Man baut einen Bahnwärter, welcher dem obigen Block als Belegtmelder hinzugefügt wird. Im Reiter Operationen wird bei Operationen bei eingeschaltetem Bahnwärter (rot) die Lokoperation 'Licht an' eingegeben, bei ausgeschaltetem Bahnwärter (grau) die Lokoperation 'Licht aus'. Sollte die Lokoperation 'Licht aus' nicht vorhanden sein, klicken Sie im Reiter Operationen auf 'Ändern' und schalten dort den Funktionsstatus auf 'Licht aus'.
    Jetzt muß dieser Bahnwärter noch bedient werden. Hierzu macht man einen Ein-/Ausschalter, der bei obigen Bahnwärter als Auslöser eingetragen wird.

    Hinweis: Licht (und andere Funktionen von Loks) können nur geschaltet werden, wenn die Loks einem Block zugeordnet sind.

Sound abspielen:

    Neben der in TC eingebauten Klangerzeugung kann man auch mit externen Programmen Sound abspielen:
  • Mit ActiveX:
    1. den Windows-Explorer öffnen
    2. Menü "Extras" "Ordneroptionen..." Karteiblatt "Dateitypen", in der Liste "Registrierte Dateitypen" den Eintrag "Wave-Audio" markieren; als Dateitypinformation erscheint Erweiterung: WAV (evtl. ist diese Erweiterung unter anderer Bezeichnung eingetragen, dann muss man die Liste durchgehen, bis die richtige Erweiterung erscheint)
    3. "Bearbeiten...", es erscheint ein Dialogfeld "Dateityp bearbeiten"
    4. unter "Vorgänge" in der Liste den Eintrag "Wiedergabe" markieren, dann "Bearbeiten...", es erscheint ein weiteres Dialogfeld
    5. unter "Anwendung für diesen Vorgang" wird jetzt folgendes eingetragen (Leerzeichen genau beachten): C:\windows\rundll32.exe C:\windows\system\amovie.ocx,RunDll /play /close die Dateien rundll32.exe und rundll.exe müssen natürlich im Windows-Verzeichnis und amovie.ocx im Windows\System-Verzeichnis vorhanden sein, evtl. Eintrag anpassen
      Die Verknüpfung für "Öffnen" muss nicht geändert werden. Man kann also weiterhin mit der bisherigen Anwendung wav-Dateien öffnen.

      Ob die Änderung erfolgreich war, lässt sich im Explorer testen: eine wav-Datei mit der rechten Maustaste anklicken, im Kontextmenü "Wiedergabe" wählen. Es erscheint ein Fenster, das sich nach Ende des Sounds wieder schließt. Weitere Dateien müssen nun gleichzeitig abspielbar sein, jeweils mit eigenem Fenster.

      Jetzt müsste es auch mit TC funktionieren, wobei die Sound-Dateien ganz ohne sichtbare Fenster abgespielt werden.

  • Mit Soundrecorder:
    sndrec32 /play /close /embedding D:\Modellbahn\Sound\Pfiff_Schienenbus1.wav

  • Mit playsound.exe:
    c:\utils\playsound.exe c:\sounds\test.mp3 oder auch .wav

Fahren mit Soundloks, Anfahrverzögerung

    Soundlok sollen oft bei Losfahren nicht gleich abfahren, sondern zuerst z.B. den Motor anlassen, dann erst wegfahren. Damit wird ein realistisches Anfahren erreicht.

    In den Bahnhofsblocks, wo die Züge länger halten, werden in den Weichenstrassen unter Operation folgende Optionen gesetzt:
    • Zuerst eine Blocksperre, damit nicht der Zug sofort losfährt, wenn die Weichenstrasse aktiviert wird. Diese wird direkt bei der Weichenstraße im FDL eingetragen. (Operation -> Block auswählen -> Sperre mit richtiger Fahrtrichtung eintragen)
    • dann ein Makro, das den Motorstart der Diesellok veranlasst (F1)
    • als nächstes ein Zeitglied (bei System-Operationen) setzen (z.B. 10s).
    • Zum Schluss wird die Blocksperre wieder aufgehoben. (Operation -> Block auswählen -> grünen Pfeil eintragen)
    Nun hat die Lok genügend Zeit um den Motor zu Starten ohne gleich los zu fahren.
    Zusätzlich empfehlen sich folgende Einstellung der CVs:
    • CV3: Beschleunigung: etwa auf 40-50 bei Dampfloks und 64 bei Diesel.
    • CV6: mittlere Geschwindigkeit: etwa ein Viertel von CV5 (Höchstgeschwindigkeit)

Mittig halten:

    Falls Personenzüge an einem Bahnsteig mittig halten und Güterzüge bis zum Signal vorziehen sollen, kann man wie folgt vorgehen:
  • Vorbereitung am Bahnhofsgleis:
    - Am Zielbahnsteig wird ein Aus/Einschalter eingetragen, der eingeschaltet als Position "M" (mittig halten) wirken soll.
    - Es wird ein normales Meldersystem zum Bremsen beim Signal installiert (Kombi/Haltmelder nach Wahl), als Ausrichtung Zugspitze; dieses wird bedingungslos (d.h. es ist keine Bedingung eingetragen) ausgelöst.
    - Ein weiteres Meldersystem (virtuelle Melder) mit der Ausrichtung Zugmitte wird installiert. Hierzu am besten einen virtuellen kombinierten Brems-Haltemelder mit der Ausrichtung Zugmitte, der passenden Rampenlänge zwischen Bezugsmelder und Bahnsteigmitte jeweils in jeder Richtung. Bei diesem Meldern wird jeweils als Bedingung die Schalterposition "M" eingeschaltet eingetragen.
    Traincontroller kann mit mehreren aktiven Haltmeldern arbeiten, es wirkt dann jeweils der zuerst aktive Melder.

    Neu ab Version 5.8: Es kann jetzt direkt die Zugfahrt als Bedingung beim virtuellen Melder eingetragen werden, der Umweg über den Schalter ist nicht mehr erforderlich.
  • Vorbereitung bei den Zugfahrten:
    Zusammenfassen der mittig haltenden Züge zu einer Gruppe (hier mal P genannt). Bei den Zugfahrten dieser Gruppe wird für den obigen Block als Aktion bei Betreten des Zielbahngleises ein Makro ausgelöst, daß den Schalter "M" einschaltet. (rechte Maus-klick auf den Block, Einstellungen für aktuelle Zufahrt)
    Alle anderen Zugfahrten stellen den Schalter auf aus (wieder mit Makro).
  • So funktionierts:
    Startet eine Zugfahrt für Güterzüge, so wird bei Einfahrt dieser Zugfahrt der Schalter abgeschaltet. Dadurch wird der virtuelle Kombimelder nicht aktiviert und der Zug hält über den normalen Brems- und Haltemelder für das Bahnsteigende. Beginnt eine Personenzugfahrt, so wird über das Makro M der Schalter "M" eingeschaltet und über die Bedingung des Kombimelders wird nun der virtuelle Brems/Haltemelder mit Ausrichtung Zugmitte aktiviert. Dieser Melder wird zeitlich vor dem Melder am Bahnsteigende aktiviert. Folge: der Zug hält schön in der Mitte des Bahnsteigs.
  • Optimierung des Schaltens:
    Anstatt den Schalter bei der Zugfahrt zu setzen (was zu relativ vielen Zugfahrten führen kann), kann man den Schalter aus einer Lokfunktion setzen. Also folgende Reihenfolge:
    Bei Einfahrt wird bei allen Züge Lokfunktion "Sonstiges 5" aufgerufen. Bei mittig haltenden Loks (Zügen) ruft diese Funktion ein Makro auf, das den Schalter "M" setzt. Bei sonstigen Loks (Zügen) ruft diese Funktion ein Makro auf, das den Schalter "M" rücksetzt.
    Anstatt des Schalters wäre auch ein mehrbegriffiges Signal als Zustandsvariable (hat dann bis zu 4 abfragbare Zustände) denkbar.

Weichenstraßen Absichern

  • Option 1: Einfahrt in belegte Weichenstraßen abwählen
    Weichenstraßen können dann nicht mehr befahren werden, wenn sie bereits belegt (z.B. durch einen verlorenen Waggon) sind. Nachteil: Nach einem Nothalt können sich Züge selbst den Fahrweg blockieren, wenn sie teils auf einer Weiche stehen bleiben.
  • Option 2: Reservierung bei Belegung verhindern
    Hierzu muß man bei den Bedingungen der Weichenstrassen die Belegung eintragen. Ab Version 7 geht das über ein zusätzliches Häkchen, das man in den Regeln der Zugfahrt setzen kann.

Langsamfahrt bei Bahnhofsausfahrt

  • Problemstellung:
    Ausfahrt aus einem Bahnhofsgleis über eine abzweigende Weiche; da TC bei der Ausfahrt aus einem Block auf die im folgenden Block angegebene Geschwindigkeit beschleunigt, rauscht der Zug viel zu schnell über die Weiche. Beschränkt man die Geschwindigkeit im Bahnhof bzw. der Weichenstraße, so wird danach beschleunigt und das Zugeende ist in der Weiche zu schnell.
  • Lösung 1:
    Einen zusätzlichen Block zwischen Bhf-Block und erstem Streckenblock einrichten. Dieser zusätzliche Block enhält einen realen Kontakt "A" und einen virtuellen Kontakt "B" (= Bremsmelder) und hat eine Maximum-Geschwindigkeit und eine Langsam-Geschwindigkeit. Bei Zugfahrten, die nur über gerade Weichen ausfahren, ist die Einstellung dieses Blocks für diese Zugfahrt "Signal GRÜN" ansonsten "Signal GELB".
    Der virtuelle Kontakt sieht wie folgt aus:
    • Melder: "A"
    • Distanz: = Weichenstraßenlänge
    • Ausrichtung: Zugende
    • Bedingung: -
    • Memory: wenn Einschaltpunkt passiert ist

    Anmerkung: Die Distanz "Weichenstraßenlänge" gilt nur dann, wenn sich der reale Melder direkt an den Melder des Bhf-Gleises anschließt. Liegt zwischen diesen beiden jedoch die Entfernung D, so ist die Distanz: = (Weichenstraßenlänge - D)
    Mit Erreichen des Bremsmelders im Bhf-Gleis wird der Zug auf die Geschwindigkeit dieses zusätzlichen Blocks abgebremst und, nachdem der letzte Waggon die letzte Weiche verlassen hat, auf die Geschwindigkeit des folgenden Streckenblocks beschleunigt.
  • Lösung 2:
    Zunächst wird die betreffende Weichenstraße der Ausfahrt mit Langsamfahrt eingestellt. Am Beginn des Streckenblocks wird ein virtueller Melder erstellt, der als zweiter (zusätzlicher) Bremsmelder (Ausrichtung Zugende) im Streckenblock eingetragen ist.
    Hat der Zug nun freie Einfahrt in den übernächsten Block ("B2"), beschleunigt er bereits hier auf die für B2 geltende Geschwindigkeit; falls keine Weiterfahrt nach B2 möglich ist, fährt er in Langsamfahrt weiter. Die Bremsrampe für diesen virtuellen Melder ist länger als die Länge des Blocks, daher bremst dieser Melder den Zug in Streckenblock nicht weiter ab.
    Das übernimmt nun tatsächlich der ursprüngliche Bremsmelder, der kurz vor dem Ende von B1 den Zug ebenfalls erfasst, ihn entsprechend Geschwindigkeit und Rampe abbremst und ggf. stoppt.

    Resultat: Die Lok fährt mit Hp2 los und erhält bereits am Anfang vom Streckenblock die Information Hp0 oder Hp1 - falls sie halten muss, beschleunigt sie gar nicht erst weiter und bremst ggf. bis zum Halt. Wird die Einfahrt nach B2 irgendwann frei, "sieht" die Lok quasi das Signal im Voraus und beschleunigt, denn das bewirkt ja noch der erste (neue) Bremsmelder, der bereits betätigt ist.
    In den Bedingungen für diesen Melder eintragen, daß Blockmelder 2 frei ist. Im Streckenblock den Melder als zusätzlichen Bremsmelder mit Zugende und Rampe 0 eintragen.
    Zu beachten ist eben nur, dass die Rampe für den zusätzlichen "Beschleunigungs-Melder" lang genug gewählt wird, damit er nicht als Bremsmelder aktiv wird. Und: als kleine Einschränkung beschleunigt der Zug natürlich nicht auf die eigentlich geltende Geschwindigkeit von B1, sondern auf die von B2 - aber die sind bei mir beide gleich.

Lokbilder:

Melder für Überwachungsaufgaben

    In diesem Thread des TC-Forum, weist Hr Freiwald darauf hin, dass Rückmelder nur für das Fahren verwendet werden sollen ("Es ist in TrainController niemals eine gute Idee, Rückmelder (Belegtmelder) zur Kontrolle von ganz anderen Dingen zu verwenden ") und dass man Melder nicht mehrfach auf dem Stellwerk eintragen darf. Diese würden fallweise nicht abgearbeitet.
    Das bedeutet, man sollte Abstand von 'Kontrollleuchten' nehmen und auch z.B. Weichenüberwachungen sind fallweise nicht funktional. Nur: normale Rückmelder sind die quasi einzige Möglichkeit, Zustandsinformation aus der Anlage in den PC zu bekommen ...

Traingrogrammer Dateien

Sounds:

RAILROAD.INI entschlüsselt:

    Es gibt wie bei anderen .ini Files auch Sections, in denen sind Schüsselwörter und ein Wert dazu eingetragen.
  • Section [Connections]
    Hier sind die Digitalsyteme eingetragen, jeweils beginnend mit Device=XXX, wobei XXX die Schnittstelle ist, an der das System angeschlossen ist.
    • SwitchTime:
      Standardschaltdauer für Magnetartikel in Millisekunden. Dieser Wert wird verwendet für alle Magnetartikel, für die eine Schaltzeit von 0 angegeben wird. Nach Ablauf der Switchtime sendet TC den entsprechenden Abschaltbefehl.
    • SendSwitchOff=0:
      Wenn das auf 0 gesetzt wird, dann wird der Abschaltbefehl nicht von TC gesendet, die Decoder müssen dann selbständig ausschalten. Hinweis: die IB gibt den Abschaltbefehl auch gleich gar nicht auf das Gleis aus.
    • UseCommDefaults=1:
      TC übernimmt die Einstellungen aus der Windows-Systemsteuerung für den betreffenden COM-Port. (z.B. Baudrate); Der Baudratenscanner wird dabei zwar angezeigt, aber intern wird mit der Einstellung des Betriebsystems gearbeitet. Bei mehr als einem COM-Port sind die weiteren Schlüsselwörter: UseCommDefaults2=1, UseCommDefaults3=1, ...
    • ZellerDiameter=xxx:
      Ab Version 7.0 F3 kann der Durchmesser der Rolle über diese Option umgestellt werden, wobei xxx den Durchmesser der Rolle in Hundertstel Millimetern angibt. xxx=593 entspricht also z.B. einem Rollendurchmesser von 5.93mm (=H0). Damit ist eine Anpassung an unterschiedliche Spurweiten möglich.
  • Section [Settings]
    • Editieren mit Passwort schützen:
      EditPassword=abc eintragen, wobei abc das gewählte Passwort ist.
    TC sucht beim Start nach einer Datei <windows-system-verzeichnis>liarxam.log - was immer das auch enthalten mag.

Irgendwas zu Beginn automatisch starten:

  • Einen Rückmeldekontakt auf Dauer-Ein verdrahten. Mit diesem Melder in TC die gewünschte Autostart vebinden.

Tastaturmakros aufrufen:

    Es gibt ein Programm, das dem Keyboardbuffer Tastendrücke unterjubelt: autohotkey. Wolfgang Schön hat dazu ein paar Beispiele auf seiner Seite.

Alarmanlage oder Notstop bei Falschfahrten:

    Sollte eine Weiche nicht schalten oder ein Zug in die falsche Richtung fahren, so erfolgt eine Belegung eines Blockes ohne dass dieser vorher reseviert war. Dieses läßt sich wie folgt überwachen:
  • Einen Bahnwärter erzeugen, in dessen Auslöser Sie alle so überwachenden Blöcke im Zustand "belegt, aber nicht reserviert" eingetragen werden (mit ODER verknüpft). Dieser Zustand ist nich direkt abfragbar, sondern wird über eine UND-Verknüpfung von 'belegt' und 'nicht reserviert' ausgewertet.
  • Optional einen Ein-Ausschalter "Fehlbelegungen melden" als Bedingung dieses Bahnwärters. Damit kann die Überwachung an und abgeschaltet werden.
  • Bei den Operationen dieses Bahnwärters je nach Wunsch die Systemoperation "Nothalt", einen Klang oder eine Meldung eintragen.
  • Natürlich löst dieser Melder auch aus, wenn man eine Lok neu auf die Anlage stellt: also entweder diese nur im Editmode hinzufügen oder obige Bedingung benutzen.

(Scheinbares) Durchrutschen am Blockende:

    Während eines Fahrtages fuhr manchmal am späteren Nachmittag ein Wendezug im Schattenbahnhof 20cm zu weit und stand dann bereits wieder teilweise auf der Ausfahrtsweiche.

    Ursache war eine Verschmutzung des vorderen Drehgestells nach 6h Dauerfahrt. Dadurch war der Zugbeginn für die Rückmelder halt erst um 20cm weiter hinten. Da dieser Zug auch noch bei jedem Umlauf gewendet in den Schattenbahnhof zurückkam (und damit der Fehler sowieso nur jedes zweite Mal auftreten konnte), haben wir eine Zeit gebraucht, bis das erkannt war. Unsere Abhilfe: auch bei Stromaufnahme am vorderen Drehgestell trotzdem noch eine Widerstandachse einbauen.

Ansteuerung Littfinski S-DEC-DB

    Immer wieder taucht im Forum die Frage auf, wie der Littfinski Signal-Decoder LS-DEC-DB mit TC angesteuert wird. Hier unsere Einstellungen:

    Der Gleisplan. Nachfolgend geht es um die beiden Signale im roten Kringel.


    Einstellungen für das Hauptsignal.


    Das Vorsignal dazu; man beachte die Adressen (Abstand 2) und die Zeiten (400ms!). Diese Zeiten sind erforderlich, weil sich der Littfinski Decoder nach Erhalt eines Befehls erst mal für diese Zeit tot stellt.
    Hinweis: unter Decoder gibt es Selbstbaudecoder, die leicht auf verschiedenste Signalbilder programmiert werden können.

Kopierschutz

    In 2008 hat Herr Freiwald im Zuge des geplanten Umstieges auf V7 mit einer Forumsumfrage die Akzeptanz eines Kopierschutzdongles in Form eines USB-Sticks abgefragt und dabei neben einer Reihe sinnvoller Argumente auch günstigere Preise genannt, weil ja nicht mehr schwarz kopiert werde (oder werden könne).
    Dieser Argumentation folgten die meisten (linientreuen) Forumsleser teilweise mit Begeisterung. V7 ist dann auch nur mit USB-Stick ausgeliefert worden, der Preis ist jedoch auch signifikant nach oben gegangen.

    Schweren Herzens habe ich dann meine Lizenz in 2009 auch auf V7 hochgerüstet, obwohl ich wegen des Diebstahlsrisikos im Verein und des Einsatzes auf wechselnden Rechnern nie eine Software mit Dongle haben wollte und die Donglefreiheit damals auch ein Grund war, sich für TC zu entscheiden.

    Was passiert, wenn man sich 'vorbeimogeln' will, kann man hier (auf tschechisch) nachlesen. Offenbar gab es mal einen Hack, und der wurde blackgelistet ...