Forum: Digitale Signalverarbeitung / DSP / Machine Learning BLDC dreht nicht mit voller Drehzahl trotz 100% Duty


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Aaron K. (aaron_b_k)


Angehängte Dateien:

Lesenswert?

Hi,

ich implementiere derzeit eine BLDC-Drehzahl Regelung. Derzeit bin ich 
noch am Programmieren der Drehzahlsteuerung ohne das Rückführen einer 
Messgröße.

Verwendet wird folgende Hardware:

dsPIC33CK64MP206 (µC)
DRV8323HRTA (BLDC-Treiber, hebt im Grund nur die Pegel an)
JK42BLS04 (Motor)

Mein Problem ist, dass ich nicht die maximal angegebene Drehzahl von 
4000min^-1 erreiche.

Die gemessene Frequenz der Trapezspannung beträgt ca. 400Hz. Die 
Polpaarzahl des Motors ist 8. Mit der Formel:

Drehzahl_mechanisch = Frequenz/Polpaarzahl*60

Errechne ich eine Drahzahl von 3000min^-1. Mit einem Baugleichen Motor 
habe ich dieselbe Messung getätig. Bei einem weiteren BLDC-Motor-Typ 
habe ich eine ca. 1200min^-1 niedrigere Drehzahl, als die maximal 
angegebene gemessen.

Im Anhang ist noch ein Bild meines Signals.

Kann mir jmd. weiterhelfen?
Danke im Vorraus für alle Antworten :)

von Vorname N. (mcu32)


Lesenswert?

Wie behandelst du die auftretende Gegeninduktion?

von Aaron K. (aaron_b_k)


Lesenswert?

Wie meinst du? Software oder Hardwaretechnisch?

von Vorname N. (mcu32)


Lesenswert?

Eher Hardwaretechnisch. Bei steigender Drehzahl steigt auch die 
Gegeninduktion.
Das heißt, die Spannung die an deinem Motor von dir angelegt wird 
entspricht nicht der ankommenden Spannung da die Gegeninduktion diese 
reduziert.

von Aaron K. (aaron_b_k)


Lesenswert?

Das macht Sinn!
Wie muss ich das beachten? Oder wie kann ich dem entgegenwirken?

von Aaron K. (aaron_b_k)


Lesenswert?

Ich habe das Problem soeben gelöst. Ich habe anstatt der Polpaarzahl die 
Polanzahl zur Berechnung der Drehzahl verwendet...
Trotz allem Danke :)

von abc (Gast)


Lesenswert?

Ansonsten kannst du noch Feldschwächebetrieb implementieren wenn du mehr 
Drehzahl gegen weniger Effizienz und maximales Drehmoment eintauschen 
willst.

von Vorname N. (mcu32)


Lesenswert?

Aaron K. schrieb:
> Ich habe das Problem soeben gelöst. Ich habe anstatt der
> Polpaarzahl die
> Polanzahl zur Berechnung der Drehzahl verwendet...
> Trotz allem Danke :)

Dann berücksichtigt die von dir verwendete Steuerung das bereits :)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.