This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV8312 Kit - PMSM Sensorless FOC - svgen_dq, f803xpwm_PM, and Speed/Direction Relationship

Hi,

I am trying to understand how I can change the direction of the motor with SVM in the case when the V inputs/angle information is not provided through FOC. The svgen_dq provided with the FOC_sensorless performs the inverse clarke upon Valpha-beta inputs from the inverse park. Is there a common method to provide similar inputs without it? Some specific answers to the following parts would also help:

in svgen_dq.h  

The inverse clarke transform is performed - what is the range of possible values after this step?

How would the sector states map onto the hall sensor states? Would the sector start or end after the state hall sensor has detected? 

The following part checks for the positive phase voltages and determines: 

if (Va>_IQ(0)) Sector = 1; \
if (Vb>_IQ(0)) Sector = Sector+2; \
if (Vc>_IQ(0)) Sector = Sector+4;

and I would expect for t1 and t2 assignments to be positive by assigning -V in the negative sectors (ex t1 = -Vc, t2 = -Vb instead of t1 = Vc, t2 = Vb  in case 1 since both are negative )  but I see that some t1 and t2 are assigned a value that would be negative. Can this additional period length be negative, or am I overlooking a part of the code that is handling the sign?

  • Deniz,

    Reversing the motor direction is basic, and you will find enough literature and text books covering this topic. SVM is used to generate three phase voltages, and the voltages are generated based on two inputs, alpha and beta. Depending on alpha lagging or leading beta voltage, the motor direction will be forward or reverse. Inverse Clarke converts two axis DC quantities in sync frame to two axis AC quantities in stationary frame. SVM converts the two phase AC to three phase AC. Inverse Clarke output max is -1 to 1. SVGEN converts this into 3 phase pulse widths of time Ta, Tb and Tc, which represent the duty cycle for the three phases.

    I recommend you to review some text books on power electronics and motor drives to have a better appreciation.