※※
※※※※※※※
2009级学生信号与系统课
※ ※ ※ ※
※
※※
※
※
程设计
※
※
※
※
※
※
信号与系统课程设计报告书
基于MATLAB的声音信号频
课题名称
谱分析仪设计
姓 名 学 号 院、系、部 专 业 指导教师
杜庆玉 2009010578 物理与电子科学系
物理学 王树斌
2012年 9 月 25日
1
一、设计任务及要求: 设计任务: 本文将给出基于声卡与MATLAB的声音信号频谱分析仪的设计原理与实现方法。 要 求: (1) 音频信号信号输入,从声卡输入、从WAV文件输入、从标准信号发生器输入; (2) 信号波形分析,包括幅值、频率、周期、相位的估计,以及统计量峰值、均值、均方值和方差的计算; (3) 信号频谱分析,频率、周期的估计,图形显示幅值谱、相位谱、实频谱、虚频谱和功率谱的曲线。 指导教师签名: 2012年10月 日 二、指导教师评语: 指导教师签名: 2012 年 月 日 三、成绩
指导教师签名: 2012年 月 日
2
基于MATLAB的声音信号频谱分析仪设计
1
设计目的
(1)了解计算机软硬件平台的虚拟仪器可代替传统的测量仪器,如示波器、逻辑分析仪、信号发生器、频谱分析仪等[2] 肖旸,胡耀祖. 基于虚拟技术的频谱分析仪器方案. 微机发展,2003.6。
(2)知道目前已经较成熟的频谱分析软件,如SpectraLAB、RSAVu、dBFA等。 (3)声卡是多媒体计算机最基本的配置硬件之一,价格便宜,使用方便。 (4)熟悉MATLAB,MATLAB是一个数据分析和处理功能十分强大的工程实用软件,他的数据采集工具箱为实现数据的输入和输出提供了十分方便的函数和命令[3] 张桂林,张烈平. 基于声卡和Matlab的虚拟信号发生器. 现代电子技术。
3
2.设计原理
2.1波形分析原理
2.1.1 信号频率、幅值和相位估计
(1)频率(周期)检测
对周期信号来说,可以用时域波形分析来确定信号的周期,也就是计算相邻的两个信号波峰的时间差、或过零点的时间差。这里采用过零点(ti)的时间差T(周期)。频率即为f = 1/T,由于能够求得多个T值(ti有多个),故采用它们的平均值作为周期的估计值。
(2)幅值检测
在一个周期内,求出信号最大值ymax与最小值ymin的差的一半,即A = (ymax - ymin)/2,同样,也会求出多个A值,但第1个A值对应的ymax和ymin不是在一个周期内搜索得到的,故以除第1个以外的A值的平均作为幅值的估计值。
(3)相位检测
采用过零法,即通过判断与同频零相位信号过零点时刻,计算其时间差,然后换成相应的相位差。φ=2π(1-ti/T),{x}表示x的小数部分,同样,以φ的平均值作为相位的估计值。
频率、幅值和相位估计的流程如图 1所示。
4
图 1 频率、幅值和相位估计的流程图
其中tin表示第n个过零点,yi为第i个采样点的值,Fs为采样频率。
2.1.2 数字信号统计量估计 (1) 峰值P的估计
在样本数据x中找出最大值与最小值,其差值为双峰值,双峰值的一半即为峰值。
P=0.5[max(yi)-min(yi)] (2)均值估计
5