1、实 验 报 告一、实验室名称:数字信号处理实验室二、实验项目名称:信号的基本表示及时域分析三、实验原理:1、MATLAB基础 MATLAB(Matrix+Laboratory)是MathWorks公司1982年推出的数值计算和可视化数学软件。其基本元素是矩阵,基本方法是程序实现。使用MATLAB可以方便地解决复杂的数值计算问题,并且具有丰富的工具箱(ToolBox)专用于辅助各类与数学相关问题的分析。在高校中,MATLAB已成为数学,信息,控制等诸多学科有关课程的有效教学工具。1.1 MATLAB功能特点MATLAB命令可控、可编程,有上百个预先定义好的命令和函数,这些函数能通过用户自定义函数
2、进一步扩展。MATLAB本身带有许多强有力的命令,例如,能够用一个单一的命令求解线性系统,能完成大量的高级矩阵处理,能绘制色彩绚丽的二维、三维图形,能与其他程序一起使用。MATLAB语言的特点包括:l 具有编程效率高,允许用数学的语言来编写程序l 用于使用方便,把程序的编辑、编译、连接和执行融为一体l 高效方便的矩阵和数组运算l 语句简单,内涵丰富l 扩充功能强,交互性,开放性l 方便的绘图功能l 该软件由c语言编写,移植性好MATLAB环境如图1.1所示,其中包括:图1.1 MATLAB的环境窗口l 菜单栏l 工具栏l Command Window命令窗口l Launch Pad分类帮助窗口
3、l Command History指令历史记录窗口l Current Directory当前目录选择窗口1.2 MATLAB的数组与矩阵MATLAB中最常见的操作就是对数组与矩阵的操作。MATLAB中的变量一般都默认为向量或矩阵,对于变量的定义不需要任何类型及维度的声明,变量名的第一个字符必须是字母。常用的常数包括:pi(),i或j(虚数单位),Inf(无穷),NaN(空值),e(以10为底的幂次,例如1.602e12)等。常用运算符包括:+ 加,- 减,* 乘,/ 除 , 左除, 幂, 复共轭转置,. 点运算。常用函数包括sqrt()开平方;abs()绝对值;exp()以e为底的指数;log
4、(x)以e为底的对数;round()取整;syms定义符号变量等。需要了解更多函数的使用方法请利用帮助函数help。构造数组的方法有:直接构造(用空格或逗号间隔数组元素),用增量法构造(数组起值:数组终值或数组起值:步长:数组终值),用linspace函数构造数组(x=linspace(起值,终值,个数)。构造矩阵的方法有:简单创建方法(直接进行赋值型定义);构造特殊矩阵(ones创建一个所有元素都为1 的元素;zeros创建一个所有元素都为0的元素;eye创建对角元素为1,其他元素为0的元素;rand创建一个矩阵或数组,其中的元素服从均匀分布;randn创建一个矩阵或数组,其中的元素服从正态
5、分布;diag创建对角矩阵);聚合矩阵。获取矩阵元素方法有:取单个元素(矩阵变量名(行,列);取多个元素(矩阵变量名(:,列),矩阵变量名(行,:);获取所有元素(矩阵变量名(:)。获取与矩阵有关信息的函数为length(返回最长维长度),ndims(返回维数),numel(返回元素个数),size(返回每一维的长度)。矩阵的基本运算有*(矩阵相乘),rank(求矩阵的秩),det(矩阵的行列式),poly(求特征多项式),sym(将矩阵转换为符号矩阵)。1.3 MATLAB绘图常见绘图函数有plot(x,y)(绘制二维连续图形,其中x为横坐标,y为纵坐标),三维图形绘制plot3(x,y,z
6、)(绘制三维连续图形,其中x为横坐标,y为纵坐标,z为与x,y所在平面垂直的坐标),stem(n,y)(绘制二维离散图形,其中n为离散的横坐标,y为纵坐标),subplot(n,m,i)(在一幅大图中绘制n行m列共计nm幅小图,当前的图是第i幅图)。1.4 MATLAB中的程序流控(1) 顺序结构 按指令顺序一条条执行下去。(2) 循环结构 for -end :特点是循环判断条件通常是对循环次数的判断,即循环次数是预先设定的。调用格式为: for 变量=表达式 执行语句 执行语句 end 表达式是一个向量,可表示为m:s:n while-end:判断控制一般是逻辑判断语句,使用范围更大。调用格
7、式为: while 表达式 执行语句 执行语句 end 表达式一般是关系运算式或逻辑运算式组成的逻辑判断语句,以确定循环是否继续。通常表达式的值非零,即为逻辑真,程序继续循环,否则停止循环。三. 选择结构 if-else-end 又称为条件语句,根据表达式的情况判断是否满足条件来确定程序下一步的运行。大致可分为三步进行: 首先计算紧跟if后面表达式。 接着判断表达式计算结果,若结果为0,判断值为假;若结果为1,判断值为真。 然后若判断值为真,则执行其后的执行语句组;否则跳过,执行下一个条件表达式或者结束该选择语句。调用格式为:1. if 表达式 执行语句组 end2. if 表达式 执行语句组
8、1 else 执行语句组2 end3. if 表达式1 执行语句组1 elseif 表达式2 执行语句组2 elseif 表达式3 执行语句组3 else 执行语句组n end 关键字if 或elseif后面的条件表达式为条件,通常是由关系运算或与逻辑运算式组成的逻辑判断语句,如果if 或elseif后面的表达式的值为真时,执行紧跟其后的语句内容,否则跳过去,并根据选择语句的表达形式执行后面的elseif表达式语句、跟在else后的执行语句或end语句。四. 分支语句 switch-case-end 又称为开关语句,使程序在不同的情况下进行相应的操作。调用格式为: switch 表达式 cas
9、e 常量表达式1 执行语句组1 case 常量表达式2 执行语句组2 case 常量表达式n 执行语句组n otherwise 执行语句组n+1 end 在switch后面的表达式为开关条件,它可以是数字或字符串。当表达式的值与某个case后面的常量表达式的值相等时,就执行相应的语句组,若没有值与所有常量表达式的值相等,执行othwewise后面的语句组。与C语言的switch不同的是,在MATLAB中,当程序执行完某个case语句组后便会立即直接跳出switch语句,执行后续的语句。五. 其他控制语句1. 中断语句break:通常用于循环控制中,如for、while等循环,通过if语句判断调
10、用条件,程序在满足条件下调用break语句后,在循环未自然终止之前跳出当前循环体。在多层循环嵌套中,break只是终止包含break指令的最内层的循环体。2. 继续语句continue:通常用于循环控制中,可采用if语句判断调用条件,调用continue语句后,程序不再执行循环体内剩余部分的语句而是直接转到循环的终点,继续下一次的循环运行。3. 返回语句return:使当前正在运行的M文件函数正常结束并返回调用它的函数或程序继续运行,或返回到调用它的环境,如命令窗口。return 语句通常用在函数M文件里面,对某些输入参数或执行结果进行判断,如果出现问题,便调用return语句终止当前程序的运
11、行并返回。2、 信号处理Toolbox介绍在MATLAB中,针对不同的应用设计了相应的Toolbox,为该领域中的常见应用提供了方便快捷的函数,扩充了MATLAB的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能。信号处理Toolbox是其中专用于信号处理学科的领域型工具箱,可方便地应用于信号处理相关问题的仿真与设计。信号处理Toolbox的内容包括数字和模拟滤波器设计、应用及仿真;谱分析和估计;FFT、DCT等常用变换,参数化模型等。具体函数包括如下:2.1 波形产生sin,cos,exp 产生正余弦及复指数函数(掌握)chirp 产生扫描频率余弦diric 产生
12、Dirichlet函数或周期Sinc函数gauspuls 产生高斯调制正弦脉冲pulstran 产生脉冲串rectpuls 产生非周期矩形信号sawtooth 产生锯齿波或三角波(掌握)sinc 产生sinc函数(掌握)square 产生方波(掌握)strips 产生条图tripuls 产生非周期三角波2.2 变换czt Chirp z-变换dct 离散余弦变换dftmtx 离散傅立叶变换矩阵fft 一维FFT(掌握)fft2 二维FFTfftshift 函数fft和fft2输出的重新排列hilbert 希尔伯特(Hilbert)变换idct 离散余弦逆变换ifft 一维逆FFT(掌握)iff
13、t2 二维逆FFT2.3线性系统变换convmtx卷积矩阵latc2tf 格型滤波器转换为传递函数形式poly2rc多项式系数转换为反射系数rc2poly反射系数转换为多项式系数residuezz-传递函数的部分分式展开(掌握)sos2ss二阶级联转换为状态空间sos2tf 二阶级联转换为传递函数(了解)sos2zp二阶级联转换为零极点增益形式(了解)ss2sos状态空间转换为二阶级联形式ss2tf状态空间转换为传递函数ss2zp状态空间转换为零极点增益tf2latc传递函数转换为格型滤波器tf2ss 传递函数转换为状态空间tf2zp 传递函数转换为零极点增益(掌握)zp2sos 零极点增益形
14、式转换为二阶级联形式(掌握)zp2ss 零极点增益形式转换为状态空间zp2tf 零极点增益转换为传递函数(掌握)2.4 统计信号处理cohere两个信号相干函数估计corrcoef 相关系数矩阵cov 协方差矩阵csd 互功率谱密度估计(CSD)pmem 最大熵功率谱估计pmtm 多窗口功率谱估计(MTM)pmusic 特征值向量功率谱估计(MUSIC)psd 自功率谱密度估计tfe 传递函数估计xcorr 互相关函数估计xcorr2 二维互相关函数估计xcov 互协方差函数估计2.5 滤波器分析与实现abs 绝对值(幅值)(掌握)angle 相位角(掌握)conv 卷积和多项式乘法(掌握)c
15、onv2 二维卷积fftfilt 基于FFT重叠加法的数据滤波(掌握)filter IIR或FIR滤波器的数据滤波(掌握)firter2 二维数字滤波filtfilt 零相位数字滤波(了解)filtic 函数filter初始条件确定freqs 模拟滤波器频率响应freqspace 频率响应的频率空间设置freqz 数字滤波器频率响应(掌握)grpdelay 群延迟(掌握)impz 数字滤波器的脉冲响应(掌握)latcfilt 格型梯形滤波器实现unwrap 相位角展开(掌握)zplane 零极点图(掌握)2.6 IIR滤波器设计buttordButterworth型滤波器阶数的选择(掌握)ch
16、eb1ordChebyshev1型滤波器阶数的选择(掌握)cheb2ordChebyshev2型滤波器阶数的选择(掌握)ellipord椭圆滤波器阶次选择(掌握)besself Bessel模拟滤波器设计butterButterworth滤波器设计(掌握)cheby1Chebyshev I型滤波器设计 ( 通带波纹)(掌握)cheby2chebyshevII型滤波器设计(阻带波纹)(掌握)ellip椭圆滤波器设计(掌握)maxflat 通用数字Butterworth滤波器设计yulewalk 递归数字滤波器设计2.7 FIR滤波器设计cremez 复响应和非线性相位等波纹FIR滤波器设计fir
17、1基于窗函数的有限冲激响应滤波器设计-标准响应(掌握)fir2基于窗函数的有限冲激响应滤波器设计-任意响应(掌握)fircls 多频带滤波的最小方差FIR滤波器设计fircls1低通和高通线性相位FIR滤波器的最小方差设计firs最小线性相位滤波器设计firrcos升余弦FIR滤波器设计intfilt插值FIR滤波器设计kaiserord 用Kaiser窗估计函数fir1参数(掌握)remezParks-McClellan优化滤波器设计remezordParks-McCllan优化滤波器阶估计bartlett Bartlett窗(掌握)blackman Blackman窗(掌握)boxcar
18、矩形窗chebwin Chebyshev窗hamming Hamming窗(掌握)hanning Hanning窗(掌握)kaiser Kaiser窗(掌握)triang 三角窗(掌握)2.8 其他参数建模invfreqs 由频率响应辨识连续时间(模拟)滤波器invfreqz 由频率响应辨识离散时间滤波器levinson Levinson-Durbin递归算法lpc 线性预测系数prony Prong法的时域IIR滤波器设计stmcb 利用Steiglitz-McBride迭代法求线性模型模拟原型设计besselap Bessel模拟低通滤波器原型设计buttap Butterworth模拟低
19、通滤波器原型设计cheblap Chevbyshev1型模拟低通滤波器原型设计cheb2ap Chevbyshev2型模拟低通滤波器原型设计ellipap 椭圆低通滤波器原型设计频率变换lp2bp 低通至带通模拟滤波器变换lp2bs 低通至带阻模拟滤波器变换lp2hp 低通至高通模拟滤波器变换lp2lp 低通至低通模拟滤波器变换滤波器离散变换bilinear 双线性变换(掌握)impinvar 冲激不变法的模拟至数字滤波器变换(掌握)交互式工具sptool 交互式信号、滤波器和频谱分析工具特殊运算cceps 复时谱分析cplxpair 重新排列组合复数decimate 降低序列的采样频率dec
20、onv 解卷积和多项式除法demod 通信仿真中的解调制detrend 去除线性趋势dpss Slepain序列dpssclear 去除数据库Slepain序列dpssdir 从数据库目录消去Slepain序列dpssload 从数据库调入Slepain序列dpsssave Slepain序列存入数据库icceps 倒复时谱interp 整数倍提高采样频率medfilt1 一维中值滤波modulate 通讯仿真调制polystap 稳定多项式rceps 实时谱和最小相位重构resample 任意倍数改变采样速率specgram 频谱分析upfirdn 利用fir滤波器转换采样频率vco 电压控
21、制振荡器3、时域信号发生3.1基本离散时间信号利用MATLAB强大的数值处理工具来实现信号的分析和处理,首先就是要学会应用MATLAB函数来构成信号。常见的基本信号可以简要归纳如下:(1)单位采样序列 (1.1) 在MATLAB中可以利用函数zeros实现。 如果在时间轴上延迟了k个单位,得到即: (1.2)(2)单位阶跃序列 (1.3)在MATLAB中可以利用函数ones实现。 (3)正弦序列 (1.4)采用MATLAB的实现方法,如: (4)实指数序列 (1.5)其中,A、a为实数。采用MATLAB的实现方法,如: (5)复指数序列 (1.6)采用MATLAB的实现方法,如: 为了画出复数
22、信号xn,必须要分别画出实部和虚部,或者幅值和相角。MATLAB函数real、imag、abs和angle可以逐次计算出一个复数向量的这些函数。3.2 基本数字调制信号(1)二进制振幅键控(2ASK)最简单的数字调制技术是振幅键控(ASK),即二进制信息信号直接调制模拟载波的振幅。二进制幅度键控信号的时域表达式: (1.7)其中,an为要调制的二进制信号,g(t)是单极性脉冲信号的时间波形,Ts 表示调制的信号间隔。典型波形如下:图 1.2 二进制振幅键控信号时间波形(2)二进制频移键控(2FSK)在二进制数字调制中,若正弦载波的频率随二进制基带信号在f1和f2两个频率点间变化,则产生二进制移
23、频键控信号(2FSK信号)。二进制频域键控已调信号的时域表达式为: (1.8)这里,。典型波形如下:an1011001ttt2FSK信号载波信号1载波信号2图 1.3 二进制频移键控信号时间波形(3)二进制相移键控(2PSK或BPSK)在二进制数字调制中,当正弦载波的相位随二进制数字基带信号离散变化时,则产生二进制移相键控(2PSK)信号。通常用已调信号载波的0和 180分别表示二进制数字基带信号的 1 和 0。二进制移相键控信号的时域表达式为: (1.9)典型波形如下:Tst2PSK信号an 1 0 0 1图 1. 4 二进制相移键控信号时间波形 理解了这些调制信号的产生原理,借助于MATL
24、AB中的循环操作,正弦函数及绘图命令,即可编程产生并显示这类信号。 3.3 双音多频DTMF信号DTMF(Double Tone MulitiFrequency,双音多频)作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传输速度,因此,可广泛用于电话通信系统中。但绝大部分是用作电话的音频拨号。另外,它也可以在数据通信系统中广泛地用来实现各种数据流和语音等信息的远程传输。 DTMF是用两个特定的单音频组合信号来代表数字信号以实现其功能的一种编码技术。两个单音频的频率不同,代表的数字或实现的功能也不同。这种电话机中通常有16个按键,其中有10个数字键09和6个功能键*、#、A
25、、B、C、D。由于按照组合原理,一般应有8种不同的单音频信号。因此可采用的频率也有8种,故称之为多频,又因它采用从8种频率中任意抽出2种进行组合来进行编码,所以又称之为“8中取2”的编码技术。 根据CCITT的建议,国际上采用的多种频率为697Hz、770Hz、852Hz、941Hz、1209Hz、1336Hz、1477Hz和1633Hz等8种。用这8种频率可形成16种不同的组合,从而代表16种不同的数字或功能键,具体组合见表1-1。表1-1 双音多频的组合功能 高频群Hz 功能低频群Hz 1209 1336 1477 1633 697 1 2 3 A 770 4 5 6 B 852 7 8
26、9 C 941 * 0 # D 因此,DTMF信号可以看作两个有限长度的正弦序列相加,正弦信号的频率由按键数字或字母符号对应的频率决定。如,数字“8”由行频852Hz和列频1336Hz决定。理解了DTMF信号的原理,利用MATLAB中的正弦函数,即可产生该信号。四、实验目的:1、 掌握MATLAB的基本编程方法,包括MATLAB中输入输出,赋值,简单向量或矩阵运算,绘图等基本功能。2、 掌握信号处理Toolbox中基本函数使用方法(参见前面信号处理Toolbox函数列表中标注了“掌握”字样的函数),为后续实验打好基础。3、 掌握几种基本的离散时间信号(包括单位采样序列,单位阶跃序列,单频正弦序
27、列,单频复指数序列,实指数序列等),并能够熟练利用MATLAB产生这些信号。4、 理解ASK、FSK、BPSK信号,及DTMF信号的产生原理,并能够利用MATLAB产生它们。五、实验内容:1、设计并编写MATLAB程序,要求包含输入输出操作,赋值,简单程序流控(循环,逻辑判断,选择结构,分支语句等),绘图操作。2、查阅MATLAB中help,学习信号处理Toolbox中要求掌握及了解的函数使用方法。3、对几种基本离散时间信号(包括单位采样序列,单位阶跃序列,正弦序列,复指数序列,实指数序列等)在MATLAB中编程产生并绘图显示。4、(拓展要求)利用MATLAB编程产生并绘图显示2ASK,2FS
28、K,2PSK等数字调制信号。5、(拓展要求)利用MATLAB编程产生并绘图显示DTFM信号。6、(拓展要求)利用MATLAB编程产生并绘图显示高斯白噪声序列。7、(拓展要求)利用MATLAB中的谱分析函数对正弦信号的频谱进行分析并绘图显示。六、实验器材(设备、元器件):安装了MATLAB软件的PC机一台。七、实验步骤:1、 设计一段MATLAB程序,要求包括从键盘输入,赋值,基本矩阵和向量计算,程序流控(循环,逻辑判断,选择结构,分支语句等)和绘图操作。2、 查阅MATLAB中的help,将信号处理Toolbox中要求掌握及了解的函数做成列表,分别列出它们的输入输出。(参照表1-2例子)表1-
29、2 信号处理Toolbox中要求掌握及了解的函数的列表函数名输入输出功能备注sin,cos,exp2pi*f0*n/fT(数字角频率*n)每个n对应的函数值计算正余弦及复指数函数的值3、 在内,画出单位下列信号:(a)单位采样序列和单位阶跃序列的时域波形图。(b)、的波形。说明与、与之间的关系。4、画出下列信号在内的波形。观察是否周期信号。如果是周期信号,信号的基波周期是什么?如果不是周期信号,说明原因。5、在内,画出下列信号:对于复数序列,要求分别画出实部和虚部;幅值和相角。若把中的底数0.8分别改为1.2、-0.8,讨论产生的时域波形有何变化。总结指数序列的底数对序列变化的影响。6、(拓展
30、要求)设计产生数字二进制序列:1 0 1 0 1 0 的2ASK、2FSK、2PSK调制信号。已知符号速率Fd10Hz(即时间间隔Ts为0.1),输出信号的采样频率为200Hz。(a)2ASK信号的载波频率Fc40Hz, (b)2FSK信号载波1频率F125Hz,载波2频率F240Hz。(c)2PSK载波频率Fc50Hz。分别画出以上信号调制前后的时域波形图。7、(拓展要求)利用MATLAB产生DTMF双音多频信号。画出数字“0”的时域波形图。8、(拓展要求)MATLAB函数randn(1,N)可以产生均值为0,方差为1的高斯随机序列,也就是白噪声序列。试利用randn函数产生均值为0.15,
31、方差为0.1的高斯白噪声序列,要求序列时域范围为。画出时域波形图。同时将实验步骤2中产生的信号与相加,将得到的波形与的波形做比较。9、(拓展要求)利用MATLAB中的谱分析函数画出的频谱。与理论上根据傅立叶变换的定义计算出的的频谱进行比较。八、实验数据及结果分析:需要的程序代码:(1)一段MATLAB包括从键盘输入,赋值,基本矩阵和向量计算,程序流控(循环,逻辑判断,选择结构,分支语句等)和绘图操作的MATLAB简单程序。实验1代码如下:disp(请选择本函数所要执行的功能);disp(k=1:绘出零极图;k=2:绘出相位延迟;k=3:绘出群延迟);k=input(k=);num1=-0.2
32、0.8 0.4 1;num2=2.4 -0.9 1.2 2;num=num1+num2;den1=1 0.4 0.18 -0.2;den2= 2 3.5 -2.1 1.05;den=den1.*den2;figure(1);switch k case 1; zplane(num,den); case 2 phasedelay(num,den); case 3 grpdelay(num,den); otherwise disp(错误!);enddisp(num);disp(den);(2)产生序列的程序实验2代码如下:N=41;n=-20:20;figure(1);%x1nx1=zeros(1,
33、N);x1(21)=1;subplot(2,2,1);stem(n,x1,fill);xlabel(n),ylabel(x1n),title(x1n的时域波形图);%x2nx2=zeros(1,20) ones(1,21);subplot(2,2,2);stem(n,x2,fill)xlabel(n),ylabel(x2n),title(x2n的时域波形图);%y1ny1=x1(1+5:length(x1),zeros(1,5);subplot(2,2,3);stem(n,y1,fill);xlabel(n),ylabel(y1n),title(y1n的时域波形图);%y2ny2=zeros(
34、1,8),x2(1:length(x2)-8);subplot(2,2,4);stem(n,y2,fill)xlabel(n),ylabel(y2n),title(y2n的时域波形图);n=0:100;figure(1);%x3nx3=sin(pi*n/16);subplot(3,1,1)stem(n,x3,fill)xlabel(n),ylabel(x3),title(x3n的时域波形图);%x4nx4=sin(n/2);subplot(3,1,2)stem(n,x4,fill)xlabel(n),ylabel(x4),title(x4n的时域波形图);%x5nx5=cos(pi*n/12)
35、+cos(3*pi*n/8);subplot(3,1,3)stem(n,x5,fill)xlabel(n),ylabel(x5),title(x5n的时域波形图);n=0:30;x6=0.2*(0.8).n;x7=0.2*exp(-1/12+1j*pi/6)*n); x61=0.2*(1.2).n; x62=0.2*(-0.8).n; figure(1)subplot(2,4,1) stem(n,x6,fill);title(x6n 底数为0.8); xlabel(n); ylabel(x6n);subplot(2,4,2)stem (n,x61,fill);title(x61n 底数为1.2
36、); xlabel(n); ylabel(x61n);subplot(2,4,3) stem (n,x62,fill);title(x62n 底数为-0.8); xlabel(n); ylabel(x62n);subplot(2,4,5) stem (n,real(x7),fill);title(x7n实部);xlabel(n); ylabel(实部);subplot(2,4,6) stem (n,imag(x7),fill); title(x7n虚部); xlabel(n); ylabel(虚部)subplot(2,4,7) stem (n,abs(x7),fill);title(x7n幅度
37、);xlabel(n); ylabel(幅度) subplot(2,4,8) stem(n,angle(x7),fill); title(x7n相位); xlabel(n); ylabel(相位);(3)产生2ASK、2FSK、2PSK调制信号的程序(拓展要求)(4)产生DTMF信号的程序(拓展要求)f1=941;f2=1336;t=0:0.01:5;m=sin(2*pi*f1*t)+sin(2*pi*f2*t);figure(1);plot(t,m);title(数字0的时域波形图);xlabel(时间t);(5)高斯白噪声序列的产生程序(扩展要求)n=0:100;N=length(n);x
38、8=0.15+sqrt(0.1)*rand(1,N);figure(1);subplot(3,1,1);stem(n,x8)title(白噪声n,均值为0.15,方差为0.1)xlabel(n);ylabel(x8n);N2=41;n2=-20:20;x2=zeros(1,20) ones(1,21);subplot(3,1,2);stem(n2,x2,fill)xlabel(n),ylabel(x2n),title(x2n的时域波形图);x2_noise(1:20)=x2(1:20);x2_noise(21:41)=x2(21:41)+x8(1:21);subplot(3,1,3);stem
39、(n2,x2_noise,fill)xlabel(n),ylabel(x2n_noise),title(x2n加噪后的时域波形图);(6)正弦信号频谱分析的程序(扩展要求)结果:(1)信号处理Toolbox中的要求掌握及了解的函数列表。函数用法功能sawtooothx = sawtooth(t)x=sawtooth(t,width)width是0到1之间的标量。在0到2width区间内,x的值从-1线性变化到1;在2width2区间内,x的值又从1线性变化到-1。sawtooth(t,1)和sawtooth(t)是等价的。sincy = sinc(x)产生sinc函数squarey=squar
40、e(t,duty)产生一个周期为2 ,幅值为1的周期性方波, duty表示占空比(duty cycle)fftY = fft(X,n)返回 n 点 DFT。如果未指定任何值,则 Y 的大小与 X 相同。ifftX = ifft(Y)使用快速傅里叶变换算法计算 Y 的逆离散傅里叶变换。X 与 Y 的大小相同。residuezr,p,k = residuez(b,a) b,a = residuez(r,p,k)找出两个多项式b(z)和a(z)的比值的部分分数展开式的残基,极点和直接项。 矢量b和a是以z的递减幂指定离散时间系统b(z)/ a(z)的多项式系数。tf2zpZ,P,K=TF2ZP(NU
41、M,DEN)传递函数转换为零极点增益zp2tfnum,den=zp2df(z,p,k)零极点增益转换为传递函数grpdelaygd,w = grpdelay(b,a)返回由输入向量b和a指定的离散时间滤波器的群时延响应gd。 输入向量是分子b和分母a的系数,H(z)中的多项式。zplanezplane(b,a)其中b和a是行向量,首先使用根找到零和由分子系数b表示的传递函数的极点和分母系数a。unwrapQ = unwrap(P)当 P 的连续元素之间的绝对跃变大于或等于 弧度的默认跃变容差时,Q = unwrap(P) 将通过在向量 P 中增加 2 的倍数来更正弧度相位角。如果 P 是矩阵,unwrap 将按列运算。如果 P 是一个多维数组,则 unwrap 对第一个非单一维度进行运算。(2)的时域波形(3)信号的时移:与、与之间的关系。通过比较与、与的波形可知,相当于
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922