Forum: Analoge Elektronik und Schaltungstechnik Wie am besten DC Motor regeln?


von David P. (david_p12)


Lesenswert?

Hallo,
wie regelt man am besten einen DC Motor mittels eines PWM Signals?
Ich meine - man kann ihn ja einerseits mit einer variablen frequenz 
einstellen wo das PWM Signal ein 50/50 verhältniss von On/Off hat (also 
50% Duty cycle)

oder sollte man eine feste frequenz nehmen aber die DutyCyle variieren?


Motor ist ein 12V DC Motor, 200W, klassischer schleifring-motor

Geht halt darum, ihn von niedriger Drehzahl bis maximal Drehzahl zu 
regeln, aber sodass er auch bei niedriger Drehzahl noch kräftig ist.

bei welcher frequenz macht man dass dann am besten?

: Bearbeitet durch User
von Bondu (Gast)


Lesenswert?

Bei 50/50 bekommt der Motor IMMER 50% Leistung und wird NICHT 
veränderlich angesteuert. Egal bei welcher Frequenz.

von Harald W. (wilhelms)


Lesenswert?

David P. schrieb:

> oder sollte man eine feste frequenz nehmen aber die DutyCyle variieren?

So isses. Aber wenn Du regeln willst, musst Du irgendwie
noch die Drehzahl erfassen, z.B. mit Schlitzscheibe und
Lichtschranke.

von David P. (david_p12)


Lesenswert?

echt? bei 50/50 dreht er immer gleich schnell? egal ob 1Hz oder 1Khz?
hmm ok, wusste ich noch nicht...dachte dass da vieleicht die Trägheit 
des Motors auch eine rolle spielt?

gut, also Duty Cycle :)

wegen der regelung...das ist ein Scheibenwischermotor..ein etwas 
größerer halt :) Der hat ein Schneckengetriebe drin. Der Motor hat eine 
sich nicht verändernde Last...er muss nur was schweres Drehen können, 
gleichbleibend Schnell. Das macht er ja auch schon wenn ich ihn über die 
Spannung regle.
also auf 1-2U/min schwankung kommt es mir da nicht an

von Harald W. (wilhelms)


Lesenswert?

David P. schrieb:

> Das macht er ja auch schon wenn ich ihn über die Spannung regle.

Du meinst, Du willst die Drehzahl einstellen .
Das ist etwas anderes wie eine Regelung.

von David P. (david_p12)


Lesenswert?

ohha, stimmt ja, sorry :(

ja - meine natürlich - Drehzahl einstellen :)


Aber wenn es über die DutyCycle gesteuert wird, und jetzt z.B. 10% an, 
und 90% aus ist - da wirkt der Motor doch wie eine Generator...reicht da 
eine dicke diode in reihe zum Motor? also zw. Motor und Mosfet?
eine Freilaufdiode wollte ich eigentlich nicht, weil da würde der Motor 
sich doch selbst abbremsen glaube ich wenn der in der Off-Time ist?

der soll aber geschmeidig laufen...

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

David P. schrieb:
> also auf 1-2U/min schwankung kommt es mir da nicht an

Bei 5000 Upm vielleicht, aber bei 5 Upm wohl nicht mehr. Wenn der Motor 
bei niedriger Drehzahl auch noch kräftig sein soll, muß geregelt werden.

Hier ein Beispiel mit Einstellen und Regelung: 
Beitrag "Drehzahlregler für DC-Motor, ATmega48-328"
FET und Freilaufdiode sollten entsprechend angepaßt werden.

David P. schrieb:
> eine Freilaufdiode wollte ich eigentlich nicht,

Die willst Du unbedingt, Du weißt es nur noch nicht ;-)

von Sven S. (schrecklicher_sven)


Lesenswert?

David P. schrieb:
> eine Freilaufdiode wollte ich eigentlich nicht, weil da würde der Motor
> sich doch selbst abbremsen glaube ich wenn der in der Off-Time ist?

Zum Bremsen müsste der Motor Leistung abgeben.
Im Frei(!)lauf kann der Strom aber fast ungehindert fließen. Es fällt 
nur wenig Spannung an Motor- und Leitungswiderständen und an der Diode 
ab. Dem Motor wird nur wenig Leistung entnommen, und damit wird er auch 
kaum gebremst.

von Wÿscher (Gast)


Lesenswert?

>> eine Freilaufdiode wollte ich eigentlich nicht,

>Die willst Du unbedingt, Du weißt es nur noch nicht ;-)
Wenn Du einen DC Motor gescheit regeln willst, brauchst Du eine 
H-Brücke.
Mit Mosfet + Freilaufdiode verändert sich die Schleifenverstärkung 
abhängig vom Laststrom und ob er gerade lückenden Strom hat oder nicht. 
Das wird nichts. Oder halt nur arg langsam.

Die Schweibenwischermotoren von PKWs der Oberklasse haben im Motor eine 
H-Brücke integriert. Einen Sensor und den digitale Lageregler.
Ein Mega-Servo im Prinzip.
Wär also alles drin, man kommt nur nicht so leicht an die Software ran.

Müsste nur den Rechner durch einen eigenen Rechner ersetzten.

von David P. (david_p12)


Lesenswert?

ist ein alter Scheibenwischermotor...der hat keine lagesensoren 
drin...der kann einfach nur - Drehen oder nicht Drehen :D

von m.n. (Gast)


Lesenswert?

Wÿscher schrieb:
> Wenn Du einen DC Motor gescheit regeln willst, brauchst Du eine
> H-Brücke.

Die braucht man nicht, wenn der Motor stets durch die Last abgebremst 
wird. Beispiel: Scheibenwischer.
Anders wäre es, wenn z.B. ein Fahrzeug bergauf und bergab die gleiche 
Geschwindigkeit fahren soll. Da muß dann auch aktiv gebremst werden.

Wÿscher schrieb:
> Die Schweibenwischermotoren von PKWs der Oberklasse haben im Motor eine
> H-Brücke integriert. Einen Sensor und den digitale Lageregler.

... und die Drehzahl wird online vom Server des Herstellers geregelt. So 
ein Auto kommt mir nicht ins Haus ;-)
Vermutlich existiert die H-Brücke deshalb, weil diese Motore auch für's 
Schiebedach und die Fensterheber eingesetzt werden.

von Sven S. (schrecklicher_sven)


Lesenswert?

Mit einer H-Brücke kann der Motor die Drehrichtung wechseln.

von Bondu (Gast)


Lesenswert?

Sven S. schrieb:
> Mit einer H-Brücke kann der Motor die Drehrichtung wechseln.

Ach!

von Sven S. (schrecklicher_sven)


Lesenswert?

Bondu schrieb:
> Ach!

Dieser doofe Kommentar ist fehl am Platz.
Wer keinen Richtungswechsel braucht, braucht auch keine H-Brücke.

Wÿscher schrieb:
> Wenn Du einen DC Motor gescheit regeln willst, brauchst Du eine
> H-Brücke.

Hier wäre ein doofer Kommentar besser angebracht.

von David P. (david_p12)


Lesenswert?

Drehrichtung muss nicht geändert werden...

Wir sind gerade dabei, ein Programm zu schreiben für ein Raspberry, der 
dann halt entsprechend ein Mosfet ansteuern soll.

Damit soll der Motor einen Sanftanlauf bekommen bis er seine 
eingestellte Drehzahl erreicht hat und anschließend mit einem 
Sanft-Auslauf (weil der ja sonst wegen dem Schneckengetriebe schlagartig 
stehen bleiben würde, bei einer last von 50Kg die er drehen soll 
bestimmt nicht gut :D )

von m.n. (Gast)


Lesenswert?

David P. schrieb:
> Damit soll der Motor einen Sanftanlauf bekommen bis er seine
> eingestellte Drehzahl erreicht hat und anschließend mit einem
> Sanft-Auslauf (weil der ja sonst wegen dem Schneckengetriebe schlagartig
> stehen bleiben würde, bei einer last von 50Kg die er drehen soll
> bestimmt nicht gut :D )

Da würde ich entweder das Schneckengetriebe durch ein anderes Getriebe 
ersetzen (Zahnriemen, Keilriemen) oder eine Rutschkupplung vorsehen. 
Aber ich weiß ja nicht, was es werden soll.

Was ich aber weiß, daß es ein Problem geben wird, wenn einmal die 
Stromversorgung ausfällt. Dann wirst Du zur Schnecke gemacht ;-)

von David P. (david_p12)


Lesenswert?

Stromausfall? hehe das ist egal ;)
das muss nicht manuell angetrieben werden, wenn strom weg, dann geht eh 
nix :)
Das soll ein Werkzeug werden, ein Bauteil-Dreh Apparat sozusagen.
läuft auch nicht dauerhaft, sondern nur ein paar wenige MMinuten

von c r (Gast)


Lesenswert?

David P. schrieb:
> Stromausfall? hehe das ist egal ;)

Bezog sich wohl auf den Sanft-Auslauf. Wenn der notwendig ist, weil 
sonst mechanische Schäden, hast du bei Stromausfall während des Betriebs 
ein Problem

von Günter Lenz (Gast)


Lesenswert?

David P. schrieb:
>Motor ist ein 12V DC Motor, 200W, klassischer schleifring-motor

Ich vermute mal du meinst ein Kommutatormotor, Schleifring ist
was anderes. Ist das ein Motor mit Dauermagnet, oder hat er
eine Erregerwicklung?

>eine Freilaufdiode wollte ich eigentlich nicht, weil da würde der
>Motor sich doch selbst abbremsen glaube ich wenn der in der
>Off-Time ist?

Der Motor wird durch eine Freilaufdiode nicht gebremst, zum
bremsen müste der Motor kurzgeschlossen werden.
Wenn der Motor eine Erregerwicklung in Reihe mit dem
Läufer hat, wirkt sie wie eine Drossel. Eine Freilaufdiode
läst dann den Strom, bei abschalten des Transistors in der
gleichen Richtung durch den Motor weiter fließen.

>reicht da
>eine dicke diode in reihe zum Motor?

Wozu soll das gut sein? Es braucht keine Diode in
Reihe zum Motor.

Wenn das ein Motor mit Dauermagnet ist, würde ich eine
Speicherdrossel vorschalten und parallel zum Motor
ein Elko.

von Elektrofan (Gast)


Lesenswert?

> Wie am besten DC Motor regeln?

Das hängt u.a. auch davon ab, um welche Sorte "DC-Motor" es sich 
handelt.
Reihenschluss, fremderregt, ...

von David P. (david_p12)


Lesenswert?

Habe den Motor mal aufgemacht, er hat ganz normale Magneten außen im 
Stator.
Er hatte auch 3 Schleifkontakte die an den Kommutator drückten - habe 
den 3. entfernt, sodass nur noch die außen liegenden, also die im 180° 
winkel da anliegen. der Motor dreht sehr Kräftig, bei 12V viel zu 
schnell, obwohl der Motor da noch schneller drehen könnte mit mehr 
Spannung.

Das krasse ist aber: der dreht sogar mit 0.8V noch und nimmt da um die 
480mA O_O und selbst da ist er noch so stark, dass man den nicht mit den 
Fingern anhalten kann...gut klar, hat ja auch ne hohe übersetzung dieses 
Schneckengetriebe...

selbst bei 5V dreht er eigentlich noch zu schnell...

Da frage ich mich aber, ob man den soweit überhaupt runter gedrosselt 
bekommt mit einer PWM ansteuerung?

ich würde versuchsweise mal das hier nachbauen: 
http://www.led-treiber.de/html/pwm-dimmen.html#PWM-Dimmer
nur dass ich da eben noch einen Mosfet-Treiber und einen Mosfet 
anschließen würde um die hohen ströme (unter last) zu schalten.


Da müsste ich doch sicherlich einen recht großen Kondensator mit paralel 
zum Motor schalten, oder? ich meine bei einer DutyCycle von vieleicht 2% 
An-Anteil würde der motor doch sicherlich ganz schön ins stocken 
geraten, oder? Ich würde da mal als Schwingfrequenz 1Khz nehmen

von Route_66 H. (route_66)


Lesenswert?

David P. schrieb:
> Ich würde da mal als Schwingfrequenz 1Khz nehmen

Motoren sind gut höhrbar. 1kHz kann sehr unangenehm sein - je nachdem wo 
der Motor seinen Lärm abgibt!

von Sven S. (schrecklicher_sven)


Lesenswert?

David P. schrieb:
> Da müsste ich doch sicherlich einen recht großen Kondensator mit paralel
> zum Motor schalten, oder?

Nein.

David P. schrieb:
> bei einer DutyCycle von vieleicht 2%
> An-Anteil würde der motor doch sicherlich ganz schön ins stocken
> geraten, oder? Ich würde da mal als Schwingfrequenz 1Khz nehmen

Wer soll da was bemerken, wenn der Motor 1000 mal in der Sekunde "ins 
Stocken" gerät?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Wenn du parallel zum Motor einen dicken Kondensator anschliessen 
würdest, dann wird der nur mit PWM gequält, trägt nichts zur Laufruhe 
bei und muss vom MOSFet auch noch geladen und entladen werden. Lass es 
sein, das bringt nichts ausser defekte Elkos.

Viel wichtiger ist eine kräftige Freilaufdiode, die mindestens den 
gleichen Strom wie der Motor verträgt. Und du musst bitte zusehen, das 
der RPi nicht von irgendwelchen Spitzen aus der Motorsteuerung 
beschädigt wird, denn die GPIOs des RPi sind weder kräftig, noch 
irgendwie gegen Spannungsspitzen ausreichend geschützt.
Viele Leute benutzen deswegen Optokoppler, um Last- und RPi-Versorgung 
so gut wie möglich zu trennen.

von Harald W. (wilhelms)


Lesenswert?

David P. schrieb:

> Da frage ich mich aber, ob man den soweit überhaupt runter gedrosselt
> bekommt mit einer PWM ansteuerung?

Besser wäre da wohl eine zusätzliche Getriebestufe.

von m.n. (Gast)


Lesenswert?

David P. schrieb:
> Das krasse ist aber: der dreht sogar mit 0.8V noch und nimmt da um die
> 480mA O_O und selbst da ist er noch so stark, dass man den nicht mit den
> Fingern anhalten kann...

Das ist auch der falsche Test. Baue einen Arm (0,2 - 0,5 m) an die Achse 
und dann teste noch einmal.
Mir ist nicht klar, wie schnell sich der Motor dreht und wie schnell 
sich die Mechanik drehen soll. Da müßtest Du mal verwertbare Zahlen 
nennen.
Um dann abschließend zu entscheiden, wie und was gemacht werden kann, 
müßtest Du auch mal Dein Drehteil montieren. Dann kannst Du sehen, wie 
"kräftig" Dein Motor tatsächlich ist. Für den Test wäre ein 
strombegrenztes Netzteil 12 V / 20 A sinnvoll.

Unabhängig davon: einen Sanftanlauf erreicht man auch durch eine analoge 
Strombegrenzung (Shunt-Widerstand, Komparator, Monoflop für die 
Totzeit). Wenn der Motor mit < 1 V noch dreht, läßt er sich gut regeln. 
Wenn er immer noch zu schnell ist, dann reduziere die Drehzahl über 
einen Keilriemenantrieb, da damit auch das Drehmoment auf das 
Motorgetriebe begrenzt wird, wenn bei voller Drehzahl die 
Stromversorgung ausfällt. (Ein Not-Ausschalter wird sehr wahrscheinlich 
notwendig sein.)

von W.S. (Gast)


Lesenswert?

David P. schrieb:
> Habe den Motor mal aufgemacht, er hat ganz normale Magneten außen im
> Stator.

Also richtige MAGNETE und keine Stator-Spule - ja?

In diesem Falle ist das elektrisch gesehen ein Parallelschlußmotor und 
dessen Drehzahl ist (von Reibung mal abgesehen) streng proportional zur 
angelegten Spannung.

Grund: die induzierte Gegen-EMK des Rotors ist proportional zur 1. 
Ableitung der Stärke des Magnetfeldes im Schlitz zwischen Rotor und 
Stator.

Daraus kannst du lernen, daß du so einen Motor nur dann stellen und 
drehzahlregeln kannst, wenn du ihm eine variable Gleichspannung 
verpaßt.

Jeglicher Versuch, sowas mit irgend einer PWM zu tun scheitert kläglich, 
denn da kriegt der Motor ja immer die allerhöchste Spannung ab (aber 
eben mit Lücken) und dreht ohne Belastung immer ganz hoch, aber eben mit 
reduziertem Drehmoment.

Also: Wenn aus deinem µC nur ein PWM herauszuholen ist, dann schließe 
daran einen Tiefpaß an, der daraus eine Gleichspannung macht und benutze 
diese, um damit die Ausgangsspannung eines Schaltreglers zu steuern. Und 
mit der hoffentlich kräftigen Ausgangs-Gleichspannung dieses 
Schaltreglers beglückst du deinen Motor.

Leute, was diskutiert ihr hier bloß herum! Die Charakteristika von 
Parallelschlußmotor versus Reihenschlußmotor sind Schul-Lehrstoff, sowas 
sollte man ganz einfach wissen.

W.S.

von m.n. (Gast)


Lesenswert?

W.S. schrieb:
> Daraus kannst du lernen, daß du so einen Motor nur dann stellen und
> drehzahlregeln kannst, wenn du ihm eine variable Gleichspannung
> verpaßt.
>
> Jeglicher Versuch, sowas mit irgend einer PWM zu tun scheitert kläglich,

Nein.
Jeder Motor (+ Mechanik) hat Reibungsverluste, die ihn abbremsen. *Bei 
Regelung* wird die PWM so eingestellt, daß Last und Verluste zu der 
gewünschten Drehzahl führen. Es wird allerdings nicht aktiv gebremst.
Läßt man die EMK des Motors ausser Acht, verhält sich diese Regelung 
wie ein DC-Abwärtswandler.

Soll nicht geregelt, sondern nur gestellt werden, geht auch dies mit 
PWM, sofern man als Treiber 1/2 H-Brücke verwendet. Die Drehzahl des 
Motors stellt sich passend zum Tastverhältnis der PWM ein. Durch die 
Induktivität des Motors wird der Motor in der Abschaltphase auch nicht 
kurzgeschlossen, wie es dummerweise immer wieder behauptet wird.

Ein einzelner Schalter (bipolar, FET, Relais) ist jedoch nicht in der 
Lage, die Drehzahl per PWM ganz ohne oder mit nur geringer Last 
einzustellen. Ein guter Motor läuft dann ziemlich schnell und bricht 
unter Last ein.
Das wäre eine schlechte Lösung, die Du bei Deiner Aussage wohl im Kopf 
hattest.

von Elektrofan (Gast)


Lesenswert?

> Soll nicht geregelt, sondern nur gestellt werden, geht auch dies mit
> PWM, sofern man als Treiber 1/2 H-Brücke verwendet.

Wenn der 2. Quadrant nicht gefordert ist (aktives Bremsen, beim
Reihenschlussmotor geht das so ohnehin nicht), genügt
ein schaltendes Element und eine Freilaufdiode.

> Durch die Induktivität des Motors wird der Motor in der Abschaltphase
> auch nicht kurzgeschlossen, wie es dummerweise immer wieder behauptet
> wird.

Der untere Zweig der 1/2 H-Brücke bzw. die Freilaufdiode schliesst
während der Freilaufphase den Motor (praktisch) kurz.

von Günter Lenz (Gast)


Lesenswert?

Elektrofan schrieb:
>Der untere Zweig der 1/2 H-Brücke bzw. die Freilaufdiode schliesst
>während der Freilaufphase den Motor (praktisch) kurz.

Der untere Zweig der 1/2 H-Brücke Ja, aber nur wenn der Motor
direkt ohne Speicherdrossel an die 1/2 H-Brücke angeschlossen
ist, der Motor wird dann aktiv gebremst, die Freilaufdiode  nicht.
Aber diesen Motor direkt an die H-Brücke anzuschließen ist
sowieso Unsinn, weil daß würde ja bedeuten, 1/2 Periode der PWM
Vollgas und 1/2 Periode der PWM Vollbremsung.

Wie W.S. schon schrieb:

>Daraus kannst du lernen, daß du so einen Motor nur dann stellen und
>drehzahlregeln kannst, wenn du ihm eine variable Gleichspannung
>verpaßt.
>
>Jeglicher Versuch, sowas mit irgend einer PWM zu tun scheitert
>kläglich,

Wenn man das aber über eine Speicherdrossel macht, geht daẞ.
Durch den unteren Zweig der 1/2 H-Brücke wird dann aber nie
ein Strom fließen, es fließt dann Strom durch die Freilaufdiode
Dieser Strom bremst aber den Motor nicht, er treibt den Motor
weiter an. Also Speicherdrossel und parallel zum Motor
ein Elko, vielleicht so 1000µF.

Bei einem Reihenschlußmotor wo die Erregerwicklung in Reihe
mit dem Läufer geschaltet, ist übernimmt pracktisch die
Erregerwicklung die Funktion der Speicherdrossel.

von Wÿscher (Gast)


Lesenswert?

Speicherdrossel und Elko?
Das ist ja kriminell, was hier für Halbwissen verbreitet wird!

von m.n. (Gast)


Lesenswert?

Wÿscher schrieb:
> Speicherdrossel und Elko?
> Das ist ja kriminell, was hier für Halbwissen verbreitet wird!

Ja, mit meinem "dummerweise" ist das wohl nicht mehr abgedeckt :-(
Aber egal, damit muß man hier leben.

von Klaus (Gast)


Lesenswert?

Günter Lenz schrieb:
> Der untere Zweig der 1/2 H-Brücke Ja, aber nur wenn der Motor
> direkt ohne Speicherdrossel an die 1/2 H-Brücke angeschlossen
> ist, der Motor wird dann aktiv gebremst, die Freilaufdiode  nicht.
> Aber diesen Motor direkt an die H-Brücke anzuschließen ist
> sowieso Unsinn, weil daß würde ja bedeuten, 1/2 Periode der PWM
> Vollgas und 1/2 Periode der PWM Vollbremsung.

Dies ist ziemlicher Unsinn. Ich beschreibe mal, was passiert.

Wenn der Motor eingeschaltet wird steigt der Strom langsam an. Der Motor 
ist ja eine Induktivität. Wenn die PWM umschaltet, wird der Motor 
kurzgeschlossen (entweder über die Freilaufdiode oder den anderen Teil 
der Halbbrücke) und der Strom fließt weiter, eine Induktivität eben. Da 
der Strom in der gleichen Richtung weiterfließt, wird da nichts 
gebremst. Er wirkt weiter als Antrieb.

Erst wenn die Energie aus der Induktivität am Widerstand der Wicklung 
und im Drehmoment an der Last aufgebraucht ist, wirkt der Motor als 
Generator und bremst. Dabei kehrt sich die Stromrichtung um. Kann man 
alles ganz leicht nachmessen, kleiner Widerstand als Shunt und Scope. 
Mit einer Halbbrücke, könnte man auch aktive Freilaufdiode oder 
Synchrongleichrichter nennen, spart man die Verluste in der Diode.

Aus dieser Beschreibung kann man sehen, daß die PWM Frequenz nicht egal 
ist. Ist sie zu klein, kehrt der Strom in der Aus-Phase seine Richtung 
um und bremst. Ist sie zu hoch, erreicht der Strom in der Ein-Phase 
keinen vernünftigen Wert. Dies kann man mein leicht erkennen, wenn die 
Drehzahl nicht vernünftig mit dem Duty-Cycle läuft sondern sich alles 
bei hohen Duty-Cycle Werten zusammendrängt.

So funktionieren tausende von Motorsteuerungen, vom Spielzeug bis zum 
Akkubohrer. Eine Extradrossel oder ein Kondensator kommt da nicht vor, 
es sei denn zur Funkentstörung. Funktionieren tun sie auch ohne.

MfG Klaus

von Elektrofan (Gast)


Lesenswert?

Als der liebe Gott das teilweise unterirdische Niveau auf der Welt
sah, drehte er sich um und weinte bitterlich ...

Übrigens:
Auch die Ankerwicklung eines DC-Motors alleine hat auch schon
eine gewisse Induktivität.

von äxl (Gast)


Lesenswert?

wegen der fehlenden Gegen-EMK steigt der Strom im Motor um ein 
beträchtliches an, wenn er mit "12V-Happen" gefüttert wird, aber nur so 
schnell dreht, als wenn man ihm 3V "anbieten" würde. Das ist zu 
beachten. Nicht alle Motore können das...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.