带通和带阻滤波器的仿真
在射频通信系统中,无论发射机还是接受机都需要选择特定频率的信号进行处理,滤除其它频率的干扰信号。
在射频通信中需要使用滤波电路用来分离有用的信号。
通常滤波器是具有频率选择性的双端口器件。
由于谐振器的频率选择性,所以规定的频率信号能够通过器件,而规定频率信号以外的能量被反射,从而实现频率选择的功能,是一种只传输指定频段信号,抑制其他频段信号的电路。
1.滤波器的分类
滤波器分为无源滤波器和有源滤波器两种,无源滤波器由电感L、电容C及电阻R等无源元件组成;有源滤波器一般由集成运放与RC网络构成、性能稳定等优点,同时,由于集成运放的增益和输入阻抗都很小,输出阻抗很低,故有元滤波器还兼有放大与缓冲作用。
利用有源滤波器可以突出有用频率的信号,衰减无用频率的信号,抑制干扰和噪声,以达到提高信噪比或选频的目的,因而有源滤波器被广泛应用于、通信、测量及控制技术中的小信号处理。
从功能上有源滤波器分为,低通滤波器(LPF)、高通滤波器(HPF)、带通滤波器(BPF)、带阻滤波器(BEF)、全通滤波器(APF)。
该仿真实验,主要讨论在ADS软件和Matlab软件下进行带通和带阻滤波器的相关参数和性能的仿真。
2.在ADS软件下带通滤波器的S参数仿真
带通滤波电路可以由电感L、电容C及电阻R的串联电路来构成,电路图如图2.1所示。
图 2.1
新建工程,选择【File】→【New Project】,系统出现新建工程对话框。
在name
栏中输入工程名。
单击OK,完成新建工程,此时原理图设计窗口会自动打开。
根据电路图要求,在左边选择要用的器件,连接好电路,设定频率范围为
0.1GHZ-10GHZ,选择S11进行仿真,仿真后的S11、S21图如图所示:
图(2.2) 带通S11参数
图(2.3) 带通S21参数
S 11(S22)参数是输入、输出端口的反射系数,由它可以换算出输入、输出的反射系数,由它可以换算出输入、输出端的电压驻波比。
如果反射系数过大,就会导致反射损耗增大,并且影响系统的前后级匹配,使系统性能下降。
S21(S12)是传输参数,滤波器通带、阻带的位置以及衰减、起伏全都表现在S21(S12)随频率变化曲线的形状上。
2.1 在Matlab 下的带通滤波器的电压传输特性曲线
滤波电路的特性可由传递函数来描述。
传递函数是输出与输入信号电压之比。
使用参数R=20欧、L=5nH 、C=2pF ,RL=RG=50欧,根据带通滤波电路各元件的串联关系,可得负载电压与源电压的电压传递函数为:
)
1
()()(C
L j R R R R H L G L
ωωω-
+++=
(2.1)
由公式(2.1)可得电压传递函数曲线:
图(2.1.1)电压传递函数曲线
由曲线可知在10GH 时电压传递系数模值是最大,因此在角频率10GH 时传输效果最好。
2.2 在Matlab 下的带通滤波器的电路衰减曲线
带通滤波器的衰减可以由:
)(20-ωωαH Lg =)( (2.2)
带通滤波器的衰减如图所示,当角频率为10GH 时电路衰减是最小的,图中获得的衰减是从信号源到负载的功率衰减,并且考虑了信号源内部的损耗。
图(2.2.1)电路衰减曲线
3. 在ADS 下的带阻滤波器的S 参数仿真
带阻滤波电路可以由电感L、电容C及电阻R的并联电路来构成,电路图如图3.1所示。
图3.1
新建工程,选择【File】→【New Project】,系统出现新建工程对话框。
在name栏中输入工程名。
单击OK,完成新建工程,此时原理图设计窗口会自动打开。
根据电路图要求,在左边选择要用的器件,连接好电路,设定频率范围为0.1GHZ-10GHZ,选择S参数进行仿真,仿真后的S11、S21图如图所示:
图(3.2) 带阻S11参数
图(3.3)带阻S21参数
3.1在Matlab 下的带阻滤波器的电压传输特性曲线
由电感L 、电容C 及电阻R 的并联电路可以构成带阻滤波电路,根据电路串联并联计算,可以得到对于带阻滤波电路从信号源到负载的电压传递函数:
)1(11)(L
C j R R R R v v H L G L
i
O ωωω-++
+==(3.1)
使用参数为:R=20欧、2k 欧,L=5nH 、C=2pF ,RL=RG=50欧时的电压传递系数曲线为:
图(3.1.1)电压传递系数曲线
由曲线可知电压传递系数在谐振频率附近对频率的变化更敏感。
同时在绘图过程中发现了课本中的谐振频率的错误,课本中的图像给出谐振频率为10GH 而应该为0.01GH 。
3.2 在Matlab 下的带阻滤波器的电路衰减曲线
带阻滤波器的衰减可以由公式可得,根据参数可得R=20欧、2k 欧时的电路衰减曲线为:
图(3.2.1)电路衰减曲线
由曲线可知带阻电路的阻带随电阻R的增大而变窄。
显然电阻R越大意味着LC 谐振电路的损耗越小,电路具有更高的品质因数。
附录
图(2.1.1)程序:
w=1:1:100;
c=50./(120+j*(5.*w-10.^3./(2.*w)));
d=abs(c);
e=-20*log(d);
plot(w,e)
xlabel('w/GH')
ylabel('µç·˥¼õ' )
[a,b]=ginput
图(2.2.1)程序:
w=1:1:100;
a=linspace(1,1,100);
c=50./(120+j*(5.*w-10.^3./(2.*w)))
d=abs(c)
plot(w,d)
xlabel('½ÇƵÂÊw/GH')
ylabel('µçѹ´«µÝϵÊýÄ£Öµ')
[a,b]=ginput
图(3.1.1)程序:
w=0.000001:0.000001:0.1;
b=50./(100+1./(1/20+i*(2.*w-1./(5.*w.*10.^3))));
d=50./(100+1./(1/2000+i*(2.*w-1./(5.*w.*10.^3)))); c=abs(b);
plot(w,c,'r')
hold on
e=abs(d);
plot(w,e)
xlabel('w/GH')
ylabel('µçѹ´«µÝϵÊýÄ£Öµ')
legend('R=20Å·','R=2kÅ·');
图(3.2.2)程序:
w=0.0000001:0.0000001:0.1;
b=50./(100+1./(1/20+i*(2.*w-1./(5.*w.*10.^3))));
d=50./(100+1./(1/2000+i*(2.*w-1./(5.*w.*10.^3)))); c=abs(b);
f=-20*log(c);
plot(w,f,'r')
hold on
e=abs(d);
g=-20.*log(e);
plot(w,g)
xlabel('w/GH')
ylabel('Ë¥¼õϵÊý')
legend('R=20Å·','R=2kÅ·');。