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.
Mach vor das Poti noch einen Widerstand rein, sodass du einen Spannungsteiler hast, der dir am Poti 3,3 Volt gibt.
Also wenn dein Poti 1k hat, mach davor noch einen 2,7k Widerstand
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.
Meiermann schrieb: > Gibt es die Schwingungbekämpfung das auch in richtig statt in geht-so? ja, das geht auch in richig ;-) https://www.mikrocontroller.net/articles/Konstantstromquelle#Konstantstromquelle_mit_Operationsverst.C3.A4rker_und_Transistor Wenn du ein bisschen runterscrollst, findest du die FET-Version
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.
ArnoR schrieb: > (den 1k und gleichlaufend die > Steuerspannung verringern). Also damit ist natürlich der 1k am inv. Eingang gemeint.
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.
:
Bearbeitet durch User
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.