信号频谱分析
这个例子展示了使用MATLAB®下游信号的频谱分析,通信工具箱™和DSP系统工具箱™。可以使用捕获信号,或接收信号实时使用RTL-SDR广播,ADALM-PLUTO电台或USRP™收音机。你可以改变收音机的中心频率收音机调到一个乐队,一个信号。然后您可以使用频谱分析仪来查看和接收光谱进行测量。
仿真软件万博1manbetx(R)的实现这个例子中,参考信号的频谱分析模型万博1manbetx(通信工具箱)。
所需的硬件和软件
使用信号捕获运行这个例子,您需要以下软件:
实时接收信号,还需要以下硬件之一:
RTL-SDR广播和相应的软件为RTL-SDR无线电通信工具箱支持包万博1manbetx
ADALM-PLUTO广播和相应的软件为ADALM-PLUTO无线电通信工具箱支持包万博1manbetx
USRP广播和相应的软件为USRP无线电通信工具箱支持包万博1manbetx
通信工具箱支持SDR平台的完整列表,请参阅“特别提款权MATLAB和Simulink万博1manbetx硬件支持”部分万博1manbetx软件定义无线电(SDR)。
示例代码
接收方要求用户输入并初始化变量。然后,它调用源和调频广播信号接收器在一个循环中。广播时间的循环也跟踪使用帧持续时间和丢失的样品报告的信号源。
选择更改默认设置,设置| cmdlineInput | 1。
cmdlineInput =假;如果cmdlineInput%从命令行应用程序请求用户输入参数userInput = helperSpectralAnalysisUserInput;%设置初始参数[SAParams, sigSrc] = helperSpectralAnalysisConfig (userInput);其他的%设置初始参数负载defaultInputSpecAnalysis.mat[SAParams, sigSrc] = helperSpectralAnalysisConfig;结束
设置
创建简介
基于用户输入的对象和配置
hSpectrum =简介(…“名字”,“通频带谱”,…“标题”,“通频带谱”,…“方法”,“韦尔奇”,…“SpectrumType”,的功率密度,…“FrequencySpan”,“全部”,…“SampleRate”SAParams.FrontEndSampleRate,…“SpectralAverages”,50岁,…“FrequencyOffset”SAParams.CenterFrequency,…“YLimits”-120年[10],…“YLabel”,“平方,dB”,…“位置”figposition ([50 30 30 40]));
流处理
查看谱。频谱分析仪运行时,你可以测量山峰,占用带宽,和其他属性的信号。
%初始化广播时间radioTime = 0;%主循环而radioTime < userInput.Duration%接收基带样本(信号源)如果SAParams.isSourceRadio如果SAParams。isSourcePlutoSDR rcv = sigSrc ();失去了= 0;晚= 1;elseifSAParams。isSourceUsrpRadio rcv = sigSrc ();失去了= 0;其他的(rcv ~,丢失,晚]= sigSrc ();结束其他的rcv = sigSrc ();失去了= 0;晚= 1;结束rcv = rcv -意味着(rcv);%去除直流分量。步骤(hSpectrum rcv);%更新广播时间。如果有了样品,添加。radioTime = radioTime + SAParams。FrontEndFrameTime +…双(失去)/ SAParams.FrontEndSampleRate;结束%释放所有系统对象释放(sigSrc);释放(hSpectrum);
结论
在本例中,您使用通信工具箱™系统对象接收信号的频谱分析。