欢迎来到天天文库
浏览记录
ID:36412202
大小:603.10 KB
页数:68页
时间:2019-05-09
《Matlab在数字信号处理中的运用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第七讲Matlab在数字信号处理中的运用n数字信号处理(DSP):是指利用计算机或专用处理设备,以数值计算的方法对信号进行采集、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。nMatlab是数字信号处理技术实现的重要手段。通过Matlab,可以进行数字信号处理问题理论上的分析和算法开发;配合Simulink,用户可以进行数字信号处理系统的设计和仿真。本章内容:n离散时间信号与系统n数字滤波器概述nIIR滤波器的设计信号n连续信号指时间连续、幅度连续的信号,又称模拟信号,数学上表示为一个时间连续函数f(t);n离散信号指时间离散,幅
2、度仍然可以连续的信号。可由f(t)时域取样得到,数学上表示为一个时间离散函数f(n);数字信号n指时间离散而且幅度也离散的信号,可对模拟信号处理获得:模拟信号→取样、量化、编码→数字信号上述过程又称为脉冲编码调制,这是一个典型的AD变换过程;n计算机处理和存储的信号全部是数字信号,通常需要将数字信号还原为模拟信号,过程为:数字信号→解码、反量化、重建→模拟信号这个过程又称为DA变换。1.离散时间信号与系统1)离散信号及其Matlab实现n单位抽样序列(单位冲激)δ(n):仅在n=0时取值为1.在Matlab中,产生N点的单位抽样序列,我们利用zeros
3、函数来实现:x=zeros(1,N);x(1)=1;例7-1产生一个32点的,右移20各单位的冲击序列。程序如下:clearall;N=32;k=20;x=zeros(N);x(k)=1;xn=0:N-1;stem(xn,x);n单位阶跃序列μ(n)Matlab实现:x=ones(1,N);右移m,则:1,n≥mμ(n-m)=0,n4、波,信号持续时间为5s。Fs=2000;t=1/Fs:1/Fs:5;f=150;A=0.45;Fai=35/180*pi;X=A*sin(2*pi*f.*t+Fai);plot(t(1:100),X(1:100));xlabel('time(sec)');ylabel('sin2pift');title('150Hzsinwave');disp('按任意键开始播出5秒的150Hz正弦波...');pause;sound(X,Fs);disp('播放结束,下面将音频数据存盘为C:my50HzSIN.wav');wavwrite(X,Fs,'C:my5、50HzSIN.wav');clear;[R,Rs]=wavread('C:my50HzSIN.wav');sound(R,Rs);nann实指数序列:x(n)=aMatlab实现:n=0:N-1;x=a.^n;例:x(n)=n(0.9),0n10实现程序:>>n=[0:10];>>x=(0.9).^n;>>stem(n,x)n随机序列由于许多实际的序列并不能用数学式来描述,我们将这些序列成为随机序列,并用相应的概率密度函数来表示。Matlab提供了两个随机数产生函数:prand(1,N)——产生[0,1]上均匀分布的随机序列,N为长度;pran6、dn(1,N)——产生均值为0,方差为1的高斯随机序列,即白噪声序列。例7-4产生随机序列%generaterandomsequencen=200;xn1=rand(1,n);xn2=randn(1,n);subplot(2,2,1),stem(xn1);xlabel('n');ylabel('x(n)');title('rand');gridsubplot(2,2,2);hist(xn1,10);xlabel(‘n’);ylabel(‘x(n)’);title(‘均匀分布的概率密度');gridsubplot(2,2,3),stem(xn2);xla7、bel('n');ylabel('x(n)');title('randn');gridsubplot(2,2,4),hist(xn2,10);xlabel(‘n’);ylabel(‘x(n)’);title(‘高斯分布的概率密度')grid2)波形发生器Matlab内部提供了大量的函数用以产生噪声及常用的信号波形,这些信号在信号处理中非常重要。n方波函数squaresquare函数有两种调用格式:x=square(t);x=square(t,duty);square函数产生周期为2*pi,幅度为1的方波。duty为占空比,即信号为正值的区域在一个周期内8、所占的百分比。例如:x=square(2*pi*f*t+fai,duty)%t为时间取样序列%
4、波,信号持续时间为5s。Fs=2000;t=1/Fs:1/Fs:5;f=150;A=0.45;Fai=35/180*pi;X=A*sin(2*pi*f.*t+Fai);plot(t(1:100),X(1:100));xlabel('time(sec)');ylabel('sin2pift');title('150Hzsinwave');disp('按任意键开始播出5秒的150Hz正弦波...');pause;sound(X,Fs);disp('播放结束,下面将音频数据存盘为C:my50HzSIN.wav');wavwrite(X,Fs,'C:my
5、50HzSIN.wav');clear;[R,Rs]=wavread('C:my50HzSIN.wav');sound(R,Rs);nann实指数序列:x(n)=aMatlab实现:n=0:N-1;x=a.^n;例:x(n)=n(0.9),0n10实现程序:>>n=[0:10];>>x=(0.9).^n;>>stem(n,x)n随机序列由于许多实际的序列并不能用数学式来描述,我们将这些序列成为随机序列,并用相应的概率密度函数来表示。Matlab提供了两个随机数产生函数:prand(1,N)——产生[0,1]上均匀分布的随机序列,N为长度;pran
6、dn(1,N)——产生均值为0,方差为1的高斯随机序列,即白噪声序列。例7-4产生随机序列%generaterandomsequencen=200;xn1=rand(1,n);xn2=randn(1,n);subplot(2,2,1),stem(xn1);xlabel('n');ylabel('x(n)');title('rand');gridsubplot(2,2,2);hist(xn1,10);xlabel(‘n’);ylabel(‘x(n)’);title(‘均匀分布的概率密度');gridsubplot(2,2,3),stem(xn2);xla
7、bel('n');ylabel('x(n)');title('randn');gridsubplot(2,2,4),hist(xn2,10);xlabel(‘n’);ylabel(‘x(n)’);title(‘高斯分布的概率密度')grid2)波形发生器Matlab内部提供了大量的函数用以产生噪声及常用的信号波形,这些信号在信号处理中非常重要。n方波函数squaresquare函数有两种调用格式:x=square(t);x=square(t,duty);square函数产生周期为2*pi,幅度为1的方波。duty为占空比,即信号为正值的区域在一个周期内
8、所占的百分比。例如:x=square(2*pi*f*t+fai,duty)%t为时间取样序列%
此文档下载收益归作者所有