PMSM - Vd,Vq limits

Discussion in 'Automotive Electronics' started by Krzysztof Bieda, Dec 30, 2016.

  1. Krzysztof Bieda

    Thread Starter Member

    Jan 5, 2016
    Hello Everyone,

    I am working on PMSM controller based on FOC algorithm.
    The problem I am facing now has two results in motor performance:

    1. Motor is loaded. When I put load on motor then current goes up to psu limit and voltage drops. Microcontroller restarts and motor stops. How to make motor “fight” with the load?

    2. Top velocity. Nominal velocity of that PMSM is 90 RPM. There is no problem when I run up to 80 RPM, but when I try go above then Vq and Vd limits. I have implemented field weakening – I simply make setId less than 0. It works, but I see oscillations on Vq and sometimes it brakes.

    I think that problem is with Vd and Vq are limited. It should be: Vd*Vd+Vq*Vq <=2760*2760
    I have tried many things, but putting it fixed that Vd =1400 and Vq=2376 works the best.
    My max PWM is 2999, but because of deadTime and measurement time – max is 2760 for control. I made limit on PI controllers that saturates output.
    Has anyone had problem with Vd,Vq limits?

    Screenshoots of my PI control:
    And currents I sense:

    Best regards,