I intend to control a motor with 3 120° phase shifted sinusoidal signals. I already implemented the SPWM to output a sinus shaped voltage, but i am a little bit confused at how should i implement it with my custom design inverter. The inverter has 3 legs/6 Mosfets which can be controlled indivudally.

I will quickly describe what i have in mind and would appriciate any comment/clarification on if it is a good idea or not.

With a 3 phase sinusoidal signal, the outputs are always a permutation of + + - or - - + (momentary sinus values). If you add them up you should get 0. And the inverter legs are HHL or LLH accordingly(Of course LLH or LHL. etc is possible). Lets take the HIGH-HIGH-LOW case :

Here i thought i can identify the different phase (LOW in this case) and control the other 2 with PWM (according to a look up table). What i am confused at is, is it really necessary to seperately control the 3. leg(which should be low ) ? Cant i just turn on the low side switch fully on, while the other 2 are positive and being controlled by a varying PWM duty cycle. This will function as a current return path and since the sum has to be 0, it will automatically take the value it is supposed to take. And in the LLH case, H-leg will be on as long as the other 2 are L and controlled by PWM. This will be alternated with a state machine.

Please let me know if the way i am thinking is correct. I am aware of more advanced methods like SVPWM (Space vector) but would like to stick to SPWM.

  • \$\begingroup\$ I wouldn't try to reinvent warm water. Better to read some articles and to implement yet working solution. Besides, there are a lot of scientists that do study/invent kinds of types of modulation, so I am sure that what you want to acheive already exists, or maybe not because it doesn't work . \$\endgroup\$ Commented Aug 21, 2017 at 19:33
  • \$\begingroup\$ @MarkoBuršič, i've already read many papers and there are many control schemes proposed but i couldnt manage to find any clear implementation guide. Usually the idea is presented in an abstract, generalized manner and the implementation for a specific case is left to the reader. I do believe i've exhausted my options but would really appriciate if you can point at a useful direction. \$\endgroup\$ Commented Aug 22, 2017 at 7:40

1 Answer 1


Yes you can and this is a common tactic. It significantly reduces switching losses as for 1/3 of the time a leg will not be switching.

It comes with a couple a considerations.

  1. Increase ripple current for the same switching frequency

  2. The starpoint of the load will have a large common mode swing.

If these two points can be tolerated, this discontinuous PWM scheme is viable

  • \$\begingroup\$ thanks for the clarification! Would you mind eleborating the considerations a little bit more. In my case the output will drive a motor(fo a RC car) and i do hope to get a smooth motion especially at low speeds. Would these considerations hinder the performance considerably ? If thats the case, could you poin me to a more favourable direction ? Controlling 3 PWMs is also quite okay for me, just thought the way i described above would be somewhat better. \$\endgroup\$ Commented Aug 22, 2017 at 8:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.