Roland G., alias "Roland5020"
Mehr ->Digitale Modellbahn etwas anders ... Teil3
Erstellt am Freitag, 8. Januar 2016
Als Quereinsteiger in den Bereich der Modellbahnen hab ich quasi bei null begonnen.
Ich wollte mein Wissen im Bereich Automatisierung einfließen lassen und möglichst viel selbst entwickeln. Nach langem Googeln hab ich folgende Konfiguration gewählt:
Gleise Rocco ohne Bettung, geklebt auf 2mm Kork,
Zugsteuerung über DCC mit Roco Z21 und Boostern,
Zentrale Simatic-S7 PN/DP, Kommunikation mit Z21 über UDP,
Weichensteuerung mit RC-Servos über Micro-Controller (Eigenentwicklung),
Signale werden über digitale Ausgänge der S7 direkt gesteuert,
Zugverfolgung mittels Hall-Sensoren und digitalen Eingängen der S7,
Bedienung über PC-Visualisierung, Kommunikation mit S7 über LAN,
Zwei Multimäuse an der Z21 zum Rangieren
Teil2:
http://www.mobablog.info/blog.php?id=2236
Teil4:
http://www.mobablog.info/blog.php?id=2244
Hier meine Zentrale (oben Mitte), eine CPU Simatic-S7 PN/DP, die Stromversorgung für 24VDC und ein paar Klemmen zur Verteilung. Die grünen Teile sind I/O Module mit jeweils 16 digitalen Eingängen und 16 digitalen Ausgängen für 24V. Die Module werden jeweils dort montiert, wo Anschlüsse benötigt werden. Mit den Modulen werden alle Komponenten der Anlage gesteuert bzw. abgefragt.
Die Zugverfolgung hab ich mit Hall-Sensoren realisiert. Ein Magnet (Roco) muss unter das erste Drehgestell jeder Lok. Hall-Sensoren haben einen digitalen Halbleiterausgang, reagieren auf schwache Magnetfelder und (auch wichtig) kosten nur € 0,50/Stk.
Pro Abschnitt (Bahnhofsgleis bzw. Streckenblock) gibt es jeweils drei Sensoren: Bremspunkt, Stoppunkt, und Durchgefahren.
Pro Abschnitt (Bahnhofsgleis bzw. Streckenblock) gibt es jeweils drei Sensoren: Bremspunkt, Stoppunkt, und Durchgefahren.
Hier ein I/O Modul, die Widerstände im rechten Bereich benötige ich für die Hall-Sensoren als "pull-up" auf 24V.
Die Schaltschwellen der Weichen werden mit kleinen RC-Servos aus Fernost mit 0,5mm Stahldraht bewegt (passende Servohalter gibt's bei AustroModell). Die Stellungen der Servos sind im Weichencontroller gespeichert.
So schaut die Weichenansteuerung von oben aus. Den überstehenden Teil der Schaltschwellen werde ich im sichtbaren Anlagenteil entfernen.
Hier ein Bereich mit zwei Weichen und zwei Hall-Sensoren.
Die Verkabelung erfolgt ausschließlich an der Unterseite des Rasters. Schaut noch etwas ungeordnet aus, ist aber auch noch nicht fertig.
Nun zur Weichensteuerung:
Das Herzstück der Weichensteuerung ist ein Arduino Nano V3.0 mit ATmega328 Microcontroller. Jedes board kann vier Weichen steuern. Für jede Weiche gibt es zwei Eingänge zur Ansteuerung und zwei Lage-Rückmeldungen mit jeweils 24V. Der Sollzustand jeder Weiche wird mit einem bistabilen Relais gespeichert. Diese Relais benötigen nur beim Umschalten Strom! Zusätzlich werden damit die Herzstücke der Weichen umgeschaltet (am Bild noch nicht angeschlossen). Die Relais werden vom Controller abgefragt und daraus die Servopositionen ermittelt. Für jedes Servo sind die Positionen getrennt per Teach-In programmierbar. Natürlich erfolgt die Positionsänderung der Servos entsprechend langsam.
Das Board hab ich mit der Conrad-Version von Target 3001! entwickelt, die erforderliche Stückzahl beim Conrad PCB-Pool fertigen lassen, das Board entsprechend bestückt und natürlich ein Programm für den Arduino entwickelt (ist mit EEPROM-Funktionen und Teach-In doch ziemlich umfangreich geworden) ...
Das Herzstück der Weichensteuerung ist ein Arduino Nano V3.0 mit ATmega328 Microcontroller. Jedes board kann vier Weichen steuern. Für jede Weiche gibt es zwei Eingänge zur Ansteuerung und zwei Lage-Rückmeldungen mit jeweils 24V. Der Sollzustand jeder Weiche wird mit einem bistabilen Relais gespeichert. Diese Relais benötigen nur beim Umschalten Strom! Zusätzlich werden damit die Herzstücke der Weichen umgeschaltet (am Bild noch nicht angeschlossen). Die Relais werden vom Controller abgefragt und daraus die Servopositionen ermittelt. Für jedes Servo sind die Positionen getrennt per Teach-In programmierbar. Natürlich erfolgt die Positionsänderung der Servos entsprechend langsam.
Das Board hab ich mit der Conrad-Version von Target 3001! entwickelt, die erforderliche Stückzahl beim Conrad PCB-Pool fertigen lassen, das Board entsprechend bestückt und natürlich ein Programm für den Arduino entwickelt (ist mit EEPROM-Funktionen und Teach-In doch ziemlich umfangreich geworden) ...
Solche Signale gibt's bei Schneider als Bausatz ... die Vorwiderstände hab ich für 24V bemessen. Die LED's werden direkt mit digitalen Ausgängen gesteuert.
Ø-Userbewertung: (4 Bewertungen)
© des Blogs bei "Roland5020" - jegliche weitere Verwendung (Text/Bilder) benötigt seine Zustimmung.
Beitrag bewerten:
Nur registrierte User dürfen Bewertungen vornehmen.Einloggen | Registrieren
Bisher wurden noch keine Kommentare hinzugefügt.
Kommentare können nur durch registrierte User eingegeben werden: Einloggen oder Registrieren.Seitenaufrufe aktueller Monat: 25