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.

Current PI out Problem!

Hi, I'm using EMj04,08 (SPMSM ) & TMDSHVMTRPFCKIT v2.1 & HVPM_Sensored_Servo code.

I found a strange phenomenon while driving motor to create algorithm. attached code & CCS debug window.

I defined Vd&Vq below, because of pi_id,iq.out * base_vol = real Vd&Vq.

(I use base_vol 30V/sqrt(3) instead of  300V/sqrt(3), real DC bus voltage is 300V.)

Look at the debug window. Always SpeedRef = _IQ(0.33333)!

But!!!! vd&vq value, namely pi_id.out & pi_iq.out are different at same speed as shown below.


Theoretically, Vd = -wr*Lq*Iq to make Id = 0 in steady state!

Sometimes even D-axis PI controller out(Vd) is positive value!!!!!!!

why does this happen?

I think if SpeedRef is constant, whenever I run motor, pi controller out(vd,vq) should be always consistent.

Because I use Vd,Vq command to my algorithm, I have to solve this problem.



please answer detailed explanation!!

  • Hello,
    I am writing to let you know that a C2000 team member has been assigned to this post and should be answering shortly.

    Regards
    Baskaran
  • As reply to your another post. The Vd and Vq did not keep a constant value which is a ideal state, just near a constant value if there is no nay changes on run status, for example, input voltage, load, reference, motor shaft friction. This is for both Vd and Vq output though you set the reference speed to a constant value, Vq depends on motor load also.
    The Vd will be near the Zero if the rotor angle is correct for SPM without saliency, but will be higher or lower than Zero if the rotor angle is not correct.