Montag, 14. April 2014

Test des verbesserten C-Gleis-Weichenantriebs

Nur durch einen Dauerversuch kann geklärt werden, ob der Weichenantrieb mit Freilaufdiode und Snubber der Ursprungsausführung mit Varistor überlegen ist. Die große Anzahl an nötigen Schaltvorgängen erfordert eine Automatisierung.


Die Soft- und Hardware dafür stelle ich hier vor. Nach 5000 Schaltvorgängen pro Spule gibt es leider noch kein Endergebnis. Allerdings spricht diese Zahl auch für die Qualität der Märklinantriebe. Hätte ich nicht selbst schon Antriebe gehabt, die wesentlich früher versagten, hätte ich diesen Versuch nie begonnen.

Versuchskonzept


Für den Dauertest sollen die Antriebe automatisiert so viele Schaltvorgänge ausführen, bis ein Endschalter ausfällt. Mir steht ein Arduino Uno zur Verfügung. Dieser steuert über Relais die Weichenantriebe an, überwacht mit Optokopplern die Endabschaltung und zählt die Schaltvorgänge. Im Fehlerfall hält er den Versuch an.


Spannungsversorgung


Der Arduino kann weder Spannung noch Strom in der nötigen Höhe bereitstellen. Das übernimmt ein Märklintrafo 6647 mit nachgeschaltetem Brückengleichrichter und Kondensator. Der Gleichrichter verwandelt die Wechselspannung des Trafos in pulsierende Gleichspannung, die dann vom Kondensator geglättet wird.


Die LED dient einerseits als Kontrollleuchte, die mir zeigt, dass Spannung anliegt, andererseits dient sie auch der Entladung des Kondensators nach dem Betrieb. Andernfalls müsste ich damit rechnen, dass er auch nach Stunden oder gar Tagen noch geladen ist - ungünstig, wenn ich an der Schaltung etwas verändern oder messen will.

Beim Einschalten erhöhe ich die Spannung langsam, bis die Sollspannung von 21V erreicht ist. Das verhindert, dass der Gleichrichter vom Einschaltstromstoß Schaden nimmt. Eine automatische Vorladeschaltung wäre eine Option, falls ich dieses Experiment noch öfter vornehme.

Ansteuerung über Relais


Prinzipiell könnte der Arduino die Weichenantriebe auch über Leistungstransistoren angesteuern. Der Vorteil der Relais ist, dass sie eine galvanische Trennung zwischen dem 21V-Stromkreis und dem Arduino ermöglichen. So ist der Microcontroller auch bei Verdrahtungsfehlern und Defekten weitgehend vor der hohen Spannung des Trafos geschützt.

Die Relais A bis D schalten jeweils eine Spule des Weichenantriebes. Weil der Spulenstrom im Relais sehr nahe am Nennstrom des Arduino ist und ich einen möglichst zuverlässigen Prüfstand haben will, erhielt jedes Relais noch einen Transistor. Der Arduino muss nur dessen Basisstrom schalten.


Auch die Freilaufdiode dient der Erhöhung der Zuverlässigkeit. Auch der Transistor könnte durch Überspannung zerstört werden, falls dem Spulenstrom kein Freilaufpfad zur Verfügung stünde. Doch das habe ich bereits letzte Woche erläutert.

Rückmeldung


Pro Weichenantrieb zeigen zwei Leuchtdioden an, wie die Weiche gestellt ist. Wenn die Weiche in die eine Richtung gestellt ist, ist der Endschalter für die andere Richtung geschlossen. Darüber fließt nun ein kleiner Strom, nicht stark genug, um den Anker zu bewegen, aber ausreichend für eine LED. Das Stellpult 72710 funktioniert nach dem gleichen Prinzip.

Mit der LED in Reihe geschaltet ist je ein Optokoppler. Dieser dient als Gegenstück zu den Relais. Er übermittelt die Information über die Endlage an den Arduino. Anders als die Relais nimmt er wenig Strom auf, kann aber auch nur schwache Ströme schalten. Er ist damit der ideale Rückmelder.

Die Optokoppler und LEDs werden nur für 100ms angesteuert, um die Endlage auszulesen. Danach werden sie abgeschaltet, so dass sich die 100nF-Kondensatoren an den Endschaltern entladen können.

Das Programm


In der Endlosschleife werden zeitlich versetzt beide Weichen geschaltet. Danach werden die Endschalter ausgelesen. Dieser Vorgang wiederholt sich für die Gegenrichtung. Am Ende jedes Schleifendurchlaufs erhalte ich eine Meldung über die bisherige Anzahl an Schaltvorgängen. Wenn ich einen größeren Abstand zwischen zwei Meldungen will, muss ich die Konstante IS erhöhen.

Leider funktioniert die Rückmeldung über die serielle Schnittstelle noch nicht zuverlässig. Manchmal bricht sie ab, während der Arduino ungerührt weiterschaltet. Ich suche noch nach der Ursache.

Resultate


Bislang konnte ich das Programm noch nicht oft genug laufen lassen, um ein aussagekräftiges Ergebnis zu erhalten. Die Unzuverlässigkeit der seriellen Verbindung bedeutet, dass ich ständig anwesend sein muss, um aus dem Zeitpunkt des Ausfalls auf die Zahl der Schaltvorgänge schließen zu können.


Es lohnt sich, die Schaltzeiten so einzustellen, dass sich ein 6/8-Takt ergibt. So ist das Geräusch leichter zu ertragen als mit ungeradzahligen Zeitverhältnissen.

Verwandte Artikel


Verbesserter C-Gleis-Weichenantrieb
Unerwartetes Ergebnis des Weichenantriebs-Dauertests

Keine Kommentare:

Kommentar veröffentlichen