- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab频谱分析仪
频谱分析仪
摘要 频谱分析仪是研究电信号频谱结构的仪器,用于信号失真度、调制度、谱纯度、频率稳定度和交调失真等信号参数的测量,是一种多用途的电子测量仪器。随着软硬件技术的发展,仪器的智能化与虚拟化已成为未来实验室及研究机构的发展方向。虚拟仪器技术的优势在于可由用户定义自己的专用仪器系统,且功能灵活,很容易构建,所以应用面极为广泛。
目录
1概述 3
2技术路线 4
3实现方法 5
3.1搭建GUI界面 5
3.2信号输入 6
3.2.1选择信号输入 6
3.2.2声卡输入 7
3.2.3读取wav文件 7
3.2.4信号发生器输入 7
3.3时域分析 8
3.4频域分析 9
3.5仿真 10
3.5.1声卡输入 10
3.5.2读取wav文件 10
3.5.3信号发生器 11
4存在的问题 15
5致谢 15
参考文献 15
1概述
MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件。可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。MATLAB自带了强大的GUl工具[1]。在本文中,将利用MATLAB的GUI工具,设计出数字频谱分析仪。
频谱分析仪是研究电信号频谱结构的仪器,用于信号失真度、调制度、谱纯度、频率稳定度和交调失真等信号参数的测量,可用以测量放大器和滤波器等电路系统的某些参数,是一种多用途的电子测量仪器。它又可称为频域示波器、跟踪示波器、分析示波器、谐波分析器、频率特性分析仪或傅里叶分析仪等。现代频谱分析仪能以模拟方式或数字方式显示分析结果,能分析1赫兹以下的甚低频到亚毫米波段的全部无线电频段的电信号[2]。目前已经有许多较成熟的频谱分析软件,如SpectraLAB、RSAVu、dBFA等。本文将给出的则是通过MATLAB软件实现的数字频谱分析仪。FFT(Fast Fourier Transformation),即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。它对傅氏变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。进一步掌握MATLAB软件开发过程的基本理论、基本知识和基本技能,熟悉基于MATLAB平台的若干信号处理系统开发及调试方法
2技术路线
本次设计的频谱分析仪模块划分如图1所示:
图1 频谱分析仪模块划分
3实现方法
3.1搭建GUI界面
此次设计搭建的GUI见面如图2所示:
图2 GUI界面
最上为标题区,用于显示软件标题等信息。再往下是信号输入区,3种输入方式在信号发生器中加入了选项,从而可以将产生的信号与原有的信号进行混迭。只有当单选框被选中时才允许使用对应的输入框、按钮等。
分析区时域分析频域分析,该软件的核心代码都在这两个按钮的回调函数中。
分析结果区,用于显示波形基本参数与统计量的计算结果Axes1为波形,在录音结束、打开WAV文件成功或者信号发生器生成波形时会更新显示。A为频谱图显示区,用于显示各种频谱的谱线,在点击频域分析后会更新显示。function record_Callback(hObject, eventdata, handles)
set(handles.record,value,1);
set(handles.wavfile,value,0);
set(handles.wave,value,0);
h=findobj(Tag,recordtime);
set(h,enable,on);
h=findobj(Tag,startrecord);
set(h,enable,on);
h=findobj(Tag,wavname);
set(h,enable,off);
h=findobj(Tag,openfile);
set(h,enable,off);
h=findobj(Tag,inwave);
set(h,enable,off);
h=findobj(Tag,inamp);
set(h,enable,off);
h=findobj(Tag,infre);
set(h,enable,off);
h=findobj(Tag,inpha);
set(h,enable,off);
h=findobj(Tag,mix);
set(h,enable,
原创力文档


文档评论(0)