主要内容

带通滤波器的响应

这个例子展示了如何计算一个简单的带通滤波器的时域响应。计算一个简单带通滤波器的时域响应的八个步骤是,

  1. 使用经典的图像参数设计来分配电感和电容值给带通滤波器。

  2. 使用电路电容器,电感器的对象添加函数以编程方式构造巴特沃斯电路。

  3. 使用setports函数将电路定义为2端口网络。

  4. 使用sparameters函数提取宽频率范围内2端口网络的s参数。

  5. 使用s2tf函数来计算从输入到输出的电压传递函数。

  6. 使用理性的对象生成合理的拟合,以非常高的精度捕获理想的RC电路。

  7. 使用randn函数创建噪声,以创建一个噪声输入电压波形。

  8. 使用timeresp函数计算有噪声的输入电压波形的瞬态响应。

利用图像参数设计带通滤波器

图像参数设计是一种解析计算无源滤波器串并联分量值的框架。有关图像参数的更多信息,请参见Cotter W. Sayre的《完全无线设计》,McGraw-Hill 2008年第331页。

brf_bpf_fig1.PNG

图1:一个由两个半部分组成的巴特沃思带通滤波器。

为一个低3db截止频率为2.4 GHz,高3db截止频率为2.5 GHz的带通滤波器生成分量值。

Ro = 50;f1C = 2400 e6;f2C = 2500 e6;Ls = (Ro / (pi*(f2C - f1C)))/2;% Ls1和Ls2Cs = 2*(f2C - f1C)/(4*pi*Ro*f2C*f1C);% Cs1和Cs2Lp = 2*Ro*(f2C - f1C)/(4*pi*f2C*f1C);% Lp1和Lp2Cp = (1/(pi*Ro*(f2C - f1C)))/2;% Cp1和Cp2

通过编程构造电路

在建立电路之前使用电感器而且电容器电路中的对象和节点被编号。如图1所示。

brf_bpf_fig2.PNG

图2:添加到巴特沃思带通滤波器的节点号。

创建一个电路对象并使用电感器电容器对象的使用添加函数。

电路=电路(“butterworthBPF”);添加(电路(3 - 2),电感器(Ls));% Ls1add(电路,3[4],电容器(Cs));% Cs1添加(电路4[5],电容器(Cs));% Cs2add(电路,5[6],电感器(Ls));% Ls2添加(电路(4 - 1),电容器(Cp));Cp1 %添加(电路(4 - 1),电感器(Lp));% Lp1添加(电路(4 - 1),电感器(Lp));% Lp2添加(电路(4 - 1),电容器(Cp));% Cp2

从2端口网络提取s参数

要从电路对象中提取s参数,首先使用setports函数将电路定义为2端口网络。

频率= linspace (2 e9 3 e9,101);

使用sparameters函数提取感兴趣频率处的s参数。

setports(ckt,[2 1],[6 1]) S =参数(ckt,freq);

电路传递函数与有理函数的拟合

使用s2tf函数从s参数对象生成传递函数。

tfS = s2tf(年代);

使用理性的对象将传递函数数据拟合为一个有理函数。

适合=理性(频率、tfS);

验证有理拟合逼近

使用freqresp函数验证有理拟合近似在拟合频率范围的两侧有合理的行为。

widerFreqs = linspace (2 e8、5 e9, 1001);resp = freqresp(健康,widerFreqs);

绘图以可视化合理拟合近似。在拟合频率范围外,有理拟合表现良好。

图semilogy(频率、abs (tfS)、widerFreqs、abs(职责)“——”“线宽”(2)包含的频率(赫兹));ylabel (“级”);传奇(“数据”“健康”);标题(“理性的”行为符合近似);

图中包含一个axes对象。标题为Rational Fit逼近的axis对象包含两个类型为line的对象。这些对象表示数据,适合。

构造测试带通滤波器的输入信号

为了测试用图像参数技术设计的带通滤波器,从噪声输入信号中恢复了2.45 GHz的正弦信号。噪声输入信号是由包含零平均随机噪声和2.35 GHz阻滞剂的输入信号产生的。

构造一个有8192个样本的输入和一个有噪声的输入信号。

fCenter = 2.45 e9;fBlocker = 2.35 e9;时间= 1 / fCenter;sampleTime = / 16时期;signalLen = 8192;t = (0: signalLen-1) * sampleTime;% 256期输入=罪(2 *π* fCenter * t);%干净输入信号rng (“默认”)噪声= randn(size(t)) + sin(2*pi*fBlocker*t);noisyInput =输入+噪声;输入信号有噪声

计算输入信号的瞬态响应

使用timeresp函数来计算状态空间的解析解。

输出= timeresp(健康,noisyInput sampleTime);

查看时域输入信号和滤波器响应

在图形窗口中绘制输入信号、噪声输入信号和带通滤波器输出。

xmax = t(结束)/ 8;图subplot(3,1,1) plot(t,input)轴([0 xmax -1.5 1.5]) title(“输入”) subplot(3,1,2) plot(t,noisyInput)轴([0 xmax floor(min(noisyInput))天花板(max(noisyInput))]);标题(嘈杂的输入的);ylabel (的振幅(伏));Subplot (3,1,3) plot(t,输出)轴([0 xmax -1.5 1.5]);标题(滤波器输出的);包含(的时间(秒));

图中包含3个轴对象。标题为Input的axis对象1包含一个类型为line的对象。标题为noiseinput的Axes对象2包含一个类型为line的对象。标题为Filter Output的Axes对象3包含一个类型为line的对象。

查看频域输入信号和滤波器响应

在频域中叠加噪声输入和滤波器响应解释了为什么滤波操作是成功的。2.35 GHz的阻滞剂信号和大部分噪声都得到了显著的衰减。

NFFT = 2 ^ nextpow2 (signalLen);%从y的长度取2的下一次方Y = fft (noisyInput NFFT) / signalLen;samplingFreq = 1 / sampleTime;f = samplingFreq / 2 * linspace (0, 1, NFFT / 2 + 1) ';O = fft(输出,NFFT) / signalLen;图次要情节(2,1,1)情节(频率、abs (tfS),“b”“线宽”,2)轴([频率(1)频率(端)0 1.1]);传奇(滤波器传递函数的);标题(带通滤波器的传递函数);ylabel (“级”);次要情节(2,1,2)情节(f, 2 * abs (Y (1: NFFT / 2 + 1)),‘g’f 2 * abs (O (1: NFFT / 2 + 1)),“r”“线宽”,2)轴([频率(1)频率(端)0 1.1]);传奇(“输入+噪声”“输出”);标题(“滤波器特性和噪声输入频谱。”);包含(的频率(赫兹));ylabel (的大小(伏));

图中包含2个轴对象。带通滤波器的传输函数包含一个类型为line的对象。该对象表示滤波器传递函数。轴对象2标题滤波器特性和噪声输入频谱。包含两个line类型的对象。这些对象代表输入+噪声,输出。

要使用rckt对象计算和显示此带通滤波器响应,请参见使用rckt对象的带通滤波器响应

相关的话题

Baidu
map