BLDC motor Sinusoidal Control

Hi,

Ik heb een BLDC controller gemaakt mbv een dsPIC33FJ128MC706A welke mbv 6 independent pwm kanalen de IR2184 mosfet drivers aanstuurt volgens de six step commutation. 250W BLDC motor met hall sensoren.

Het geheel draait redelijk maar in het lage toerental loopt de motor niet heel fraai onder zware belasting.. Nu zou ik graag gebruik willen gaan maken van sinusoidal control ipv trapeze vormige aansturing. Dit om rimpels in torque te verkleinen.

Weet iemand hier een goede start voor? Al wat gegoogled over space vector modulation maar snap nog niet helemaal (helemaal niet) hoe ze nu de rotor positie exact bepalen...

Heeft iemand hier ervaring mee? hoeveel beter loopt een motor met deze wijze van aansturen?
Alvast bedankt!

Een andere naam voor "sinusoidal control" is FOC: Field Oriented Control.

ALS je weet waar de rotor staat, dan weet je ook de BEMF. De stroom die dan gaat lopen is I = (Vaangebracht - Vbemf) / R . Door nu de verwachte stroom te vergelijken met de gemeten stroom kan je de rotorpositie schatting bijstellen.

Omdat bij lage toerentallen de BEMF vrijwel nul is, kan je dan heel slecht de rotorpositie schatten. Dan moet je toch weer op de hall sensoren terugvallen.

De hall sensoren geven op 60 graden aan waar de rotor zich bevind. Binnen die 60 graden kan je dus niet de exacte rotor positie bepalen. Dus bij heel lage toerentallen hou je een beetje schokkerig gedrag. Dat kan je alleen wegkrijgen door een encoder te gebruiken.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/