
Arduino Beleuchtungssteuerung
Die komplette Beleuchtung steuere ich mit Arduinos. Zum Einsatz kommen verschiedene Boards. Die Modellbahnzeit steuert ein Arduino Mega2560 (Control-Modul), Teile einer Haus- und Straßenbeleuchtung ein Nano. Für eine Siedlung setze ich wieder einen Mega2560 ein. Mit diesem stehen mir über 50 Anschlüsse zur Verfügung. Der Dom mit Geläut um 7 Uhr, 12 Uhr und 18 Uhr (hier mit Kirchengesang), wird mit einem Nano gesteuert. Auf einem MPlayer liegen die Sounddateien für das Geläut und den Gesang. Für die Preise an der Tankstellen-Infotafel, ein ESP32 mit Wlan. Damit hole ich die Preise in Echtzeit einer ausgesuchten Tankstelle in unserer Stadt aus dem Internet. Die Tag- und Nachtbeleuchtung ebenfalls mit einem Nano. Dieser steuert meine LED-Streifen.
Weiterhin sind aktuell 2 Arduino Wlan-Kameras im Schattenbahnhof verbaut. Damit kann ich sehen, wo sich der Zug gerade genau befindet. Weitere Kameras werden folgen. Auf jedem Kameramodul läuft ein Webserver. Das Bild hole ich mir über einen Webbrowser auf den Monitor.
Das Control-Modul sendet an Pin 18 die Uhrzeit. Um alle Arduinos mit der Uhrzeit zu versorgen, habe ich einen Zeitverteiler installiert. Dort wird die Zeit vom Control-Modul an Anschluss A und B verbunden. Über die weiteren 2x12 Anschlüsse kann ich so jeden Arduino, der eine Uhrzeit benötigt anschließen.
Die Modellbahnzeit ist so eingestellt, dass 1 Stunde Modellbahnzeit = 3 Minuten Realzeit sind. In iTrain läuft die Zeit mit dem Faktor 20. So habe ich für meine gesamte Anlage die gleiche Modellbahnzeit. Leider ist es mir noch nicht gelungen, die Zeit in iTrain und dem Control-Modul synchron zu starten. Schön wäre es, wenn ich in iTrain meinen Fahrplan starte und gleichzeitig das Control-Modul einen Neustart ausführt, denn dann würde auch die Modellbahnzeit neu beginnen.
Mit diesen Einstellungen in iTrain, kann ich die Züge nach Fahrplan fahren lassen. Dazu aber mehr auf der iTrain Seite (noch nicht aktiv).
Das Control-Modul

Im Vorfeld habe ich mich im Internet informiert, welche Möglichkeiten es gibt, eine Modellbahn mit realistischen Effekten zu versehen. Meine Wahl fiel auf einen Arduino. Mit diesem Board lässt sich sehr viel umsetzen. Die Boards sind relativ günstig und durch die Programmierung der Sketche, lässt sich fast alles damit realisieren.
Im Internet bin ich auf der Suche nach dem Arduino auch auf die Seite starthardware.org von Stefan Hermann gestoßen. Er hat schon einige Sketche für die Modellbahn umgesetzt. Bei Problemen konnte ich ihn um Hilfe bitten und er hat auch sofort geholfen. Das Control-Modul kann auf seiner Seite heruntergeladen werden. Der Sketch ist für einen Arduino Nano geschrieben. Da ich einen Mega2560 verwende, hatte ich Schwierigkeiten, das Zeitsignal zu synchronisieren. Der Mega2560 lieferte keine vernünftigen Werte. Für einen Nano ist der Pin A4 für das Signal zuständig. Am Mega2560 hatte ich also diesen verwendet, ohne Erfolg. In der Anleitung schreibt Stefan, dass am Pin 18/A4 das Signal für die Zeitsynchronisation anliegt. Pin A4 funktionierte nicht, also habe ich für den Mega2560 den Pin 18 genommen. Jetzt funktionierte alles korrekt. Die Tag- und Nachtbeleuchtung, die Dom-Glocken, die 3 mal am Tag zu hören sind und auch die Straßenbeleuchtung schaltet genau auf die eingestellte Zeit.
!!! WICHTIG !!!
Alle Boards, die das Zeitsignal benötigen, müssen mit dem gleichen GND-Anschluss verbunden sein.
Der Dom mit Beleuchtung und Beschallung

Der Dom hat noch eine Besonderheit. Zu dem Nano habe ich noch einen Arduino mp3-Player verbaut. Über diesen lasse ich zu 3 Zeiten die Glocken läuten und am Abend ist nach dem Glockengeläut ein Gesang zu hören. Der Lautsprecher ist im Glockenturm verbaut. Die Außenbeleuchtung wird zusammen mit der Straßenbeleuchtung ein- und ausgeschaltet. Die Innenbeleuchtung, das Geläut und der Gesang über den im Dom verbauten Nano. Auch hier wird die Zeit vom Control-Modul geholt.
Das Bewohnte Haus

In dem "Bewohnten Haus" werkelt kein Arduino Nano, sondern ein ATtiny45. Programmiert ist dieser mit einem Arduino Nano. An dem ATtiny lassen sich bis zu 5 Verbraucher anschließen. Ein Anschluss flimmert und simuliert damit einen Fernseher im Raum. Für das Fernsehflimmern habe ich eine blaue LED genommen. Die Beleuchtung wechselt zufällig. Dadurch entsteht der Eindruck, das Haus ist bewohnt.
Bei dem Zusammenbau des Hauses, habe ich die Räume für jede Etage abgetrennt, um so die Beleuchtung nur in diesem Raum zu lassen. Auch im oberen Geschoss sind die Räume getrennt und werden zufällig beleuchtet. Erst die Wände einbauen und danach die Decke einsetzen. Durch seine geringe Größe, passt der ATtiny gut in jedes Modellhaus.





Der Baukran

Für eine Baustelle hatte ich die Idee, einen Baukran aufzustellen. Gefunden habe ich einen bei Kleinanzeigen für kleines Geld. Für den Baukran habe ich mir auch eine Beleuchtung überlegt. In der Dunkelheit sollte der Baukran an 3 Punkten abwechselnd rot aufleuchten. Was bietet sich hier besser, als ein ATtiny45 an. Programmiert wieder mit einem Nano. Diesmal sind nur 3 Verbraucher angeschlossen. Gesteuert wird die Beleuchtung über die Straßenbeleuchtung. Schaltet die bei einsetzender Dunkelheit ein, schaltet auch der Baukran die Beleuchtung ein.
Steuerzentrale Elektronik

Ganz links ist das Netzteil. Es ist aus einem alten PC und leistet 600W. Im Internet habe ich einen Adapter gefunden, der sich über den breiten Stecker, der normalerweise auf das Motherbaord kommt, verbinden lässt. Das gute an dem Adapter, er liefert 3 verschiedene Spannungen. 3,2V, 5,2V und 12V. Neben dem Adapter habe ich 3 Verteiler mit jeweils 12 Anschlüssen befestigt und diese werden vom Adapter mit Strom versorgt. Über dem Verteiler steht die Voltzahl, die dort anliegt.
Die Arduinos holen sich von dem entsprechenden Adapter den Strom.
Im Vorfeld habe ich mir einen Schaltplan erstellt, um bei der Verkabelung nicht den Überblick zu verlieren. Gleichzeitg protokolliere ich in Excel jeden Anschluss. So kann ich jederzeit nachvollziehen, wo was angeschlossen ist. Der Schaltplan ist nicht die aktuellste Version, da ich für das Control-Modul mittlerweile einen Mega2560 und keinen Nano einsetze. Getauscht habe ich die Boards nur, weil der Nano kleiner ist und ich ihn für ein anderes Projekt verwende.
Für den Schattenbahnhof habe ich angefangen, Kameras zu installieren, die ebenfalls Arduinos sind. Alle Kameras haben einen Webserver und über diesen kann ich das Bild in einem Browser holen. Ich gebe die festgelegte IP-Adresse ein und die Verbindung zur Kamera steht. Da die Kameras nur zur Überwachung dienen sollen, war mir eine 4k Auflösung nicht wichtig. HD reicht für diesen Zweck. Ein Vorteil der Kameras, sie haben eine LED, die über den Browser ein- und ausgeschaltet werden kann. Sogar eine Dimmung ist möglich. In dem Kamera-Standorte-Plan sind die Standorte mit einem orangenen Dreieck gekennzeichnet. Die Spitze zeigt dabei in Aufnahmerichtung.






Display Tankpreise in Echtzeit

Für meine Aral-Tankstelle wollte ich mir ein Display bauen, um dort die aktuellen Preise der Aral-Tankstelle in unserer Stadt anzeigen lassen. Ein bisschen im Internet recherchiert, welcher Arduino dafür optimal wäre und wie hole ich die aktuellen Preise und woher?
Den Arduino habe ich schnell gefunden. Es ist ein ESP32 mit WLAN-Funktion. Dieser wird sich alle 15 Minuten über den Router in das Internet einwählen und auf aktuelle Preise lauschen.
Erst mal musste ich suchen, wer bietet denn aktuelle Preise an? Die Seite tankerkoenig.de bietet diesen Service an. Es wird ein Open DATA API Key benötigt. Er wird kostenlos zur Verfügung gestellt. Wie das genau durchgeführt werden muss, ist auf der Webseite tankerkoenig.de nachzulesen.
Ebenfalls werden die Koordinaten der Tankstelle, woher die Preise kommen sollen, gebraucht. Mit diesen Informationen wird jetzt der Sketch für die Preise auf den ESP32 gespielt. Nach einem Neustart, erscheinen die aktuellen Preise auf dem Display. Um die Sache noch realer zu machen, habe ich am unteren Rand des Displays eine Laufschrift eingefügt. Die dort gezeigten Informationen, sind nicht real, sondern frei gewählt.
Ein kleiner Auszug aus dem Sketch als Bild. Hinter den Rot eingefärbten Flächen, müsst ihr eure eigenen Daten eintragen. Klickt auf das Bild und es wird in einem neuen Tab vergrößert geöffnet.

Die Siedlung

Auf der Modellbahn werden nicht alle Häuser als "Bewohntes Haus" (wie auf dem Foto) gebaut. Viele Häuser bekommen "nur" eine Innenbeleuchtung. Aber auch diese wird nach festgelegten Zeiten zufällig an- oder ausgeschaltet.
Für die Steuerung dieser Beleuchtung setze ich einen "Mega2560" ein. Mit diesem Arduino habe ich die Möglichkeit, bis zu 67 Häuser anzuschließen. Soviel werde ich wohl nicht aufstellen. Die Anschlüsse lassen sich natürlich auch für andere Beleuchtungen verwenden. Werbung, Straßenbeleuchtung und noch weitere Beleuchtungen. Die Zeitsynchronisierung erfolgt auch hier mit dem Control-Modul über Pin 18.
Der Arduino Sketch stammt ursprünglich von starthardware.org und ist für einen Arduino Nano programmiert. Für den Mega mit den wesentlich mehr zur Verfügung stehenden Pins, musste ich diesen Sketch etwas erweitern. Auf meinem Testbrett habe ich verschiedene Arduinos, wo ich die Sketche im Vorfeld teste. So auch für die Siedlungsbeleuchtung. Hier habe ich allerdings nur 10 LED's angeschlossen, die ich an jeden Pin des Mega anschließen kann.
In der Exceltabelle trage ich den Verbraucher an dem zugeordneten Anschluss ein. Das erleichtert später die Fehlersuche, falls eine LED mal ausfällt.


Falls Interesse an den Sketchen besteht, schreibt mir eine Mail!