Half Wave Diode Problem
Show older comments


This is a problem I have. Tried solving it but cant seem to figure it out. Am I on the right track?
C=input('What is C');
R=1800%omega;
V0=12%Volts;
f=60%Hz;
w=2*pi*f;
t=linspace(0,70,1000);
n=length(t);
VS=V0*sin(w*t);
VR=V0*sin(w*t(a))*exp(-(t-ta)/(R*C));
for k=1:n;
V(k)=V0*sin(w*t(k));
if VS(k)==VR(k);
iC=w*C*V0*cos(w*t(k));
iR=(V0*sin(w*t(k)))/R;
else VS(k)>=VR(k);
t(a)=t(k);
VR(k)=V0*sin(w*t(a))*exp(-(t(k)-ta)/(R*C));
end
end
figure(1);
plot(t,VR,'B- -',t,VS,'R-');
xlabel('Time (s)');
ylabel('Voltage (V)');
title('Voltage for AC to DC Converter');
legend('Voltage of resistor','Voltage of Source');
Answers (1)
Nishant Gupta
on 18 Dec 2019
0 votes
Few points to be noted:
- Find out the value of ta (point at which source voltage is maximum i.e. V0)
- You are using both ta and t(a).
- In the else statement , you have written t(a) = t(k) which will make the exponent term equal to 1.
- You can't give conditional expression with else , use elseif.
Categories
Find more on MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!