Grundsatz
Grundsätzlich stehen 2 Kommunikationswege zur Verfügung...
- über die serielle Schnittstelle (COM-Port, USB-Port)
- über einen Decoder, der als parallele Schnittstelle
arbeitet
- über den digitalen Bus, hier dem Selectrix Bus (SX Bus).
serielle Schnittstelle
- So der Nutzer von TC die Kommunikation (Protokoll)
zwischen einer Zentrale und TC kennt, kann er die Zentrale
simulieren und dann mit TC in beiden Richtungen
kommunizieren.
Dieser Weg ist wohl den meisten verschlossen, da die
Protokolle nicht offengelegt sind und eine Ermittlung sehr
aufwendig ist.
- Als zweites bietet TC für die Richtung TC >> Paternoster
die Möglichkeit mittels Macro - BAT Dateien, etc. Daten über
z.B. USB Schnittstelle an einen µ - Processor zu
übertragen.
Der folgende Link führt zu einer Beispielanwendung,
diskutiert im TC
Forum... (bitte die Nutzung von Links
beachten >
hier)
https://www.freiwald.com/forum/viewtopic.php?f=5&t=37690
Eine durchaus elegante Lösung, aber für Rückmeldungen
Paternoster >> TC muß
der Weg über einen Decoder beschritten werden.
Auch dieser Lösungsweg bedarf Kenntnisse über die
Programmierung und die Installation / Nutzung von
Gerätetreibern im PC. Sie erfordert auch auf der Nutzerseite
(µ-Processor) an Aufwand zur Erstellung einer entsprechenden
Programm-Routine.
parallele Schnittstelle
- Richtung: TC >> Paternoster
In diese Richtung ist die Gleisnummer oder Gondelnummer als
Ziel - Adresse für die Einfahrt / Ausfahrt zu übertragen;
d.h der Position der Gondel zum Anschlußgleis der Anlage.
Am zweckmäßigsten wählt man hier einen Code, z.B. binär Code, um
die Nummer auf wenigen Leitungen übertragen zu können.
Als Decoder kann ein Lichtdecoder oder ein Weichendecoder /
Funktionsdecoder eingesetzt werden.
Da sich nicht alle verwendeten Leitungen
gleichzeitig aus TC heraus schalten lassen
(Ausnahme > Selectrix Byte), es geht immer
seriell, ist es zweckmäßig eine weitere, einzelne Leitung als
"Startsignal" zu verwenden, so daß die Paternostersteuerung
die codierten Leitungen erst nach dem "Startsignal" ausließt
und auswertet.
- Richtung: Paternoster >> TC
Was in diese Richtung übertragen wird hängt ausschließlich
von der Steuerungsauslegung des Paternosters und den eigenen
Anforderungen in der TC Konfiguration ab.
So kann das die IST Positionsmeldung sein, d.h. es wird an
TC übertragen welche Gondel an der Auffahrt / Ausfahrt
steht.
Es wird ferner zu übertragen sein, der Paternoster -
Betriebszustand (Halt - Bewegung) als auch der Zustand, ob
die Einfahrt / Ausfahrt möglich ist.
Ferner ist die Brems- und Haltefunktion (Melder) zu
übertragen.
Als Decoder kommt hier der Besetztmelder zur Anwendung.
digitaler Bus (SX Bus)
- Der Paternoster kann grundsätzlich an seiner
Schnittstelle wie ein Decoder ausgebildet sein.
Dann kann man diesen von TC* heraus über die
Zentrale, wie jeden anderen Decoder auch, ansprechen.
Die Datenkommunikation kann in beide Richtungen erfolgen.
Der Paternoster benötigt dazu mindestens 2 Bus - Adressen,
jeweils eine pro Datenrichtung.
In TC* finden die bekannten TC* - Objekte
Anwendung.
meine
Kommunikation: Paternoster <> TC
SX Bus
Zuerst hatte ich mich mit der parallelen Schnittstelle
befaßt.
Es hat sich bei näherer Betrachtung aber gezeigt, daß der
Aufwand an Decodern und Verkabelung sowie auf der Platine
(Stecker, etc.) sehr groß wird.
Aus diesem Grunde habe ich mich dann näher mit dem Protokoll des SX
Busses beschäftigt.
Nach dem Studium kam ich zu der Überzeugung, daß dies der
bessere Weg ist, auch wenn er mehr SW Entwicklung mit sich
bringt.
Ich verwende daher den Schnittstellentyp: SX Bus.
Übertragungsrichtung TC > Paternoster
Ich adressiere die Gondeln des Paternosters.
Diese Adresse ist die SOLL Gondelnummer; diese Gondel SOLL
gegenüber den Anlagengleisen positioniert werden.
Jede Gondel hat
zwei Gleise.
Die gesamte Anzahl der Gondeln liegt bei mir unter 15. Somit kann ich
in 4 Bits die Gondelnummer binär codiert (BCD Code) von TC* an die Paternostersteuerung übertragen.
In TC* (GOLD)
steht zur Ansteuerung der Paternostersteuerung das sog. Selectrix - Byte zur
Verfügung. Damit kann ich alle Bits zeitgleich
setzen und übertragen.
Steht diese Möglichkeit nicht zur Verfügung, dann müssen die
Bits nacheinander gesetzt werden.
Sind - in beiden Fällen - alle Bits gesetzt, dann
muß ein "Startsignal" (Bit 7 -- achtes Bit) der Paternostersteuerung
mitteilen, daß alle notwendigen Bits gesetzt sind und damit die
SOLL Gondelnummer ausgelesen werden kann.
Diese Informationen können in einem Byte (8 Bits)
untergebracht werden.
Das erfordert eine Adresse auf dem SX Bus.
Anmerkung
In gleicher Art und
Weise kann der Paternoster auch über eine SX Zentrale oder ein
SX Handregler#t (Steuerung) bedient werden.
Übertragungsrichtung Paternoster > TC
In diese Richtung übertrage ich über den SX Bus...
- den Paternostergrundzustand (eingeschaltet oder ausgeschaltet)
- den NOTSTOP (aus / ein)
- den Betriebszustand des Paternosters (in Bewegung,
in Ruhe)
-- Nur im Betriebszustand "Ruhe" kann die
Paternostersteuerung einen neuen Auftrag entgegen nehmen --
-
die Gondelnummer als IST Position, d.h. diese Gondel IST
gegenüber den Anlagengleisen positioniert. Die Nummer wird
binär codiert (BCD Code) übertragen.
-- Mittels dieser Information läßt sich in TC
immer die aktuelle Gondelnummer (IST) ermitteln und in die
Entscheidung zur Generierung eines Paternoster - Auftrags
einbeziehen. Ferner ist bei der Übertragung automatisch die
Zu- und Abfahrt freigegeben. Ist die Godelnummer 0000, dann
ist keine Zu- / Abfahrt möglich. --
-- Ist der Paternoster in "Bewegung", dann ist die
Gondelnummer auf 0000 gesetzt. --
Diese Informationen lassen sich in einem Byte (8
Bits) unterbringen.
Auf dem SX Bus wird eine Adresse zur Übertragung benötigt.
In diese Richtung übertrage ich über normale Besetztmelder...
- den Gleisbelegungsstatus: frei -- besetzt von beiden
Gleisen der Gondel
- mittels der Gleiszustände für Brems- bzw. Halt- Melder von beiden
Gleisen der Gondel
Diese Informationen belegen bei einem Besetztmelder 4
Eingänge.
-- pro Gleis werden demnach jeweils 2
Melder benötigt und in TC* müssen diese Informationen
mit dem jeweiligen "Zielgleis" des TC* Stellwerks verknüpft
werden --
Globale
Ablauffolge der
Kommunikation: Paternoster <> TC
Hier beschreibe ich den prinzipiellen Ablauf der
Kommunikation ...
Einschalten der Anlage und des Paternosters
Folgende Informationen werden direkt nach der Inbetriebnahme
des Paternosters an den Schnittstellen bereitgestellt ...
- Paternostergrundzustand : eingeschaltet
- Betriebszustand : in Ruhe
- Gondel IST Position : Nummer der Gondel
- Gleisbelegungsstatus : entsprechend Gleissituation
- Melderstatus : keine Information (> nicht
angesprochen)
Manuelle Bewegung des Paternosters über Bedienfeld
- Paternostergrundzustand : eingeschaltet
- Betriebszustand : in Bewegung
- Gondel IST Position : undefiniert = 0000.
- Gleisbelegungsstatus : undefiniert
-- immer dann, wenn IST Gondelnummer = 0000
lautet --
- Melderstatus : undefiniert (> nicht
angesprochen)
Nach Ende der Bewegung werden die gleichen Informationen wie
unter "nach Inbetriebnahme" beschrieben übertragen.
Manueller NOTSTOP des Paternosters über Bedienfeld
- Paternostergrundzustand : ausgeschaltet + NOTSTOP
- Betriebszustand : in Ruhe
- Gondel IST Position : undefiniert = 0000.
- Gleisbelegungsstatus : undefiniert
-- immer dann, wenn IST Gondelnummer = 0000
lautet --
- Melderstatus : undefiniert (> nicht
angesprochen)
Nach Ende des NOTSTOPS und evtl. anschließender manueller
Bewegung werden die gleichen Informationen wie unter "nach
Inbetriebnahme" beschrieben übertragen.
Bewegung des Paternosters durch TC
Von TC beauftragte Paternosterbewegungen werden NUR
ausgeführt, wenn der
- Paternostergrundzustand : eingeschaltet
- Betriebszustand : in Ruhe
lautet.
Mit der Übergabe der
- Gondel SOLL Position
- und des "Startsignals"
wird der Paternostersteuerung die Gondelnummer (ungleich
0000) mitgeteilt,
die an die Anlagengleise (Einfahrt / Ausfahrt) positioniert
werden soll.
Während der Bewegung werden an TC* die Daten wie unter
"Manuelle Bewegung" beschrieben mitgeteilt.
Nach Ende der Paternoster - Bewegung werden an TC* die
folgenden Daten übermittelt ...
- Paternostergrundzustand : eingeschaltet
- Betriebszustand : in Ruhe
- Gondel IST Position : Nummer der Gondel
- Gleisbelegungsstatus : entsprechend Gleissituation
- Melderstatus : keine Information (> nicht
angesprochen)
Der Gleisbelegungsstatus wird
bei einem Wechsel an TC* über einen Besetztmelder mitgeteilt.
TC* muß intern die Zuordnung von Gondel / Gleis und TC*
Stellwerk - Anlagengleis vornehmen, um die Zugfahrt zu
steuern.
Achtung
Ist die Gondel nicht mit dem Besetztmelder verbunden, weil
z.B. in Bewegung, dann liefert der Besetztmelder die für
diesen Besetztmelder für KEINE Gleisspannung konfigurierte
Gleiszustandsaussage.
-- Der Melderstatus verändert sich bei
einer Zugfahrt von der Anlage auf die Gondel bzw. umgekehrt
(Gegenrichtung) oder beim Zu- / Abschalten der Gleisspannung
an die / von der Gondel. --
-- Die Gleisbelegung wird von einem Fahrzeug ausgelöst, was
sich auf der Gondel befindet --
Signal -
Bit - Zustände in der
Kommunikation: Paternoster <> TC
- Paternostergrundzustand
> Paternoster eingeschaltet: Bit = high (1)
> Paternoster ausgeschaltet: Bit = low (0)
- NOTHALT
> eingeschaltet: Bit = low (0)
> ausgeschaltet: Bit = high (1)
- Betriebszustand
> Ruhe: Bit = high (1)
-- im Zustand Ruhe kann vom
Paternoster-Gondel-Gleis auf das Anlagengleis gewechselt
werden bzw. umgekehrt.
> Bewegung: Bit = low (0)
-- bei Ausfall der Leitung wird in TC low (0)
angezeigt und damit indirekt weitere Aktionen per Definition
unterbunden (Sicherheit) --
- Gondelnummer
> binär übertragene Nummer von 1 - 15;
Bits haben wahlweise den Zustand high (1) oder low(0)
> binär übertragene Nummer 0, alle Bits low(0)
-- TC* > Paternoster: kein Auftrag
-- Paternoster > TC*: Paternoster in Bewegung / keine Gondel
anfahrbar / in Position
- Gleisbelegungsstatus (über Besetztmelder)
> Gleisabschnitt "Bremsen" frei (oder ohne Gleisspannung): Bit = low (0)
> Gleisabschnitt "Bremsen" belegt : Bit = high (1)
> Gleisabschnitt "Halten" frei (oder ohne Gleisspannung): Bit = low (0)
> Gleisabschnitt "Halten" belegt : Bit = high (1)
--- weitere
Informationen zur Nutzung von meinen Ideen findet der Leser
hier ---
---
mit der Nutzung werden diese
Regeln automatisch anerkannt ---
HINWEISE zu mit
* markierten Worten
Alle Firmenbezeichnungen /
Firmennamen; Produktbezeichnungen / Produktnamen stellen keine
Werbung oder Empfehlung dar, sondern beschreiben nur die in diesem
Projekt individuell und subjektiv ausgewählten Produkt -
Hersteller bzw. Lieferanten als auch deren verwendeten Produkte
zur Anschauung, Darstellung und Beschreibung des eigentlichen Projekt
- Inhalts.
Analoges gilt auch für die eingetragenen
Links (s. hierzu Distanzierung auf der Link-Seite).
Der Leser soll selbst auf dem Markt
recherchieren und für seine Bedürfnisse selbst entscheiden welches
Produkt er einsetzen will und wo er sich dieses beschaffen möchte.
In dieser Veröffentlichung verwendete
Produktnamen / Produktbezeichnungen sind von / durch den einzelnen
Hersteller(n) geschützt. Ihre Nutzung dient lediglich zur
Kennzeichnung / Beschreibung des Produktes selbst.
Analoges gilt für die erwähnten
Firmenbezeichnungen / Firmennamen.