Hallo zusammen,
ich will einen kleinen Motor linear steuern. Die Spannung für den Motor
reicht von ~4 bis 12V. Versorgungsspannung sind 12V.
Bisher war der Ansatz, mit einem LM358 aus der Steuerspannung von 0-3.3V
direkt den Motor anzusteuern. Der zieht aber leider 300mA und der LM358
schafft nur 40, was zu periodischen Spannungseinbrüchen und einem stark
surrenden Motor geführt hat :).
Ein stärkerer Opamp mit bis zu 700mA hat dann das Problem gelöst. Der
ist aber teuer und ich dachte mir, das geht doch bestimmt auch
einfacher, wenn man hinter den LM358 einen Mosfet schaltet. Also habe
ich hier im Wiki nach einem Mosfet gesucht, der Linearbetrieb kann und
bin beim IRFD024 gelandet.
So leicht ist es (für mich) aber doch nicht. Wie kriege ich denn die
richtige Spannung für den (-) am Opamp her, hinter Drain liegen ja nicht
0-12V....?
Muss ich einen Shunt zwischen GND und Source setzen, um die Spannung da
abzugreifen?
Vermutlich für einen alten Hasen kein Problem, aber ich komme hier nicht
mehr weiter.
Na ja, ohne zusätzliche Kompensation wird die Schaltung eher schwingen
als regeln.
Mit etwas negativen Feedback, also einem zusätzlichen Widerstand,
bekommt man noch eine bessere Drehzahlstabilisierung.
Siehe z.B. Datenblatt vom LA5527
Hm.
Ich habe jetzt noch mal die Schaltung auf dem Steckbrett aufgebaut, die
Eingangsspannung nehme ich der Einfachheit aus einem Poti 0-12V.
Der eingezeichnete Poti war 5k also spare ich mir mal zusätzliche
Widerstände.
Ich war eigentlich der Meinung, die Schaltung ist fehlerhaft, denn die
Spannung zwischen Motor und FET ist doch reziprok 12V bis bestenfalls
0.07V wenn der FET voll durchschaltet. Die Regelung dürfte doch so gar
nicht funktionieren. Tut sie natürlich auf dem Steckbrett auch nicht.
Erst bei mehr als 9V Eingangsspannung läuft der Motor an, dann aber auch
voll, und aus geht er irgendwann, manchmal bei 0V Eingangsspannung,
manchmal wenn ich nur mit dem Schraubendreher die Stellschraube berühre.
Was ist da los?
Meiermann schrieb:> Muss ich einen Shunt zwischen GND und Source setzen, um die Spannung da> abzugreifen?
Dann steuerst du den Motorstrom (Moment), nicht die Spannung (Drehzahl).
Meiermann schrieb:> So leicht ist es (für mich) aber doch nicht. Wie kriege ich denn die> richtige Spannung für den (-) am Opamp her, hinter Drain liegen ja nicht> 0-12V....?
Genau. Du musst die Spannung über dem Motor messen und die zum OPV
runterbringen (auf Masse beziehen). Das kannst du z.B. mit einem
PNP-Transistor machen. So wie du das da oben gezeichnet hast geht es
nicht.
Meiermann schrieb:> Was ist da los?
Hast du doch selbst schon beschrieben:
Meiermann schrieb:> Die Regelung dürfte doch so gar> nicht funktionieren.
Durch den Abgriff der Rückkoppelspannung oberhalb des FETs invertierst
du in der Rückkoppelschleife per FET einmal zusätzlich. Du hast also
keine Gegenkopplung, sondern eine Mittkopplung. Für die gibt es zwei
stabile Zustände:
a) der OPV gibt die kleinste Spannung aus, die er kann
b) der OPV gibt die größe Spannung aus, die er kann
Beide Zustände beobachtest du.
Meiermann schrieb:> Muss ich einen Shunt zwischen GND und Source setzen, um die Spannung da> abzugreifen?
Das wäre ein kluger Ansatz.
Achim S. schrieb:> Meiermann schrieb:>> Muss ich einen Shunt zwischen GND und Source setzen, um die Spannung da>> abzugreifen?>> Das wäre ein kluger Ansatz.
Das wage ich mal zu bezweifeln. Ein DC Motor hat bei konstanter Spannung
einen halbwegs steifen Drehzahl Drehmoment Verlauf. Nimmt die Belastung
zu steigt der Strom, die Drehzahl geht nicht allzustark runter.
Wenn du den Motor jetzt auf den Strom regelst, dann wird bei kleinster
Belastungsvergrößerung die Drehzahl stark einbrechen und der Motor wird
ganz schnell abwürgen, weil das Drehmoment in erster Näherung linear zum
Strom ist.
So, ich habe hier noch zufällig einen 1Ohm widerstand gefunden und mal
alles auf dem Steckbrett aufgebaut.
Das mit dem Strom statt der Spannung stimmt zwar, aber der Motor wird
kaum belastet, vorläufig stimmt das Ergebnis.
Die Schaltung entwickelt leider eine enorme Schwingung, die man gut
hören kann. Deswegen habe ich erst mal einen RC-Filter vor den MOSFET
gesetzt.
Gibt es die Schwingungbekämpfung das auch in richtig statt in geht-so?
Und nächste Frage: Die Lösung von ArnoR mit dem PNP, ist die denn
annähernd linear? Aus Mangel an Bauteilen habe ich das noch nicht prüfen
können.
ArnoR schrieb:> DCMotor.png
Das sieht richtig gut aus. Ich habe hier gerade einen schönen DC Motor
aus einem Drucker, die Schaltung probier ich mal :-P
Hier mal der etwas komplexere Ansatz. Hab ich vor ein paar Jahren mal
aufgebaut weil mich das Prinzip interessiert hat. Ausserdem versteht man
so ganz gut warum man das heute gerne in Software macht. :)
An R25 sollte man eine Spannung fuer die gewuenschte Drehzahl einspeisen
koennen.
Olaf
Meiermann schrieb:> Und nächste Frage: Die Lösung von ArnoR mit dem PNP, ist die denn> annähernd linear?
Wozu ist wohl das Diagramm rechts daneben? Das zeigt die Motorspannung
(~Drehzahl) in Abhängigkeit von der Steuerspannung (0...1V).
Matthias S. schrieb:> ArnoR schrieb:>> DCMotor.png>> Das sieht richtig gut aus. Ich habe hier gerade einen schönen DC Motor> aus einem Drucker, die Schaltung probier ich mal :-P
Schön, aber die zeigt nur das Prinzip und schwingt so wohl auch. Die
Verstärkung des Mosfet ist größer als die Dämpfung der Messung (10:1).
Man muss die Verstärkung des Mosfet reduzieren (Sourcewiderstand oder
Spannungsgegenkopplung am Mosfet mit 1k OPV->Gate/3,3k->Gate-Drain) und
einen mit möglichst kleiner Steilheit nehmen (IRF510).
ArnoR schrieb:> Man muss die Verstärkung des Mosfet reduzieren (Sourcewiderstand oder> Spannungsgegenkopplung am Mosfet mit 1k OPV->Gate/3,3k->Gate-Drain) und> einen mit möglichst kleiner Steilheit nehmen (IRF510).
Ja, so scheint es zu funktionieren. Für größere Mosfets kann man die
Verstärkung weiter reduzieren 3k3->2k2.
ArnoR schrieb:> und schwingt so wohl auch
Tut sie, und zwar munter - allerdings habe ich hier gerade nur einen
ICL7621 und einen IRLD44, der viel zu steil ist. Ich wollte als nächstes
mal einen BD139 mit Basiswiderstand probieren. Aber IRF520 müssten noch
irgendwo sein.
Matthias S. schrieb:> Tut sie, und zwar munter...
Ja, wie zu erwarten war. Du kannst neben den oben genannten Maßnahmen
auch die Messdämpfung weiter erhöhen (den 1k und gleichlaufend die
Steuerspannung verringern).
Matthias S. schrieb:> Aber IRF520 müssten noch irgendwo sein.
Mit IRF520 ist die Simu ohne nennenswertes Überschwingen stabil.
Matthias S. schrieb:> und einen IRLD44
Ist Blödsinn, ich weiss nicht mal, obs sowas gibt. Ich verwand einen
viel zu steilen IRFZ44.
ArnoR schrieb:> Du kannst neben den oben genannten Maßnahmen> auch die Messdämpfung weiter erhöhen (den 1k und gleichlaufend die> Steuerspannung verringern).
Ich wollte mal probieren, auf genau 0-3,3V oder 0-5V zu skalieren, das
könnte ich hier brauchen, wird aber wohl mit Spannungteiler am Eingang
einfach sein.
Matthias S. schrieb:> Ich wollte mal probieren, auf genau 0-3,3V oder 0-5V zu skalieren, das> könnte ich hier brauchen.
Ich würde ja lieber eine Schaltung ohne OPV und die ganzen Probleme
nehmen, so wie im Anhang.
So,
Danke nochmal für den Aufwand.
Ich habe zuerst mal die Stromregelung mit OPAmp aufgebaut, einfach weil
ich die Bauteile alle schon da hatte.
Das Ergebnis ist durchwachsen und im Teillast-Bereich gibt es immer
wieder Probleme mit Schwingungen. Die kriege ich mit Kondensatoren und
grossen Widerständen bei der Ansteuerung zwar hin und her geschoben,
aber nie ganz weg.
Dann habe ich nochmal den Aufbau von ArnoR genommen. Der tut tatsächlich
was er soll.
Eigentlich hatte ich gedacht, dass eine analoge Ansteuerung viel
einfacher als eine digitale (PWM mit Glättung) oder eine Regelung mit MC
wäre, aber - nein. dabei heißt es doch, früher wäre alles besser. :)
Was meinst du, warum die Menschheit irgendwann für sich entschieden hat,
dass digital besser als analog ist?
Weil digital klar definierte Punkte hat und analog nicht.
Ich habe irgendwann über hackaday.com mal eine Seite gesehen wo jemand
absolut jede kleinste Schrottaufgabe mit einem Attiny gemacht hat. Also
auch Sachen für die normal ein Op-Amp reicht.
Und was war? Hat seinen ganz besonderen Charme. Für jede Aufgabe nimmt
er das gleiche Bauteil und das Endergebnis funktioniert immer. Und man
braucht in der Regel nichtmal ein Oszi weil man ja ganz genau weiss was
der µC macht (eins zu haben ist natürlich trotzdem besser).
Sascha schrieb:> Ich habe irgendwann über hackaday.com mal eine Seite gesehen wo jemand> absolut jede kleinste Schrottaufgabe mit einem Attiny gemacht hat. Also> auch Sachen für die normal ein Op-Amp reicht.
Ja ja, solche Profis haben wir hier auch.
Die versuchen, den Vorwiderstand der LED durch einen uC zu ersetzen,
glauben daß der uC ideal ist um Mikrophonsignale auf Line Pegel zu
verstärken,
und wundern sich warum Schrittmotoren nicht laufen wenn man sie direkt
an uC Ausgänge hängt. Wieso, ist doch richtig programmiert.
Besonders beliebt die Regelung von Labornetzteilen per A/D-Wandler und
PWM in den uC zu verlagern.
Wenn man das richtig macht, funktioniert das auch. Und das hat natürlich
auch Grenzen, gerade bei Abtastung. Wenn man die kennt, ist das ein
valides Vorgehen mit diversen Vorteilen.