Lieber Besucher, herzlich willkommen bei: RCLine Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

1

Freitag, 21. Oktober 2016, 19:56

Bau eines Arduino-Halbwellen-Fahrreglers

Für mein Spur N Diorama werde ich demnächst auch einen Fahrregler für die Lok benötigen. Damit die Fahrt im Diorama die richtige Wirkung hat muss die Lok auch möglichst langsam fahren können.


Vor einiger Zeit habe ich schon Mal einen Versuch unternommen eine Modellbahn mit einem Arduino zu steuern. Dies war nur teilweise erfolgreich, weil sich nicht alle meine Loks damit sauber anfahren ließen. Meine schwarze Dampflok zum Beispiel fuhr erst ab einem bestimmten Schwellenwert an und lief dann auch gleich recht schnell.



Für mein Diorama bin ich mit so einer Lösung nicht zufrieden.


Angeregt durch Thomas Post im Thread Meine Z-Spur-Anlage .. über eine "Halbwellen-Steuerung" habe ich mir mal die Steuerung angesehen.
Der auf der Seite beschriebene Fahrregler lässt sich nur manuell bedienen und benötigt eine 50 Hz Wechselsspannung.

Meine Modellbahn soll später auch mal automatisiert fahren und auch mit einem Akku betrieben werden können. Also habe ich mir die beschriebene Lösung genauer angesehen und versucht den Schaltplan zu verstehen.
Nachdem ich meinte den Schaltplan verstanden zu haben, habe ich ein Konzept erstellt.
In der ursprünglichen Lösung besteht das Steuerungssignal aus einem Gleichstromanteil und einem Halbwellenanteil aus einer Wechselspannung. Den Gleichstromanteil wollte ich ersetzen durch ein geglättetes 1kHz-PWM-Signal, den Halbwellenanteil durch ein 60Hz-PWM-Signal.

Es folgten Diskussionen mit Thomas über meinen eigenen Schaltplanentwurf.
Aus den Diskussionen ergaben sich Änderungen sowie einige Versuche.
- Überprüfung der Arduino PWM 1kHz und 60Hz


- Überprüfung der Signale an verschiedenen Punkten des Schaltplan


Die Signale waren noch nicht 100%ig in Ordnung, weil bei Maximalgeschwindigkeit das Signal flach sein sollte.
-

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Klaus(i)« (21. Oktober 2016, 20:03)


Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

2

Freitag, 21. Oktober 2016, 19:59

Aus den Versuchen ergaben sich einige Maßnahmen zur Korrektur des Schaltplans sowie eine erneute Kontrolle der Signalaufbereitung.
In meinem Entwurf fehlte ein wesentliches Bauteil, das jetzt enthalten ist.

Das Video zeigt das Steuerungssignal von Minimal- bis Maximalgeschwindigkeit.


Das Ergebnis ist ein erster Schaltplan für einen Arduino-Halbwellen-Fahrregler.


Bitte verhaut mich nicht, wenn ich da etwas falsch gemacht habe. Von Elektronik habe ich nicht soviel Ahnung.

Parallel zur Erarbeitung des Schaltplanentwurfs ist auch gleich ein Prototyp entstanden. Für den Prototyp habe ich meine alte Arduino-Steuerung (siehe oben) verwendet. Der Prototyp ist zusammen mit dem Entwurf auch einige Male angepasst worden.
Den überwiegenden Teil des Codes von der vorherigen Steuerung konnte ich übernehmen und musste nur geringe Anpassungen vornehmen.
Für die "Halbwellen" verwende ich zurzeit ein 60Hz PWM-Signal mit maximal 30%iger Pulsweite. Die Pulsweite steigt bei der Beschleunigung von 0 auf maximal 30% bei 30% der maximalen Geschwindigkeit an. Hier ergibt sich noch ein weites Versuchsfeld für die Optimierung durch Anpassung des Codes.

Hier nun ein kleines Video vom Anfahrverhalten der Lok mit dem neuen Regler.


Ich denke das ist schon mal besser als die vorherige Lösung.

Als Nächstes kümmere ich mich um die Fahrtrichtungsumkehr.

Gruß, Klaus
-

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Klaus(i)« (22. Oktober 2016, 12:13)


3

Freitag, 21. Oktober 2016, 21:34

Genau so was such' ich grad' für eine Autorennbahn :)

Kannst du mal den Fahrstrom beim Losfahren messen? Mich würd' interessieren, ob der merklich sinkt wenn sich die Lock in Bewegung setzt.

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

4

Freitag, 21. Oktober 2016, 21:38

Genau so was such' ich grad' für eine Autorennbahn

Da habe ich absolut null (0) Erfahrung.
Reicht da nicht an und aus? :D

Gruß, Klaus
-

5

Freitag, 21. Oktober 2016, 23:14

Niko, was meinst du mit der Autorennbahn? Langsam anfahren?
Das waere ja nicht das Ziel.
Da willste ja eher hart anfahren ohne das die Reifen durchgehen. Oder?
Das ist dann aber ein voellig anderer Ansatz.

Bei Klaus geht es um das langsam anfahren bei niedrigem Strom.
Gruss
Thomas
🖖

Healthy for the mind in spirit. Love it. Lets grill.

6

Freitag, 21. Oktober 2016, 23:54

Ich hab' da einen Tunnelsteuerungssimulator geschenkt bekommen (der war irgend wann mal im letzten Jahrtausend bei einer Ausstellung und dann nur gut eingelagert) mit Carrea Autorennbahn, Fuhrpark ..., der Optik nach Ende 80er. Tunnel und Lichter und sonstige Sachen hat eine Siemens SPS gesteuert, nur leider funktionieren die Fahrtenregler für die Autos nicht mehr. Also muss wieder was her, das die Autos maßstabsgerecht bewegt, also sanft anfahren, Höchstgeschwindigkeit ~ 30cm/s - im Prinzip also genau das selbe Problem, bis auf die Feinheit, dass die Motoren der Autos keine Schwungmasse haben.

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

7

Samstag, 22. Oktober 2016, 09:33

Kannst du mal den Fahrstrom beim Losfahren messen? Mich würd' interessieren, ob der merklich sinkt wenn sich die Lock in Bewegung setzt.

Hallo Niko,

ich habe mal eine Messung vorgenommen.


Für mich persönlich war die Messung auch recht aufschlussreich, weil man deutlich erkennen konnte, dass die Aussetzer Kontaktprobleme (Strom ging auf 0) sind.

Thomas, die 2,5 Volt schalten den TIP120 tatsächlich voll durch :)

Gruß, Klaus
-

haschenk

RCLine User

Beruf: Dipl. Ing.

  • Nachricht senden

8

Samstag, 22. Oktober 2016, 21:47

Hallo Klaus,

die Kontaktprobleme könnte man mit eienem 2. Satz "Strom-Übergangsstellen" vom Gleis zur Lok lösen. Ich weiß jetzt nicht, ob die Strom über die Räder oder über extra Kontakte geführt wird... ein zusätzlicher Satz Kontakte (am besten aus Platin-beschichtetem Ms- oder Bronzeblech) wäre angebracht.

Zum Anlaufproblem:
Ich vermute, daß du ein elektromechanisches Problem mit Motor und Getriebe hast; zuviel Haftreibung, und wenn der Motor dann angelaufen ist, nur noch die erheblich kleinere Gleitreibung.

Du solltest mal den Strom messen (mit Analog-A-Meter, nicht DMM !) mit reiner Gleichspannung (Netzgerät) bei:
a) Langsamer Steigerung des Stroms bis zu dem Punkt, bei dem der Motor anläuft
b) Dann den Leerlaufstrom
c) Zusätzlich die Spannung, die in beiden Fällen am Motor anliegt
Hierzu Lok vom Gleis nehmen und Strom über Litzen zuführen. Nur so hast du vernünftige und reproduzierbare Messbedingungen.

Zum Betrieb könnte man dann einen "Vorstrom" fließen lassen, der etwas kleiner ist als der Leerlaufstrom. Hierzu parallel dann die PWM-Ansteuerung. Vermutlich soll in deiner jetztigen Schaltung die 1kHz-PWM dasselbe machen- aber es ist nicht dasselbe und ist erheblich schlechter zu dimensionieren als ein reiner Gleichstrom.
Den Gleichstrom kannst du am einfachsten erzeugen mit einem Vorwiderstand, der parallel zum PWM-Leistungstransistor liegt. Die "Edellösung" dazu wäre eine Konstantstromquelle (ist nichts Kompliziertes, aber zum Anfangen erst mal nur mit Widerstand).

Warum verwendest du einen Bipolar-Transistor statt eines MOSFETs (z.B. BUZ11) zur PWM-Ansteuerung ? Der MOSFET kostet nur ein paar Cent mehr und ist viel problemloser anzusteuern.

Ich würde an deiner Stelle auch die PWM nicht mit dem Arduino erzeugen (zumindest nicht für den Anfang), sondern mit einem oder zwei "555"-Timern. Da ich vermute, daß du in der Arduino-Programmierung noch nicht so fit bist, wäre das imho einfacher. Die Timer sind recht billig, Schaltungen und Dimensionierungsregeln dazu gibt's im Internet zuhauf. Wenn du insgesamt noch nicht so richtig durchblickst, machst du dir das Leben durch die zusätzliche Arduino-Programmierung nur unnötig schwer. Falls die Geschichte in "diskret" dann läuft, kannst du immer noch auf die Software-Lösung umsteigen.

Gruß,
Helmut

9

Samstag, 22. Oktober 2016, 22:12

Helmut,
Klaus hat mit PWM vom Arduino angefangen. Das war schon sehr gut. Nur das Anlaufverhalten und die Langsamfahrt war Mist.
Das jetzt mit den Halbwellen ist noch nicht optimal. Aber ein riesiger Vortschritt.

;)
Gruss
Thomas
🖖

Healthy for the mind in spirit. Love it. Lets grill.

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

10

Samstag, 22. Oktober 2016, 23:06

Danke Helmut für deine umfangreiche Antwort.

Zitat von »haschenk«

ob die Strom über die Räder oder über extra Kontakte geführt wird... ein zusätzlicher Satz Kontakte (am besten aus Platin-beschichtetem Ms- oder Bronzeblech) wäre angebracht.

Der Strom wird über die Räder beider Achsen geführt. Ich bin mir nicht sicher wann die letzte Reinigung war. Vermutlich könnte da schon eine Reinigung helfen.


Zitat von »haschenk«

Ich vermute, daß du ein elektromechanisches Problem mit Motor und Getriebe hast

Da gehe ich auch von aus. Die Lok ist aus einem Set aus den 80ern. Eventuell könnte auch hier eine Reinigung mit ggf. neuer Schmierung, wo es erlaubt ist, helfen.

Zitat von »haschenk«

mit Analog-A-Meter

Das wird schwierig.

Zitat von »haschenk«

mit reiner Gleichspannung (Netzgerät)

Auch das habe ich leider nicht im erforderlichen Regelbereich zur Verfügung.

Zitat von »haschenk«

Vermutlich soll in deiner jetztigen Schaltung die 1kHz-PWM dasselbe machen

Ja.
Die Pulsweite lässt sich in einer Abstufung von 256 Schritten einstellen. Daraus ergibt sich nach der Glättung durch das R/C-Glied der erforderliche Gleichstrom. Die Glättung lässt sich sicherlich noch optimieren. Auch eine Umstellung der PWM-Frequenz auf 4kHz könnte für eine bessere Glättung sorgen.

Zitat von »haschenk«

Warum verwendest du einen Bipolar-Transistor statt eines MOSFETs (z.B. BUZ11) zur PWM-Ansteuerung ?

Ich habe von Elektronik nicht viel Ahnung und hatte deswegen einen MOSFET nicht als Alternative in Betracht gezogen.

Zitat von »haschenk«

Da ich vermute, daß du in der Arduino-Programmierung noch nicht so fit bist, wäre das imho einfacher.

Mit der Programmierung stehe ich nicht auf dem Kriegsfuß und habe da auch schon etwas Erfahrung. Für mich ist es daher einfacher dies zu programmieren. Eine Änderung der PWM-Frequenz sowie die Änderung der Pulsweite sind je eine Zeile Quellcode. Auch die Änderungen der beiden Parameter über eine Potieinstellung sind kein Hexenwerk. Dies wird ja auch jetzt schon für den Fahrregler gemacht.

Weil ich später auch die Lok automatisiert fahren lassen möchte, müsste ich die Ansteuerung dafür zweimal umsetzen (analog & digital).
Deswegen kommt auch eine analoge Generierung des erforderlichen Gleichstroms (s.o.) für mich nicht in Frage.

Zuerst werde ich mir die Lok nochmal genauer ansehen und sie gegebenenfalls einer Überholung unterziehen.
Erst wenn es keine mechanischen Probleme mehr gibt, werde ich versuchen die Ansteuerung zu optimieren.
Den Gleichstromanteil kann man zusätzlich auch noch mit dem Trimmer P2 verändern.

Helmut, nochmal vielen Dank für deine Anregungen.

Gruß, Klaus
-

haschenk

RCLine User

Beruf: Dipl. Ing.

  • Nachricht senden

11

Samstag, 22. Oktober 2016, 23:07

Hallo Thomas,

ich verstehe im gegebenen Zusammenhang das Wort "Halbwellen" nicht. Üblicherweise versteht man darunter, daß bei einer sinusförmigen Wechselspannung eine Hälfte (auf Null bezogen) "weggeschnitten" wird; z.B. bei einer ganz einfachen Gleichrichterschaltung.

Im Schaltbild sieht es aber so aus, als würde die Endstufe von 2 überlagerten PWMs angesteuert. Wo sind da "Halbwellen" ?
Oder bin ich da ganz auf dem falschen Dampfer ?
Hilfreich wäre, wenn der "Erfinder" erklären würde, wie die Schaltung funktionieren soll, und warum...

Zitat

Nur das Anlaufverhalten und die Langsamfahrt war Mist

Das ist ja gerade der Knackpunkt !

Gruß,
Helmut

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

12

Samstag, 22. Oktober 2016, 23:15

Helmut, wie Du richtig erkannt hast, sind die Halbwellen in meiner Schaltung keine Halbwellen.
Ich habe das Wort aus der ursprünglichen Schaltung übernommen und in der Schaltung die halben 50Hz Sinuswellen durch 60Hz PWM-Signale ersetzt.
Deswegen ist das Wort Halbwellen nicht richtig, aber das Prinzip das Gleiche und vergleichbar.

Gruß, Klaus
-

haschenk

RCLine User

Beruf: Dipl. Ing.

  • Nachricht senden

13

Samstag, 22. Oktober 2016, 23:22

Klaus,

sei mir nicht böse (ist von mir auch nicht böse gemeint)-
aber

Zitat

...aber das Prinzip das Gleiche...

was ist das Prinzip ?

Gruß,
Helmut

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

14

Samstag, 22. Oktober 2016, 23:35

Das Prinzip habe ich aus oben genannten Link übernommen.
http://peter-rachow.lima-city.de/fahrtregler2.htm

Wie Du schon richtig erkannt hast, werden die Gleichspannung und das PWM-Signal (bzw. Halbwelle im Original) überlagert.
Mit zunehmender Geschwindigkeit steigt die Gleichspannung an und das Summensignal aus Gleichspannung und PWM-Signal wird von der Z-Diode gekappt, sodass im Idealfall bei V-max nur noch eine Gleichspannung anliegt.
Siehe "Signal-Video".
Ich hoffe das war verständlich.

Gruß, Klaus
-

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Klaus(i)« (22. Oktober 2016, 23:43)


haschenk

RCLine User

Beruf: Dipl. Ing.

  • Nachricht senden

15

Sonntag, 23. Oktober 2016, 01:26

Hallo,

erstmal danke für das Schaltbild + Funktionsbeschreibung.
Ich muß mich noch etwas hinein denken und melde mich dann wieder.
Immerhin sieht man schon, daß der Fahrtrichtungswechsel mit einem Umpolschalter erfolgt ;-) .

Gruß,
Helmut

16

Sonntag, 23. Oktober 2016, 02:33

Helmut, das ist eine ganz alte Idee. Halbwegs Halbwellenn und Arduino ;)
Die original Schaltung bringt Halbwellen. Und hier nun der Versuch das per SW zu machen. :D
Gruss
Thomas
🖖

Healthy for the mind in spirit. Love it. Lets grill.

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

17

Sonntag, 23. Oktober 2016, 10:42

Immerhin sieht man schon, daß der Fahrtrichtungswechsel mit einem Umpolschalter erfolgt ;-) .

Ich habe da mal was vorbereitet:


Gruß, Klaus
-

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Klaus(i)« (23. Oktober 2016, 16:30)


Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

18

Sonntag, 23. Oktober 2016, 18:15

Unterdessen habe ich weiter gemacht.
Die Set-Lok ließ sich nur teilweise reinigen, weil fast alle Teile verlötet bzw. genietet sind.
So konnte ich nur den Radsatz reinigen.

Weil es so schön ist noch ein Video aus der Nähe.


Die Fahrtrichtungsumkehr habe ich auch eingebaut




und dann auch gleich getestet.




Jetzt bin ich noch am überlegen, wie ich den Fahrregler in das Diorama integriere.
Ursprünglich wollte ich eine drahtlose Lösung, bin mir aber unterdessen unschlüssig.
Ich mache mir da noch ein paar Gedanken.

Gruß, Klaus
-

haschenk

RCLine User

Beruf: Dipl. Ing.

  • Nachricht senden

19

Sonntag, 23. Oktober 2016, 19:12

Hallo Thomas,

ich war gerade am Schreiben und habe einen Tippfehler gemacht....
Jetzt wird mir das gesamte Forum groß und fett angezeigt.
Mit welcher Tastenkombination kriege ich das wieder weg ?

Danke und Gruß,
Helmut

Klaus(i)

RCLine Team

  • »Klaus(i)« ist der Autor dieses Themas

Wohnort: Achim b. Bremen

Beruf: Mensch

  • Nachricht senden

20

Sonntag, 23. Oktober 2016, 19:22

Versuch mal "Strg 0"

Gruß, Klaus
-