# PMSM motor current calculated by D axis and Q axis current

Now, I know d and q axis current can be calculated by phase current ia, ib, ic in a PMSM, via clarke transform and park transform.

ialpha = sqrt(2/3) * (ia - ib / 2 - ic / 2)

ibeta = sqrt(1/2) * (ib - ic)

id = ialpha * cos(theta) + ibeta * sin(theta)

iq = ibeta * cos(theta) - ialpha * sin(theta)

Now, if motor running at a steady state, id and iq should be in DC form.

But how to calculate RMS of phase current ia,ib,ic by id,iq.

I think RMS(ia) = RMS(ib) = RMS(ic) = K * sqrt(id^2 + iq^2)

What is the value of K.

• You already have to measure them: ia, ib, ic prior to transform in d,q-coordinate system. ia, ib, ic are peak values - so a RMS value is Ia_rms = ia/sqrt(2) -> K=1/sqrt(2); – Marko Buršič Mar 3 at 9:56
• If a motor is labeled : rated current 1A, peak current 3A. So, I should limit the value sqrt(id^2 + iq^2) <= 3 * sqrt(2) = 4.24A ? – Hyz Yuzhou Mar 3 at 11:58

If you have your $$\i_d\$$ and $$\i_q\$$ currents, you can perform the inverse Parks-transformation (thus you obtain the $$\i_\alpha\$$ and $$\i_\beta\$$ currents) and subsequently the inverse Clarke-transformation. Then you have the three sinusoidal currents $$\i_a\$$, $$\i_b\$$, and $$\i_c\$$, which have the same amplitude and a phase difference of 120° to each other.
The RMS value of a sinusoidal signal is easy to derive, and it is given by $$\\frac{A}{\sqrt{2}}\$$, where $$\A\$$ is the amplitude of the signal.