您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 电子科技大学信号处理实验1-信号的基本表示及时域分析
电子科技大学实验报告一、实验室名称:数字信号处理实验室二、实验项目名称:信号的基本表示及时域分析三、实验原理:1、MATLAB基础MATLAB(Matrix+Laboratory)是MathWorks公司1982年推出的数值计算和可视化数学软件。其基本元素是矩阵,基本方法是程序实现。使用MATLAB可以方便地解决复杂的数值计算问题,并且具有丰富的工具箱(ToolBox)专用于辅助各类与数学相关问题的分析。在高校中,MATLAB已成为数学,信息,控制等诸多学科有关课程的有效教学工具。1.1MATLAB功能特点MATLAB命令可控、可编程,有上百个预先定义好的命令和函数,这些函数能通过用户自定义函数进一步扩展。MATLAB本身带有许多强有力的命令,例如,能够用一个单一的命令求解线性系统,能完成大量的高级矩阵处理,能绘制色彩绚丽的二维、三维图形,能与其他程序一起使用。MATLAB语言的特点包括:具有编程效率高,允许用数学的语言来编写程序用于使用方便,把程序的编辑、编译、连接和执行融为一体高效方便的矩阵和数组运算语句简单,内涵丰富扩充功能强,交互性,开放性方便的绘图功能该软件由c语言编写,移植性好MATLAB环境如图1.1所示,其中包括:图1.1MATLAB的环境窗口菜单栏工具栏[CommandWindow]命令窗口[LaunchPad]分类帮助窗口[CommandHistory]指令历史记录窗口[CurrentDirectory]当前目录选择窗口1.2MATLAB的数组与矩阵MATLAB中最常见的操作就是对数组与矩阵的操作。MATLAB中的变量一般都默认为向量或矩阵,对于变量的定义不需要任何类型及维度的声明,变量名的第一个字符必须是字母。常用的常数包括:pi(π),i或j(虚数单位),Inf(无穷),NaN(空值),e(以10为底的幂次,例如1.602e12)等。常用运算符包括:+加,-减,*乘,/除,\左除,^幂,’复共轭转置,.点运算。常用函数包括sqrt()开平方;abs()绝对值;exp()以e为底的指数;log(x)以e为底的对数;round()取整;syms定义符号变量等。需要了解更多函数的使用方法请利用帮助函数help。构造数组的方法有:直接构造(用空格或逗号间隔数组元素),用增量法构造(数组起值:数组终值或数组起值:步长:数组终值),用linspace函数构造数组(x=linspace(起值,终值,个数)。构造矩阵的方法有:简单创建方法(直接进行赋值型定义);构造特殊矩阵(ones创建一个所有元素都为1的元素;zeros创建一个所有元素都为0的元素;eye创建对角元素为1,其他元素为0的元素;rand创建一个矩阵或数组,其中的元素服从均匀分布;randn创建一个矩阵或数组,其中的元素服从正态分布;diag创建对角矩阵);聚合矩阵。获取矩阵元素方法有:取单个元素(矩阵变量名(行,列));取多个元素(矩阵变量名(:,列),矩阵变量名(行,:));获取所有元素(矩阵变量名(:))。获取与矩阵有关信息的函数为length(返回最长维长度),ndims(返回维数),numel(返回元素个数),size(返回每一维的长度)。矩阵的基本运算有*(矩阵相乘),rank(求矩阵的秩),det(矩阵的行列式),poly(求特征多项式),sym(将矩阵转换为符号矩阵)。1.3MATLAB绘图常见绘图函数有plot(x,y)(绘制二维连续图形,其中x为横坐标,y为纵坐标),三维图形绘制plot3(x,y,z)(绘制三维连续图形,其中x为横坐标,y为纵坐标,z为与x,y所在平面垂直的坐标),stem(n,y)(绘制二维离散图形,其中n为离散的横坐标,y为纵坐标),subplot(n,m,i)(在一幅大图中绘制n行m列共计nm幅小图,当前的图是第i幅图)。1.4MATLAB中的程序流控(1)顺序结构按指令顺序一条条执行下去。(2)循环结构for-end:特点是循环判断条件通常是对循环次数的判断,即循环次数是预先设定的。调用格式为:for变量=表达式执行语句……执行语句end表达式是一个向量,可表示为m:s:nwhile-end:判断控制一般是逻辑判断语句,使用范围更大。调用格式为:while表达式执行语句……执行语句end表达式一般是关系运算式或逻辑运算式组成的逻辑判断语句,以确定循环是否继续。通常表达式的值非零,即为逻辑真,程序继续循环,否则停止循环。三.选择结构if-else-end又称为条件语句,根据表达式的情况判断是否满足条件来确定程序下一步的运行。大致可分为三步进行:首先计算紧跟if后面表达式。接着判断表达式计算结果,若结果为0,判断值为假;若结果为1,判断值为真。然后若判断值为真,则执行其后的执行语句组;否则跳过,执行下一个条件表达式或者结束该选择语句。调用格式为:1.if表达式执行语句组end2.if表达式执行语句组1else执行语句组2end3.if表达式1执行语句组1elseif表达式2执行语句组2elseif表达式3执行语句组3……else执行语句组nend关键字if或elseif后面的条件表达式为条件,通常是由关系运算或与逻辑运算式组成的逻辑判断语句,如果if或elseif后面的表达式的值为真时,执行紧跟其后的语句内容,否则跳过去,并根据选择语句的表达形式执行后面的elseif表达式语句、跟在else后的执行语句或end语句。四.分支语句switch-case-end又称为开关语句,使程序在不同的情况下进行相应的操作。调用格式为:switch表达式case常量表达式1执行语句组1case常量表达式2执行语句组2……case常量表达式n执行语句组notherwise执行语句组n+1end在switch后面的表达式为开关条件,它可以是数字或字符串。当表达式的值与某个case后面的常量表达式的值相等时,就执行相应的语句组,若没有值与所有常量表达式的值相等,执行othwewise后面的语句组。与C语言的switch不同的是,在MATLAB中,当程序执行完某个case语句组后便会立即直接跳出switch语句,执行后续的语句。五.其他控制语句1.中断语句break:通常用于循环控制中,如for、while等循环,通过if语句判断调用条件,程序在满足条件下调用break语句后,在循环未自然终止之前跳出当前循环体。在多层循环嵌套中,break只是终止包含break指令的最内层的循环体。2.继续语句continue:通常用于循环控制中,可采用if语句判断调用条件,调用continue语句后,程序不再执行循环体内剩余部分的语句而是直接转到循环的终点,继续下一次的循环运行。3.返回语句return:使当前正在运行的M文件函数正常结束并返回调用它的函数或程序继续运行,或返回到调用它的环境,如命令窗口。return语句通常用在函数M文件里面,对某些输入参数或执行结果进行判断,如果出现问题,便调用return语句终止当前程序的运行并返回。2、信号处理Toolbox介绍在MATLAB中,针对不同的应用设计了相应的Toolbox,为该领域中的常见应用提供了方便快捷的函数,扩充了MATLAB的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能。信号处理Toolbox是其中专用于信号处理学科的领域型工具箱,可方便地应用于信号处理相关问题的仿真与设计。信号处理Toolbox的内容包括数字和模拟滤波器设计、应用及仿真;谱分析和估计;FFT、DCT等常用变换,参数化模型等。具体函数包括如下:2.1波形产生sin,cos,exp产生正余弦及复指数函数(掌握)chirp产生扫描频率余弦diric产生Dirichlet函数或周期Sinc函数gauspuls产生高斯调制正弦脉冲pulstran产生脉冲串rectpuls产生非周期矩形信号sawtooth产生锯齿波或三角波(掌握)sinc产生sinc函数(掌握)square产生方波(掌握)strips产生条图tripuls产生非周期三角波2.2变换cztChirpz-变换dct离散余弦变换dftmtx离散傅立叶变换矩阵fft一维FFT(掌握)fft2二维FFTfftshift函数fft和fft2输出的重新排列hilbert希尔伯特(Hilbert)变换idct离散余弦逆变换ifft一维逆FFT(掌握)ifft2二维逆FFT2.3线性系统变换convmtx卷积矩阵latc2tf格型滤波器转换为传递函数形式poly2rc多项式系数转换为反射系数rc2poly反射系数转换为多项式系数residuezz-传递函数的部分分式展开(掌握)sos2ss二阶级联转换为状态空间sos2tf二阶级联转换为传递函数(了解)sos2zp二阶级联转换为零极点增益形式(了解)ss2sos状态空间转换为二阶级联形式ss2tf状态空间转换为传递函数ss2zp状态空间转换为零极点增益tf2latc传递函数转换为格型滤波器tf2ss传递函数转换为状态空间tf2zp传递函数转换为零极点增益(掌握)zp2sos零极点增益形式转换为二阶级联形式(掌握)zp2ss零极点增益形式转换为状态空间zp2tf零极点增益转换为传递函数(掌握)2.4统计信号处理cohere两个信号相干函数估计corrcoef相关系数矩阵cov协方差矩阵csd互功率谱密度估计(CSD)pmem最大熵功率谱估计pmtm多窗口功率谱估计(MTM)pmusic特征值向量功率谱估计(MUSIC)psd自功率谱密度估计tfe传递函数估计xcorr互相关函数估计xcorr2二维互相关函数估计xcov互协方差函数估计2.5滤波器分析与实现abs绝对值(幅值)(掌握)angle相位角(掌握)conv卷积和多项式乘法(掌握)conv2二维卷积fftfilt基于FFT重叠加法的数据滤波(掌握)filterIIR或FIR滤波器的数据滤波(掌握)firter2二维数字滤波filtfilt零相位数字滤波(了解)filtic函数filter初始条件确定freqs模拟滤波器频率响应freqspace频率响应的频率空间设置freqz数字滤波器频率响应(掌握)grpdelay群延迟(掌握)impz数字滤波器的脉冲响应(掌握)latcfilt格型梯形滤波器实现unwrap相位角展开(掌握)zplane零极点图(掌握)2.6IIR滤波器设计buttordButterworth型滤波器阶数的选择(掌握)cheb1ordChebyshev1型滤波器阶数的选择(掌握)cheb2ordChebyshev2型滤波器阶数的选择(掌握)ellipord椭圆滤波器阶次选择(掌握)besselfBessel模拟滤波器设计butterButterworth滤波器设计(掌握)cheby1ChebyshevI型滤波器设计(通带波纹)(掌握)cheby2chebyshevII型滤波器设计(阻带波纹)(掌握)ellip椭圆滤波器设计(掌握)maxflat通用数字Butterworth滤波器设计yulewalk递归数字滤波器设计2.7FIR滤波器设计cremez复响应和非线性相位等波纹FIR滤波器设计fir1基于窗函数的有限冲激响应滤波器设计----标准响应(掌握)fir2基于窗函数的有限冲激响应滤波器设计----任意响应(掌握)fircls多频带滤波的最小方差FIR滤波器设计fircls1低通和高通线性相位FIR滤波器的最小方差设计firs最小线性相位滤波器设计firrcos升余弦FIR滤波器设计intfilt插值FIR滤波器设计kaiserord用Kaiser窗估计函数fir1参数(掌握)remezParks-McClellan优化滤波器设计remezordParks-McCllan优化滤波器阶估计bartlettBartlett窗(掌握)blackmanBlackman窗(掌握)boxcar矩形窗chebwinChebyshev窗hammingHamming窗(掌握)hanningHann
本文标题:电子科技大学信号处理实验1-信号的基本表示及时域分析
链接地址:https://www.777doc.com/doc-5337224 .html