Warum dreht sich der BLDC-Motor bei gleicher Einschaltdauer bei höheren Frequenzen langsamer?

Ich habe sowohl einen OTS BLDC-Motorcontroller als auch einen, den ich gerade selbst hergestellt habe, und beide scheinen bei höheren Frequenzen dramatisch langsamer zu sein. Wenn ich mir anschaue, wie viel Strom gezogen wird, macht es Sinn, aber es macht sonst keinen Sinn.

Ich habe zwei Tests:

  1. 20 % Einschaltdauer, f_PWM = 3 kHz zieht etwa I = 0,8 A von der Stromversorgung, Motor dreht schneller
  2. 20 % Einschaltdauer, f_PWM = 8 kHz zieht etwa I = 0,25 A von der Stromversorgung, Motor dreht langsamer

Das ist besonders schlimm, weil ich den Motor mit f_PWM ~30kHz antreiben möchte.

Um ehrlich zu sein, wurden diese Tests mit meinem Controller durchgeführt, der darauf beschränkt ist, jemals einen Arbeitszyklus von 100 % zu erreichen, sodass ich niemals eine Frequenzweiche haben werde, die zu einem Durchschuss führen könnte. Allerdings glaube ich NICHT, dass die Verluste Schaltverluste sind (der Strom ist auch viel geringer).

Irgendwelche Ideen oder gemeinsame Gründe warum?

Vielen Dank im Voraus

HINZUGEFÜGT: Mit f_PWM meine ich die Frequenz der Rechteckwelle, die ich bei jedem Kommutierungsschritt an die MOSFET-Gates sende. Ich habe noch keine Geschwindigkeitsregelung versucht, aber mein Plan war, diese Frequenz anzupassen.

Ich glaube, ich bin mir der Totzeit nicht ganz sicher. Bei einem einzigen Kommutierungsschritt I: 1. Schalten Sie alle Rechteckwellenausgänge aus. 2. Ordnen Sie die entsprechenden Ausgänge entsprechend dem Zustand des Hall-Effekt-Sensors neu zu. Ich lege dieselbe Rechteckwelle auf die entsprechenden High- und Low-Side-Transistoren. Zusätzlich fülle ich 1,5 us vor und nach dem Ansteigen und Abfallen der Rechteckwelle den Rest der Periode mit einer Rechteckwelle auf dem Low-Side-Gegenstück der High-Side Transistor zum Wiederaufladen eines Ladungspumpenkondensators. Dies ist notwendig, da ich auch N-Kanal-MOSFETs auf der High-Side verwende.

Ich weiß, das ist eine etwas schlampige Beschreibung, aber lassen Sie es mich bitte wissen, wenn ich etwas klarstellen kann.

Passt diese "PWM" nur die scheinbare Spannung an, die den Motor antreibt, oder beziehen Sie sich auf den Vorgang des Durchlaufens der Antriebsphasen? Sie müssen erklären, wie genau Sie diesen Motor kommutieren und wo genau diese "PWM" angewendet wird.

Antworten (1)

Sie haben Recht damit, dass es sich nicht um Schaltverluste handelt. Wenn dies der Fall wäre, würde der Strom mit der Frequenz steigen, nicht fallen.

Du hast es selbst gesagt. Ihre Steuerung implementiert eine Totzeit. Bei höherer Frequenz ist die Totzeit ein größerer Bruchteil der PWM-Periode, sodass die effektive Einschaltzeit des Motors verkürzt wird.

Um Verwirrung zu vermeiden, möchte ich darauf hinweisen, dass das, was Sie sehen, nichts mit der Induktion der Motorspulen zu tun hat. Die Induktivität der Spulen dient lediglich der Glättung der einzelnen Impulse. Dadurch wird der Welligkeitsstrom in den Spulen verringert und der Strom näher an den Durchschnitt gebracht. Das ist eigentlich eine gute Sache.

Je nachdem, wie genau Sie den Motor antreiben, ist es möglich, dass eine zu geringe Induktivität der Spulen bei niedrigen Frequenzen Probleme verursacht, indem sie einen Hin- und Herstrom verursacht, obwohl er sich auf die gewünschte Höhe mittelt. Die Verluste in den Spulen sind proportional zum Quadrat des Stroms, der bei auf das langsame gewünschte Signal wirkender Welligkeit höher ist als nur der Durchschnitt. Wenn Sie kein ungewöhnliches oder schlecht gestaltetes Setup haben (ich habe beides gesehen), ist dies wahrscheinlich nicht das Problem. Auch hier erklärt die Totzeit Ihre Symptome sehr schön.

Hinzugefügt:

Ich habe gerade festgestellt, dass Sie mit "PWM" möglicherweise von der Motorphasen-Antriebsfrequenz sprechen (wie schnell Sie versuchen, das Magnetfeld zu drehen), nicht von der PWM-Frequenz, mit der die effektive Antriebsspannung moduliert wird, die der Motor sieht. Ihre Frage ist insofern schlecht formuliert, als diese Hauptunterscheidung nicht klar ist. Wenn Sie sich tatsächlich fragen, warum der Motor weniger Strom aufnimmt, wenn er schneller läuft, dann liegt das an der Gegen-EMK, die er erzeugt. Sie können sich einen Motor als etwas vorstellen, das das Drehmoment proportional zur Spannung mit einer variablen Spannungsquelle in Reihe macht. Diese Spannungsquelle legt die Spannung, die Sie anlegen, proportional dazu an, wie schnell sich der Motor in die Richtung dreht, in die Sie ihn antreiben möchten. Je schneller er fährt, desto weniger effektive Spannung wird dem "antreibenden" Teil des Motors zugeführt nimmt weniger Strom.

So ein großer Unterschied bei 20% aufgrund der Totzeit?
@jippie: Klar. Es hängt alles von der Totzeit ab, die das OP nicht angegeben hat.
Ich versuche einen Weg zu finden, meine tote Zeit zu messen und sie im Allgemeinen zu reduzieren. Ja, ich bin mir ziemlich sicher, dass es zu lang ist.
Ich habe die Zeit gemessen, die ich im Interrupt verbringe, der die neue Sequenz aktiviert: 6 bis 9us. die neue Sequenz wird bei Änderungsbenachrichtigung von einem der Zustände des Hall-Effekt-Sensors ausgelöst. Ich weiß nicht, wie ich das schneller machen kann. Mein Resonator hat 20 MHz