MATLAB: Pwm signal generation

electric_motor_controlf2808power_conversion_controlpower_electronics_controlpwmsinus

hi; i want to generate i pwm signal for an inverter. For this, i have a sinus signal which has amplitude btw -5 and +5. But i need to chop its negative intervals. how can i implement this in digital signal processing tools? i will use this in f2808 dsp chip for generating triggering signals to the mosfets..

Best Answer

f=1e3;a0=0;AmpSin=5; %sample wave values
t0=0;tf=0.01;Ts=1e-6; %time vector and resolution
v=0;AmpPwm=1; %Pwm options, increase v for lower dutty-cycle
t=t0:Ts:tf; %create the time vector
fun=AmpSin*sin(2*pi*f*t+a0); %create the function
pwm=AmpPwm*(fun>v); %get the pwm
%plot it just to know if its working
clf
plot(t,fun)
hold on
plot(t,pwm,'r')
Alternative implementation in simulink
Related Question