Hallo zusammen, ich versuche derzeit, auf dem F28335 mit dem TMDSDOCK eine feldorientierte Regelung zu implementieren. Damit soll ein fremderregter Synchronmotor geregelt werden, der für eine DC-Spannung bis 400V ausgelegt ist und maximal 60kW leisten kann. Da der dafür gedachte große Umrichter noch nicht fertig ist, habe ich einen kleineren, der an einem DC-Netzteil an 100V hängt. Die Erregung ist zunächst konstant auf 25V, 3,5A eingestellt. Große Lasten werden noch nicht bewegt. Ich habe mich dabei an Beispielprogrammen von TI orientiert und nutze die DMClib. Ich habe jetzt meinen Stromregelkreis geschlossen. Der Winkel für die Transformationen kommt aus einem Rampengenerator. System siehe erstes Bild. Über die Vorgabe einer Geschwindigkeit für den Rampengenerator konnte ich meinen Motor bis auf die angedachte Maximalgeschwindigkeit von 6000u/min bringen. Im nächsten Schritt will ich nun den Rampengenerator mit meinem berechneten Winkel ersetzen. Dazu habe ich den Verlauf vom Rampengenerator und meinen parallel dazu berechneten Winkel aufgezeichnet, was soweit sehr gut aussieht (2. Bild). Ich hatte nun erwartet, dass bei der Vorgabe eines Sollwertes für Iq die Drehzahl durch die Decke geht, was aber leider (oder zum Glück?) nicht passiert ist. Der Motor beschleunigt gemächlich bis ca 2200u/min und bleibt dann auf dem Level. Ein Erhöhen von iq,soll lässt die Drehzahl sogar noch etwas zurückgehen. Ich habe dann einige Werte aufgezeichnet, um nach Fehlern zu suchen. (3. Bild, die png-Datei war 2MB groß, daher jpg) Auf meinem Oszi habe ich mir dann noch maßstäblich die Ströme der drei Stränge zur Maschine aufgenommen. (4. Bild) Ich kann mir derzeit leider nicht erklären, warum der Motor nicht weiter beschleunigt. Die PI-Regler sind mit Kp=1 und Ki=0,0025 parametriert. Hat jemand einen Tipp, was mögliche Ursachen sein könnten? Danke und schönes Wochenende! Gruß Philipp
Na das klingt ja fast nach Formula Student... Wenn kein Drehmoment abverlangt wird kann man durchaus in die Feldschwächung gehen und kann dadurch bei entsprechend geringem Drehmoment beliebig hohe Drehzahlen erreichen. Regelst du aber nach Feedback vom Motor musst du bewusst in die Feldschwächung übergehen (im Prinzip Kommutionstiming verändern), wenn du das nicht machst erreichst du die maximale Drehzahl auch erst bei der entsprechenden Spannung.
Student ja, Formular nein :) Ich denke auch, dass es etwas mit dem Betrag der Erregung zu tun hat. Ich hatte die Erregung bisher immer fest eingestellt. Ich habe aber auch festgestellt, dass wenn man die Erregung dann einzieht, der Motor noch etwas beschleunigt. Da ich mit der Maschine im Leerlauf bin, aber dennoch 20A peak messe, denke ich, dass da ein sehr großer Anteil Blindleistung dabei ist, die ich in der Maschine im Kreis schicke. Das DC-Netzteil liefert nur etwa 3A. Ich habe bei meinem letzten Versuch habe ich dann das simulierte Winkelsignal durch mein tatsächlich gemessenes ersetzt, woraufhin ich eben nur bis ~2200u/min gekommen bin (bei reduzierter Erregung noch etwas mehr). Wie würde man denn in dem Fall das Kommutierungstiming (das war es wahrscheinlich was du mit Kommutionstiming meintest?) realisieren? Genügt es da schon, der inversen Parktransformation einen leicht voreilienden Winkel zu verpassen?
Philipp Seckel schrieb: > Student ja, Formular nein :) Für was für eine Art von Projekt ists denn? > Ich denke auch, dass es etwas mit dem Betrag der Erregung zu tun hat. > Ich hatte die Erregung bisher immer fest eingestellt. Ich habe aber auch > festgestellt, dass wenn man die Erregung dann einzieht, der Motor noch > etwas beschleunigt. > Da ich mit der Maschine im Leerlauf bin, aber dennoch 20A peak messe, > denke ich, dass da ein sehr großer Anteil Blindleistung dabei ist, die > ich in der Maschine im Kreis schicke. Das DC-Netzteil liefert nur etwa > 3A. Peak Ströme wo? In den Phasen? In den Phasen kannst du auch kA haben und am Netzteil nur wenige A, alles eine Frage der Pulslänge und Pufferung. > Ich habe bei meinem letzten Versuch habe ich dann das simulierte > Winkelsignal durch mein tatsächlich gemessenes ersetzt, woraufhin ich > eben nur bis ~2200u/min gekommen bin (bei reduzierter Erregung noch > etwas mehr). Wie würde man denn in dem Fall das Kommutierungstiming (das > war es wahrscheinlich was du mit Kommutionstiming meintest?) > realisieren? Genügt es da schon, der inversen Parktransformation einen > leicht voreilienden Winkel zu verpassen? Hab ehrlich gesagt noch keinen großen Motor in Feldschwächung (ich glaube bei 3 phasen BL Motoren nennt man das auch anders) betrieben, kenne es nur von <200gr Motoren, da einfach mit dem Timing rumgespielt und ausprobiert. Ein 60kW Motor wird allerdings etwas mehr als 30€ kosten und ist dementsprechend vielleicht nicht als Versuchsobjekt geeignet. Wieso ist das denn nötig? Wenn die Drehzahl bei der Spannung schon erreicht werden muss ist bei der Auslegung ja schon etwas völlig schief gelaufen, wäre das eingeplant gewesen wüsstest du wohl wie du die Drehzahl erhöhst. Gruß
Es geht darum, einen Umrichter für einen Motorenteststand zu bauen. Und das eben nicht unter Verwendung von fertigen Baugruppen, sondern, mal abgesehen von den IGBTs und deren Treibern, alles in Eigenbauweise. Ich bin mit der Ansteuerung betraut worden und hatte mich da für den TI Prozessor entschieden, da die ganze Sache mit der DMClib sehr vielversprechend klang und im Grunde ja auch ist. Was eben verwunderlich ist: Wenn ich den Winkel durch einen SW-Rampengenerator vorgeben lasse, erreicht die Maschine auch die 6000rpm bei 100V. Und ohne Last dürfte es sowieso egal sein, wie viel Spannung der Zwischenkreis liefert. Die Spannung in der Maschine stellt sich ja anhand der Stellgrößen der Regler ein. Und die hätte ich im Leerlauf als sehr gering erwartet. Stattdessen bin ich bei 2000rpm bei 80% Regleraussteuerung, wenn der Rotorlagegeber angekoppelt ist. Dann erreichen die Ströme eben schnell den vorgegebenen Sollwert und der Regler zieht die Stellgröße ein. Die Rückführung der Ströme in den Controller passt von der Skalierung her aber definitiv. Kann mir auf das Gesamtproblem noch keinen wirklichen Reim bilden...
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.