So - Urlaub ist vorbei, erster Stress danach beseitigt
Ich habe jetzt mal aus gegebenen Anlass ein Project aus dem Keller geholt, was nun fertig gemacht werden muss.
Ich habe immer Open-Source Lokdekoder benutzt, weil ich da die Software nach meinen Wünschen anpassen konnte.
Leider gefiel/gefällt mir daran einiges nicht.
1. zu groß.
2. keine gescheite Motorregelung
3. keine Temperaturüberwachung
4. keine Kurzschlusssicherung
Gerade in die kleinen Dampfloks (81 100) passen kaum Decoder rein, außer man nimmt einen anderen Motor.
Ich hatte vor einer Weile schon mal Decoder gemacht, als Prototypen, um zu testen, ob alles geht.
Anbei mal ein Bild von so einem Prototypen:
Die Größe war noch inakzeptable: 14x6,5x3,3mm, besonders die Dicke. Aber das war dem Prototyp mit 1,55 FR4 Platine geschuldet. Und der 2-seitigen Bestückung.
Aber die technischen Daten sind schon nicht schlecht.
-2A Dauerstrom am Motor. 2,8A Peak. Kurzschlussfest.
-4 Aux, mit je 240mA
-4 Digitale Ein/Ausgänge
-SUSI-Schnittstelle
-Temperaturüberwachung
-Perfekte Motorregelung ohne BEMF und ohne Konfiguration. (Mehr dazu weiter unten)
-alternativer Anschluss eines Drehzahlsensors
-Software weiterhin Open-Source.
Gut. jetzt läuft alles, getestet. Nun habe ich mal das Design angepasst.
Neue Maße: 13,8x6,5x0,9mm
Die Dicke kommt durch eine 4-lagen 0,4mm FR4 Leiterplatte und einseitiger Bestückung.
Dadurch hat man auf der Rückseite Platz für die Lötflächen.
Bin mal gespannt, nächste Woche kommen die Leiterplatten mit dem Stencil, dann kann ich mal bestücken
Das Beste daran ist die Motorregelung.
Die habe ich mehr oder weniger aus unserer Industrieelektronik "kopiert", also industriellen Servo-Lagereglern.
Wie funktioniert sowas?
Bei anlegen des DCC Signals (Power On) bestromt die Elektronik den Motor solange, bis der Strom einen konstanten Wert erreicht hat.
Aus diesem Wert kann ich nun den Wicklungswiderstand berechnen und die Induktivität des Motor.
Mithilfe dieser beiden Werte wird die Drehzahl nun konstant gehalten.
Aber wie?
Mal kurz und einfach erklärt:
Jeder Motor hat eine Angabe einer Drehzahlkonstate. z.B. 650rpm/V. Das heißt, bei 12V dreht er ca. 8000 rpm. Legt man 6V an, dann halt nur 4000rpm.
Aber das gilt nur im Leerlauf und auch da nur bedingt.
Warum?
Am Innenwiderstand der Motorwicklung fällt eine Spannung ab, die nicht für das Drehfeld genutzt werden kann. Im leerlauf ist dieser Abfall sehr gering, deswegen merkt man es kaum.
Aber unter Last sieht das schon anders aus.
Nun misst man den Strom des Motors. Das kann man kontinuierlich machen und benötigt keine Austastlücke. Mit dem Strom und dem bekannten Innenwiderstand des Motors (der auch die Anschlusskabel etc. berücksichtigt) wissen wir, wie viel Spannung "verloren" geht. Und genau diesen Wert addieren wir zur gewünschten Spannung. Damit dreht der Motor egal, welche Last angelegt wird, imer gleich schnell.
Und wir wissen exact, mit welcher Last der Motor belastet wird. (SUSI!)
Bei dieser Art der Regelung braucht man keinen PID Regler, keine Nachführung etc. Das System ist selbstkalibrierend, passt auf alle Motorarten.
Sogar Rokal-Einheitsmotoren laufen sauber, auch dei BTTB-Motoren gehen super.
Klar - wo es geht, versuche ich natürlich moderne coreless-Motoren einzusetzen. Aber das will ich nicht überall nd kann es nicht (Rokal).
Hoffe ich langweile euch nicht zu sehr...
Aber war gerade recht erfreut, wie super gut und linear die Regelung läuft...
LG aus Süd-Spanien...