主要内容

调频广播接收器

这个例子展示了如何构建一个调频单声道或立体声接收器使用MATLAB®和通信工具箱™。可以使用捕获信号,或接收信号实时使用RTL-SDR电台或ADALM-PLUTO收音机。

所需的硬件和软件

使用信号捕获运行这个例子,您需要以下软件:

实时接收信号,还需要以下硬件之一:

通信工具箱支持SDR平台的完整列表,请参阅“特别提款权MATLAB和Simulink金宝app硬件支持”部分金宝app软件定义无线电(SDR)

背景

调频广播使用调频(FM)提供高保真声音传输广播电台频道。预加重与去加重过滤器是用来减少噪音的影响高音频频率。立体声编码可以同时传输两个左右声道的同一调频频道(1]。

运行示例

类型FMReceiverExample在MATLAB命令窗口或点击“开放的例子”按钮打开并运行示例。你需要输入以下信息:

  1. 接待时间以秒为单位

  2. 信号源(捕获数据,RTL-SDR广播或ADALM-PLUTO广播)

  3. 调频频道频率

示例中接收到的音频在你电脑的扬声器。

注意:本例中使用的中心频率外默认PlutoSDR调谐范围。点击configurePlutoRadio (“AD9364”)使用你的ADALM-PLUTO电台在合格的调谐范围。

接收机结构

调频广播解调器基带系统对象™转换的输入采样率228千赫至45.6千赫,主机的采样率的音频设备。根据调频广播标准在美国,不强调低通滤波器时间常数设置为75微秒。这个示例处理接收到的mono信号。立体声信号解调器也能过程。

执行立体声解码,调频广播解调器基带对象使用一个峰值筛选,挑出的19千赫导频音38 kHz创建载体。使用产生的载波信号,调频广播信号解调器基带块降频转换器唐森,集中在38 kHz,基带。后来,唐森和L + R信号通过一个75微秒不强调过滤器。调频广播解调器基带块分离L和R信号,并将它们转换成45.6 kHz的音频信号。

示例代码

接收方要求用户输入并初始化变量。然后,它调用源和调频广播信号接收器在一个循环中。广播时间的循环也跟踪使用帧持续时间和丢失的样品报告的信号源。

信号源的输出的延迟时的样本实际收到,可以用来确定接近实时接收方正在运行。延迟值1和失去的样本值0表示系统实时运行。延迟值大于1表明,接收机无法实时处理样品。延迟报道的帧的数量。它可以在1和128之间。如果延迟大于128,那么样品丢失。

%从命令行应用程序请求用户输入参数userInput = helperFMUserInput;%计算调频系统参数根据用户输入[fmRxParams, sigSrc] = helperFMConfig (userInput);%创建调频广播接收器对象和配置基于用户输入fmBroadcastDemod = comm.FMBroadcastDemodulator (“SampleRate”fmRxParams.FrontEndSampleRate,“FrequencyDeviation”fmRxParams.FrequencyDeviation,“FilterTimeConstant”fmRxParams.FilterTimeConstant,“AudioSampleRate”fmRxParams.AudioSampleRate,“立体”、假);%创建音频播放器球员= audioDeviceWriter (“SampleRate”,fmRxParams.AudioSampleRate);%初始化广播时间radioTime = 0;%主循环radioTime < userInput.Duration%接收基带样本(信号源)如果fmRxParams.isSourceRadio如果fmRxParams。isSourcePlutoSDR rcv = sigSrc ();失去了= 0;晚= 1;其他的(rcv ~,丢失,晚]= sigSrc ();结束其他的rcv = sigSrc ();失去了= 0;晚= 1;结束%解调调频广播信号和音频解码audioSig = fmBroadcastDemod (rcv);球员(audioSig);%更新广播时间。如果有了样品,添加。radioTime = radioTime + fmRxParams。FrontEndFrameTime +双(失去)/ fmRxParams.FrontEndSampleRate;结束%释放音频和信号源发行版(sigSrc)发布(fmBroadcastDemod)发布(球员)

进一步的探索

进一步探索这个例子中,你可以改变的中心频率RTL-SDR广播或其他ADALM-PLUTO广播和听广播电台。

你可以设置立体声调频解调器对象的属性为true以立体的方式来处理信号和比较的声音质量。

你可以探索函数系统参数的详细信息:

您可以使用FMReceiverExampleApp进一步探索调频信号的用户界面。这个程序允许您选择的信号源和改变中心频率RTL-SDR电台或ADALM-PLUTO收音机。启动应用程序,类型FMReceiverExampleApp在MATLAB命令窗口。这个用户界面如下图所示

选定的参考书目