1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| clc;
clear all;
A=5;%Amplitude du signal
frequ_ech=100000;%fréquence d'échantillonage
t=0:1/frequ_ech:0.02% échelle de temps
i=A.*sawtooth(200*2*pi*t);%signal triangle (porteuse)
s=0.75*A.*sin(2*pi*50*t);%signal sinus (consigne)
pwm=0; %initialisation du PWM
for k=1:length(s)
if (s(k)<=i(k)&&s(k)>0)
pwm(k)=1;
elseif (s(k)<=i(k)&&s(k)<0)
pwm(k)=-1;
end
end
subplot(3,1,1)
plot(t,pwm,'r')
set(gca,'ytick',-6:0.1:6);
subplot(3,1,2)
[AX,H1,H2] = plotyy(t,i,t,s,'plot');
grid on
set(AX(1),'ylim',[-6 6],'ytick',-6:2:6)
set(AX(2),'ylim',[-6 6],'ytick',-6:2:6)
axes(AX(1))
axes(AX(2))
subplot(3,1,3)
[AXy,H3,H4] = plotyy(t,pwm,t,s,'plot');
%grid on
set(AXy(1),'ylim',[-1.5 1.5],'ytick',-1.5:.2:1.5)
set(AXy(2),'ylim',[-6 6],'ytick',-6:2:6)
axes(AXy(1))
axes(AXy(2)) |