Thursday, 19 December 2019

Formula/mathematical expression for PWM


For a simple AM, we multiply a low frequency message signal ( \$\sin(t)\$) with a high frequency carrier (\$\sin(10^6t)\$) to produce two high frequency signals :

$$\sin(t)*\sin(10^6t) = \dfrac{1}{2}\left(\cos[(10^6+1)t] + \cos[(10^6-1)t] \right)$$


I'm hoping there exists a similar formula when we do PWM, but wiki and other sources talk about many other things except a formula like above. So I'm posting this question here. How to represent the output of the comparator waveform mathematically ? Like, the input modulating signal is \$\sin(t)\$, and the input triangular waveform may be some piecewise linear function ? Then what will be the expression for the comparator output ? I mean exactly what frequencies does the output contain ? enter image description here



Answer



When modulation Vpp matches triangle Vpp you get 0 to 100% duty cycle and both are within the input Vcm range.


The challenge for fine tuning, if needed , comes from having precise input levels and null or low input offset.


The output frequency is chosen just high enough to prevent LED flicker or motor aliasing with commutation. Usually around 1kHz to 10kHz in some uC with built in PWM or 20kHz to 5MHz for SMPS buck regulators or say >=50kHz for class D audio.


A square wave has only odd harmonics and a narrow pulse has every harmonic up to the period of the pulse and then repeating harmonics up to the period matching the rise time.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...