- 23
- 0
- 约4.94千字
- 约 9页
- 2018-09-11 发布于湖北
- 举报
基于matlab的声音信号频谱分析仪设计b3r3hftk
基于MATLAB的声音信号频谱分析仪设计
设计目的及要求
设计目的
基于MATLAB设计一个简易声音信号频谱分析仪。
设计要求
输入方式: ①利用电脑声卡录音;
②打开WAV文件;
时域分析:计算原始信号的幅值,频率,相位;
频域分析:利用快速傅里叶变换(FFT)得到信号的幅频特性和相频特性。
设计原理分析
设计结构
设计的结构图如下:
频谱
频谱分析仪
输入模块
声卡录制
打开WAV文件
分析模块
时域分析
频域分析
幅值
频率
相位
幅频
特性
相频
特性
图像显示模块
幅频特性曲线
相频特性曲线
原始波形
声音输入方式
声卡输入:利用MATLAB中的函数函数获取声卡录制的声音,录制频率和时间可以设置。默认双声道录制。
打开WAV文件:通过MATLAB中的函数获取声音文件。如果获取的信号是单声道信号,则双声道分析不可选。
声道选择
设置一个变量handles.sd,如果选择的是左声道,handles.sd=1;如果是右声道,handles.sd=2;如果是双声道,handles.sd=0;在时域和频域分析的时候,通过handles.sd的值来判断声道。
时域分析
幅值检测:在一个周期内,求出信号最大值与最小值的差的一半,即,同样,也会求出多个值,但第1个值对应的和不是在一个周期内搜索得到的,故以除第1个以外的值的平均作为幅值的估计值。
频率检测:对周期信号来说,可以用时域波形分析来确定信号的周期,也就是计算相邻的两个信号波峰的时间差、或过零点的时间差。这里采用过零点的时间差(周期)。频率即为,由于能够求得多个值(有多个),故采用它们的平均值作为周期的估计值。
相位检测:采用过零法检测,通过判断与同频零相位信号过零点时刻,计算其时间差,然后换成相应的相位差。,同样,以的平均值作为相位的估计值。
计算幅值,频率,相位的流程图如下:
频域分析
对于给定的时域信号y,可以通过变换得到频域信息。可按下式计算
式中,为样本容量,为采样间隔。
采样信号的频谱是一个连续的频谱,不可能计算出所有的点的值,故采用
离散变换,即
式中,。但上式的计算效率很低,因为有大量的指数(等价于三角函数)运算,故实际中多采用快速变换()。其原理即是将重复的三角函数算计的中间结果保存起来,以减少重复三角函数计算带来的时间浪费。由于三角函数计算的重复量相当大,故能极大地提高运算效率。
为了直观地表示信号的频率特性,工程上常常将变换的结果用图形的方式表示,即频谱图。
以频率为横坐标,为纵坐标,可以得到幅值谱;
以频率为横坐标,为纵坐标,可以得到相位谱;
软件实现
基于上面的分析,接下来进行 的软件设计。
界面设计
界面介绍:
输入模块具有采样频率(单位是kHz)和采样时间(单位是s)的设置功能,可以对不同长度的声音信号进行采样,同时有打开WAV文件的功能,以便对已有的信号进行处理,利用电脑声卡采样是双声道采样信号。录音结束后会在右方的原始信号显示区域显示波形。
分析模块首先需要选择声道,默认状态为双声道,当选择了某个声道后,点击时域分析,时域分析块中会显示相应的频率,幅值(这里转化为声强,单位是dB)以及相位,当点击频域分析时,在分析模块的下方会显示信号的幅频特性图和相频特性图。
图像显示除了显示幅频特性图和相频特性图之外,也可显示原始信号波形。
程序模块
输入方式相关程序:
录音输入:
function pushbutton8_Callback(hObject, eventdata, handles)
F=str2double(get(handles.edit1,String));
Fs=F*1000;
Time=str2double(get(handles.edit2,String));
N=Time*Fs;%采样长度
handles.y=wavrecord(N,Fs,2,double);
handles.sd=0;%默认声道为双声道
handles.inputtype=1;
guidata(hObject,handles);
plot(handles.axes3,handles.y);
axis tight;
xlabel(handles.axes3,w/Hz)%画原始波形图
打开WAV文件:
function pushbutton18_Callback(hObject, eventdata, handles)
[filename,filepath]=uigetfile(*.wav,wavfile);
if filename~=0
[handles.y,Fs,bit]=wavread(filename);
handles.inputtype=2;
guidata(hObject,handles);
plot(handles.axes3,(1:length
您可能关注的文档
- 基于cpld控制的直流固态功率控制器的设计电子技术文集zin9lnyb.doc
- 基于at89c51的智能测频仪设计idbk0sq5.doc
- 基于bp神经网络的油藏流场评价体系研究smunranm.doc
- 基于cca的图像语义特征提取的分析与研究7qcaf8yg.doc
- 基于cs3000顺序控制应用的研究jjavcszo.doc
- 基于ds1302数字时钟电路的设计ywet2xs2.doc
- 基于at89c51的温控制系统设计使用ds18b20温度控制yf4qkv8f.doc
- 基于c的酒店管理系统的开发毕业论文5ij5zvnv.doc
- 基于bp网络的车牌识别系统的设计毕业设计论文8xubsbs2.doc
- 基于delphi的公司人事管理系统的设计与实现fcy2x0xv.doc
最近下载
- 2026年入党积极分子考试题库150道附答案【精练】.docx VIP
- 1-品牌管理概述.ppt VIP
- CA6140车床的基本操作.PPT VIP
- 2026广东中远海运重工招聘60人笔试参考题库附答案解析.docx VIP
- 注册会计师-税法-基础练习题-第十一章车辆购置税法、车船税法和印花税法-第三节印花税法.docx VIP
- 注册会计师-税法-基础练习题-第十一章车辆购置税法、车船税法和印花税法-第一节车辆购置税法.docx VIP
- 钢结构箱型柱内芯混凝土浇筑施工工法.pdf VIP
- 曙光DBStor100-U备份存储系统技术白皮书.pdf VIP
- 联合资信评估2025年消费贷ABS市场回顾与展望:消费贷ABS表现亮眼,未来发展仍需保持关注.docx
- 注册会计师-税法-强化练习题-第十一章车辆购置税法、车船税法和印花税法.docx VIP
原创力文档

文档评论(0)