Vorwort
Anhand von Beispielen aus dem Projekt St. Margareten
(Stand 2017) soll Konfiguration
und Einsatz dieses TC* - Objekts, gegenüber dem in
"Philosophie" (s. linkes Register)
gegebenen Überblick, detaillierter dargestellt werden.
TC* zeichnet sich u.a. dadurch aus, daß es möglich ist, mehrere Wege
zur Erreichung seines individuellen Ziels
(Betriebsablauf, Betriebssituation) zu beschreiten. Von
daher ist es sehr wichtig, sich jedesmal sein Ziel genau zu
definieren.
Die hier aufgezeigten Möglichkeiten sollen nur das Prinzip
verdeutlichen und erheben keinen Anspruch auf Vollständigkeit und
/ oder Fehlerfreiheit.
Die nachfolgenden Bilder können jeweils durch anklicken
vergrößert werden!!
Hinweis:
Der Einsatz und die Verwendung der Blöcke,
insbesondere ihre Auswirkung auf die Steuerung der
Zugfahrten, ist in den
TC-Beispielen dargestellt und wird dort diskutiert.
Ferner findet man in den Beispielen von Bahnschranke und
Formsignalen Angaben, wie Weichenstraßen zur Steuerung der Freigabe
der Blöcke eingesetzt werden können.
Weitaus ausführlicher wird das Thema
"Block" in verschiedenen Beiträgen im
TC-WiKi behandelt, von der
einfachen Einrichtung eines Blockes bis hin zu komplexen
Steuerfolgen / Abläufen.
Funktion und
Aufgabe
Ein Block repräsentiert einen bestimmten physikalischen
Anlagenbereich oder Gleisabschnitt oder auch Betriebsblock.
TC* ist so angelegt, daß NUR in
diesen Abschnitten (TC-Blöcken) ein Fahrzeug "angesprochen" und
gesteuert werden kann.
Innerhalb eines TC* Blockes lassen sich
von einem Fahrzeug initierte Steuerungsvorgänge konfigurieren
und ausführen.
Im TC* Block werden organisatorisch
Steuerungsabläufe zusammengefaßt.
Die Steuerungsabläufe selbst sind unbenommen von der Länge des
physikalischen Gleises und der Anzahl der dem Block zugeordneten
Meldekontakte, seien diese als "Dauermelder" oder "Momentmelder"
ausgebildet.
Funktionen der Melder zum STEUERN in einem Block
Die Melder zeigen durch ihren
Zustandswechsel (aus, ein) an, daß ein Fahrzeug diesen
Meldepunkt erreicht hat (beim "Dauermelder"
die Schnittstelle im Gleis -- nicht die Gleislänge !!, beim
"Momentmelder" das Schalten des Kontaktes).
Aufgrund der dem Melder im Block
zugewiesenen (konfigurierten) Aktionen werden diese mit dem
Zustandswechsel initiert und laufen entsprechend ab.
Je nach Ablaufsteuerung der Anlage
(Planung !!) kann die Anzahl der Melder von einem pro Block auch
bis zu 5 Meldern (und mehr) reichen.
Je nach physikalischer Auslegung der
Melder, kann das auch bis zu z.B. 5 Gleisunterbrechungen "nach
sich ziehen".
Bahnwärter werden von TC* in diesem
Kontext auch als Melder behandelt und müssen dann wie Melder
auch im Block konfiguriert werden.
Block Zustände und ihre Auswirkungen
auf die Steuerung
- Reserviert von einem Zug mit
Fahrtrichtung ....
- Reserviert von einem Zug mit
Ausrichtung .....
- Reserviert (ohne Fahrtrichtung,
Ausrichtung)
- Nicht reserviert
- Frei (nicht belegt)
- Belegt
Reservierung / aktueller Block
TC* richtet sich intern bei der Steuerung
nach der Reservierung und dem aktuellen Block.
Der aktuelle Block ist dabei der Block indem sich das Fahrzeug
(Zug, Zugverband) aktuell befindet, während die Reservierung den
"Weg" der Fahrt aufzeigen und "freihalten" (im
Sinne der Steuerung).
Der aktuelle Block bleibt solange aktuell,
bis über die TC Steuerung das Fahrzeug / Zug in einen anderen
Block bewegt wird oder dieses Fahrzeug / Zug aus dem Block
entfernt wird; unabhängig von dem Zustand des / der Melder.
Daraus ist ersichtlich, daß TC sich auch
ausschließlich über "Momentkontakte" steuern läßt.
Frei / Belegt
Belegt wird umgangssprachlich
auch mit besetzt bezeichnet.
Frei und Belegt beschreiben zwei
physikalische Zustände eines Gleisbereiches, die z.B. über
> einen Melder
> einen Achsenzähler
erfaßt werden.
Im Sinne der TC* Steuerungsfunktionen
bedeutet eine solche Situation, daß in ein solches Gleis (==
Block) nicht eingefahren werden darf, d.h. es darf dort auch
keine Reservierung erfolgen.
>>> siehe hierzu die diversen
Zugfahrtsregeln (pro Zugfahrt), mit denen man das Verhalten der
Steuerung beeinflussen kann !!
Unterscheide stets ....
Reservierung / aktueller Block <>
Frei / Belegt
Beispiel
Ist ein Zug aus einem Block
herausgefahren, dann ist dieser Block nicht mehr der aktuelle
Block, gleichwohl kann er noch durch einen zurückgelassenen
Wagen belegt sein.
>>> bei Verwendung von Zugverbänden gilt,
bleibt ein Wagen / Mehrere Wagen eines Zugverbandes zurück UND
wurden diese zuvor durch die Trennfunktion logisch vom Rest
getrennt, dann ist dieser Block weiterhin ein aktueller Block
für dem restlichen Zugverband.
Verliert ein Zugverband einen Wagen, dann ist dieser Block für
TC kein aktueller Block mehr, sondern belegt.
Längenangaben im Zusammenhang mit
den Blockeigenschaften
max. Zuglänge
Wertangaben in diesem Feld sollten vor
allem dann getätigt werden, wenn die Wagen keine leitenden
Achsen haben.
Außerdem ist es in diesem Zusammenhang auch dringend geboten mit
Zugverbänden zu arbeiten.
Max. Zuglänge ist nicht unbedingt gleich
max. physikalische Gleislänge !!
Die max. Zuglänge richtet sich nach der Haltemarkierung und dem
dann verbleibenden Rest des physikalischen Weges, der noch durch
Fahrzeuge belegt sein darf.
Bei mehreren Haltemarkierungen und Richtungen muß das
entsprechend für alle berücksichtigt werden.
TC* vergleicht die berechnete
Zugverbandslänge und vergleicht diesen Wert mit der max.
Zuglänge und verhält sich dann bei der Steuerung entsprechend
der eingestellten Regeln der Zugfahrt.
Diese Berechnungen sind dann von
Interesse, wenn Züge länger sind als ein Block, denn dann kann
über die Zugfahrtsregel definiert werden, wie siech die
Steuerung verhalten soll.
Verwendet man keine Zugverbände, dann sind
TC* in der Regel auch die Zuglängen nicht bekannt.
Das Programm geht dann immer davon aus,
daß der Zug in den Block paßt und gibt z.B. die zurückliegenden
Fahrwege frei.
Bei Fahrzeugen ohne leitenden Achsen bzw. bei leitenden Achsen
und zu wenig HW Meldern kann das dann zu Ablaufproblemen bis hin
zu Auffahrunfällen führen.
Längenangaben in Markierungen
Mit diesen Längenangaben in den
Distanzen "verschiebt" man zeitlich
(Weg-Zeitberechnung) das Aktivieren der Markierung in
Bezug auf den Wechsel des Melderzustandes.
Mit den Längenangaben in den Rampen
definiert man eine weitere zeitliche "Verschiebung",
verbunden mit einer Reduzierung der Geschwindigkeit des
Fahrzeugs.
Verbindung zwischen zwei Blöcken
Die Verbindung zwischen zwei Blöcken wird
in TC* Weichenstraße genannt, gleichgültig ob dies "nur" eine
direkte, reale Gleisverbindung ist oder ob sich in dieser realen
Verbindung auch Weichen befinden bzw. eine Weiche befindet.
Aus dieser Definition heraus ergibt sich,
daß Weichen nicht Bestandteil eines Blockes im Sinne der TC
Definition sein können.
Den Bereich zwischen diesen Abschnitten, also z.B. über Weichen,
legen die Fahrzeuge mit der im letzten Block eingestellten
Information zurück.
Designanforderungen
Aus dieser Grundfunktionalität läßt sich
zweierlei für die Gestaltung der Anlage ableiten ..
- Der TC-Block sollte sich direkt an einer
Weiche, etc. anschließen und bis zur nächsten Weiche, etc.
reichen.
- Die Länge eines solchen physikalischen
Abschnittes sollte min. so lang sein, wie der längste zu
erwartende Zug sein wird.
- Sind diese physikalischen Abschnitte sehr
lang, dann sollten diese in mehrere TC-Blöcke aufgeteilt werden.
Dadurch sind auch dynamischere Abläufe gestaltbar. Eine
Aufteilung in Streckenblöcke wie bei der großen Bahn stellt
hierfür ein gutes Vorbild dar.
- Der spätere Betriebsablauf sollte vorab
grob geplant werden, denn daraus ergeben sich die Anforderungen
an die Steuerung und damit die Anforderungen an Meldepunkte
(Melder)
- Sind Loks, Triebfahrzeuge im rollenden
Materialbestand die in ihrer Charakteristik stark abweichen, so
sollte sich der nutzer überlegen, ob er nicht mehr HW Melder
installiert, so daß er z.B. für einen "Bremspunkt und
"Haltepunkt" jeweils einen einzelnen realen Melder installiert.
Für den Eintritt in den Block wäre dann u.U. ein dritter Melder
erforderlich.
Vorteil:
Die Steuerung der Fahrzeuge mittels der Weg / Zeit - Berechnung
wird reduziert und auch schlecht einmeßbare Fahrzeuge können
besser gesteuert werden.
Aus der logischen Verbindung einer Zugfahrt
(Start Block >> Ziel Block) weiß das Programm, welcher Block
jeweils als nächster anzufahren ist.
Anhand des Ansprechens des realen Block-HW-Melders erfährt TC*,
daß jetzt ein Fahrzeug eingefahren ist.
In Verbindung mit der Ablauflogik ist bekannt, um welchen Zug / Lok
es sich handelt.
Damit ist dieser/diese ansteuerbar.
Editiermodus
Auswahl und Positionierung dieses TC* - Objektes
sowie seine Konfiguration kann NUR in diesem Modus erfolgen.
Die Konfiguration dieses TC* - Objektes erfolgt in den
"Objekt - Eigenschaften".
Diese sind zu Erreichen durch ....
- Anklicken des Objekts mit der mouse und
drücken der linken mouse - Taste
- anschließendem Drücken der rechten mouse -
Taste
- Auswahl von Eigenschaften im
aufgeschlagenen PopUp Menü
- Öffnen der Eigenschaften durch linke mouse
- Taste
Register "Allgemeines"


Hinweise
"kritischer Abschnitt" --- diese Markierung
deklariert den Block als "kritisch", und damit den Fahrweg, der
durch den Block repräsentiert wird. In aller Regel handelt es sich
um eine EINGLEISIGE Strecke.
Mit dieser Einstellung wird das TC* - Programm angewiesen, eine
Zugfahrt über diese Stecke nur dann auszuführen, wenn sich im
Anschluß an diesen Block (Blöcke) -- jeweils in Fahrtrichtung
gesehen -- min. ein Block befindet, der frei ist UND den
kompletten Zug in seiner Länge aufnehmen kann.
Ziel ist es, daß nicht zwei Zugfahrten gleichzeitig diese Stecke
benutzen wollen und sich dann diese Zugfahrten gegenseitig
blockieren.
"Verwendung Richtung" --- markiert die zugelassene(n)
Fahrtrichtung(en)
"Zuglänge Maximum" ---
Erklärung siehe OnLine
-> 0 besagt, daß es keinen Vergleich Zuglänge / Blocklänge gibt,
"es passen alle Züge rein"
-> ein Wert besagt, daß Züge mit einer größeren Zuglänge
/Blocklänge nicht mehr in den
Block passen
Mit dieser Angabe können Zugläufe und Abstellbahnhöfe gesteuert
werden.
Register "Blockeditor"

Hinweise
"Meldereinrichten" --- es können NEUE Melder generiert
oder bestehende eingefügt werden. D.h. die Melder werden HIER mit
dem Block verknüpft und somit auch mit der Anlage. Hier ist also
auf die korrekte Zuordnung von Einbauort auf der Anlage und
TC*-Block zu achten, ansonsten kommt es beim Betriebsablauf zu
Problemen!!
Wie bereits schon in der "Philosophie" aufgezeigt, können die
Melder realer oder virtueller Natur sein; ABER es muß in einem
Block mindestens EIN realer Melder eingetragen sein. Dieser dient
für virtuelle Melder als Referenz.
"Melderfunktionswahl" --- jedem Melder muß eine
Funktion zugewiesen werden; als das sein können ..
- Haltefunktion >> Haltmelder
- Bremsfunktion >> Bremsmelder
- Geschwindigkeitsmarkierung
- Aktionsmarkierung
- oder KEINE der obigen, dann wirkt dieser
Melder als reiner Besetztmelder ODER als Referenzmelder zu
anderen virtuellen Meldern
"Melderfunktion-Richtung" --- die
Wirkrichtung des Melders, d.h. die Auslösung in Bezug auf die
Zugfahrtrichtung im Block, ist beim Deklarieren des Melder oder
besser seiner Melderfunktion vorzunehmen.
"Melderfunktion-Beginn" --- sind
keine Angaben in den Feldern "Distanz" bzw. "Rampe"
getätigt, dann wirkt die Melderfunktion sofort, wenn der Melder
(über die Hardware) aktiviert wird (Einbauort ist auch
Wirkungsort).
Mit der Angabe "Distanz" kann der Beginn der Wirkung
(Wirkungsort) gegenüber dem Einbauort verschoben werden.
Die Verschiebung wird als Weg angegeben, es kommt aber auf die
Fahrzeuggeschwindigkeit(en) an, um die zeitliche Verschiebung(en)
beurteilen zu können.
Mit der Angabe "Rampe" kann festgelegt werden, auf welche
Wegstrecke sich die Veränderung bezieht; z.B. es soll nach von 50
cm das Fahrzeug auf Kriechgeschwindigkeit abgebremst sein.
Ferner kann angegeben werden, auf welche Fahrzeugposition sich die
vorgenannten Angaben beziehen sollen.
Hinweis:
Die vorgenannten Angaben können für jeden im Block eingetragenen
Melder getätigt werden. Das Markieren des Melders ist gleichzeitig
die Auswahl für diesen und ordnet die Eingaben diesem Melder
automatisch zu.
"Melderfunktion-Eigenschaften"
--- auch hier werden wieder in den Eigenschaften zu den
Melderfunktionen die Funktionalitäten definiert.
Die Eigenschaften des MELDERS erreicht man durch "Doppelklick" auf
den "Melder-Kreis" in der Mittellinie des Blocksymbols.
Die Eigenschaften der MARKIERUNG (== Melderfunktion) erreicht man
durch "Doppelklick" auf das farbige Dreieck.
Beispiele zur "Aktionsmarkierung"
Die Aufgabenstellung besteht darin zu untersuchen,
welche Zuggruppe sich im aktuellen Block befindet und welche in
dem (in Fahrtrichtung) vorausliegenden.
Folgt einer "langsamen" Zuggruppe eine "schnellere" , dann soll im
Abzweig Sonnenhang eine Überholung stattfinden.
Bedingung
Werden hier Bedingungen formuliert, dann
werden diese so interpretiert, daß der Block nur verwendet werden
kann, wenn diese Bedingungen erfüllt sind.
So kann z.B. innerhalb einer Zugfahrt der Zug eine Schranke
schließen und solange diese nicht geschlossen ist, kann der Zug
nicht in den Block einfahren. Er wartet im vorhergehenden Block
auf die Freigabe durch die Erfüllung der Bedingungen.
Bedingungen wirken sich somit temporär aus, d.h. die Zugfahrt als
solche wird angelegt und gestartet, jedoch bis zur Erfüllung an
diesem bestimmten Ort in der Ausführung unterbrochen.
Operation
Memory
Im Memory wird eingestellt, über welche Zeit
diese Aktion Gültigkeit haben soll.
Beispiele zu der
"Geschwindigkeitsmarkierung"
Die Aufgabenstellung besteht darin zu untersuchen, auf
einer eingleisigen Gleis- / Strecken- Wendel die Zuggeschwindigkeit für die
"Bergfahrt" anders einzustellen als für die "Talfahrt".
Blockeditor und die je nach Fahrtrichtung
eingetragenen Markierungen
Markierungs - Operation >> Erhöhung der
Geschwindigkeit
(diese muß später wieder zurück gesetzt werden)
Register "Zugerkennung"

Wird eine Zugerkennung verwendet, dann kann
hier der Melder deklariert werden, der die Lok-Dekoder-Adresse
(o.ä.) zur Auswertung bereitstellt.
Diese Funktion wird von TC* für die Durchführung seiner Aufgaben
NICHT benötigt.
Sie ist jedoch hilfreich, wenn Loks neu auf die Anlage aufgesetzt
werden, nachdem sie in "Loks und Züge" grundsätzlich erfaßt
wurden; dann ordnet TC* automatisch diesem Block die deklarierte
Lok zu. Man muß dann diese Zuordnung nicht manuell vornehmen.
Hinweis:
Die Zugerkennungsfunktion muß absolut stabil laufen, denn kommt es
zu fehlerhaften Adreß-Angaben, dann wird sowohl im Stand als auch
bei einer laufenden Zugfahrt die "Lok ausgewechselt". Das hat
natürlich ein großes Durcheinander zur Folge.
Register "Züge"

Sind in dem Feld "betroffen" KEINE
Einträge vorhanden, dann ist der Block mit ALLEN Angaben und
Funktionen für ALLE Loks - Zuggruppen gleichermaßen gültig.
Ist in dem Feld EIN Eintrag oder MEHRERE vorhanden, dann
gelten ALLE Angaben und Funktionen NUR für die gelisteten Züge und
Zuggruppen !!
Register "Bedingungen"
Mit diesem Register hat der Nutzer die
Möglichkeit seinen Betriebsablauf sehr individuell und auch
dynamisch vom Betriebszustand abhängig zu steuern, was eine hohe
Flexibilität ermöglicht.

Hier lassen sich Bedingungen deklarieren, die
erfüllt sein müssen (s. OnLine Hilfe), damit die im Blockeditor
eingetragenen Funktionen wirksam werden können.
Sind keine Bedingungen eingetragen, so sind die Funktionen immer
wirksam.
Betriebsmodus
Simulation (offline) und realer
Betrieb (online) mit der
Modellbahnanlage können NUR in diesem Modus erfolgen.
Er wird automatisch erstellt, wenn der Editiermodus deaktiviert
wird !!
Die Stati offline bzw. online müssen separat
ausgewählt werden; beim Wechsel in die Simulation wird der Status
offline automatisch erzeugt.

Der TC* - Block wird als Rechteck angezeigt.
Hinweis:
Die Art der Anzeige läßt sich über die Menü (Leiste) > Ansicht >
Stellwerk > Einstellungen > Register Blöcke vornehmen / an den
eigenen Bedarf anpassen.