Hallöchen,
Aktuell arbeite ich an einem Projekt, worüber ich in diversen Forum wenig bis garnichts gefunden hab, da ich aber so ganz gut zurecht komme, dachte ich mir lasse ich die Welt an meinem Projekt teilhaben
Der Plan:
Die Züge sollen am Bahnhof automatisch am Bahnhof halten sobald das Signal rot ist, und wieder starten wenn das Signal auf grün fällt. Zugleich sollen Bahnhofsdurchsagen abgespielt werden, je nach Zug. Ein Güterzug hält wohl kaum am Bahnhof also muss die Durchsage "Ein zug fährt durch" kommen
Außerdem sollen auch vor dem losfahren die typischen Geräusche abgespielt werden, also Pfiff, Durchsagen etc.
Das ist mit einer normalen Bremsstrecke so nicht machbar.
Wenn der Zug in die Bremsstrecke hineinfährt, bleibt er zwar stehen und die Funktionen bleiben erhalten, jedoch kann ich nicht selbst eingreifen.
Vielleicht sollte ich noch erwähnen, dass es sich um die Spurweite 1 handelt und digital mit der ECoS gesteuert wird
Die gesammelten Gedanken:
Reedkontakte. Gute idee, aber woher weiß das System, dass eine Baureihe 50 aufs Gleis 3 Fährt und dementsprechend handeln muss?
Ein Schaltpult? Nee, wir bleiben auf digital.
Stichwort RFID, Raspberry Pi und Arduino Nano. Hmmmm, die Idee ist garnicht so schlecht
Theorie:
Der Arduino ist für das lesen der RFID Chips verantwortlich, sowie zum steuern der Signale. Der Raspberry Pi wird die Zentrale Auswerteeinheit. Dieser empfängt die Daten vom Arduino und sendet wieder an den Arduino. Der Pi ist außerdem mit der Ecos verbunden um die Anlage steuern zu können.
Programmiert wird auf Python und C
Moment mal. Warum eigentlich ein Arduino, wenn ich doch alles über den Pi machen könnte? Das Problem ist, wie schließe ich mehrere RFID Reader an den Pi? Das ist leider so nicht möglich. Außerdem hat der Pi nur eine Begrenzte Anzahl an GPIO's. Gut, die könnte ich mit I²C erweitern, aber damit komme ich irgendwie nicht wirklich zurecht...
Ich kann jedoch die Arduinos über USB an den Pi anschließen, bzw. ein USB Hub dazwischen einbauen. Jede USB Schnittstelle hat ja einen Port, was heißt ich kann alles auseinanderhallten und ansprechen.
Ich hatte bevor ich angefangen hab, erstmal nach ner Software für Linux gesucht, womit ich die ECoS steuern könnte. So stieß ich auf RockRail, doch irgendwie hat es mich nicht so befriedigt. Weiter gesucht.... Irgendwann stieß ich auf Telnet.
Praxis:
Erstmal musste alles besorgt werden was nicht schon daheim rumfliegt. Eigentlich nur ein RFID Reader sowie ein Arduino Nano. Steckboard, LED's, Steckbrücken und ECoS hatte ich schon da.
Zum aktuellen Stand (Da ich mich schon länger mit beschäftige) kann ich mit dem RPI die Ecos verwalten, also Lok losfahren lassen, funktionen ausführen, Weichen Steuern. Der Arduino ließt die RFID's aus, wandelt es in ein vernünftiges Bit um und sendet diese an den Pi, der diese wiederum zu Aktionen umwandelt.
Schwierig war es, wie ich die Signale steuere. Wenn ich schon mit Arduino und RPI arbeite, möchte ich diese nicht nur zum auslesen der RFID's verwenden...
Was mir jetzt noch fehlt, ist, dass die Systeme wissen in welchem Gleis sich welcher Zug befindet. Ich kann schlecht einen Zug ins Gleis 2 reinfahren lassen, wenn da schon einer steht. Und irgendwie müssen die ja auch wieder losfahren können wenn das Signal grün wird.
Naja, und zum Schluss müssen alle Software Teile irgendwie miteinander verheiratet werden
Hier mal ein kleines Video für die Signalsteuerung über den Pi
Beim nächsten Post werde ich mal ein teil meiner Softwareteile zeigen, sofern Interesse besteht

Fazit: Ich selbst steuere nurnoch die Signale, den Rest übernehmen die Systeme. Irgendwann ist es komplett automatisiert, wobei ich trotzdem die Möglichkeit haben möchte, eingreifen zu können bzw. mal hin und wieder selbst fahren will. ^^
Lasst es mich wissen, wenn ihr mein Projekt gut oder schlecht findet, ob ihr noch irgendwelche Ideen habt und ob ihr auf das Endergebnis gespannt seid

~LG Fabi