BLDC Halteregelung?

Gast #6416705
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
(Firma: matzetronics) #6416749
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.
Gast #6416802
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.
Gast #6416807
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 ;-)
Gast #6416908
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
Gast #6417060
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.
Gast #6417662
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
#6417678
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
(Firma: matzetronics) #6417701
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.