PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : L6234 (3xHalbbrücke) Sinus oder Blockkommutierung?



toemchen
05.08.2011, 00:22
Hallo zusammen,

zur Zeit versuche ich mit einem etwas kryptischen Microcontroller-Board und einem L6234 Treiber eine Versuchsansteuerung für einen selbstgewickelten BLDC zu bauen. Zunächst möchte ich ein ein in beide Richtungen langsam drehbares oder auch stillstehendes elektrisches Feld ausgeben, dem der BLDC wie ein Schrittmotor folgt.
Im Prinzip funktioniert das auch schon, nur die Ströme finde ich etwas seltsam.

Lege ich mit dem regelbaren Netzgerät einfach Plus an eine Phase und Minus an die beiden anderen, dann fließt bereits bei 2,03V 1 Ampere.
Beim Erzeugen der drei versetzten Sinui bin ich also davon ausgegangen, daß ich die PWM nie voll aufdrehen sollte.
Wenn ich nun aber mit dem Drehfeld aus den Sinui ein Drehmoment erzeugen will, das dem vorher mit dem statischen Strom erzeugten Haltemoment etwa entspricht (ok, mein Meßgerät dafür sind Daumen und Zeigefinger, die den Rotor drehen), dann muß ich weit mehr als erwartet aufdrehen. PWM etwa 50%. Der Strom bei 12V Betriebsspannung ist dann doch 0,6A (nicht ganz so leicht zu messen, der Microcontroller selbst genehmigt sich 0,2A - insgesamt fließen also 0,8A)
Ist also schon deutlich mehr Leistung unterwegs als im statischen Zustand.

Und jetzt kommts: Der L6234 wird dabei so heiß, daß ich kaum weiter aufdrehen möchte!

PWM-Grundfrequenz 2kHz.
Drehfeld-Frequenz gerade einmal 2,8Hz - alle 1ms geht es einen 360stel Grad Schritt weiter.

Jetzt habe ich nochmal mit dem Microcontroller den statischen Fall nachgebildet: PWM nach Plus für eine Phase 100%, PWM nach Masse für die beiden anderen, Duty-Cycle einstellbar. Da läßt sich der einfache Fall von ganz oben mit dem Netzgerät ganz gut nachbilden. Ca. 0,2A bei 12V, um etwa dasselbe Haltemoment zu erzeugen.

Soll ich besser eine Art Blockkommutierung erzeugen? Ich hab mir was überlegt, da würde ich mit den Zuständen "100% nach Plus" "Passiv" und "X% nach Masse" ein Muster von 9 verschiedenen Zuständen abarbeiten können, bis es sich wiederholt, sozusagen eine elektrische Umdrehung erreicht ist.

Heute muß ich ins Bett, der Rücken schmerzt vom Sitzen... aber morgen liefere ich diese Tabelle der 9 Zustände. Und Oszi-Messungen der Phasen bei Sinus-Befuerung. Das sind nämlich keine vernünftigen Sinui... nur wenn ich den Sternpunkt der Wicklungen auf die halbierte Betriebsspannung festnagle (ich hab hier ein symmetrisches Netzteil), dann siehts sauber aus.

Gute Nacht
Tom.

toemchen
08.08.2011, 16:18
Ich bin schon nah dran aufzugeben.

Zwei Blockkommutierungen habe ich ausprobiert.

Zunächst eine mit PWM nur im Massezweig der Halbbrücken.



Phase/Schritt
A
B
C


1
100% Hi
15% Lo
15% Lo


2
100% Hi
Off
25% Lo


3
Off
100% Hi
25% Lo


4
15% Lo
100% Hi
15% Lo


5
25% Lo
100% Hi
Off


6
25% Lo
Off
100% Hi


7
15% Lo
15% Lo
100% Hi


8
Off
25% Lo
100% Hi


9
100% Hi
25% Lo
Off



Da waren aber die Winkel, die der Rotor beim langsamen Durchschalten der Schritte machte, nicht gleich. Auch das Haltemoment in den einzelnen Schritten war nicht gleich. Ich habe es auch durch Verändern der PWM-Werte nicht hingebracht.

Dann noch ein Versuch mit 6 Schritten:



Phase/
Schritt
A
B
C


1
100% Hi
15% Lo
15% Lo


2
15% Hi
15% Hi
100% Lo


3
15% Lo
100% Hi
15% Lo


4
100% Lo
15% Hi
15% Hi


5
15% Lo
15% Lo
100% Hi


6
15% Hi
100% Lo
15% Hi



Hier waren immerhin alle 6 Schritte vom Stromfluß gleichwertig, auch die Winkel waren gleichmäßig und das Haltemoment auch.

Dennoch, ich komme einfach nicht auf Geschwindigkeiten.

Das Maximum an Geschwindigkeit, bevor der Motor aussteigt (er muß immer noch wie ein Schrittmotor dem stur erzeugten Feld folgen), liegt bei 350 U/min. Dabei haben die Phasenströme, mit dem Oszi gemessen, immer noch etwa eine Rechteckform. Die Induktivität der Motorspulen ist es also eher nicht.

Ein Modellbau-BL-Regler holt mit der gleichen Betriebsspannung gut 2000U/min raus. Ohne daß dabei viel Strom in der Betriebsspannung fließt oder der Motor über Gebühr warm wird.

Was mach ich falsch?