BLDC Block-Kommutierung mit active freewheeling: Schlag bei dutycycle = 0

OP #7514983
Lesenswert?

Ich habe ein merkwürdiges Problem. Die Block-Kommutierung mit active freewheeling funktioniert soweit. Dazu gibt es ja genügend Bespiele, auch hier auf Mikrocontroller.net. Das Problem ist nun, daß ich beim "Gaswegnehmen" einen heftigen mechanischen Schlag im Motor bekomme, wenn das Tastverhältnis der per PWM bestromten Phase 0 wird, während der Motor noch nachläuft. Wenn ich kein active freewheeling mache, also den Low-Side-FET nicht komplementär zum High-Side-FET beschalte, sondern komplett aus lasse, passiert das nicht. Auch wenn einen minimalen DutyCycle stehen lasse nicht. Es geht um einen STM31F031. https://github.com/stancecoke/Lishui9FET

irgendwelche Ideen?

Gruß hochsitzcola

OP #7514996
Lesenswert?

Hm, für Sinusansteuerung mit Center Aligned PWM stimme ich dir zu. Bei Block-Kommutierung floated immer eine Phase komplett. Bei Dutycycle = 0 auf der bestromten Phase liegen zwei Phasen auf GND, das stimmt natürlich. Aber daß der Unterschied zu einem minimalen Dutycycle, in meinem Fall 1/3000 so krass ist ?!

Vor allem, wie verhindert man diesen Schlag? Die PWM auf der Low-Side erst bei einem Duty-Cycle >0 aktivieren? Da habe ich noch nichts zu gelesen...

Gruß hochsitzcola

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren