User Tools

Site Tools


userpages:skippa:borgstede-de

ein Rocrail Stellpult für den FREMO Bahnhof Borgstede


Rocrail-Umsetzung eines Hardware-Stellpultes für einen Bahnhof zum Einsatz im Fremo.


Einführung

Seit einigen Jahren bin ich nach dem Wiederausbruch des Modellbahnvirus jetzt im FREMO aktiv. Auf einem Treffen letztes Jahr habe ich mit einem Vereinskollegen eine Arbeitsgemeinschaft gegründet und Landschaft gegen Technik getauscht. So baue ich jetzt das Stellpult für sein neues Bahnhofsprojekt:
Borgstede, ein Abzweigbahnhof an der ehemaligen Strecke von Varel nach Neuenburg.
borgstede-flurplan180.jpg


Anforderungen

  • Das Stellpult soll in der letzten Baustufe aus echter Hardware bestehen: Schalter und Led.
  • In Optik und Bedieung angelehnt an ein Spurplanstellwerk → Rocrail!
  • Wichtiger als eine genaue Abbildung der Vorbildtechnik ist Bedienbarkeit auch durch nur kurz eingewiesenes Personal.
  • Es sollten Fahrstraßen benutzt werden und Flankenschutz verwendet.
  • Automatische Auflösung von Zugfahrstrassen durch Gleisrückmelder
  • Anders als das echte Borgstede soll die Modellumsetzung mit Lichtsignalen ausgestattet sein - und diese natürlich sinnvoll mit den Fahrstraßen gekoppelt.
  • Durch Verschluss sowohl der Fahrstraßen als auch der Signale sollen Fehlbedienungen möglichst ausgeschlossen werden.
  • Der Bahnhof wird an allen drei Enden mit FREMO Streckenblock ausgestattet.


Die Umsetzung

gibt es bisher nur "virtuell" in Rocrail und sieht so aus:
borgstede-layout-mitblockvarel.jpg


Die Bedienung

die Bedienung sollte so einfach wie möglich sein - und trotzdem die oben genannten Anforderungen, vor allem die Nutzun von Fahrstraßen, erfüllen. Dazu gibt es für jeden möglichen Start- und Endpunkt einen Taster. Start und Endpunkte sind hier Abschnitte, die immer nur von einem Zug belegt werden können. Im Rocrail Sprachgebrauch sind das Blöcke. Der Bediener drückt immer zwei Tasten: vom Startpunkt der Fahrstraße zum Zielpunkt der Fahrstraße, also vom Start- zum Zielblock. Die entsprechende Fahrstraße wird ausgewählt und geprüft, ob alle Elemente unverschlossen sind. Die Prüfung macht Rocrail automatisch, und, wenn erfolgreich, werden die Weichen gelegt und anschließend die Signale gezogen. Für Zugfahrstraßen nutzt man grüne Knöpfe und für Rangierfahrstraßen graue.


Eine falsche Kombination führt nur zu einer Fehlermeldung. Die Hardwareversion wird hier natürlich nicht jeden einzelnen Taster melden können, aber eine zentrale LED "Tastfehler" haben. Möglicherweise wird das ergänzt durch eine akustische Meldung, da für den Streckenblock-Wecker ja eh ein Lautsprecher vorhanden sein wird.
In der Softwareumsetzung muss man die Taster natürlich nacheinander drücken. Der erste gewählte Taster (Startpunkt der Fahrstraße) färbt sich dann Gelb. Der zweite ebenfalls, wenn auch nur sehr kurz. Hat meine eine unerlaubte Kombination gewählt, so werden die beiden Knöpfe kurz rot. Als zusätzliche Debugmöglichkeit werden die gewählten Taster als Text ausgegeben und erfolgter Verschluß/Lösen von Fahrstraßen angezeigt.
Lässt sich eine Fahrstraße nicht verschliessen, weil Elemente durch eine andere Fahrstraße verschlossen sind, so gibt es eine rote LED zum Anzeigen eines "Riegelfehlers". In der Softwarversion wird außerdem noch ausgegeben, welche Fahrstraße gerade nicht verschlossen werden kann.

Als Grundregel für die Start-Ziel Systematik beginnt man immer am Startpunkt und überspringt man keinen Knopf, sondern geht immer zum nächsten passend farbigen Knopf. Die erfolgreich ausgewählte Fahrstraße wird am Stellpult ausgeleuchtet.

Hier als Beispiel eine Zugfahrstraße von Neuenburg nach Gleis 1 sowie eine parallel gestellte Rangierfahrstraße von Gleis 2 nach Gleis 6. Die zugehörigen Taster sind blau umkringelt
Es gibt allerdings einige Spezialfälle:
Beispielsweise Zielknöpfe, die nicht eindeutig sind. Zum Beispiel, wenn man von Bramloge aus einfährt. Der nächste Knopf wäre dann direkt hinter dem Ausfahrtsignal N9 Richtung Bramloge. Da dort ein Zug aber immer weitefahren müsste bis zum nächsten gelten Signal (Ausfahrtsignal oder H-Tafel), kann er nach Gleis 2p oder Gleis 3 einfahren. Solche nicht eindeutigen Knöpfkombinataionen werden dann nicht reagieren, sondern einen "Tastfehler" ausgeben - zu erkennen an einer kleiner gelben LED. Eine andere nicht eindeutige Einfahrt ist die von Neuenburg nach Gleis 2n. Solche Knöpfe sind mit einem Dreieck gekennzeichnet, das die Bedienrichtung anzeigt.
Anders bei der Einfahrt von Neuenburg nach Gleis 1. Hier gibt es zwar auch zwei Knöpfe im Gleis 1, aber nur einen möglichen Haltepunkt. Beide Zielknöpfe werden daher eine Fahrstraße bis zum Ausfahrtsignal P legen.
Noch einmal anders bei der Einfahrt nach Gleis 1 aus Richtung Varel. Hier gibt es eine kurze Einfahrt bis zur H-Tafel und eine lange Einfahrt bis zum Ausfahrtsignal.

Man könnte also die Grundregel erweitern in "Vom Startknopf am Signal des Abschnitts bis zum nächsten Knopf vor dem nächsten gültigen Signal".

Es ist möglich, Fahrstraßen zu verketten. Also erst eine Einfahrt von Bramloge nach Gleis 2 und dann eine Ausfahrt von Gleis 2 nach Varel. In diesem Fall wird dann auch das entsprechende Vorsignal p1p2p3 gestellt. Damit das richtige der beiden Vorsignale gestellt wird, ist dafür allerdings die Reihenfolge wichtig: erst die Einfahrt, dann die Ausfahrt. Oder auch (Grundregel: vom Startpunkt zum nächsten Signal, von da aus zum nächsten usw.)
Für einige Verkettungen sind im Stellpult auch schon "Abkürzungen" definiert. Zum Beispiel wird für das obige Beispiel für eine Durchfahrt von Bramloge nach Varel durch das Drücken der enstprechenden Taster gleich eine Durchfahrt durch Gleis 2 gelegt:

  • Durchfahrt von Neuenburg nach Varel oder umgekehrt
  • Durchfahrt von Bramlogen nach Varel oder umgekehrt
  • "lange" Einfahrt von Varel nach Gleis 2n (Bahnsteig) oder nach Gleis 9 (Abzweig)


Es gibt im Moment drei Möglichkeiten, Fahrstraßen aufzulösen:

  1. automatische Auflösung über Gleiskontakte. Wird nur für Zugfahrten implementiert. Die Gleiskontakte sind jeweils an der H-Tafel bzw. kurz vor dem Zielsignal.
  2. manuelle Auflösung: man wiederholt dieselbe Bedienhandlung, wie zum Verschluss der Fahrstraße. Also wieder Starttaster+Endtaster. Ist zwischen diesen beiden bereits eine Fahrstraße verschlosssen, so wird diese aufgelöst.
  3. das Drücken der Tastenkombination BlGT + Reset Stellwerk löst alle Belegungen und Fahrstraßen auf.


Rocrail bietet noch eine elegante Möglichkeit, Fahrstraßen über Zieltaster und FGT (Fahrstraßengruppentaste) aufzulösen. Sie ist http://wiki.rocrail.net/doku.php?id=route-wiring-de bei den Fahrstraßen beschrieben, kommt aber im Borgstede Stellpult nicht zur Anwendung.

Alle möglichen Fahrten werden in Fahrstraßen abgebildet und entsprechend gesichert. Der Bediener bewegt sich also vollständig in der Start-Ziel-Systematik. Eien Ausnahme bildet hier der "Rangierbereich" zwischen dem Ziehgleis (Gleis 10) und Gleis 4/5. Er wird mit ortsgestellten Weichen bedient, um eine vom Bahnhofsbetrieb unabhängiges Spielelement zu haben. Er ist durch ein Deckungsignal vom Betriebsbahnhof abgetrennt.


Rocrail

Planerstellung und Bezeichnung

Den Plan habe ich ganz normal in der Rocrail-Gui gezeichnet. Bei Bennenung der Weichen habe ich einfach zweistellig durchnummeriert: beginnend links oben und dann runter. Unten angekommen sozusagen einen nach rechts in die zweite Spalte und dann wieder runter. Diese Systematik habe ich eisern durchgehalten, bei allem, was es zu nummerieren oder systematisch durchzugehen galt. Vor allem das spätere xml-Script mit den erlaubten Start/Ziel Kombinationen ist nur dank dieser Logik vollständig geworden. ;-) Zusätzlich zur Nummer tragen die Weichen noch ein "W" vor der Nummer.
Signale habe entsprechend den Vorbildbezeichnungen benannt, mit einem führenden "Sig". Also "SigA/SigF/SigG" für die Einfahrtsignale, "SigP1/ SigP2/SigP3/SigN1/SigN2/SigN9" für die Ausfahrtsignale und "SigR2/SigR3/SigL6/SigL7/SigL9" für die Zwischen- und Deckungssignale. Alles klar? War mir am Anfang auch nicht. Aber lesen hilft, zum Beispiel auf den Seiten der Uni Stuttgart.

Zug- und Rangierfahrstraßen

Also, Plan gezeichnet und mit Blöcken versehen. Beim Erstellen der Fahrstraßen hilft der Anlayser. Danach wurde es ein wenig kompliziert, da ich die meisten Fahrstraßen ja doppelt haben wollte, einmal als Zugfahrstraße und einmal als Rangierfahrstraße. Jetzt kommt wieder eine meine Namenskonventionen: die vom Router erstellten Fahrstraßen werden beibehalten und nur um das "autogen-" gekürzt. Statt dessen wird einer Fahrstraße ein "Zf-" vorangestellt, wenn es sich um eine Zugfahrstraße handelt und entsprechend ein "Rf-" für Rangierfahrstraßen. Und damit die Fahrstraßen auch entsprechend ausgeleuchtet werden, habe ich die Plandatei (borgstede.xml) mit einem Texteditor massiv bearbeitet: Suchen und ersetzen, zum Beispiel "autogen-[Neuenburg-]-[BgsG1+]" gegen "Zf-[Neuenburg-]-[BgsG1+],Rf-[Neuenburg-]-[BgsG1+]". Und das für jede vorhandene Fahrstraße. Natürlich müssen hinterher der Block für die Fahrstraßen selbst (zwischen <st> und </st>) korrigiert werden: Konkret jeder Eintrag verdoppelt und danach im Namen jeweils die "Zf-[Neuenburg-]-[BgsG1+]" im einen Eintrag bzw. "Rf-[Neuenburg-]-[BgsG1+]" im anderen Eintrag gelöscht werden. Dadurch kommt man schnell und umkompliziert zu den benötigten Rangierfahrstraßen. Achtung: vorher eine Sicherheitskopie der Plandatei anlegen!
Die Fahrstraßen wurden dann noch um die entsprechenden Signalbefehle ergänzt, da hier die Signale ja nicht den Blöcken zugeordnet sind - weil die Blöcke jetzt ja leider nichts mehr tun. Sehr nützlich in diesem Zusammenhang die "at free" Funktion, die die Signale wieder in Grundstellung zurückbringt, wenn die Fahrstraße aufgelöst wird. Wichtig: für eine korrekte Funktion des Streckenblockes müssen die Signale in Fahrtstellung verschlossen (lock) werden.

Erstellung der Taster-svg

Die grünen,grauen und grau/grünen Taster sind svg's der Marke Eigenbau. Meine Inkscape-Versuche (wie im Wiki empfohlen) gingen mächtig in die Hose, aber wenn man sich die svg-Dateien (ascii) genau anschaut, versteht man schon wie die aufgebaut sind: Male Rechteck der Füllung schwarz. Male schwarzen Kreis mit grüner Füllung usw. Etwas schwieriger fand ich da schon die Halbkreise, weil die mit Koordinaten angegeben sind. Als Vorlage habe ich button-7-off.svg aus dem Standardthema genommen. Diese Datei kopiert als button-10-off.svg in ein Userverzeichnis (das natürlich auch in der rocview.ini angeben), die Farben anpassen und schon kann man im Properties-Dialog des Knopfes bei "SVG" einstellen, dass dieser Knopf in grün angezeigt werden soll. Man muss natürlich auch entsprechend button-10-on.svg und button-10-active.svg erstellen. Die "active"-Version ist bei mir der rote Knopf und wird bei einer Fehlbedienung angesteuert.
Alle Start-Ziel-Taster heissen bei mir "StartZielBlockname".
Bei der Einbindung des Streckenblocks wollte ich Sonsoren mit speziellen svg Symbolen versehen - nämlich die Melder der Blockplatine. Beispielsweise der Erlaubnismelder oder die Blockmelder sind in Pfeilform. Dabei habe ich gelernt, dass Sensoren intern als "assessory" angesehen werden. Entsprechend heissen die SVGs nicht etwa "sensor-20-on.svg" sondern "assessory-20-on.svg"

xml script zur Auswahl der Fahrstraßen

Das Herzstück der gesamten Stellwerkslogik steckt in einer einzigen Aktion "StartZielBorgstede". Jeder Start-Ziel-Taster ruft bei Aktivierung diese Aktion auf. Im dahinter liegenden xml-script ScriptStartZielBorgstede.xml werden die Schalterkombinationen abgeprüft und als Ergebnis die gewählte Fahrstraße verschlossn bzw., wenn sie schon verschlossen ist, aufgelöst.
Der Ablauf im Script ist etwa wie folgt:

Prüfung: erster Schalter schon gewählt?
–> nein: gedrückter Schalter ist erster Schalter (%callerid% in Variable "firstButton")
–> ja: gedrückter Schalter ist zweiter Schalter (%callerid% in Variable "secondButton")

Prüfung: zwei Schalter gewählt?
–> nein: scriptende, warte auf nächsten (zweiten) Aufruf
–> ja: es geht weiter

Jetzt kommen zwei ineinander verschachtelte switch case befehle, in der die möglichen Kombinationen abgefragt werden. Beispielhaft etwa so:
falls erster Schalter "StartZielNeuenburg" ist
falls zweiter Schalter "StartZielBgsG1" ist
dann schalte die Route Zf-[Neuenburg-]-[BgsG1+] um.


Zusätzlich wird das xml-script noch um eine Abfrage ergänzt, die bereits vorher gelegte Fahrstraßen abfragt und ggf. die Vorsignale stellt.


Verschliessen und Ausschluss von Fahrstraßen

Durch die Rocrail internen Mechanismen schließen sich konkurrierende Fahrstraßen von selbst aus. Voraussetzung ist, dass man die in den Fahrstraßen konfigurierten Weichen und Signale auf "lock" einstellt. Denn dadurch wird eine Weiche, die von einer Fahrstraße genutzt wird, für diese verschlossen. Eine andere Fahrstraße, die die Weiche Stellen möchte, kann dies nicht mehr. http://wiki.rocrail.net/doku.php?id=route-turnouts-en Damit werden die in Rocrail integrierten Prüfungen aktiviert und nicht zulässige Fahrstraßenkombinationen zuverlässig ausgeschlossen.
Bis auf eine Ausnahme: Fahrstraßen, die von zwei Seiten in denselben Gleisabschnitt (Block) führen. In der automatischen Rocrail Welt wird dieser Fall über die Nutzung von Blöcken abgefangen, die natürlich nur von einem Zug gleichzeitig reserviert oder belegt sein können. Beispiel: es ist gleichzeitig Einfahrt nach Gleis 1 von Neuenburg und von Varel möglich. Nur sind wir hier nicht in der automatischen Rocrail-Welt, sondern stellen die Fahrstraßen manuell. Da sollten solche Möglichkeiten abgefangen sein.

Als Abhilfe kann eine virtuelle Weiche eingeführt werden (denken wir sie uns als Schutzweiche), die jeweils von den konkurrierenden Fahrstraßen genutzt (=verschlossen) wird. Sie kann mit einer nicht real existierenden Adresse belegt werden. Sauberer ist es, eine "virtuelle Zentrale" in Rocrail anzulegen, und die "Schutzweiche" mit einer Adresse dieser virtuellen Zentrale zu belgen. Die Schutzweiche wird (nur) für Fahrstraßen aufgenommen, die in den Bahnhof hineinführen.

Hardware

Das Stellpult soll nachher als echtes Hardware-Stellpult ausgeführt sein. Also mit Tastern und Schaltern zu bedienen und LEDs zur Ausleuchtung. Das grenzt natürlich in der Ausführung gegenüber einem schön variablen Monitor etwas ein.
Der Rocrail-Server wird auf einem Raspberry-Pi laufen, der im Stellpult verbaut ist. Dort kommt dann auch noch ein lokaler RocnetNode drauf, und das Stellpult wird darüber verkabelt. Im Bahnhof selbst kommt dann für Weichendecoder, Signaldecoder und Gleisbesetztmeldung ebenfalls GCA Hardware zum Einsatz. Ich bin selbst noch nicht ganz klar, ob ich auch hier auf Rocnet setzen werde oder vielleicht doch auf Loconet. Denn der Bahnhof wird auch ohne einen erfahrenen Rocrail-Bediener im Einsatz sein und mit Loconet kennen sich einfach mehr Leute aus als mit Rocnet, zumal auf FREMO Treffen. Stromversorgung der Knoten ist das andere Argument in diesem Zusammenhang, denn das GCA Bahnhofsloconet (im FREMO auch "Lotusnetz" genannt), braucht nur eine zentrale Stromversorgung. Während bei Rocnet jeder Knoten einzeln versorgt werden muss. Das ist aufgrund der Versicherungsbedingungen (230V nur am Boden) im FREMO nicht immer ganz einfach. Für Rocnet wiederum spricht, dass die Verkabelung einfacher ist (Standard-Netzwerkkabel), die Hardware in Summe billiger (?) und TCP/IP als Bus einfach viel besser ;-) .Und man hat das LAN gleich da, zum Debuggen oder für die Übergangszeit für den digitalen Stellpultersatz.
Jedenfalls wird, so viel ist klar, die Schnittstelle zum Stellpult aus vielen I/Os bestehen, entweder GCA50 oder eben GCA-Pi02.
Aber kommen wir zum Stellpult: Rocrail bietet ja die Möglichkeit, bei Weichen und Fahrstraßen direkt die Hardware Taster und LEDs anzusteuern. Allerdings bei Signalen nicht. Unter anderem, weil ich bei Signalen nicht nur die LEDs der Signale auf der Anlage, sondern auch die entsprechenden Abbilder auf dem Stellpult ansteuern möchte, gehe ich einen anderen Weg: jede LED, die auf dem Schaltpult angesprochen werden soll, bekommt auch eine virtuelle Entsprechung. In der Rocrail-Terminologie also einen Ausgang/Output je LED oder genauer, je Aus- oder Umschalter. Damit die virtuelle Entsprechung auch wie ein Gleisbildstellpult aussieht, bekommen die Outputs, je nach Verwendung auch entsprechende svg's (mit den Zuständen off/on).

Diese werden dann jeweils im Eigenschaften-Dialog des Outputs eingestellt. Die Benennung der Outputs folgt wieder einem Schema: zunächst "LED", dann der Typ des Darstellung (route für Fahrstrasse, bm für Besetztmelder, Sig für Signal) und dann die Gleisnummer, gefolgt von einer laufenden Nummer.
Analog zu den Schaltbefehlen für die Signale werden dann auch diejenigen für die LEDs auf dem Stellpult eingetragen. Und zwar in jede Fahrstraße zweimal: einmal "an" beim Aktivieren und einmal "aus" mit //bei freiwerden// Schalter aktiviert. Dadurch wird die LED eingeschaltet, wenn die Fahrstraße verschlossen wird und wieder ausgeschaltet, wenn die Fahrstraße wieder aufgelöst ist. Die im Bild eingestellte Fahrstraße (vom Kopf Neuenburg nach Gleis 3) sieht so aus:

Wenn erst einmal alle Ausgänge in den Fahrstraßen eingetragen sind, braucht man nur noch die Ausgänge den LEDs zuordnen und das Stellpult wird funktionieren. Hoffe ich ;-)
Denn ach ja, natürlich müssen noch die Hardware-Taster und Hardware-LEDs mit echten Hardware-Kabeln an die Ausgänge des Pi02 angeschlossen werden. Ich werde berichten.

Streckenblock

Was ist Streckenblock?
Siehe Artikel von Rene Pabst im Hp1 über Tf71 und die Bahnhofsschnittstelle
sowie Allgemeine und betriebliche Informationen zu Stellwerken und (Strecken)block
Während Weichen, Signale und die Logik der Fahrstraßen in Rocrail für mich recht einfach umzusetzen waren, stellt mich der Streckenblock doch vor Herausforderungen.
Die Technik des Streckenblocks ist im FREMO fertig entwickelt und unter anderem in Form von sogenannten "Blockkisten" verfügbar. In der einfachsten Form handelt es sich um eine Kiste, die man neben das Bahnhofsstellpult stellt. Die Verbindung zum Bahnhof wird dann über eine 15polige Bahnhofsschnittstelle hergestellt. In der Blockkiste werden dann Leiterpaare kurzgeschlossen oder auch nicht, je nach Zustand. Zunächst war mein Plan, die Bahnhofsschnittstelle mittels I/O Ausgängen Loco I/O oder Rocnet I/O nachzubilden und per Relais oder Optokoppler auf den Pegel der Blockkiste zu bringen. Allerdings hätte ich dann drei einzelne Kisten zusätzlich zum Stellpult. Und das fand ich irgendwie unschön.
Dann habe ich auf den Webseiten zur Blockkiste gelesen, dass es auch eine Schnittstelle zu einem Bedienteil gibt. Die zusätzlich zu nutzen hat für mich den Charme, dass ich die Bedienung des Blocks nahtlos in die Rocrail Systematik einbinden kann, und dass ich mit denselben 5V arbeiten kann, die auch das Bedienteil benutzt. Die Blockplatine benötigt keine zusätzlich Stromversorgung, sondern kann von der GCA Reihe mit versorgt werden. Ausgehend vom Schaltlan des Bedienteils für Tf71 habe ich also die Verbindungen gemappt. Das sieht im Schaltplan dann so aus:

Neben Bahnhofsschnittstelle und Schnittstelle zum Bedienteil gibt es natürlich noch die Blockschnittstelle, an die nachher die Blockleitung angeschlossen wird, die zwei Blockkisten miteinander verbinden. Abgesehen von der Tatsache, dass die Blockleitung "gekreuzt" sein muss, gibt es bei der Verkabelung noch eine kleine Falle: die Pinbelegung bezieht sich immer auf die Nummerierung der Sub-D Stecker. Die Wannenstecker auf der Platine haben eine andere Belegung. Wenn man allerdings die Wannenstecker auf eine Flachkabel crimpt und dann am anderen Ende Sub-D Stecker ebenfalls zum crimpen aufs Flachbandkabel wählt, passt es wieder. Dann muss man nur noch die Seite von Pin1 beachten.

Verkabelung Blockplatine zum Stellpult

Zum Mapping benutze ich also GCA-Pi02, auch bekannt als RocNet I/O. Eine Platine bietet 4 ICs mit je 8 Kontakten. Jeder Raspberry Pi verträgt vier dieser Platinen, also 128 Ports. Damit kriege ich alle drei Blockplatinen bequem gemappt. Ein Raspi mit 3 Pi02 tut's. Das alles wird dann in eine Kiste integriert und kommuniziert dann über Internet/TCPIP mit dem Stellpult bzw. dem Rocrail server.
In der Beschäftigung mit der Materie ist mir dann aufgefallen, dass ich das falsche Bedienteil als Vorlage genommen habe. Im Spurplanstellpult von Borgstede kommt wohl weniger ein später nachgerüsteter Felderblock (Tf71) zur Anwendung, als viel mehr ein integrierter Relaisblock. Das Dumme ist, dass beim Relaisblock die Pinbelegung auf der Blockplatine eine andere ist, als beim Tf71 Block. Also Achtung, die obige Zeichnung zeigt nur das Prinzip (für Tf71) und nicht die tatsächliche Belegung.Diese findet sich dann hier:

Blockplatine: Relaisblock Siemens SPDRS60 http://fremo-block.sourceforge.net/Lastenheft/Entwurf_Relaisblock_fuer_DrStw.htm
Achtung: alle Taster/outputs müssen invertiert werden. Das geschieht im RocNet Node.
Blockplatine GCA-PI02
Blockname Ausgangsname Schnittstelle Block Pin # (SUB-D) Block Pin # (Wanne) Pi02 Pin # I/O Board # Rocnet Port Input/Output Farbe Bemerkung
Varel BlGT Bedienteil 1 3 2 9 Output grau
Varel RbT Bedienteil 2 3 1 1 Output grau
Varel EaT Bedienteil 3 4 1 2 Output grau
Varel AsT Bedienteil 4 4 2 10 Output grau
Varel AsLT Bedienteil 5 5 2 11 Output grau
Varel VbHT Bedienteil 6 5 1 3 Output grau
Varel ÜprT Bedienteil 7 6 1 4 Output grau obsolet
Varel EsigHaltM Bedienteil 8 3 3 17 Input rot obsolet
Varel GND Bedienteil 9 2 1
Varel +5V Bedienteil 10 1 1
Varel RbM(gelb) Bedienteil 11 8 3 22 Input dunkel/gelb obsolet
Varel RbM(rot) Bedienteil 12 4 3 18 Input gelb/rot
Varel VbM(gelb) Bedienteil 13 9 3 23 Input dunkel/gelb obsolet
Varel VbM(rot) Bedienteil 14 5 3 19 Input dunkel/rot
Varel StrWM Bedienteil 15 6 3 20 Input blau
Varel RM Bedienteil 16 7 3 21 Input gelb/blinkend
Varel Wecker Bedienteil 17 6 2 12 Input akustik
Varel GND Bedienteil 19 2 2
Varel +5V Bedienteil 20 1 2
Varel StörM Bedienteil 21 7 1 5 Input rot
Varel ÜstorM Bedienteil 22 8 1 6 Input rot
Varel EeM Bedienteil 23 9 1 7 Input gelb
Varel EaM Bedienteil 24 10 1 8 Input gelb
Varel Halt Bedienteil
Varel EsigFahrtT (/E-SIG) Bahnhofsschnittstelle 1 1 3 4 25 Output grün
Varel GND Bahnhofsschnittstelle 9 2 2 4 Pegel für LED über Relais
Varel FahrtErlM (/Fahrt_Erl) Bahnhofsschnittstelle 10 4 4 4 26 Input grün
Varel AsigFahrtT (/A-SIG) Bahnhofsschnittstelle 3 5 5 4 27 Output grün
Varel AsigHaltM (/Halt) Bahnhofsschnittstelle 11 6 6 4 28 Input blau Relais
Varel EaSperre (/EaSperr) Bahnhofsschnittstelle 12 8 an der BfSS gebrückt
Varel GleisT (/GLEIS1) Bahnhofsschnittstelle 5 9 7 4 29 Output grün
Varel EaSperre (/EaSperr) Bahnhofsschnittstelle 13 10 an der BfSS gebrückt
Varel BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 14 12 an der BfSS gebrückt
Varel BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 15 14 an der BfSS gebrückt
Neuenburg BlGT Bedienteil 1 3 6 41 Output grau
Neuenburg RbT Bedienteil 2 3 5 33 Output grau
Neuenburg EaT Bedienteil 3 4 5 34 Output grau
Neuenburg AsT Bedienteil 4 4 6 42 Output grau
Neuenburg AsLT Bedienteil 5 5 6 43 Output grau
Neuenburg VbHT Bedienteil 6 5 5 35 Output grau
Neuenburg ÜprT Bedienteil 7 6 5 36 Output grau obsolet
Neuenburg EsigHaltM Bedienteil 8 3 7 49 Input rot obsolet
Neuenburg GND Bedienteil 9 2 5
Neuenburg +5V Bedienteil 10 1 5
Neuenburg RbM(gelb) Bedienteil 11 8 7 54 Input dunkel/gelb obsolet
Neuenburg RbM(rot) Bedienteil 12 4 7 50 Input gelb/rot
Neuenburg VbM(gelb) Bedienteil 13 9 7 55 Input dunkel/gelb obsolet
Neuenburg VbM(rot) Bedienteil 14 5 7 51 Input dunkel/rot
Neuenburg StrWM Bedienteil 15 6 7 52 Input blau
Neuenburg RM Bedienteil 16 7 7 53 Input gelb/blinkend
Neuenburg Wecker Bedienteil 17 6 6 44 Input akustik
Neuenburg GND Bedienteil 19 2 6
Neuenburg +5V Bedienteil 20 1 6
Neuenburg StörM Bedienteil 21 7 5 37 Input rot
Neuenburg ÜstorM Bedienteil 22 8 5 38 Input rot
Neuenburg EeM Bedienteil 23 9 5 39 Input gelb
Neuenburg EaM Bedienteil 24 10 5 40 Input gelb
Neuenburg EsigFahrtT (/E-SIG) Bahnhofsschnittstelle 1 1 3 8 57 Output grün
Neuenburg GND Bahnhofsschnittstelle 9 2 2 8 Pegel für LED über Relais
Neuenburg FahrtErlM (/Fahrt_Erl) Bahnhofsschnittstelle 10 4 4 8 58 Input grün
Neuenburg AsigFahrtT (/A-SIG) Bahnhofsschnittstelle 3 5 5 8 59 Output grün
Neuenburg AsigHaltM (/Halt) Bahnhofsschnittstelle 11 6 6 8 60 Input blau Relais
Neuenburg EaSperre (/EaSperr) Bahnhofsschnittstelle 12 8 an der BfSS gebrückt
Neuenburg GleisT (/GLEIS1) Bahnhofsschnittstelle 5 9 7 8 61 Output grün
Neuenburg EaSperre (/EaSperr) Bahnhofsschnittstelle 13 10 an der BfSS gebrückt
Neuenburg BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 14 12 an der BfSS gebrückt
Neuenburg BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 15 14 an der BfSS gebrückt
Bramloge BlGT Bedienteil 1 3 10 73 Output grau
Bramloge RbT Bedienteil 2 3 9 65 Output grau
Bramloge EaT Bedienteil 3 4 9 66 Output grau
Bramloge AsT Bedienteil 4 4 10 74 Output grau
Bramloge AsLT Bedienteil 5 5 10 75 Output grau
Bramloge VbHT Bedienteil 6 5 9 67 Output grau
Bramloge ÜprT Bedienteil 7 6 9 68 Output grau obsolet
Bramloge EsigHaltM Bedienteil 8 3 11 81 Input rot obsolet
Bramloge GND Bedienteil 9 2 9
Bramloge +5V Bedienteil 10 1 9
Bramloge RbM(gelb) Bedienteil 11 8 11 86 Input dunkel/gelb obsolet
Bramloge RbM(rot) Bedienteil 12 4 11 82 Input gelb/rot
Bramloge VbM(gelb) Bedienteil 13 9 11 87 Input dunkel/gelb obsolet
Bramloge VbM(rot) Bedienteil 14 5 11 83 Input dunkel/rot
Bramloge StrWM Bedienteil 15 6 11 84 Input blau
Bramloge RM Bedienteil 16 7 11 85 Input gelb/blinkend
Bramloge Wecker Bedienteil 17 6 10 76 Input akustik
Bramloge GND Bedienteil 19 2 10
Bramloge +5V Bedienteil 20 1 10
Bramloge StörM Bedienteil 21 7 9 69 Input rot
Bramloge ÜstorM Bedienteil 22 8 9 70 Input rot
Bramloge EeM Bedienteil 23 9 9 71 Input gelb
Bramloge EaM Bedienteil 24 10 9 72 Input gelb
Bramloge EsigFahrtT (/E-SIG) Bahnhofsschnittstelle 1 1 3 12 89 Output grün
Bramloge +5V Bahnhofsschnittstelle 9 2 1 12 Pegel für LED über Relais
Bramloge FahrtErlM (/Fahrt_Erl) Bahnhofsschnittstelle 10 4 4 12 90 Input grün
Bramloge AsigFahrtT (/A-SIG) Bahnhofsschnittstelle 3 5 5 12 91 Output grün
Bramloge AsigHaltM (/Halt) Bahnhofsschnittstelle 11 6 6 12 92 Input blau Relais
Bramloge EaSperre (/EaSperr) Bahnhofsschnittstelle 12 8 an der BfSS gebrückt
Bramloge GleisT (/GLEIS1) Bahnhofsschnittstelle 5 9 7 12 93 Output grün
Bramloge EaSperre (/EaSperr) Bahnhofsschnittstelle 13 10 an der BfSS gebrückt
Bramloge BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 14 12 an der BfSS gebrückt
Bramloge BlockPrüfSchleife (/Pruef) Bahnhofsschnittstelle 15 14 an der BfSS gebrückt
Integration der Blocklogik in die Stellpultlogik

Die Abläufe des Streckenblockes bleiben vollständig im Streckenblock. Das Stellpult ersetzt nur das Bedienteil - es gibt also entsprechende Melder und Taster im Stellpult. Ich gehe hier den etwas umständlicheren Weg, diese zuerst ins Rocnet zu bringen, z.B. um den Block auch auf einem Bildeschirm darstellen und bedienen zu können. Und dann hinterher wieder vom Rocnet auf die Hardware LED und Taster des Stellpultes.
Die logische Interaktion zwischen Blockplatine und Stellpult / Bahnhof funktioniert wie vorgesehen über die Bahnhofsschnittstelle (BfSS), die ebenfalls über Rocnet angesprochen wird. Die beiden Relaiskontakte für die Stellung des Asig sowie der Gleismelder müssen natürlich mit einem Kontakt belegt sein, damit sie etwas zum zusammenschalten haben. Die Melder der Bahnhofsschnittstelle können einfach als Kontakt aufgegriffen werden.
Es werden in Rocrail also einige zusätzliche Aktionen definierte, die einerseits den Status der Ausfahrtsignale / des Gleiskontaktes an die Bahnhofsschnittstelle weiter geben und andererseits bei Bedarf die Ausfahrtsignale verschlossen. Das Verschluss der Ausfahrtsignale erfolgt über eine zusätzlich definierte Fahrstraße, die genau dies tut: Ausfahrtsignale auf Halt und verschliessen. Natürlich braucht man für jede der drei Ausfahtsignalgruppen eine Fahrstraße. Natürlich muss man der Verschluss erst auflösen, soll der Signalhaltfall durch die Bahnhofschnittstelle ausgelöst werden. Und dann wieder einsetzten. Die wenigen nötigen Aktionen zur Integration der Blocklogik in das Stellpult können so dargestellt werden:

Dateien

Meine Svg's zur Darstellung der verschiedenfarbigen Taster, LED's, Weichen und Signale skippassvg.zip
Die Plandatei von Borgstede mit virtuellem Hardwarestellpult Version Oktober 2017 rocrail_borgstede2017-10-14.zip

userpages/skippa/borgstede-de.txt · Last modified: 2020/02/02 10:51 by rainerk