How to plot a capacitor charging and discharging

조회 수: 120 (최근 30일)
Brian Hoblin
Brian Hoblin 2016년 11월 30일
답변: Brian Hoblin 2016년 11월 30일
I'm trying to plot the charging and then discharging of a capacitor in a simple RC circuit. I need it to be 3 complete cycles a 1kHz. The code I wrote just gives me 6 separate line segments. I can see why I'm not getting the plot that I want but I don't know how to get the plot that I want. Could anyone help me out with this please? Here is my code. I have all of the component values listed in the code. Like I said, it's pretty obvious why it's wrong. I just have no idea how to make it right.
t1=0:0.00001:0.005;
t2=0.005:0.00001:0.01;
t3=0.01:0.00001:0.015;
t4=0.015:0.00001:0.02;
t5=0.02:0.00001:0.025;
t6=0.025:0.00001:0.03;
v=5;
r=10e3;
c=10e-7;
tau = r*c;
v1=v.*exp(t1/tau);
hold on
v2=v.*exp(-t2/tau);
hold on
v3=v.*exp(t3/tau);
hold on
v4=v.*exp(-t4/tau);
hold on
v5=v.*exp(t5/tau);
hold on
v6=v.*exp(-t6/tau);
hold on
plot(t1,v1,t2,v2,t3,v3,t4,v4,t5,v5,t6,v6)
hold on

채택된 답변

Brian Hoblin
Brian Hoblin 2016년 11월 30일
Thank you. That did get me to one continuous plot. I have some serious work to do with the domains but I think I can handle that. Thanks.

추가 답변 (1개)

Preethi
Preethi 2016년 11월 30일
hi,
Since you are using separate variables which doesn't have any common values you might be getting separate lines. Try this at the end, you can remove 'hold on' also
t=[t1,t2,t3,t4,t5,t6];
vf = [v1,v2,v3,v4,v5,v6];
plot(t,vf)

카테고리

Help CenterFile Exchange에서 Circuits and Systems에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by