Date: 2014.2.24
TopicUse Matlab mfile/Simulink to simulate RC circuit
Example 1:
A low pass RC circuit is shown below with R1 R 2 R 3 10 and C 0.01 F .
Let the input signal
be v in (t ) 10sin(2 t ) .
Use Simulink and mfile to simulate the time and frequency responses of this RC
circuit respectively.
R1
vin
+

R3
R2
vout
Before doing simulation, please use to find the transfer function of this
circuit.
Sol:
V out ( s )
V in ( s )
z s 1
p s 1
s 0 : K 0.5 ,
v out (t ) 0 : z 0
V out ( s)
V in ( s )
v in (t ) 0: p
3RC
2
1
1
1
= T(s)
2 3RC s 1 3RC s + 2
2
RC circuit in Simulink:
C ontinuous
powergui
R1
v +

Input
Output1
R3
R2
+ v

Output
Scope
From the simulation result by Simulink, the steady state output response is obtained as
v out (t) = 3.64sin(2t  43.30 )
It can be found that the result obtained by Simulink is the same as that by
.
Bode plot:
To find statespace realization matrices (A,B,C,D) by power_analyze:
[A,B,C,D]=power_analyze('circuit_1')
Then, convert A,B,C,D from the format of array to the system type by ss
Sys=ss(A,B,C(1,1),D(1,1))
The transfer function can be calculated by ss2tf
[n,d]=ss2tf(A,B,C(1,1),D(1,1))
sys=tf(n,d)
The frequency response of this circuit could be obtained by using: bode
bode(sys)
Bode Diagram
0
Magnitude (dB)
10
System: T
Frequency (rad/sec): 6.67
Magnitude (dB): 9.03
20
30
40
Phase (deg)
50
0
45
System: T
Frequency (rad/sec): 6.66
Phase (deg): 45
90
1
10
10
10
Frequency (rad/sec)
10
10
Example 2:
A low pass RC circuit is plotted below with R1 R 2 R 3 10 and C 0.01 F
with the input of v in (t ) 10sin(2 t ) . in the block diagram of this RC circuit and
compare its output signal from that of the previous representation.
R3
R1
+
v1
i1
i2
v2
R2
i3
v3
Sol:
Block Diagram:
i3
v1 +
1
R1
i1 +
v2
R2
v2
+
v3
1
R3
i3
1
Cs
v3
8
6
X: 1.37
Y: 3.639
Amplitude(V)
2
0
2
4
6
8
10
0.2
0.4
0.6
0.8
1
time(s)
1.2
1.4
1.6
1.8
Bode Diagram
0
Magnitude (dB)
10
System: T
Frequency (Hz): 1
Magnitude (dB): 8.8
20
30
40
Phase (deg)
50
0
45
System: T
Frequency (Hz): 1
Phase (deg): 43.4
90
2
10
1
10
10
Frequency (Hz)
Amplitude of output:
output 10 10( 8.8/20) 3.63
10
10
The transfer function of this system could be directly obtained by the function
[num,den]=linmod('Example_HW02_s_2');
T=tf(num,den)
3.33
s 6.667
3RC s 2 0.3 s 2
Moreover, the user could setup the simulation parameters in Simulink through
mfile: simset, sim, plot, hold on
Case 1:
R1=10;R2=10;R3=10;C=0.01;
opt=simset('Solver','ode3');
sim('Example_HW02_s_3',[0 2],opt);
plot(tout,input,tout,output);hold on;
Case 2:
R1=1;R2=1;R3=1;C=0.01;
opt=simset('Solver','ode3');
sim('Example_HW02_s_3',[0 2],opt);
plot(tout,output,'r');hold on;
input
output case 1
output case 2
8
X: 0.2655
Y: 4.978
X: 1.369
Y: 3.639
Amplitude(V)
4
2
0
2
4
6
8
10
0.2
0.4
0.6
0.8
1
time(s)
1.2
1.4
1.6
1.8
(Case 2)
Bode Diagram
0
Magnitude (dB)
10
System: T2
Frequency (Hz): 1
Magnitude (dB): 6.06
20
30
40
Phase (deg)
50
0
System: T2
Frequency (Hz): 1
Phase (deg): 5.4
45
90
1
10
10
10
10
10
Frequency (Hz)
Amplitude of output:
output 10 10( 6.06/20) 0.498
Exercise 1:
A high pass RC circuit is given below with R1 10 , R 2 20 , R 3 30 and
C 0.01 F .
R1
vin
+

R3
R2
vout
Exercise 2:
A high pass RC circuit is given below with R1 R 2 R 3 10 k and C 10 F .
Let the input signal be v in (t ) Asin(2 f t ) 10sin(2000 t ) .
a) Find the block diagram of this circuit and compare the output responses from
these two representations.
ps: use mfile to plot the output responses during the time 0~0.01 sec
b) Use Matlab to find out the transfer function, plot the bode plot and find the
frequency of bandwidth.
ps: mark the frequencies on the plot
c) Plot the output responses from R 0.1, 1, 10, 1000 simultaneously during the
time 0~0.01 sec and discuss the differences in amplitude.
R1
vin
+

R3
R2
vout