matlab 9信号处理工具箱_第1页
matlab 9信号处理工具箱_第2页
matlab 9信号处理工具箱_第3页
matlab 9信号处理工具箱_第4页
matlab 9信号处理工具箱_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章信号处理工具箱一、工具箱简介功能型工具箱——通用型功能型工具箱主要用来扩充matlab的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能,能够用于多种学科。领域型工具箱——

专用型领域型工具箱是学科专用工具箱,其专业性很强,比如控制系统工具箱(ControlSystemToolbox);信号处理工具箱(SignalProcessingToolbox);财政金融工具箱(FinancialToolbox)等等。只适用于本专业。例如:控制系统工具箱连续系统设计和离散系统设计状态空间和传递函数以及模型转换时域响应(脉冲响应、阶跃响应、斜坡响应)频域响应(Bode图、Nyquist图)根轨迹、极点配置优化工具箱线型规划和二次规划求函数的最大值和最小值多目标优化约束条件下的优化非线型方程求解信号处理工具箱数字和模拟滤波器设计、应用及仿真谱分析和估计FFT、DCT等变换参数化模型学科前沿最新的工具箱模糊控制逻辑工具箱友好的交互设计界面,自适应神经-模糊学习、聚类以及Sugeno推理神经网络工具箱神经网络系统具有集体运算的能力和自适应的学习能力。具有很强的容错性和鲁棒性,善于联想、综合和推广。工具箱的扩充功能:用户可以修改工具箱中的函数,更为重要的是用户可以通过编制m文件来任意地添加工具箱中原来没有的工具函数。此功能充分体现了matlab语言的开发性。Matlab常用工具箱MatlabMainToolbox——matlab主工具箱ControlSystemToolbox——控制系统工具箱CommunicationToolbox——通讯工具箱FinancialToolbox——财政金融工具箱SystemIdentificationToolbox——系统辨识工具箱FuzzyLogicToolbox——模糊逻辑工具箱Higher-OrderSpectralAnalysisToolbox——高阶谱分析工具箱ImageProcessingToolbox——图象处理工具箱LMIControlToolbox——线性矩阵不等式工具箱ModelpredictiveControlToolbox——模型预测控制工具箱μ-AnalysisandSynthesisToolbox——μ分析工具箱NeuralNetworkToolbox——神经网络工具箱OptimizationToolbox——优化工具箱PartialDifferentialToolbox——偏微分方程工具箱RobustControlToolbox——鲁棒控制工具箱SignalProcessingToolbox——信号处理工具箱SplineToolbox——样条工具箱StatisticsToolbox——统计工具箱SymbolicMathToolbox——符号数学工具箱SimulinkToolbox——动态仿真工具箱SystemIdentificationToolbox——系统辨识工具箱WaveleToolbox——小波工具箱每个新出的版本都在增加、更新完善Matlab主工具箱前面课程所介绍的数值计算、符号运算、绘图以及句柄绘图都是matlab主工具箱的内容,是matlab的基本部分。Matlab主工具箱位于:

matlab\toolbox\matlab

matlab主工具箱是任何版本的matlab都不可缺少的。matlab主工具箱中有许多函数库audiovideo——声频、视频支持函数库datafun——数据分析函数库datatypes——数据类型函数库demos——matlab演示函数库elfun——初等数学函数库elmat——初等矩阵和时间函数库funfun——函数功能和数学分析函数库general——通用命令函数库graph2d——二维绘图graph3d——三维绘图graphics——句柄绘图函数库iofun——底层输入输出函数库lang——语言结构函数库matfun——矩阵线性代数函数库ops——运算符和逻辑函数库polyfun——多项式函数库sparfun——稀疏矩阵函数库strfun——字符串函数库uitools——图形界面函数库1、各函数库或工具箱中的函数可用help工具箱(函数库)名查询

helpoptim2、具体函数的内容可以用type函数名方法查看

typelaplace3、函数文件定位使用which whichlaplace工具箱的添加很多时候我们要将一个工具箱添加到到系统中来运行。如果是Matlab安装光盘上的工具箱,重新执行安装程序,选中即可。如果是单独下载的工具箱,一般情况下仅需要:把新的工具箱解压到某个目录(例如toolbox目录下)用addpath命令或者pathtool添加工具箱的路径用whichnewtoolbox_command.m来检验是否可以访问如果能够显示新设置的路径,则表明该工具箱可以使用了。如果是自己编写的工具箱添加方法同上。二、信号处理工具箱(一)

波形产生1.sin正弦波格式:x=sin(t)例:t=0:0.001:1;y=sin(2*pi*t);plot(t,y) z=sin(2*pi*10*t);plot(t,z)设信号的采样频率为F,信号的自变量通常取为t=0:1/F:n,n表示信号的时间长度为n秒。则sin(2*pi*t)即为频率为1的正弦波,sin(2*pi*f*t)即为频率为f的正弦波产生一个幅度为2,频率为4Hz,相位为的正弦信号

A=2;f=4;phi=pi/6;w0=2*pi*f;t=0:0.01:1;x=A*sin(w0*t+phi);plot(t,x);6/p2.sawtooth周期锯齿波或三角波格式:x=sawtooth(t)sawtooth(t,1)x=sawtooth(2*pi*f*t,width)3.square周期方波格式:x=square(t)square(t,50)x=square(2*pi*f*t,duty)4.sinc产生sinc或sin(pi*t)/(pi*t)函数格式:x=sinc(t)sinc(x)N=1000;t=-10:20/N:10;x=sinc(t/pi);plot(t,x);gridon5.随机信号:

rand产生均匀分布的白噪声,randn产生高斯分布的白噪声t=0:0.01:1;y=randn(1,length(t));plot(t,y);gridon;

6.单位脉冲序列和单位阶跃序列u(n-3)

n=-2:30;x=[zeros(1,5),1,zeros(1,27)];y=[zeros(1,5),ones(1,28)];subplot(2,1,1);stem(n,x,'fill');gridon;subplot(2,1,2)stem(n,y,'fill');gridon;7.非周期信号产生一个高度为1,宽度为3,延时为2秒的矩形脉冲信号t=0:0.02:6;plot(t,rectpuls(t-2-1.5,3));axis([0,6,0,1.5]);注:rectpuls(t-延时-width/2,width));(二)信号的基本运算1信号的相加与相乘

y(n)=x1(n)+x2(n)y(n)=x1(n)×x2(n)MATLAB实现:y=x1+x2;y=x1.*x22序列移位与周期延拓运算序列移位:y(n)=x(n-m)。

MATLAB实现:y=x;ny=nx-m序列周期延拓:y(n)=x((n))M, MATLAB实现:ny=nxs:nxf;y=x(mod(ny,M)+1)3序列翻褶与序列累加运算序列翻褶:y(n)=x(-n)。MATLAB可实现:y=fliplr(x)序列累加的数学描述为:

MATLAB实现:y=cumsum(x)尺度变换、翻转、时移、相加、相乘

t=-3:0.001:3;ft1=tripuls(2*t,4,0.5);subplot(2,1,1)plot(t,ft1)title('f(2t)')ft2=tripuls((2-2*t),4,0.5);subplot(2,1,2)plot(t,ft2)title('f(2-2t)')4差分与求和、微分与积分例:已知三角波f(t),画出其微分与积分的波形%differentiation%integrationh=0.001;t=-3:h:3;t=-3:0.1:3;y1=diff(f2_2(t))*1/h;forx=1:length(t)plot(t(1:length(t)-1),y1)y2(x)=quad('f2_2',-3,t(x));endplot(t,y2)差分y=diff(f);求和y=sum(f(k1:k2));微分y=diff(f)/h;h为数值计算所取时间间隔

定积分quad(‘function_name’,a,b);%function_name为被积函数名,a和b指定积分区间。

其中函数f2_2(t)为:functionft2=f2_2(t)ft2=tripuls(t,4,0.5);5两序列的卷积运算两序列卷积运算:

MATLAB实现:y=conv(x1,x2)。 序列x1(n)和x2(n)必须长度有限。

6两序列的相关运算两序列相关运算:

。MATLAB实现:y=xcorr(x1,x2)。7.信号能量数学定义:MATLAB实现:E=sum(x.*conj(x)); 或:E=sum(abs(x).^2);数学定义:8.信号功率MATLAB实现:P=sum(x.*conj(x))/N; 或:P=sum(abs(x).^2)/N;(三)傅里叶(Fourier)变换1连续时间、连续频率-傅里叶变换2连续时间、离散频率-傅里叶级数正变换:

逆变换:

正变换:

逆变换:

3时间离散、连续频率-序列傅里叶变换4离散时间、离散频率-离散傅里叶级数5离散时间、离散频率-离散傅里叶变换(DFT)正变换:

逆变换:

正变换:

逆变换:

正变换:

逆变换:

1.一维快速正傅里叶变换函数fft格式:X=fft(x,N)功能:采用FFT算法计算序列向量x的N点DFT变换;

当N缺省时,fft函数自动按x的长度计算DFT;

当N为2整数次幂时,fft按基-2算法计算, 否则用混合算法。2.一维快速逆傅里叶变换函数ifft格式:x=ifft(X,N)功能:采用FFT算法计算序列向量X的N点IDFT变换。,N=512;F=1000;n=1;t=0:1/F:n;x=sin(2*pi*50*t)+sin(2*pi*120*t);y=x+1.5*randn(1,length(t));Y=fft(y,N);P=Y.*conj(Y)/N;%计算功率谱密度f=F*(0:N/2-1)/N;plot(f,P(1:N/2))(四)统计信号处理1.cov

协方差矩阵格式:c=cov(x)当x为矢量时,cov(x)可求出矢量x的方差(标量)当x为矩阵时,cov(x)可得到协方差矩阵而diag(conv(x))则为由每列数据的方差所构成的矢量2.xcov

互协方差(自协方差)函数估计格式:v=xcov(x,y)v=xcov(x)3.xcorr

互相关(自相关)函数估计格式:v=xcorr(x,y)v=xcorr(x)(五)

滤波IIR滤波器结构:M阶IIR滤波器:差分方程表达式:FIR滤波器结构:M阶FIR滤波器:差分方程表达式:1.filter利用递归滤波器(IIR)或非递归滤波器(FIR)对数据进行数字滤波格式:y=filter(b,a,x)b,a为滤波器系数,x为待滤波的数据

2.fftfilt

利用基于FFT的重叠相加法对数据进行滤波,只适用于非递归滤波器(FIR)格式:y=fftfilt(b,x)3.freqz

数字滤波器的频率响应格式: [h,w]=freqz(b,a)

freqz(b,a,n) freqz(b,a,w)4.freqs

模拟滤波器的频率响应格式: [h,w]=freqs(b,a)

freqs(b,a,n) freqs(b,a,w)(六)

IIR滤波器设计1.besself

贝塞尔模拟滤波器设计

[b,a]=besself(n,Wn) n阶截止频率Wn的低通模拟滤波器

[b,a]=besself(n,[W1W2])W1<W2 2n阶带通模拟滤波器

[b,a]=besself(n,Wn,’high’) n阶截止频率Wn的高通模拟滤波器

[b,a]=besself(n,[W1W2],’stop’)W1<W2 2n阶带阻模拟滤波器2.butter比特沃思模拟和数字滤波器设计

[b,a]=butter(n,Wn)0<=Wn<=1 n阶截止频率Wn的低通数字滤波器

[b,a]=butter(n,[W1W2])W1<W2 2n阶带通数字滤波器

[b,a]=butter(n,Wn,’high’)Wn=1相当于fs/2 n阶截止频率Wn的高通数字滤波器

[b,a]=butter(n,[W1W2],’stop’)W1<W2 2n阶带阻数字滤波器

[b,a]=butter(n,Wn,’high’,’s’) n阶截止频率Wn的高通模拟滤波器例:t=0:0.001:1;x=sin(t*2*pi*200)+sin(t*2*pi);[b,a]=butter(10,0.2);figure(1);freqz(b,a)y=filter(b,a,x);figure(2)subplot(2,1,1);plot(x)subplot(2,1,2);plot(y)3.yulewalk

递归数字滤波器设计格式:[b,a]=yulewalk(n,f,m) f为频率点,m为相应的响应幅度例:f=[00.60.650.71]; m=[110.500];[b,a]=yulewalk(8,f,m);[h,w]=freqz(b,a,128);

plot(f,m,w/pi,abs(h),'--')(七)

FIR滤波器设计1.fir1基于窗函数的FIR滤波器设计——标准频率响应b=fir1(n,Wn)0<=Wn<=1,Wn=1相当于fs/2 n阶截止频率Wn的加汉明Hamming窗线形相位低通FIR滤波器

b=fir1(n,[W1W2],’stop’)W1<W2 2n阶带阻模拟滤波器

b=fir1(n,Wn,Window)Window长度为n+1

采用向量Window中指定的窗函数进行设计的滤波器窗函数1.矩形窗 w=boxcar(n)2.三角窗 w=triang(n)3.巴特利特窗 w=bartlett(n)4.汉明窗 w=hamming(n)5.汉宁窗 w=hanning(n)6.布莱克曼窗 w=blackman(n)7.切比雪夫窗 w=chebwin(n,r)8.凯泽窗 w=kaiser(n,beta)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论