Forum: Analoge Elektronik und Schaltungstechnik Lq und Ld eines Motors


von Bert S. (kautschuck)


Angehängte Dateien:

Lesenswert?

Hi,

Ich versuche Lq und Ld eines Motors mit Hilfe eines Inverters mit FOC zu 
messen. Dazu injiziere ich eine Rechteckspannung in Vq oder Vd mit einer 
Frequenz von 2kHz. Nun habe ich aber das Problem, dass Ld bei mir in 
etwa immer doppelt so groß ist wie Lq, egal wie ich die Amplitude von Vq 
und Vd wähle.

Die Induktivität wird so berechnet, dass der Strom kurz vor dem Wechsel 
der Rechteckspannung gemessen wird und jeweils für hohe Spannung bzw. 
niedrige Spannung auf integriert über die Zeit. Dann wird der Mittelwert 
genommen und mit

die Induktivität berechnet. Der Reluktanzpfad für Ld muss doch viel 
höher sein als für Lq, daher sollte doch Lq immer grösser sein als Ld?

Auf den Bildern oben sieht man links die Messung mit Vd Injektion, 
rechts mit Vq Injektion. Die Frequenz ist natürlich viel höher, das Tool 
kann nur nicht schnell genug messen.

Jemand eine Idee, ob Ld bei einem PMSM grösser sein kann als Lq?

Edit: Das Bild links sollte eigentlich Vq und Vd statt Iq und Id sein

: Verschoben durch Moderator
von Bert S. (kautschuck)


Lesenswert?

Ok, zumindest habe ich eine Fehler gefunden, ich integriere den Strom 
Ia, was genau muss ich aber für Vd bzw. Vq Injektion integrieren? Id und 
Iq?

von Achim M. (minifloat)


Lesenswert?

Bert S. schrieb:
> Nun habe ich aber das Problem, dass Ld bei mir in etwa immer doppelt so
> groß ist wie Lq, egal wie ich die Amplitude von Vq und Vd wähle.

Wie machst du die Rücktransformation?
Kann es sein dass dein Motor gerade bei elektrisch 90° oder 270° steht?

Stell dir das so vor, dass du mit 0° ausgerichteter dq- und αβ-Ebene, 
also d=α und q=β, deinen Krempel einspeist und auch mit 0° 
zurückrechnest. Wenn jetzt der Motor aber tatsächlich um ±90° zur 
dq-Ebene verdreht ist, misst du Ld wo Lq sein sollte und andersherum.

mfg mf

: Bearbeitet durch User
von Achim M. (minifloat)


Lesenswert?

Bert S. schrieb:
> was genau muss ich aber für Vd bzw. Vq Injektion integrieren

a) Strom differenzieren

u(t) = L di(t)/dt

=> L = u(t) / {di(t)/dt}

b) Spannung integrieren

u(t) = L di(t)/dt

=> intg(u(t)) = L i(t)

=> L = intg(u(t)) / i(t)

mfg mf

PS. Wenn du V=const Injektion machen willst, musst du eine Duty-Cycle zu 
Uzk Korrektur einbauen und darfst bei den Strömen nicht den 
eingependelten Zustand abwarten. Der Dynamische Teil interessiert für 
die Induktivität. Der Statische Teil hingegen kann zum R messen genutzt 
werden.

: Bearbeitet durch User
von Bert S. (kautschuck)


Lesenswert?

Also ich injiziere ein Vd bzw. Vq und stelle den elektrischen Winkel fix 
auf 0 rad. Der Motor richtet sich auch entsprechend aus, 2 Polpaar Motor 
und die Achse dreht sich um PI/4. Daher denke ich, dass der Fehler hier 
nicht liegt, sondern in welchen Strom ich für das Berechnen von Ld, Lq 
nehme.

Ich integriere momentan bei Vd/Vq Injektion immer den Ia Strom, daher 
kann irgendetwas nicht stimmen. Wie man oben sieht, hat der Strom ja 
noch eine Ib/Ic Komponente, außer bei der Vq Injektion ist nur eine Ib 
Komponente vorhanden.

Welchen Strom muss ich also nehmen, um die q/d Induktivität zu 
bestimmen? Ich appliziere ja immer eine hohe Spannung und eine geringe 
Spannung mit 2 kHz, daher fließen Ströme Ia, Ib und Ic, welche sich beim 
Sprung nahezu linear ändern durch die hohe Frequenz.

von Achim M. (minifloat)


Lesenswert?

Bert S. schrieb:
> Ich integriere momentan bei Vd/Vq Injektion immer den Ia Strom,

Du müsstest die Spannung integrieren oder die Ableitung des Stroms 
berechnen, siehe Formeln von oben.

Bert S. schrieb:
> Ich appliziere ja immer eine hohe Spannung und eine geringe Spannung mit
> 2 kHz, daher fließen Ströme Ia, Ib und Ic, welche sich beim Sprung
> nahezu linear ändern

Kannst du die Stromänderung überhaupt mit derselben Frequenz erfassen?

Bert S. schrieb:
> Also ich injiziere ein Vd bzw. Vq und stelle den elektrischen Winkel fix
> auf 0 rad. Der Motor richtet sich auch entsprechend aus,

Beim Injizieren in q-Richtung verdreht sich der Motor auch? Das soll ja 
bei der Messung der q-Induktivität nicht passieren. Da hast du dann die 
d-Achse des Motors in q-Richtung deiner Transformationen liegen.
Vorschlag: Richte den Motor in d-Richtung aus und dann setzt du den 
mechanisch fest.

mfg mf

von Bert S. (kautschuck)


Lesenswert?

Danke dir Achim,

Achim M. schrieb:
> Du müsstest die Spannung integrieren oder die Ableitung des Stroms
> berechnen, siehe Formeln von oben.

Ich berechne die Induktivität über die Ableitung des Stromes, aber 
welches Stromes ist mir nicht bewusst? IU/IV/IW? IQ/ID?

Achim M. schrieb:
> Kannst du die Stromänderung überhaupt mit derselben Frequenz erfassen?

Das klappt ganz ordentlich, zumindest kann ich so die Induktivität Is 
des Motores genau messen indem ich in die Alpha Achse injiziere.

Achim M. schrieb:
> Beim Injizieren in q-Richtung verdreht sich der Motor auch? Das soll ja
> bei der Messung der q-Induktivität nicht passieren. Da hast du dann die
> d-Achse des Motors in q-Richtung deiner Transformationen liegen.
> Vorschlag: Richte den Motor in d-Richtung aus und dann setzt du den
> mechanisch fest.

Wenn ich Vd injiziere, dann richtet sich der Motor aus. Wenn ich dann 
auf Vq wechsle, dreht sich die Achse nochmals 45° (2 PP Motor). Die 
Achse sollte also entweder mit Vd oder Vq gleich auf liegen.

: Bearbeitet durch User
von Bert S. (kautschuck)



Lesenswert?

Ok, ich habe es hinbekommen, dass Ld < Lq ist und zwar so, dass die 
Ströme ib = ic = -ia/2 sind (Siehe Bild oben). Nun muss ich dafür aber 
in die VQ Achse einen elektrischen Winkel von Pi/3 Vorsteuern und das 
verstehe ich nicht wirklich

von Achim M. (minifloat)


Lesenswert?

Bert S. schrieb:
> Wenn ich dann auf Vq wechsle, dreht sich die Achse nochmals 45° (2 PP
> Motor).

45° mechanisch, also 90° elektrisch. Hä?

Die Kiste darf sich für Q NICHT drehen. Du willst doch nicht die D-Achse 
einmal an D- und einmal an Q-Position messen. Dass du jetzt zwei 
verschiedene Messwerte herausbekommst, zeigt mir, dass in der Messung 
noch ein Wurm drin ist.

Bert S. schrieb:
> welches Stromes ist mir nicht bewusst? IU/IV/IW? IQ/ID?

Id und Iq natürlich. Dafür muss einmal ausgerichtet werden, damit d=α=a. 
Also Park und Park-Inverse mit elektrischen 0°.
Dafür muss der Motor aber auch bei einer elektrischen 0° stehen.

Ich denke, dass dir die Zusammenhänge dq-αβ-abc noch nicht ganz klar 
sind?

mfg mf

: Bearbeitet durch User
von Bert S. (kautschuck)


Lesenswert?

Achim M. schrieb:
> Die Kiste darf sich für Q NICHT drehen. Du willst doch nicht die D-Achse
> einmal an D- und einmal an Q-Position messen. Dass du jetzt zwei
> verschiedene Messwerte herausbekommst, zeigt mir, dass in der Messung
> noch ein Wurm drin ist.

Der Motor dreht sich während der Messung nicht, sondern nur beim 
wechseln von Vq nach Vd Injektion um 45° mechanischer Winkel = 90° 
elektrischer Winkel.

Achim M. schrieb:
> Id und Iq natürlich. Dafür muss einmal ausgerichtet werden, damit d=α=a.
> Also Park und Park-Inverse mit elektrischen 0°.
> Dafür muss der Motor aber auch bei einer elektrischen 0° stehen.

Ok, das Ausrichten scheint das Problem zu sein, jedoch brauch ich doch 
für eine automatische Ausrichtung nach Id bzw. Iq zuerst die 
Induktivität des Motors, so dass ich bereits Iq, bzw. Id injizieren 
kann? Wenn ich nur Vq/Vd injiziere, hat der Motor ja die falsche 
Ausrichtung?

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Warum willst du unbedingt die Induktivitäten einzeln messen. Du kannst 
mit einer rotierenden Injektion beide Induktivitäten messen. Siehe die 
ganzen Injektions basierten Positionbeobachter.

von Bert S. (Gast)


Lesenswert?

Du meinst HFI? Wie genau mit einer rotierenenden Injektion Ld und Lq 
berechnet werden kann habe ich leider nichts gefunden. Hast du irgend 
ein Paper/Website dazu?

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Recht simpel. Dein dq System drehst du mit 2kHz und setzt Vd. Dann 
ergibt sich ein Stromvektor Vd/(jw(Ld + wLq)*0.5 + e^j-2w * (Lq-Ld)*0.5)

: Bearbeitet durch User
von Bert S. (kautschuck)


Lesenswert?

Alex B. schrieb:
> Recht simpel. Dein dq System drehst du mit 2kHz und setzt Vd. Dann
> ergibt sich ein Stromvektor Vd/(jw(Ld + wLq)*0.5 + e^j-2w * (Lq-Ld)*0.5)

Ok, das macht sinn, danke. Nur noch zur Injektion von Vd, ich mache das 
momentan so, dass ich die Vd/Vq Amplitude (Reglerausgang) überschreibe 
und konstant halte, dann den elektrischen Winkel einfach rotiere, eben 
mit der Drehfrequenz. Ist dass der richtige Weg, um den Motor Openloop 
zu drehen?

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Bert S. schrieb:
> Nur noch zur Injektion von Vd, ich mache das momentan so, dass ich die
> Vd/Vq Amplitude (Reglerausgang) überschreibe und konstant halte, dann
> den elektrischen Winkel einfach rotiere, eben mit der Drehfrequenz. Ist
> dass der richtige Weg, um den Motor Openloop zu drehen?

Um ein Drehfeld auf den Motor zu geben ist das der richtige Weg. Ob der 
Motor dreht hängt davon ab aber für die Messung soll er ja nicht drehen. 
Deshalb gleich mit 2kHz draufgehen dem kann der Motor garantiert nicht 
folgen.

von Bert S. (kautschuck)


Lesenswert?

Alex B. schrieb:
> Recht simpel. Dein dq System drehst du mit 2kHz und setzt Vd. Dann
> ergibt sich ein Stromvektor Vd/(jw(Ld + wLq)*0.5 + e^j-2w * (Lq-Ld)*0.5)

Danke, das war mir so nicht bewusst. Hast du da irgend einen Link dazu, 
das geht so ja nicht auf von den Einheiten (einmal wLq und einmal nur 
Ld)?

: Bearbeitet durch User
von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Sry Tippfehler. Beides ist mit w zu verstehen. Oder in Prosa: Wenn du 
dein System mit 2kHz drehst und Vd > 0V und Vq = 0V setzt. Stellt sich 
ein Stromvektor ein der ca. 90° nach eilt. Die Länge des Vektors ist 
durch U = w(Ld + Lq)/2*I beschrieben. Das Besondere ist das die 
Induktivität achsig ist bei den meißten Motoren. Soll heißen wenn du die 
Induktivität im dq System aufmalst ergibt sich eine Elipse. Diese Elipse 
bedingt das in deinem imaginären 2kHz dq System eine Oberwelle auf dem 
Stromvektor ist und diese oberwelle hat exakt 4kHz und eine Amplitude 
die durch U = w(Lq -Ld)/2*I beschrieben ist. Wenn du jetzt also 
(Lq-Ld)/2 und (Ld + Lq)/2 bestimmt hast kannst du Ld und Lq berechnen. 
Und die Phase der 4kHz Oberwelle ist zufällig auch noch die Position 
deines Rotors mit einer 180° Unsicherheit. Weil du nicht weißt auf 
welcher Seite der Elipse du bist.

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

N Direkten Link kann ich dir nicht mehr liefern das ist für mich 
mittlerweile offensichtlich. Aber eigentlich alle älteren Paper zu HFI 
die ein volles Drehfeld zu Injektion nutzen beschreiben das ganz genau. 
Einfach mal etwas rum lesen.

von Bert (Gast)


Lesenswert?

Ok, danke dir, werde mir das mal noch genauer durchlesen. Wenn ich aber 
die Oberwelle messen muss, brauche ich doch eine FFT oder kann ich die 
irgendwie auf dem uC mit inverter analysieren?

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Du willst eine feste Frequenz beobachten also brauchst du keine FFT 
sondern ein Görtzel reicht aus. Das ist auch das einfachste. Auch 
möglich wäre es den DC Anteil des Stromes in deinem dq' System raus zu 
filtern und den resultierenden rotierenden Stromvektor mit -2*w drehen 
dann kommen wieder DC Werte heraus. Beide DC Vektoren kannst du dann für 
die Ldq Berechnung verwenden.

von Bert S. (kautschuck)


Lesenswert?

Danke dir. Gibt es irgendwie noch einen Trick für die Vd Injektion, da 
meine Stromregelschleife nur 20kHz Bandbreite hat. Dann wäre ja bei 2kHz 
die Auflösung für den Drehstromvektor nicht mehr so gut...

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Du steuerst ja nur Vd. Und die geringe Auflösung des Sinus sind ja nur 
Oberwellen die nichts am Grundsignal machen. Die Frage ist eher in 
welchem Wertebereich die zu messenden Induktivitäten liegen und ob bei 
2kHz die Spannung noch reicht. Du kannst auch auf 1kHz oder weiter 
runter gehen. Bei Industrie Antrieben werden Frequenzen im Bereich von 
500 - 1000hz verwendet. Bei kleinen Modellbau Motoren mit 30uH oder so 
solltest du vllt. Auf 5kHz gehen.

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.