频分复用.docx
《频分复用.docx》由会员分享,可在线阅读,更多相关《频分复用.docx(20页珍藏版)》请在冰豆网上搜索。
![频分复用.docx](https://file1.bdocx.com/fileroot1/2022-10/11/66d184ee-0ab3-4643-aeaa-4d6f68ea43ba/66d184ee-0ab3-4643-aeaa-4d6f68ea43ba1.gif)
频分复用
摘要
《信号与系统》课程是一门理论和技术发展十分迅速、应用非常广泛的前沿性学科,它的理论性和实践性都很强。
复用是一种将若干个彼此独立的信号,合并为一个可在同一信道上同时传输的复合信号的方法。
可以把它们的频谱调制到不同的频段,合并在一起而不致相互影响,并能在接收端彼此分离开来。
按频率区分信号的方法叫频分复用。
我们在生活中接触到得大部分都是模拟信号,而计算机只能对数字信号进行处理。
我们可以通过FFT变换,通过对模拟信号采样,使其变成数字信号,本设计就是通过FFT来实现的。
Matlab语言是一种广泛应用于工程计算及数值分析领域的新型高级语言,Matlab功能强大、简单易学、编程效率高。
它的工具箱里有很多函数可以方便的对信号进行分析与处理。
本设计是用FFT实现对三个同频带信号的频分复用,就是通过Matlab语言来实现的。
本设计报告分析了数字信号处理课程设计的过程。
用Matlab进行数字信号处理课程设计的思路,并阐述了课程设计的具体方法、步骤和内容。
关键词:
数字信号处理;滤波器设计;MATLAB;频谱分析
1设计任务目的及要求
1.1设计目的
巩固已经学过的知识,加深对知识的理解和应用,加强学科间的横向联系,学会应用MATLAB对实际问题进行仿真,并设计MUI界面。
1.2设计要求
一、课程设计的内容
选择三个不同频段的信号对其进行频谱分析,根据信号的频谱特征设计三个不同的数字
滤波器,将三路信号合成一路信号,分析合成信号的时域和频域特点,然后将合成信号
分别通过设计好的三个数字滤波器,分离出原来的三路信号,分析得到的三路信号的时
域波形和频谱,与原始信号进行比较,说明频分复用的特点。
二、课程设计的要求与数据
(1)熟悉离散信号和系统的时域特性。
(2)掌握数字信号处理的基本概念,基本理论和基本方法。
(3)掌握序列傅里叶变换的计算机实现方法,利用序列傅里叶变换对离散间可以分别调整。
(4)学会MATLAB的使用,掌握MATLAB的程序设计方法。
(5)掌握MATLAB设计FIR和IIR数字滤波器的方法。
(6)掌握GUI界面的设计方法
三、课程设计应完成的工作
(1)利用MATLAB语言产生三个不同频段的信号。
(2)对产生的三个信号进行FFT变换。
(3)将三路信号叠加为一路信号。
(4)根据三路信号的频谱特点得到性能指标,由性能指标设计三个滤波器。
(5)用设计的滤波器对信号进行滤波,并对其频谱图进行分析。
(6)分析得到信号的频谱,并画出滤波后信号的时域波形和频谱。
2原理与模块介绍
2.1快速傅里叶变换FFT原理
快速傅立叶变换(FFT)算法
长度为N的序列的离散傅立叶变换为:
N点的DFT可以分解为两个N/2点的DFT,每个N/2点的DFT又可以分解为两个N/4点的DFT。
依此类推,当N为2的整数次幂时(),由于每分解一次降低一阶幂次,所以通过M次的分解,最后全部成为一系列2点DFT运算。
以上就是按时间抽取的快速傅立叶变换(FFT)算法。
当需要进行变换的序列的长度不是2的整数次方的时候,为了使用以2为基的FFT,可以用末尾补零的方法,使其长度延长至2的整数次方。
序列的离散傅立叶反变换为
离散傅立叶反变换与正变换的区别在于变为,并多了一个的运算。
因为和对于推导按时间抽取的快速傅立叶变换算法并无实质性区别,因此可将FFT和快速傅立叶反变换(IFFT)算法合并在同一个程序中。
若信号是模拟信号,用FFT进行谱分析时,首先必须对信号进行采样,使之变成离散信号,然后就可按照前面的方法用FFT来对连续信号进行谱分析。
按采样定理,采样频率应大于2倍信号的最高频率,为了满足采样定理,一般在采样之前要设置一个抗混叠低通滤波器。
2.2频分复用原理
复用是一种将若干个彼此独立的信号,合并为一个可在同一信道上同时传输的复合信号的方法。
比如,传输的语音信号的频谱一般在300~3400Hz内,为了使若干个这种信号能在同一信道上传输,可以把它们的频谱调制到不同的频段,合并在一起而不致相互影响,并能在接收端彼此分离开来。
按频率分割信号的方法称为频分复用,频分复用(FDM,FrequencyDivisionMultiplexing)就是将用于传输信道的总带宽划分成若干个子频带(或称子信道),每一个子信道传输1路信号。
频分复用要求总频率宽度大于各个子信道频率之和,同时为了保证各子信道中所传输的信号互不干扰,应在各子信道之间设立隔离带,这样就保证了各路信号互不干扰(条件之一)。
频分复用技术的特点是所有子信道传输的信号以并行的方式工作,每一路信号传输时可不考虑传输时延,因而频分复用技术取得了非常广泛的应用。
2.3滤波器原理
数字滤波器可分为FIR(有限脉冲响应)和IIR(无限脉冲响应)两种。
IIR滤波器的系统函数是两个Z的多项式的有理分式,而FIR滤波器的分母为1,即只有一个分子多项式。
本次实验采用的是巴特沃斯滤波器,把buttord函数和butter函数结合起来,就可以设计任意的巴特沃斯IIR滤波器。
根据输入量的不同,它有以下几种形式:
[b,a]=butter(N,wc,’high’):
设计N阶高通滤波器,wc为它的3dB边缘频率,以Π为单位,故0≤w≤1。
[b,a]=butter(N,wc):
当wc为具有两个元素的矢量wc=[w1,w2]时,它设计2N阶带通滤波器,3dB通带w1≤w≤w2,w单位为Π。
[b,a]=butter(N,wc,’stop’):
若wc=[w1,w2],则它设计2N阶带阻滤波器,3dB通带为w1≤w≤w2,w单位为Π。
为了设计任意的选频巴特沃斯滤波器,必须知道阶数N和3dB边缘频率矢量wc。
这可以直接利用信号处理工具箱中的buttord函数计算。
如果已知滤波器指标wp,ws,Rp,As,则调用格式为
[N,wc]=buttord(wp,ws,Rp,As)
对于不同类型的滤波器,参数wp和ws有一些限制:
对于低通滤波器,wpws;对于带通滤波器,wp和ws分别为具有两个元素的矢量,wp=[wp1,wp2]和ws=[ws1,ws2],并且ws1有些情况下,还对滤波器的相位特性提出要求,理想的是线性相位特性,即移与频率成线性关系。
实际的滤波器不可能完全实现理想幅频特性,必有一定误差,因此要规定适当的指标。
以低通滤波器为例,在[0,wp]的通带区,幅频特性会在1附近波动;在ws~1的阻带区,幅频特性不会真等于零是一个大于零的值;wp也不可能等于ws,在[wp,ws]之间,为过渡区;这三个与理想特性的不同点,就构成了滤波器的指标体系。
即通带频率wp和通带波动,阻带频率ws和阻带衰减。
在许多情况下,人们习惯用分贝为单位,定义通带波动为(分贝)阻带衰减为(分贝)。
对于带通滤波器,wp应表为[wp1,wp2];对于带阻滤波器,ws应表为[ws1,ws2]。
其他复杂形状的预期特性通常也可由若干理想的幅频特性叠合构成。
3设计内容
3.1设计产生三个信号
通过Matlab软件自己编程产生三个同频带不同频率的模拟信号,编程如下。
t=-1:
0.001:
1;
n=1:
256;
N=512;
fs=1000;
x1=cos(150*pi*t);
f1=n*fs/N;
figure
(1);
subplot(3,1,1)
plot(x1);
title('x1的时域波形');
xlabel('x1的时间');ylabel('x1的幅值');
axis([0,100,-1,1])
x2=cos(320*pi*t);
subplot(3,1,2)
plot(x2);
title('x2的时域波形');
xlabel('x2的时间');ylabel('x2的幅值');
axis([0,100,-1,1])
x3=cos(450*pi*t);
subplot(3,1,3)
plot(x3);
title('x3的时域波形');
xlabel('x3的时间');ylabel('x3的幅值');
axis([0,100,-1,1])
三个信号的时域波形:
3.2对三个信号进行FFT变换
通过Matlab编程对产生的三个信号进行FFT变换,从而生成频谱波形图。
y1=fft(x1,512);
figure
(2);
subplot(3,1,1)
plot(f1,abs(y1(1:
256)));
title('x1的频域波形');
xlabel('x1的频率(Hz)');ylabel('x1的幅值');
axis([0,500,0,250])
y2=fft(x2,512);
subplot(3,1,2)
plot(f1,abs(y2(1:
256)));
title('x2的频域波形');
xlabel('x2的频率(Hz)');ylabel('x2的幅值');
axis([0,500,0,250])
y3=fft(x3,512);
subplot(3,1,3)
plot(f1,abs(y3(1:
256)));
title('x3的频域波形');
xlabel('x3的频率(Hz)');ylabel('x3的幅值');
axis([0,500,0,250])
三个信号的频域波形:
3.3三个信号的叠加的时域和频域
x=x1+x2+x3;
figure(3)
subplot(211);
plot(x(1:
100));
title('三个信号叠加的时域波形');
y=fft(x,512);
subplot(212);
plot(f1,abs(y(1:
256)));
title('三个信号叠加的频谱')
axis([0,600,0,250])
3.4滤波器设计
3.4.1低通滤波器设计
本次试验的三个频率分别为75、160、225,所以低通滤波器设计如下:
Wp=2*pi*75;Ws=2*pi*100;Rp=1;As=30;
[N,wc]=buttord(Wp,Ws,Rp,As,'s');
[b,a]=butter(N,wc,'s');
k=1:
512;fk=0:
1000/1024:
1000;
wk=2*pi*fk;
Hk=freqs(b,a,wk);
figure(4);
plot(fk,abs(Hk));gridon;
xlabel('频率(Hz)');ylabel('幅度');
axis([0,200,0,1.1])
低通滤波器频域图:
3.4.2带通滤波器2设计
该滤波器主要用于滤出信号X2即160的频率,所以滤波器的设计如下:
wp=2*pi*[140,200];
ws=2*pi*[120,230];
Rp=1;
As=30;
[N,wc]=buttord(wp,ws,Rp,As,'s');
[B1,A1]=butter(N,wc,'s');
k=0:
511;
fk=0:
1000/512:
1000;
wk=2*pi*fk;
Hk=freqs(B1,A1,wk);
figure(6)
plot(fk,20*log10(abs(Hk)));
gridon
title('带通滤波器的频响2')
xlabel('频率(Hz)');
ylabel('幅度(dB)')
axis([100,400,-40,5])
3.4.3带通滤波器3设计
该滤波器主要用于滤出信号X3即225的频率,所以滤波器的设计如下:
wp=2*pi*[260,320];
ws=2*pi*[240,350];
Rp=1;
As