Continue to Site

# Why and how is PWM implemented in Field Oriented Control (FOC) ?

Status
Not open for further replies.

##### New Member
Hi everyone,

I am trying to understand and implement FOC algorithm in MATLAB for a PMSM. I understand we are converting the 3 phase stator currents into 2 time-invariant stator currents: (direct and quadrature currents or Id and Iq, respectively). But I do not unsderstand how PWM is applied here since PWM can only alternate between High and Low currents but I do not understand why this is required or how it will help in torque control since. I thought the PI controllers adjusted Id and Iq to be the same as the reference currents and then inverse Park transform and inverse Clarke transfroms would be applied to get 3 phase voltages. PWM shouldn't be used since we are feeding 3 phase voltages into the stator. So what is the function of PWM here ? What does it do ? Please your help would be really appreciated since I am struggling a lot with this. Thank you in advance.

Also could someone explain me how the PI controllers manage to convert currents into voltages to be fed into the inverse Park transform ?

Also why is Space Vector PWM (SPWM) employed ? what makes is that good ? (Could you also point me to a source (preferably academic) which explains SVPWM ?

Last edited:
With a PWM waveform feeding in to an inductive load (or load filter), the effective voltage is proportional to the DC supply * the mark-space or high-low ratio percentage of the PWM signal.

You say the system feeds "three phase voltages into the stator" - the PWM system is how the [varying] voltages are created from a fixed DC supply.

The PWM frequency must be high enough so the load inductance does not pass much current at that frequency.

PWM is a way of functionally providing a variable voltage with very low losses, possibly somewhere around 5% or less loss in a good design.
An analog system to do a similar thing may have near 50% power loss in the control electronics.