PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Drehmomentwelligkeit bei BLDC-Motoren, Drehzahl nahe Null



kritias
24.08.2010, 12:32
Hallo,

Ich habe folgendes Problem: Bei meinem eigenbau-Segway verwende ich zwei Felgenmotoren. BLDC, 36V, 1kW je Motor. Bei der Ansteuerung verwende ich im Moment Blockkommutierung. So lange ich auf ebener Fläche rumfahre funktioniert das auch einwandfrei. Mein Problem tritt auf, wenn ich z.B. langsam einen Randstein hochfahren möchte. Die Räder beginnen sich zu drehen, bis Kommutiert werden muss. Beim Kommutieren bricht das Drehmoment kurz ein, was zur Folge hat, daß sich das ganze Teil wieder rückwäts bewegt. Das löst dann natürlich erneut ein Kommutieren aus. Das geht so schnell daß der ganze Motor Pfeift, ohne jedoch ein nennenswertes Drehmoment zu erreichen.

Ich habe nun bei einem Testmotor zusätzlich 3 weitere Hallsensoren eingebaut und zu einem Signal zusammengefasst. Ich kann jetzt also alle 30° anders Kommutieren (30° Elektrisch). Ich habe auch einen neuen Motorregler gebaut der jetzt einen Sinus (in 30° Schritten) vorgibt. Ein glattes Drehmoment habe ich aber noch immer nicht erreicht.

Jetzt meine Frage: Hat sowas schonmal einer gemacht? Brauche ich noch mehr Sensoren? Kann ich das Problem überhaupt lösen? Es geht immerhin dauernd um eine Drehzahl knapp über 0. Sobald das Ding fährt ist auch die Blockkommutierung problemlos.

PICture
24.08.2010, 17:11
Hallo kritias!

Ich habe bisher nur mit schwachen BLCD Motoren aus PC Lüfter "gespielt" und kann ich dir praktisch nicht helfen. Theoretisch werden BLCD Motoren von Haus aus innen gebremst, was vor allem bei sehr niedriger Drehzahl spürbar ist.

Probiere, bitte, einen kleinen sogar unbeströmten BLCD Motor mit der Hand zu drehen. Hoffentlich spürst du deutlich Stellen, wo er gebremst wird. Dieses Bremsen bei "stärkeren" Motoren ist einfach stärker und ich sehe theoretisch keine Chance um das zu beseitigen ... :(

Theoretisch könnte Spannung-/Stromerhöhung bei niedriger Drehzahl helfen.

MfG

kritias
24.08.2010, 19:54
Ne ne..
Das ist was völlig anderes. Wenn ich einen der Motoren von Hand durchdrehe dann ist da keinerlei Rastmoment spürbar. Auserdem sind das 54Polige Motoren. Im Prinzip sind das Drehstrom-Syncron-Motoren. Nur die dortige Läuferwicklung ist mit Dauermagneten ersetzt. Die PC-Lüfter die ich bisher geöffnet hatte waren da etwas anders gebaut. Ich sah dort nur 4 Wicklungen. Eine gerade Anzahl an Wicklungen ist aber kein echter Drehstrom Motor. Mal abgesehen von der Leistungsklasse. Meine Motoren habe ich als 1000W Motoren gekauft. Das bedeutet, je nach ED können die auch noch deutlich mehr. Das ist mir mal im Fehlerfall passiert. Da hat mir das Teil einen Schreibtisch zerlegt.
Mein Problem ist, daß ich ein gleichmässiges Drehmoment, auch bei Drehzahl 0 brauche.

Anbei mal ein Foto. Damit man sieht um welche Motoren es geht.

avion23
25.08.2010, 12:00
Hallo kritias,
Respekt! So ein Regler ist nicht einfach!

Kannst du versuchen, das Feld einfach weiter zu drehen? Vielleicht kommt der Motor doch mit. Also nur testweise die Hallsensoren bei Drehzahl nahe null nicht auswerten und das Feld "von Hand" weiter drehen.

Richard
25.08.2010, 14:03
Anbei mal ein Foto. Damit man sieht um welche Motoren es geht.

Sehr schön, kannst Du Preise/Rad/Motor nennen?

Gruß Richard

Hessibaby
25.08.2010, 15:32
Wenn der Motor 54-polig ist hast Du also 18 Polpaare (da Drehstrom), somit ist der kleinste "Schritt" 20° . Auf den geschätzten Umfang von ca 1200mm bezogen muss Du in einem Schritt 66mm Wegstrecke bewältigen bevor das nächste Polpaar aktiv werden kann.
Von den Frequenzreglern für "normale" Drehstrommaschinen habe ich in Erinnerung dass man die Spannung bei geringen Drehzahlen erheblich reduzieren muss damit die abgearbeiteten (also die gerade abgeschalteten) Pole nicht zu stark aufmagnetisiert werden und somit das Drehmoment schwächen.
Mit welcher Signalform steuerst Du ? Treppenspannung (also Trapezförmig mit n-Stufen) oder reines Rechteck ?

kritias
25.08.2010, 17:30
Pro Motor habe ich 90USD bezahlt. Da war dann der Reifen mit dabei. Das teure war der Transport und Zoll. Ich habe die Motoren selbst aus China Imprtiert.

Jetzt zu der Anzahl der Pole. Bei einem 2-Poligen Motor habe ich 6 Positionssignale pro Umdrehung. Bei meinen Motoren bekomme ich 138 Positionssignale pro Umdrehung. Also entsprechen bei meinem Motor 27 elektrische Umderhungen einer Mechanischen Umdrehung. Ich dachte immer das bedeutet dann 54-Polig. Kann mich aber auch irren. Laufen tut er trotzdem.

Bei den derzeitigen Reglern verwende ich Blockkommutierung mit PWM. Das einfachste eben.

Bei der Nächsten Reglergeneration möchte ich einen Sinus in 12 Stufen abfahren. Natürlich auch mit einer PWM. Wie sonst? Bei meinen ersten Versuchen zeigte sich jedoch auch ein Drehmomenteinbruch wenn der Wechsel von einer auf die andere Stufe kommt. Natürlich reduziere ich bei geringen Drehzahlen auch die Spannung über die PWM.

Leider habe ich jetzt aus Unachtsamkeit meinen Versuchsregler zerstört. Jetzt muss ich erst mal schauen wo ich einen neuen Atmega168 herbekomme. Der R hat den auf einmal nicht mehr da.

ranke
25.08.2010, 21:08
Für mein Dafürhalten kommt das Problem daher, dass der Zeitpunkt (bzw. der mechanische Drehwinkel) für die Kommutierung zu früh gewählt ist. Offenbar ist das Drehmoment in der alten Bestromung noch stärker als in der neu geschalteten, der Motor dreht daraufhin zurück in die alte Bestromung und so fort.
Ich vermute dass es genügen würde die Kommutierung etwas später auszuführen, möglichst genau zu dem Drehwinkel, bei dem das Drehmoment in der alten und in der neuen Bestromung gleich ist. Das könnte z.B. durch mechanischen Versatz der Hallsensoren oder elektrisch durch eine drehzahlabhängige Verzögerungszeit erfolgen oder durch einen zweiten Satz Hallsensoren für niedrige Drehzahl.
Die letzten beiden Varianten hätten noch den Vorteil, dass bei hohen Drehzahlen zum Originalzeitpunkt kommutiert werden kann. Bei hohen Drehzahlen ist die verfrühte Kommutierung sinnvoll, weil sich die Strangströme wegen der Wicklungsinduktivitäten erst verzögert aufbauen.

kritias
25.08.2010, 22:19
Anbei mal eine Grafik die mein Problem etwas Verdeutlicht.
Bisher verwende ich Blockkommutierung. Das sind die grob gestrichelten Linien.
Ideal währe natürlich ein richtiger Sinus. Das währe die kleinere gestrichelte Linie.
Ich habe einen Versuchsmotor mit zusätzlichen Hallsensoren ausgerüstet. Damit kann ich jetzt die feinere Abstufung vorgeben. Das sind dann die durchgezogenen Linien. Ich kann sogar jede einzelne Stufe noch anpassen. Meinen "Beinahe-Sinus" also etwas verzerren.
Aber auch das bringt nichts. Alle 30° ist ein Drehmomenteinbruch spürbar. Weit weniger deutlich als bei der Blockkommutierung alle 60° aber er ist da.

ranke
26.08.2010, 19:59
Dein Diagramm bestätigt meine schon gestern geäußerte Vermutung: Du kommutierst zu früh.
Die Blockkommutierung ist 30° vor der gepunkteten Sinuslinie, bei der Stufenkommutierung bist Du noch 15° zu früh.

kritias
27.08.2010, 14:01
Ich habe da beides auch schon in 30°(60°) Schritten in beide Richtungen verschoben. Einfach um rauszukriegen mit welchem Winkel der Motor am besten läuft. Wenn man das zu weit nach vorn verschiebt läuft der Motor irgendwann halt nicht mehr. Bei den Winkeln mit denen der Motor läuft hat das Einfluss auf Stromaufnahme, Drehmoment und Höchstdrehzahl. Einen Einfluss auf die Drehmomentwelligkeit habe ich nicht bemerkt.

PICture
27.08.2010, 16:12
Hallo!

Ich denke, dass es nur mit Verkürzung des Wegs zwischen Polen, also Vergrösserung der Anzahl von Polen, und Erhöhung der Schaltfrequenz möglich wäre ... ;)

MfG

RP6conrad
27.08.2010, 20:48
Ich glaube das Problem kan nicht gelost werden durch die elektrische Ansteurung zu optimieren. Das Moment ist auch in eine Kommutierung nicht konstant. Oder du muss das minimale Moment wahrend Kommutieren aczeptieren als "Normales Moment". Dan muss das moment nach unten geregelt werden auf alle andere Motorstanden. Eine analoge Sensoric ist dan notwendig (immer exacte stand von rotor erfassen, auf 1° genau). Aber wahrscheinlich wird dan das Motormoment zu niedrig. den original Segway hat eine Getriebe, wahrscheinlich um das Moment zu erhohen und die Regelung zu verbessern.

PICture
27.08.2010, 22:59
Hallo RP6conrad!

Deine logische für mich Erklärung mit einem Getriebe, die virtuell den Abstand zwischen Polen verringert, scheint meine ganz theoretische Überlegung zu bestätigen ... :)

MfG