After my previous question Why the triangle reference wave is used in PWM for sine modulation I still have some troubles on one particular point of natural sampled PWMs or more precisly SPWM.

My question is: Why the intersection points between the carrier and the reference wave are the "hot spots" where the width of the PWM is calculated?

In all the literature that I read no one mentions why the comparison works and what is the core meaning behind it. In fact every paper and PWM related article states something on those lines:

The output \$V_0\$ of each comparator has a "high" level whenever the instantaneous input reference level exceeds the timing wave level and a "low" level when the reference is exceeded by the timing wave, resulting in a PWM waveform,...[1]

When the reference waveform is greater than the carrier waveform, the phase leg is switched to the upper DC rail. When the reference waveform is less than the carrier waveform, the phase leg is switched to the lower DC rail... [2]

I'm searching meaning behind those types of statements and the only thing that comes to my mind is that:

1) integrating a square (on it's period) produces a half triangle $$ + $$ 2) the technique behind PWM is to reproduce the average value of the reference wave in small \$\Delta t \$'s (over and over) $$\Downarrow$$ intersecting the reference wave with the carrier (that represents the area of a full pulse (1)) produces the point where the width of the pulse has to stop to represent the avg value of the reference wave for that period (\$\Delta t \$ (2)).

$$ $$

[1] "Pulsewidth Modulated Inverter Motor Drives with Improved Modulation" IEEE Transactions on Industry Applications Volume IA-11 issue 6 1975 Zubek Jacob; Abbondanti Alberto; Norby Craig J.

[2] D. Grahame Holmes, Thomas A. Lipo "Pulse Width Modulation for Power Converters Principles and Practice"-Wiley-IEEE Press (2003)

  • \$\begingroup\$ Because that's where the comparator output changes state and therefore the width of the 0/1 pulses. The mark/space ratio represents the amplitude of the wave being sampled. \$\endgroup\$
    – user16324
    Apr 3, 2020 at 18:13
  • \$\begingroup\$ @Brian I don't think this is the solution because you are reling on HW which implements the concept/theory I'm searching \$\endgroup\$ Apr 3, 2020 at 18:19
  • \$\begingroup\$ Well that hardware is precisely the triangle wave generator and the comparator which finds those intersections. Without that hardware the triangle waveform has no meaning. So it is entirely unclear what you are looking for except perhaps an abstract statement like "the value of some arbitrary input signal between 0 and 1 can be closely approximated by the duty cycle of a high frequency series of pulses of value 0 and 1". \$\endgroup\$
    – user16324
    Apr 3, 2020 at 18:29
  • \$\begingroup\$ I'm trying to find the mathematical/theoretical reason behind this procedure in the same way as the Fourier transform is the one that "explains" why a RC component is a filter. The role of the comparator with the triangle wave is clear, what I don't understand is why this setup works and why it is able to find the width? \$\endgroup\$ Apr 3, 2020 at 20:08
  • 1
    \$\begingroup\$ It finds the width representing an amplitude because a triangle wave, being a straight line from (t0,0) to (t1,1), provides a linear relationship between time and amplitude. That's really all there is to it. \$\endgroup\$
    – user16324
    Apr 3, 2020 at 20:31

1 Answer 1


it works because the triangle is much faster than the sine and is made out of straight lines, so the comparing the triangle with the sine makes a pulse that have a width that is approximately proportional to the height of the sine.


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.