Hallo, ich habe mal eine Frage an das Forum bez. eines Algorithmus für eine Drehmoment Halteregelung bei Drehzahl 0 mit BLCD Motor & Hall Sensoren. Der zum Betrieb des Motors laufenden FOC Algorithmus ist dazu nicht direkt in der Lage den Motor bei Stillstand genau in der aktuellen Position festzuhalten. Es gibt zwar einen übergeordneten Lageregler für die Positionierung, der ist aber zu ungenau um einzelne Hall Sensorschritte des Motors zu erkennen. Dh. wenn ein Drehmoment auf den Motor von außen wirkt kann der sich leicht verdrehen. Welche Vorgehensweise kann man anwenden den Motor an einer genauen Position festzuhalten? Gruss PB
Die Sensoren dienen bei FOC meist nur zur Resynchronisierung eines Sektorbeginns. Um den Motor genau an einer bestimmten Stelle zu halten, musst du entweder den errechneten Drehwinkel zwischenspeichern oder den Schritt in deiner Sinustabelle, je nach verwendetem Algorithmus. Die Routine, die aus dem Drehwinkel die drei Spannungen der Endstufe berechnet, wird dann mit dem gespeicherten Drehwinkel gefüttert. Allerdings gilt das nur innerhalb der meist 6 Sektoren eines Zyklus. Es gibt als alle 6 Sektoren eine Mehrdeutigkeit. Um die zu vermeiden, müsstest du einen absoluten Drehgeber mit der Maschine koppeln.
:
Bearbeitet durch User
PB schrieb: > Es gibt zwar einen übergeordneten Lageregler für > die Positionierung, der ist aber zu ungenau Das ist das Problem, das es zu lösen gilt. Georg
Klingt nach einer Gimbal-Ansteuerung. Da werden auch BLDC zum (schnellen) Positionieren verwendet. Man müsste doch eigentlich "nur" die drei Phasen so mit Strom versorgen, dass eine entsprechende Position eingenommen wird. Bei drei Phasen sind die Positionen auf einem Kreis eindeutig.
Es reicht innerhalb der 6 Stufen , in dem Fall 90° mechanisch am Motor die Position zu halten. Den Ansatz dafür den Winkelbereich und dazu einen ansteigenden Strom je nach Abweichung einzuprägen habe ich auch in Betracht gezogen. Wird wohl immer auf diese Vorgehensweise rauslaufen. @ georg (Gast) , das wird bei einem hoch übersetzen Getriebe schwierig bis zum Motor spielfrei zu bleiben, man hat immer etwas Zahnspiel, so dass der Lagesensor am Getriebeausgang keine Änderung misst obwohl sich der Motor leicht verdreht.. das ist so wie bei der Unendlichkeitsmaschine ;-)
PB schrieb: > man hat immer etwas Zahnspiel Das mag ja sein, aber wenn man die Position sowieso nicht genau kennt, dann ist es doch auch egal, wenn sie sich innerhalb des gegebenen Spielraums verstellt. Oder geht es nur um Stillstand egal wo? Georg
georg schrieb: > Oder geht es nur um Stillstand egal wo? Ja. PB schrieb: > Halteregelung bei Drehzahl 0
@ georg (Gast) ja der Motor muss die Position halten auch wenn er unter Drehmoment von aussen stoppt.
STK500-Besityer schrieb: > Bei drei Phasen sind die Positionen auf einem Kreis eindeutig. Wenn der Motor mehr Pole hat, dann nicht mehr. Deswegen haben Gimbals Potis oder andere Absolutgeber zur Lagemessung.
Matthias S. schrieb: > Wenn der Motor mehr Pole hat, dann nicht mehr. Deswegen haben Gimbals > Potis oder andere Absolutgeber zur Lagemessung. Meins nicht. Das war aber auch eher "billig". Die Lage wird durch ein Gyroskop (Beschleunigung- und Drehratensensor) "geregelt". Warum den Spaß unnötig kompliziert machen?
Beitrag #6417065 wurde von einem Moderator gelöscht.
moin, der Lageregler arbeitet nicht richtig. Habe hier einen Motor mit 3 Wicklungen und 8 Polpaaren, also 48 Positionen pro Umdrehung. Wenn die Motordrehzahl 0 ist und der Motor von aussen verdreht werden soll, steuert der Lageregle gegen. Je stärker die Verdrehung um so stärker das Gegensteuern. Mit der Steuerung kann der BLDC im Prinzip wie ein Schrittmotor betrieben werden. VG Pieter
PB schrieb: > das wird bei einem hoch übersetzen Getriebe schwierig > bis zum Motor spielfrei zu bleiben, man hat immer etwas Zahnspiel, so > dass der Lagesensor am Getriebeausgang keine Änderung misst obwohl sich > der Motor leicht verdreht.. ...dann bau den Geber doch an die Motorwelle. Da kannst kannst du je nach Übersetzungsverhältnis auch noch "richtig großzügig" regeln. Gruß Rainer
STK500-Besitzer schrieb: > Die Lage wird durch ein Gyroskop (Beschleunigung- und Drehratensensor) > "geregelt". Normalerweise wird für grosse Drehwinkel der Gyro als eine Grösse (Soll) dem Regler zugeführt und die andere Grösse (Ist) ist der derzeitige Winkel der z.B. Kamera. Beide Grössen werden im Regler verrechnet und der stellt am Motor. Sind die Winkel so klein, das der Bereich der 6 Sektoren des Motors ausreicht, kann man auf die Ist Grösse verzichten und verlässt sich drauf, das der Motor schon so stehen wird, wie es ihm die Bestromung vorschreibt.
Aus aktuellem Anlass habe ich heute mal am Gimbal meiner DJI Phantom 2 Drohne rumschrauben müssen. Alle 3 Achsen werden hier mit BLDC Motoren bewegt und haben eine Rückmeldung in Form von 360° Potentiometern.
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.