卷积和及采样定理

来源:互联网 发布:汽车设计外观软件 编辑:程序博客网 时间:2024/05/18 01:29
  • 离散时间系统:

     y(n)=m=1x(m)h(nm)=x(n)h(n)m

    式中“ * ”代表卷积运算,h(n)为该系统的单位冲激响应。此类卷积运算的步骤为:

    1.反折
    2.移位
    3.相乘
    4.相加

  • 卷积长度
    x(n)h(n)的长度分别为N和M,则卷积结果的长度为N+M-1。

  • N阶线性常系数差分方程:

    y(n)=Mj=0bjx(nj)Ni=1aiy(ni)

    由上式可以看出,求n时刻的输出y(n),需要知道系统n时刻及n时刻以前的输入序列值,及n时刻以前的输出序列值。n时刻以前的输出信号值就是求解差分方程的初始条件,级零输入响应。

    迭代版:

    y(n)=y(n1)+x(n)

  • 采样定理
    所谓模拟信号的数字处理方法就是将待处理模拟信号经过采样、量化和编码形成数字信号,再利用数字信号处理技术对采样得到的数字信号进行处理。

一个频带限制在(0,fc)赫兹内的模拟信号m(t),若以采样频率fs2fc对模拟信号m(t)进行采样,得到最终的采样值,则可无混叠失真地恢复原始模拟信号m(t)

其中,无混叠失真地恢复原始模拟信号m(t)是指被恢复信号与原始模拟信号在频谱上无混叠失真,并不是说被恢复信号与原始信号在时域上完全一样。由于采样和恢复器件的精度限制以及量化误差等存在,两者实际是存在一定误差或失真的。

奈奎斯特频率:通常把最低允许的采样频率fs=2fc称为奈奎斯特频率。

采样定理的几点小结:
1. 一个带限模拟信号 xa(t) ,其频谱的最高频率为 fc ,以间隔Ts 得到采样信号x̂ a(t),当且仅当fs2fc时,x̂ a(t)才可不失真的恢复xa(t)
2. x̂ a(t)的频谱 X̂ a(jΩ) 是模拟信号xa(t)的频谱Xa(jΩ)Ω=2πfs 为周期进行周期延拓得到的。
3. 一般称fs/2为折叠频率,只要信号的最高频率不超过这个频率,就不会出现频谱混叠现象,否则,超过fs/2的频谱会“折叠”回来形成混叠现象。

分析连续时间信号的时域波形及其幅频特性曲线,原信号:
f(x)=0.5sin(2π65t)+0.8cos(2π40t)+0.7cos(2π30t)
对原信号进行采样,得到采样序列,对不同采样频率下的采样序列进行频谱分析,由采样序列恢复出连续时间信号,画出其时域波形,对比与原连续时间信号的时域波形。

MATLAB代码如下:

function fz = cy(fy,fs)%实现采样频谱分析绘图函数%fy:原信号函数,fy以字符串的格式输入%fs:采样频率fs0 = 1e4;tp = 0.1;t = [-tp:1/fs0:tp];k1 = 0:999; k2 = -999:-1;m1 = length(k1); m2 = length(k2);f = [fs0*k2/m2,fs0*k1/m1];%设置原信号的频率数组w = [-2*pi*k2/m2,2*pi*k1/m1];fx1 = eval(fy);%获取采样序列FX1 = fx1*exp(-j*[1:length(fx1)]'*w);%求原信号的离散时间傅里叶变换%画原信号figuresubplot(211),plot(t,fx1,'r')title('原信号');xlabel('t(s)'),ylabel('y(t)');axis([min(t),max(t),min(fx1),max(fx1)])grid on%画原信号频谱subplot(212),plot(f,abs(FX1),'r');title('原信号频谱');xlabel('f(Hz)'),ylabel('FX1');axis([-100,100,0,max(abs(FX1))+5]);grid on%对信号采样Ts = 1/fs;%采样周期t1 = -tp:Ts:tp;%采样时间序列f1 = [fs*k2/m2,fs*k1/m1];%设置采样信号的频率数组t = t1;fz = eval(fy);%获取采样序列FZ = fz*exp(-j*[1:length(fz)]'*w);%采样信号的离散时间傅里叶变换%画采样序列波形figuresubplot(211),stem(t,fz,'.');title('取样信号')xlabel('t(s)'),ylabel('y(t)')line([min(t),max(t)],[0,0]);grid on%画采样信号频谱subplot(212),plot(f1,abs(FZ),'m');title('取样信号频谱')xlabel('f(Hz)'),ylabel('FZ')grid onend
function fh = hf(fz,fs)%信号的恢复及频谱函数%fz:采样序列%fs:采样频率T = 1/fs;dt = T/10; tp = 0.1;t = -tp:dt:tp; n = -tp/T:tp/T;TMN = ones(length(n),1)*t-n'*T*ones(1,length(t));%t-nTfh = fz*sinc(fs*TMN);%由采样信号恢复原信号k1 = 0:999; k2 = -999:-1;m1 = length(k1);m2 = length(k2);w = [-2*pi*k2/m2,2*pi*k1/m1];FH = fh*exp(-j*[1:length(fh)]'*w);%恢复后的信号的离散时间傅里叶变换figure%恢复信号波形subplot(211),plot(t,fh,'g');st1 = sprintf('由取样频率fs=%d',fs);st2 = '恢复后的信号';st =[st1,st2];title(st);xlabel('t(s)'),ylabel('y(t)');axis([min(t),max(t),min(fh),max(fh)])line([min(t),max(t)],[0,0])grid on%画重构信号的频谱f = [10*fs*k2/m2,10*fs*k1/m1];subplot(212),plot(f,abs(FH),'g')title('恢复后信号的频谱');xlabel('f(Hz)'),ylabel('FH');axis([-100 100 0 max(abs(FH))+2]);grid onend

程序结果如下:
原信号及原信号频谱图

fs<2fmax时,为原信号的欠采样信号和恢复,即不满足采样定理,出现频谱混叠现象。

这里写图片描述

0 0