资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,基于,MATLAB,的实时声信号与谱分析设计,本文介绍了基于,MATLAB,的声信号采集与谱分析的设计过程,在阐述频率分析及功率谱估计原理的基础上,分析了经典功率谱估计和现代功率谱估计的两大类算法,主要采用了经典功率谱估计的周期法,间接法和改进的周期法及现代功率谱估计的,AR,模型参数法对声信号进行谱分析,并通过大量试验对各种算法进行验证对比。该设计利用串口将采集到的声信号上传,并在,MATLAB,环境下进行谱分析。,声,传,感,器,A/D,SPI,DSP,串,口,通,信,谱,分,析,谱分析,本设计的主要任务是通过串口把实时采集的数据传至计算机后,在,MATLAB,环境下将数据读回并实现信号的频谱分析。本设计主要研究了各种频谱分析算法实现后的效果图,直观比较不同的算法的不同效果。其中包括经典功率谱分析和现代功率谱分析。经典谱估计主要方法有直接法,间接法和改进的直接法。现代谱估计主要是针对经典谱估计的分辨率低和方差性能不好等问题提出的,主要的参数模式是自回归(,AR,)模型、移动平均(,MA,)模型和自回归,/,移动平均(,ARMA,)模型,其中,AR,模型由线性方程描述,而,MA,和,ARMA,模型则由非线性方程描述。由于,MA,和,ARMA,模型均可用高阶的,AR,模型来近似,本文使用的是,AR,参数模型。,设计的主要任务,串口传输模块,(,1,)本设计通过,TMS320F2812,内部的,A/D,转换器实现信号的采集,理解串口通信的原理并编写串口读数的程序,将采样结果通过串口上传到计算机。,(,2,),MS320F2812,内部具有两个相同的,SCI,模块,,SCIA,和,SCIB,,每一个,SCI,模块都各有一个接收器和发送器。,SCI,的接收器和发送器各具有一个,16,级深度的,FIFO,(,First in fist out,先入先出)队列,它们还都有自己独立的使能位和中断位。,(,3,),S,CI发送数据的速度是由波特率来决定。所谓的波特率就是指每秒所能发送的位数。,(,4,)在进行通信的时候,双方都必须以相同的数据格式和波特率进行通信,否则通信会失败,。,本次设计采用的波特率是,115200bps,,无校验,,8,个,数据位,,1,个停止位。下图是显示串口调试的界面。,在本次设计中要求对从串口接收的数据进行谱分析,由于MATLAB软件相对其他软件具有许多优点,例如:语言简洁紧凑,使用方便灵活,库函数极其丰富,拥有功能强劲的工具箱等,所以本设计选择MATLAB软件进行谱分析。,谱分析在MATLAB中的实现,经典功率谱估计,经典谱估计具有物理概念明确、算法简单的特点,是目前经常使用的谱估计方法。在经典谱估计中,,Bartlett,算法和,Welch,算法都是周期图法的改进算法。,周期图法是把随机序列,y,(,n,)的,N,个观测数据视为一个能量有限的序列,直接计算,y,(,n,)的离散傅立叶变换得,Y,(,k,),然后再取其幅值的平方,并除以,N,,作为序列,y,(,n,)真实功率谱的估计。,间接法先由序列,x,(,n,)估计出自相关函数,R,(,n,),然后,R,(,n,)进行傅立叶变换,便得到,x,(,n,)的功率谱估计。,Bartlett,平均周期图法将具有,N,个观测点的可用样本分成,L=N/M,个子样本,每个子样本有,M,个观测点,然后在每个,w,值上对所有子样本的周期图进行平均,一次来减小周期图中较大的波动,Welch,平滑平均周期图法方法综合了,Bartlett,改进周期图法的优点,是通过先对数据分段加窗处理,然后再求平均的方法进行的。,几种经典功率谱估计方法的实验仿真,原始信号,直接法,间接法,Bartlett,法,Welch,法,现代功率谱估计即参数谱估计方法是通过观测数据估计参数模型再按照求参数模型输出功率的方法估计信号功率谱。主要是针对经典谱估计的分辨率低和方差性能不好等问题提出的。主要方法有最大的谱分析法(AR模型法)、Pisarenko谐波分解法、Prony提取极点法、Prony谱线分解法以及Capon最大似然法等。其中,AR,模型由线性方程描述,而,MA,和,ARMA,模型则由非线性方程描述。由于,MA,和,ARMA,模型均可用高阶的,AR,模型来近似,本文使用的是,AR,参数模型。,AR,模型的物理意义是认为序列,y(n),是白噪声作用于线性时不变系统时的系统响应。本设计中采用,AR,模型的协方差算法,自相关算法,,Burg,算法。,现代估率谱估计,几种现代功率谱估计的实验仿真,仿真结果直观地说明了自相关算法、,Burg,算法和改进协方差算法各自的优缺点。对相隔仅有,5HZ,的,2,个混合信号进行谱估计时,自相关法不容易看出其频率成份,而,Burg,算法和改进协方差算法提高了参数估计的精度和频率分辨率。而,Burg,方法,用其进行功率谱估计时令前后向预测误差功率之和最小,即对,前后都不加窗,,Burg,算法是建立在数据基础之上的,避免了先计算自相关函数从而提高计算速度,计算不太复杂,分辨率优于自相关法。,MATLAB提供了一套可视化的创建图形窗口的工具,使用用户界面开发环境可方便的创建GUI应用程序,它可以根据用户设计的GUI布局,自动生成M文件的框架,用户使用这一框架编制自己的应用程序。图形用户界面就是通过窗口、选单、按钮、文字说明等对象构成一个美观的界面,用户利用鼠标或键盘可以方便地实现操作,。,基于,MATLAB,用户界面的谱分析,本设计中用户界面,大体分为信号输入模块,原始信号显示模块,频谱分析模块,经典谱分析模块和现代谱分析模块四部分。经典谱分析模块包含直接法、间接法、,Welch,法和,Bartlett,法四个小模块。现代谱分析模块则包括,Burg,法和自相关法两个小模块。,根据不同的信号来源,界面主要采用两种不同输入方式。一种信号来源是由串口实时采集到的信号,把该信号作为一种输入方式。然后点击打开串口,其次点击频谱分析按钮,坐标轴会显示信号的幅度谱。,用户界面的实现过程,最后就是功率谱分析部分,串口开始读取数据同时把数据保存在,D,盘下的一个文件中。接着关闭串口,点击打开按钮,即可读回由串口实时采集到的声信号数据。打开文件的同时首先在坐标轴中会显示原始信号波形。其次点击频谱分析按钮,坐标轴会显示信号的幅度谱。最后就是功率谱分析部分。,另一种信号来源是打开,mat,文件中已存的两个不同频率叠加的声音信号,把该信号作为一种输入方式。然后点打开按钮,在打开文件名的同时首先会在坐标轴中显示原始信号波形。其他的操作如上第一种方式。,输入信号为串口接收的数据界面,输入信号为,mat,文件已存的数据,通过实验仿真可以直观地看出以下特性:,(,1,)经典功率谱估计中的周期图法所得到的结果特点是离散性大,曲线粗糙,方差较大,但是分辨率较高。,(,2,),Bartlett,平均周期图法和,Welch,平滑平均周期图法的收敛性较好,曲线平滑,估计的结果方差较小,但是功率谱主瓣较宽,分辨率低。这是由于对随机序列的分段处理引起了长度有限所带来的,Gibbs,现象而造成的。,(,3,)与,Bartlett,法相比,,Welch,法的估计曲线比较粗糙,但是分辨率较好,原因是,Welch,法中对数据进行截断时加的是,Hanning,窗,而在,Bartlett,法中使用的是矩形窗,相对于矩形窗,窗的主瓣包含更多的能量,因而使功率谱的主瓣较窄,分辨率较高。,总结,本设计主要是对于信号的频率分析算法进行研究,所谓的频率分析即是在频域范围内研究信号的特征,通常用求信号的功率谱来研究信号的频率特性。本设计首先是介绍常见的几种频谱分析算法的原理,并在软件上利用用户界面对采集的原始声信号数据进行分析,可以直观的对比出每种算法各自的优缺点。,最后由衷地感谢系里的老师和领导。感谢他们为我们的毕业设计提供的良好的软件、硬件环境,以及在各方面给予我们的关注。,谢谢!,致 谢,
展开阅读全文