Steifheitsregelung des DC-Motors mit PWM

Ist es möglich, das Ausgangsdrehmoment eines DC-Bürstenmotors mit PWM zu steuern?

Nach meinem Verständnis ist die Drehzahl direkt proportional zur angelegten Spannung und das Drehmoment proportional zum aufgenommenen Strom. Wenn also die Last des Motors zunimmt, zieht er einfach mehr Strom (wenn die Last innerhalb ihrer Drehmomentgrenze liegt). Da ich keinen Stromregler in meiner Motortreiberplatine habe, kann ich das Ausgangsdrehmoment des Motors nicht steuern. Wie kann ich dieses Problem lösen? Ich habe gelesen, dass eine Hardware-Rückkopplungsschleife mit einem Operationsverstärker verwendet werden kann, um den Strom proportional zur Referenzspannung zu halten. Ist das richtig? Und ist es möglich, eine solche Schaltung für einen 90-W-24-V-Gleichstrommotor herzustellen?

Versuchen Sie tatsächlich, die Ausgangsdrehzahl unter wechselnden Lastbedingungen konstant zu halten?
Nein, ich muss das Drehmoment des Motors steuern. Aber leider kann der Motortreiber, den ich habe, die Spannung nur mit H-Brücke steuern.

Antworten (3)

Ich habe den Eindruck, dass es bei dieser Frage teilweise um die Drehzahlregelung eines Gleichstrommotors geht, anstatt nur zu versuchen, das Drehmoment auf einer Bedarfseinstellung konstant zu halten.

Nach meinem Verständnis ist die Geschwindigkeit direkt proportional zur angelegten Spannung

Dies gilt nur, wenn sich das Drehmoment nicht ändert. Mit zunehmendem Drehmoment bei konstanter Spannungsversorgung sinkt die Drehzahl. Dieser Effekt wird durch den endlichen Ankerwiderstand des Gleichstrommotors verursacht. Wenn dieser Widerstand Null wäre, dann ist die Geschwindigkeit proportional zur Spannung.

Wenn also die Last des Motors zunimmt, zieht er einfach mehr Strom

Und leider etwas langsamer.

Ich habe gelesen, dass eine Hardware-Rückkopplungsschleife mit einem Operationsverstärker verwendet werden kann, um den Strom proportional zur Referenzspannung zu halten. Ist das richtig?

Sie können einen Vorwiderstand (Überwachung des Motorstroms) und einen Operationsverstärker verwenden, um eine nahezu konstante Drehzahlcharakteristik über einen angemessenen Bereich von Lastdrehmomenten zu erzeugen. Es ist nicht großartig, aber es verbessert die Geschwindigkeitsregulierung erheblich im Vergleich dazu, wenn man es nicht hat.

Versuchen Sie, ein Dokument von Texas (Burr Brown) mit dem Titel DC MOTOR SPEED CONTROLLER: Control a DC Motor without Tachometer Feedback nachzuschlagen . Dies erklärt, wie es erreicht wird.

Die Methode, die Sie in diesem Dokument verlinkt haben ... ist das im Grunde nur eine IR-Kompensationsschaltung?
@Eric ja, ich glaube schon.
Ich mache mir keine Sorgen um den Geschwindigkeitsabfall, ich möchte meinen PWM-Controller in einen Stromcontroller umwandeln. Nachdem ich viel über Verstärker gelesen hatte, erfuhr ich, dass ich für die Herstellung einer Verstärkerschaltung für einen 90-W-Motor einen riesigen Kühlkörper benötige, da die zusätzliche Leistung, die von der Quelle kommt, abgeleitet werden muss. Ich brauche einen Verstärker mit mindestens der doppelten Nennspannung (mit Gegen-EMK) und einer Strombegrenzung von mindestens Stalldrehmoment.

"Ist es möglich, das Ausgangsdrehmoment eines DC-Bürstenmotors mit PWM zu steuern?" Ja - Drehmoment ist proportional zum Strom.

Wenn die PWM-Quelle ein Mikrocontroller ist, müssen Sie den Strom messen (z. B. ACS712 oder ähnliches, das eine Spannung ausgibt: V = Voffset + k * Imotor), mit einem ADC erfassen und dann einen PI-Regelkreis schreiben, um den anzupassen PWM-Tastverhältnis.

Hier ist ein Beispiel für eine Kontrollschleife, die in einem Interrupt aufgerufen werden könnte (natürlich wird dann while(1) entfernt)

while(1) {
  Ierr = Idesired - Imeasured;
  err_sum += Ierr;
  PWMcommand = Kp * Ierr + Ki * err_sum;
}

Sie müssen die Variablen skalieren, Einheiten und Vorzeichen ausarbeiten usw. - aber das ist die Grundstruktur.

Stellen Sie zum Stimmen Ki auf nahe Null ein, verriegeln Sie den Rotor und wenden Sie einen Schritt in Idesired an und sehen Sie sich die Reaktion an. Der Schrittstrom muss dem ähnlich sein, mit dem Sie den Motor antreiben. Ich nehme an, es sind 1 Ampere. Erhöhen Sie Kp, bis die Sprungantwort überschwingt, und nehmen Sie dann etwas zurück. Mit Kp allein wird es immer einen Fehler in Imess geben - besonders wenn der Motor währenddessen startet. Um dies zu korrigieren, benötigen Sie den Integralterm.

Setzen Sie bei verriegeltem Rotor Ihren Stromschritt von ~1 A fort und erhöhen Sie Ki. Auch hier möchten Sie, dass Ki groß ist - aber nicht so groß, dass es zu Schwingungen kommt. Wenn Ki zu klein ist, ist die PWM-Antwort langsam, wenn sich die Motordrehzahl ändert – und somit ändert sich das Drehmoment.

Die PWM-Frequenz wirkt sich auch auf die Regelkreiskoeffizienten (insbesondere die Ki) aus. Verwenden Sie also eine konstante PWM-Frequenz. Die Frequenz ist typisch mindestens 20Khz, um nicht hörbar zu sein, aber letztendlich geht es mehr um die Motorinduktivität, die Stromwelligkeit und die Rotorträgheit.

Es gibt unzählige Universitätslehrgänge, die sich dem Thema Regelungstheorie widmen. Diese werden benötigt, um einen chirurgischen Roboter herzustellen - aber was ich gesagt habe, wird Ihren ersten Drehmomentregler zum Laufen bringen!

Sie können das Drehmoment eines bürstenbehafteten Gleichstrommotors steuern, indem Sie den Strom durch den Rotor bzw. die Spannung über dem Rotor steuern.

Sie können den Motorstrom nicht steuern, wenn Sie keinen Stromsensor haben, aber Sie können die Drehzahl des Motors steuern, wenn Sie einen Drehzahlsensor haben. Ihr Ziel ist es, eine Drehzahl von null U / min zu befehlen, und der Controller passt die Rotorspannung an, um dieses Ziel zu erreichen. Es steuert die "Steifigkeit" des Motors.

Lesen Sie mehr über Motorsteuerung und Sie werden die Antworten finden, die Sie suchen.