Zugerkennung


IMG_0317

Vorheriger Teil

Es stellt sich die Frage, wie die Erkennung von Zügen erfolgen soll. Die im Modellbahnbereich übliche Methode mit Reed-Kontakten wollte ich nicht machen, da dafür alle Fahrzeuge mit Schaltmagneten versehen sein müssen, wovon ich Abstand nehmen wollte. Eine Erkennung über mechanische Schalter schied ebenfalls aus, da hier die Gefahr besteht, dass Fahrzeuge am Schalter hängenbleiben oder sogar entgleisen können. So blieb nur eine berührungslose Erkennung übrig. Da ich die Fahrzeuge nicht verändern wollte, entschloss ich mich, eine Erkennung über eine Lichtschranke zu realisieren.

Um keine Probleme mit störendem Lichteinfluss zu haben, entschied ich mich für das IR-Emitter-Detektor-Paar K153P von Temic, das problemlos auch mit einem Abstand von mehreren cm zwischen Sender und Empfänger zurecht kommt.

IMG_0316

Mit einem 100kΩ Widerstand am Detektor ist sichergestellt, dass ein sauberer TTL-Pegel abgegriffen werden kann. Mit folgendem kleinen Programm habe ich die Bauteile getestet:

void setup() {
 // initialize digital pin 13 as an output.
 pinMode(13, OUTPUT);
 pinMode(10, INPUT);
 
}
// the loop function runs over and over again forever
void loop() {
 if (digitalRead(10)==HIGH)
 digitalWrite(13,HIGH);
 else digitalWrite(13,LOW);
}

Wenn man keine IR Detektorkarte zur Hand hat, so kann man die Funktionalität der IR-Diode leicht mit einer Digitalkamera prüfen, da der CCD-Sensor auch infrarotes Licht aufnehmen kann. In der Kamera erscheint die Infrarotquelle als heller Lichtpunkt.

Nachdem die Pulldownwiderstände aus der Schaltung entfernt wurden, konnte alles in die Module eingebaut werden und die Schaltung auf Funktionalität getestet werden. Die Verbindung erfolgt über steckbare Lüsterklemmen.

IMG_6569

Li.Gl. und Re.Gl. sind die Kontakte für das abschaltbare Gleisstück. Mit Hilfe eines 4 Kanal Relais Board werden diese stromführend geschaltet, wenn das zugehörige Signal grün zeigt.

IMG_6604

Ich schalte bei den Stoppstellen beide Schienen. Bei Oberleitungsbetrieb sind beide miteinander verbunden, allerdings sind die Module auch für Unterleitungsbetrieb geeignet, daher müssen die beiden Schienen separat umschaltbar sein.

Auf Düsseldorfer Seite sind die Lichtschranken bereits installiert (blau: Sender, schwarz: Empfänger).

IMG_6605-e1457386007346

 

Auf der Ratinger Seite existiert bisher nur ein Testaufbau.

IMG_6606-e1457384072772

Wird fortgesetzt.

Steuerung der Signalanlage


IMG_5963

Die Engstelle der Strecke der 712 … pardon, ab 21.02.2016 heißt es ja U72 … am Bahndamm der S-Bahn, unmittelbar an der Stadtgrenze von Ratingen, ist im Original signalgesteuert. Diese Signalsteuerung wollte ich auch für mein Modell übernehmen:

Standardmäßig sind die Signale auf F0 (bei mir im Modell rot).

Bildschirmfoto 2016-02-28 um 23.30.20

Nähert sich der Zug, so springt das Signal auf F1 (im Modell grün) um:

IMG_6330

IMG_6360

Nach Durchfahrt zeigen wieder beide Signale F0 (rot).

Dies möchte ich auch beim Modell umsetzen. Der erste Zug, der sich der Engstelle nähert, aktiviert seine Strecke und bekommt grün, um die Engstelle durchfahren zu können und danach das Signal wieder auf rot zu stellen.

Nährt sich ein zweiter Zug der Engstelle, so soll dies registriert werden und nach Durchfahrt des ersten erhält dieser dann grün, um weiterfahren zu können.

Die Umsetzung dieser Logik möchte ich mit Hilfe eines Microcontrollers umsetzen, da es mir sonst aufgrund der Speicherung des zweiten Impulses zu aufwendig erscheint. Da ein Arduino viel zu aufwendig und teuer ist, habe ich auf die kleine Ausführung, den ATtiny85 zurückgegriffen.

IMG_0314 (1)

Mit dem Schaltungssimulator https://123d.circuits.io habe ich sowohl das Programm, als auch die Schaltung dazu entworfen:

Bildschirmfoto 2016-02-29 um 00.01.31

Mit Hilfe eines Arduino Uno, der als Programmer programmiert ist, wurde der ATtiny85 programmiert.

IMG_0314

Hier ergab sich die Schwierigkeit, dass bei diesem die Fuses umprogrammiert werden mussten, um alle 6 I/O Ports nutzen zu können. Hier ist große Sorgfalt nötig, denn wenn man sich vertan hat, muss der ATtiny mittels High Voltage Programming (siehe Link) zurückgesetzt werden. Auch ist es wichtig, dass die korrekte Baudrate bei der Programmierung angegeben wird, da es sonst nicht funktioniert:

avrdude -P /dev/cu.usbmodemFD121 -p attiny85 -c stk500v1 -b 19200  -v

Mit folgender Befehlzeile wird der Reset-Pin als I/O Port umgeschaltet. Danach muss der ATtiny mit der High Voltage Programming zurückgesetzt werden, bevor er erneut programmiert werden kann:

avrdude -P /dev/cu.usbmodemFD121 -p attiny85 -c stk500v1 -b 19200 -U hfuse:w:0x5f:m -v

(/dev/cu.usbmodemFD121 ist das USB Device an meinem Mac)

Für die Programmierung waren u.a. die folgenden Links sehr hilfsreich:

So ergab sich dann folgender Testaufbau:

IMG_0315

Auf der Anlage wurden nun die ersten Signale gesetzt. Es handelt sich hierbei um Blocksignale von Busch in Baugröße N, da diese besser zur Stadtbahn passen, als Signale in Baugröße H0.

IMG_0317

Wird fortgesetzt mit der Zugerkennung.

 

TLRS Treffen in Nürnberg 2016

IMG_5855

Beim diesjährigen 13. TLRS Treffen stellten Holger Ott und ich eine neue Zusammenstellung unserer Module aus. Die so entstandene Anlage ist ca. 2,60m lang und hat bis auf ein kurzes Stück an der Rollwagenanlage nur Meterspurgleise.

Die Bilder sind auf Flickr zu finden:

TLRS Treffen Nürnberg 2016

Zahnradbahn der Barmer Bergbahn

Wuppertaler müssen nun ganz stark sein:
Tw 8 erklimmt im Modell die Steigung sogar ohne Zahnstange, da es im Gegensatz zum Vorbild auch die Räder angetrieben hat.

Auch erfolgt die Motoransteuerung über Leistungselektronik  8)

Für alle anderen:
Zu sehen ist ein Modell eines Zahnradtriebwagens Nr. 8 der Barmer Bergbahn von 1894.

 
IMG_5474

Frohe Weihnachten / Merry Christmas

weihnachten2015

Wuppertaler Modellbahntage 2015

IMG_4601

Auch in diesem Jahr fanden wieder die Wuppertaler Modellbahntage statt. Dieses mal mit einer 10m langen Modellstraßenbahnanlage.

Hier geht´s zu den Bildern: Klick