Artikel aktualisiert am 24.02.2023 Diese Beschreibung bezieht sich auf die Version 3.2.0 der MobaLEDLib und Hardware Version 1.1 der Schaltplatine. Aktualisierung um Erfahrungen nach längerem Betrieb (siehe unten).
Nachdem ich schon über meine ersten Erfahrungen mit DCC gesteuerten RGB-LEDs und über DCC gesteuerte Servos berichtet hatte, möchte ich euch diesmal von meinen Erfahrungen mit der DCC Relaisplatine des MobaLEDLib Projektes berichten.
Hintergrund
Für ein neues Modul (Schmalspurbahnhof Karnsdorf) benötigte ich eine Herzstückpolarisierung der Weichen – außerdem hat das neue Modul eine Segmentdrehscheibe die mittels Spannungsumpolung arbeitet. Da kam es gut, das es für die MobaLEDLib inzwischen ein Relaismodul – Modul 530 – mit 8 Relais gibt, die jeweils 1xUM schalten. (Wer mit dem Thema MobaLEDLib noch gar nichts anfangen kann dem empfehle ich meinen Artikel zur LED Steuerung)
Ein solches Modul kostet mit den Elektronikbauteilen ca. 20€ und man kann mittels DCC Kommandos jedes einzelne Relais schalten! Die teuersten Teile sind dabei die Relais mit ca. 1,50€ pro Relais. Zum Vergleich: Die Firma TAMS hat einen Schaltdecoder zum Selbstlöten mit nur 4 Relais im Angebot (Schaltdecoder SD-34) zum Preis von 34,95 €!
Vor allem aber waren für mich die bisherigen, sehr guten Erfahrungen mit allen Platinen der MobaLEDLib ein Grund, es einmal mit dieser Platine auszuprobieren.
Um es vorwegzunehmen: Die Platine funktioniert problemlos – allerdings musste ich einiges an Lehrgeld bezahlen und hoffe das euch diese Beschreibung hilft nicht in die gleichen „Fettnäpfchen“ zu tappen. Müsste ich für mich ein Schwierigkeitsgrad beim Bau definieren, so käme allerdings die Relaisplatine auf den höchsten Grad, gefolgt von der Servoplatine und der LED Hauptplatine mit dem niedrigsten Schwierigkeitsgrad.1diese persönliche Einstufung hängt aber vornehmlich von meinen Kenntnissen des Lötens von SMD ICs ab
Folgende Beschreibungen waren bei dem Arbeiten mit der Relaisplatine hilfreich:
- Überblick des 530er Platine im Mobaledlib Wiki
- Anleitung zur Nutzung des MLL Programmgenerators
- Liste der Lötjumper
- Zusatzinformationen zur 530er Platine – bezieht sich aber auf eine ältere Platinenversion (1.0),
Beachtet: Einige der Links sind versionsabhängig – deshalb bitte immer über die in obiger Liste als erstes genannte Einstiegsseite gehen und dann dort die genannten Links suchen!
Auch wenn ich im folgenden eine Herzstückpolarisierung beschreibe, können die Relais natürlich für jede andere Schaltaufgabe verwendet werden. Die Beschreibung ist auch in diesem Falle hilfreich, da es vornehmlich um Aufbau und Betrieb der Relaisplatine geht.
Bestellung und Varianten
Wie immer findet sich die Beschreibung der Relaisplatine 530 im MobaLEDLib Wiki. Dabei hatte ich allerdings gleich das erste Problem:
Es gibt 3 unterschiedliche Möglichkeiten die Platine zu bestücken – entweder als Platine zur „Herzstückpolarisation“ – ich nenne es mal (RH), oder als Relaisplatine (RE) oder als ABC Bremsmodul (RA) . Außerdem kann man RE mit monostabilen Relais 1A, monostabilen Relais 2A und bistabilen Relais 2A bestücken. Hier mal die Übersicht, wie sich RE bestücken lässt:
Relaiskonfiguration | Typ | Anzahl | Bemerkung |
---|---|---|---|
Monostabil | 1A wie im Wiki beschrieben | 8 | 8 Relais können geschaltet werden, davon 7 unabhängig. |
Monostabil | 2A (Link Reichelt) | 3 | Höhere Amperezahlen möglich – bei stromintensiven Verbrauchern notwendig |
Bistabil | 2A bei den Relais handelt es sich um diese hier mit zwei Spulen | 3 | Nur kurze Schaltspannung erforderlich um das Relais umzuschalten – Zustand bleibt auch bei Abschaltung MLL bestehen. Daher auch z.B. manueller Betrieb bei Herzstückpolarisierung möglich. |
Diese unterschiedliche Bestückungsvarianten ermöglichen zwar einen sehr variablen Einsatz der Platine – als Anwender verwirren sie mich aber doch ziemlich.
Hier mal eine Übersicht was es mit den verschiedenen Relais auf sich hat:
Monostabiles Relais – man gibt einen DCC Befehl ein und das Relais schaltet ein. Stellt es euch wie einen Taster vor: Mit dem DCC Befehl wird der Taster aktiviert. Das Relais zieht an und schaltet durch. Wie bei einem Taster muss aber in angezogenem Zustand dauerhaft Strom fließen. Schaltet ihr die Anlage ab, so ist das Relais wieder abgefallen und muss jedes Mal neu aktiviert werden2(dafür gibt es eine Lösung – dazu aber später mehr)
Bistabiles Relais – auch das funktioniert mit einem DCC Befehl, aber das Relais schaltet nur einmal um und bleibt danach in Ruhe, d.h. es fließt nach dem Umschalten kein Strom. Schalt-technisch sind beide Relais identisch
Verwirrend ist hier, dass es auch eine extra Bestückung in der Variante RH – also als Platine zur Herzstückpolarisation gibt. Diese ist insbesondere dann empfohlen, wenn MLL auch mit den MLL Servomodulen (siehe mein Bericht zu den Servomodulen) zum Einsatz kommt und gleichzeitig Weichen mit durchgehenden Zungen.
Nun wollte ich allerdings nicht nur die Polarisation verwenden, sondern auch eine Umpolung für eine Segmentdrehscheibe. Auch erlaubt die Herzstückpolarisation nur 3 bistabile Relais – die Relaiskonfiguration aber erlaubt 8 monostabile Relais.
Also dachte ich: 8 ist mehr als 3 und mit 8 monostabilen kriegt man ja auch eine Polarisierung hin!
Entsprechend habe ich auch die Bauteile bestellt die unter dem Link für die „Relaisversion“ zu finden sind. Da gab es aber gleich folgende Probleme (vielleicht gibt es ja irgendwann keine Lieferprobleme mehr):
- Die ICs vom Typ ULN 2003A AN waren bei Reichelt bis auf weiteres nicht mehr lieferbar. Wie der Entwickler – Dominik – mir bestätigt hat, kann man aber auch die ULN 2003A STM nehmen.
- Ebenfalls kann Reichelt aktuell keine steckbaren Schraubklemmen liefern. Die sind aber für die Funktion auch nicht erforderlich. Hier kann man sich mit einfachen Stiftleisten aushelfen. Dann kommen auf die Stifte entsprechende Stiftbuchsen – genau so wie man auch Servos anschließt. (siehe dazu mein Modul oben). Die Stiftleisten sind aber nicht Teil des Warenkorbs, da die Standardbestückung die Schraubklemmen vorsieht.
- Der Warenkorb alleine reicht nicht aus – es fehlen die Wannenstecker und vor allem die WS2811 in SMD Bauform! Letzter sind nur schwierig zu bekommen – fragt am Besten mal bei der Bestellung der Platinen, ob ihr noch 2 SMD WS2811 dazu bestellen könnt – manchmal haben die Kollegen noch welche vorrätig.
Zusammenbau und Test
Der Zusammenbau ist eigentlich problemlos möglich. Allerdings stehe ich selbst wohl auf Kriegsfuß mit SMD IC Bauteilen. So funktionierten anfangs nur die ersten beiden Relais – und eine kalte Lötstelle tat ihr übriges. Zum Glück hat mir der Entwickler, Dominik, hier geholfen und das Bord nach Einsendung an ihn, repariert!
Einige Empfehlungen zum Löten von SMD Bauteilen findet ihr in meinem Artikel zu den Infrarot Sensoren3(obwohl ich meine eigenen Tipps eingehalten hatte, hat es allerdings bei mir nicht funktioniert – aber dazu brauche ich wohl erst eine neue Lötstation – die alte Lötstation ist doch langsam fällig …)
Vergesst nicht die Lötpunkte richtig zu setzen!
Da es so viele Varianten gibt, war ich anfangs irritiert, welche Lötpunkte ich denn jetzt für mein „Standardrelais mit 8 monostabilen Relais“ verbinden musste. Hier hat mir (wie immer) der Blog im Stummiforum aus der Patsche geholfen. Dazu folgende Rahmenbedingungen:
Wenn ihr eure Platine immer mit einer Verteilplatine anschließt, 8 Monostabile Relais mit 1A verwendet, keine höhere Spannung über Pin 6 einspeist und die Platine als reine Relaisplatine verwendet4(das sind jetzt alles die „Standardbedingungen“) , dann müssen folgende Lötpunkte (aka Jumper) verbunden werden5wer es genau wissen will findet hier den Thread mit einem Bild der Lötpunkte:.
- RES_G1
- NO_OPTW2
- TERM (nur offen lassen, wenn man mehrere Relaisplatinen miteinander verbinden will – davon würde ich aber die Finger lassen und stattdessen jede Relaisplatine an einen eigenen Anschluß einer Verteilerplatine anschließen)
- 6=5V (nur offen lassen, wenn man eine abweichende Spannung am Verteiler von PIN 6 hat – also eher etwas für die „Insider“)
Dieser Beitrag bezieht sich auf V1.1 der Relaisplatine -wenn ihr eine andere Version verwendet, solltet Ihr unbedingt erst vorher die Dokumentation im MobaLEDLib Wiki zu Rate ziehen!!
Die LED und die 8 Relais sind dabei wie folgt angeordnet:
Steuerplatine 530 (Version ohne Schraubklemmen) – der weiße Punkt markiert den Pin der im Ruhezustand aktiviert ist. Nur für die ersten 6 Relais sind LED vorhanden. Relais 8 (H) schaltet zusammen mit Relais 6 (F).
Da die Pins nicht verpolungssicher angeordnet sind, habe ich jeden Stecker mit einer Markierung versehen – der 1. Stecker hat zusätzlich 1 Punkt als Markierung – der 8 Stecker 8 Punkte.
Testen der Platine
Mein erster Test ging gründlich in die Hose. Um es gleich vorwegzunehmen:
Vor dem Test der Platine solltet Ihr den Programmgenerator der MLL (also die Exceldatei) auf die neueste Version aktualisieren. Dabei auch nicht vergessen, den DCC Arduino mit zu aktualisieren, falls eine neue Version vorhanden ist.
Wie das geht habe ich bereits im Artikel über die Servobausteine beschrieben (da hatte ich nämlich das gleiche Problem).
Das Hauptproblem war mein fehlender Kenntnisstand zur Konfiguration der monostabilen Relais im Programmgenerator der MLL. So fand ich in der V3.1.0 netterweise folgende Konfigurationsoption:
Toll – dachte ich, aber weit gefehlt – diese Konfiguration ist nur für den Fall gedacht, das man die Herzstückpolarisations-Variante RH gebaut hat – nicht aber für die Version RE!
Wie immer war das Forum sehr hilfreich – vor allem nachdem ich erst einmal verstanden hatte, das man auch die monostabilen Relais als Dauerkontakt oder als Momentkontakt konfigurieren kann. Dazu ein kurzes Beispiel:
Ein Herzstück möchte ich dauerhaft mit Strom versorgen – dann brauche ich aber auch ein Kontakt der dauerhaft eingeschaltet ist. Einen magnetischen Weichenantrieb sollte ich aber nur kurzzeitig unter Spannung setzen – selbst wenn dieser eine Endabschaltung haben sollte. In der Dokumentation ist aber (zumindest zum Zeitpunkt dieses Artikels) nur der Momentkontakt beschrieben – nicht aber der Dauerkontakt! Der Entwickler – Dominik – hat mir dann schnell aus der Patsche geholfen. Hier meine Konfiguration – ich verwende die Adressen 721 – 727 um die Relais einzuschalten.
- Mittels RS Flip-Flop (gelb markiert) wählt ihr aus, das ein Relais dauerhaft eingeschaltet wird. Wollt ihr nur ein kurzes Einschalten, so lasst ihr das RS-Flip-Flop einfach weg.
- Die DCC Adresse (rot markiert) wird bei der Eingabe des Flip-Flop – nicht beim Relais angegeben.
- Der Name des Relais (blau markiert) bei der Definition des RS Flip-Flop muss mit dem Namen dem Relaisnamen übereinstimmen (sofern das Relais dauerhaft geschaltet bleiben soll)
- Vergesst auch nicht, das die Helligkeit (orange) zwingend auf 255 gesetzt werden muss – dies ist im Dialog beim Einrichten leider nicht der Standardwert.
Herzstückpolarisierung
Die Herzstückpolarisierung funktioniert auch mit monostabilen Relais – es ist nur ein wenig aufwändiger in der Verkabelung und der Konfiguration in eurer Steuerungssoftware. Wenn ihr nur das Herzstück selbst, und nicht die Zungen, umschalten wollt, dann könnt ihr einfach eines der Relais verwenden und einfach die Spannung in Abhängigkeit von der Weichenstellung umstellen. Das ist aber bei 2L Fahrern und Weichen mit federnden Zungen nicht ganz so einfach. Solche Weichen werden z.B. von Tillig, Weinert usw. hergestellt.
Bei Weichen mit federnden Zungen, wird die Stromverbindung über das Anlegen der Zunge hergestellt. Wenn die Weichenzunge umgelegt wird, und gleichzeitig umgepolt wird, so kommt es zum Kurzschluss
Wer nun denkt: Da braucht man doch keine Polarisierung – man muss ja nur Herzstück mit Zunge verbinden hat vollkommen Recht! Aber: Die Zunge liegt nicht immer vollständig an – hinzu kommt nach dauerhaftem Betrieb eine Verschmutzung was dauerhafte Reinigung der Zungeninnenseite nach sich zieht.
Federnde Zungen in Weichen solltet ihr immer mit einer eigenen Stromversorgung versehen, um einen dauerhaft störungsfreien Betrieb zu garantieren!
In der MLL gibt es daher auch die Möglichkeit die Herzstückpolarisierung mit dem Schalten der Servos zu koppeln, sodass erst bei Bewegung des Servos die Polarisierung umgeschaltet wird. Nun habe ich allerdings meine Weichen nicht mit dem Servobaustein geschaltet – aber generell würde ich dies auch nicht unbedingt empfehlen. Deshalb kommt bei mir folgende Schaltung zum Einsatz
Die Schaltung zeigt die Relais im stromlosen Zustand. Dabei ist das Herzstück ohne Verbindung zu einer der Schienen. Tatsächlich kann es trotzdem Verbindung haben, wenn die Zunge Verbindung zum grünen Gleis hat! Diese Einstellung führt aber garantiert nicht zu einem Kurzschluss.
Um jetzt die Weiche zu schalten, wird als erstes das Relais 1 in Ruhezustand gebracht, dann wird die Weiche geschaltet und die Zungen laufen um. Erst danach schaltet Relais 2. Ein bistabiles Relais würde diese Verbindung dauerhaft halten. Diese Abfolge übernimmt die Steuerungssoftware (in meinem Falle Traincontroller). Wie dies konkret in der Software ausschaut – dazu das nächste Kapitel
Konfiguration Steuerungssoftware
Die folgende Beschreibung bezieht sich auf die bei mir eingesetzte Steuerungssoftware Traincontroller. Bei anderen Steuerungsprogrammen, ist dies natürlich anders zu definieren – trotzdem mag diese Beschreibung hier vom Grundsätzlichen auch für diese Programme interessant sein.
Halten wir uns noch einmal vor Augen, wie jetzt die Herzstückpolarisierung (am Beispiel von Relais A und Relais B funktioniert:
Wenn ich Relais A aktiviere, deaktiviere (!) ich damit auch die Herzstückpolarisierung6 Ich hätte es auch anders herum machen können, aber dann wäre Relais A bei Betrieb der Anlage dauernd aktiv gewesen. Ist Relais A eingeschaltet, so ist auch das Herzstück nicht mit Strom versorgt. Tatsächlich habe ich allerdings u.U. über die Weichenzungen eine Verbindung – die allerdings nicht sehr kontaktsicher ist. Ich habe mir daher folgende Vorgehensweise in Traincontroller programmiert:
Als erstes wird eine Weiche in TC angelegt (Beispiel: DE 352) – allerdings ohne, das dafür eine Adresse eingetragen wird!
Als nächstes erstellen wir einen Umschalter, der nur dazu dient die Weiche von rechts nach links zu stellen. In meinem Beispiel hat die Weiche die Adresse 354 (im Bild sorry – 352) und hängt an einer Intellibox Basic. Diese Weiche wird über einen Servo und WA5 Weichendecoder umgestellt.
Dann erstellen wir einen Melder, der als Auslöser die Weichenstellung Abzweig hat. In den Operationen ist folgendes hinterlegt:
Zunächst wird das erste Relais eingeschaltet – es hat bei mir die DCC Adresse 721. Auch dieser Schalter ist ein Umschalter und mit der Adresse des Relaisbausteins aktiviert. Es wird also zunächst die Herzstückpolarisierung AUS geschaltet. Jetzt kann die Weiche aktiviert werden und die Zungen können umlaufen. Die Umlaufzeit habe ich in einer globalen Variablen vom Typ Zeit hinterlegt. Erst wenn die Weiche um gelaufen ist, darf ich jetzt auch die Polarisierung ändern. Dies erledigt ein Umschalter mit dem Namen „858 Weichenherzstück….“. Dieser Umschalter hat die Adresse 722 und ist damit das Relais B auf der Platine. Mit einer kleinen Verzögerung wird dann die Polarisierung auch aktiviert über Relais A
Das funktioniert im laufenden Betrieb einwandfrei. Beim Ausschalten der Stromversorgung der Relaisplatine würden aber auch alle Relais abfallen und beim erneuten Einschalten wäre ein Kurzschluss im wahrsten Sinne des Wortes vorprogrammiert! Aus diesem Grund ist es wichtig, das wir im Programmgenerator noch eine zusätzliche Funktion aktivieren:
Hiermit ist sichergestellt, dass garantiert auch bei Ausschalten der Anlage der letzte Zustand aktiviert bleibt.
Ein Nachteil hat diese Vorgehensweise jedoch: Schalte ich die Anlage ein, ohne entsprechende Steuerungssoftware, und betätige dabei auch manuell – also nicht über die Steuerungssoftware – die Weichen deren Herzstücke über die Relaisplatine mit Spannung versorgt werden, so kommt es zum Kurzschluss. Um auch dieses – zugegeben geringe – Risiko zu vermeiden, deaktiviere ich beim Abschalten von Traincontroller die Polarisierung der Herzstücke, und aktiviere diese wieder beim Einschalten. Wer dies ebenfalls umsetzen will, dem empfehle ich einen Blick in die Programmdatei.
Eine weitere Absicherung ist eine Bedingung in der Betätigung des Weichenschalters: Um zu vermeiden, das die Weiche zu schnell hin und her bewegt wird und damit ebenfalls ein Kurzschluss auftreten würde, ist in der Bedingung für die Aktivierung der Weiche hinterlegt, das die Herzstückaktivierung aktiviert sein muss (also im Beispiel muss das Relais A deaktiviert sein).
Einbau
Zum finalen Einbau des Moduls gibt es nicht viel zu sagen – am wichtigsten: „Beschriftet alle Anschlüsse detailliert und macht euch am Besten auch eine Sicherungskopie eures Programmgenerators“. Letzteres funktioniert im Excel über „Optionen“ – „Dateien“ – „Speichern in Datei“.
Es gibt inzwischen auch ein Gehäuse für den 3D Druck für die Platine 530 – zu finden unter diesem Linkhttps://wiki.mobaledlib.de/3d_druck/zubehoer/3dgehaeuse
Fehlersuche
Wie schon oben angedeutet, hatte ich mit dem Modul anfangs diverse Schwierigkeiten – daher hier mal eine Zusammenstellung der verschiedenen Fehler (und ich hatte alle davon)
Als erstes solltet ihr versuchen zu prüfen, ob die Relais überhaupt richtig angesteuert werden. Dazu empfehle ich eine „Testschaltung“. Wer häufiger mit der MLL arbeitet, der sollte sich auf jeden Fall eine Testschaltung mit 3-6 RGB LED gönnen, die in Reihe geschaltet sind. Tauscht diese Testschaltung gegen die Relaisplatine aus und schaltet dann die DCC Kommandos durch. Wenn alle RGB LED nach Aktivierung der DCC Adressen der Reihe nach leuchten, dann ist die Eintragung in der Excel schon einmal grundsätzlich richtig.
Sodann solltet ihr prüfen, ob die Helligkeit bei der Zeile „LED einstellbar“ auch wirklich auf 255 steht. Oftmals hört man ein leises, hochfrequentes Pfeifen wenn man die Relais mit zu niedriger Helligkeit konfiguriert hat. Diese benötigen zwingend die Einstellung 255!
Um sicherzustellen, das es nicht an der Hardware liegt, hat Michael aus dem Forum unter diesem Link beschrieben, wie man die Verbindungen testen kann – vor allem solltet ihr die SMD WS2811 mal genauer anschauen7an dieser Stelle nochmal tausend Dank an Dominik, der mir geholfen hat nicht nur meine Fehler zu finden, sondern auch meine SMD Lötfehler beseitigt hat.
Eine kalte Lötstelle an den Kondensatoren kann z.B. schon Schuld sein, das ein Relaispaar nicht schaltet.
Update – Erfahrungen
Inzwischen habe ich bereits den 2. Relaisbaustein über ein Jahr in Betrieb und bin damit sehr zufrieden.
Allerdings verwende ich ihn nicht mehr für die Herzstückpolarisierung. Der Grund dafür liegt vor allem darin, das ich häufig auch mit Traincontroller Tests und Konfigurationen ohne Verbindung zur Anlage mache. Dann steht die Weiche oftmals falsch und die Folge ist ein Kurzschluss. Auch kam es Hin- und Wieder vor, dass ein Relais zu spät geschaltet hatte, wenn eine ganze Weichenstraße geschaltet wurde.
Zum Einsatz kommt der Relaisbaustein daher immer dann, wenn 12V-Lampen mit DCC geschaltet werden, oder mechanische Entkuppler bewegt werden müssen.
Der Relaisbaustein arbeitet inzwischen seit einem Jahr ohne Probleme – er stellt eine ideale Ergänzung zu den Bausteinen der MobaLEDLib dar. Insbesondere wenn Verbraucher mit 12V geschaltet werden müssen. Zur Herzstückpolarisierung verwende ich die Relais wegen der Kurzschlussgefahr nicht mehr. In solchen Fällen ist eine direkte Kopplung mit den Weichenantrieben – insbesondere beim Einsatz von federnden Zungen – sinnvoller.
Views: 1428