主要内容

Simulink中的FRS/GMRS接收机万博1manbetx

这个例子展示了如何使用Simulink®和Communications Toolbox™实现对讲机接收器。万博1manbetx本例遵循的具体无线电标准是FRS/GMRS(家庭无线电服务/通用移动无线电服务)和CTCSS(连续语音编码压制系统)。您可以使用模拟信号、捕获信号或从商用对讲机接收信号RTL-SDR无线电通信工具箱支持包万博1manbetx

本示例设计用于与美国的FRS/GMRS操作标准一起工作。这些标准的技术规格可在下面的参考列表中找到。在其他国家的运作可能行得通,也可能行不通。

所需硬件和软件

要使用捕获的信号运行此示例,需要以下软件:

为了实时接收信号,还需要以下硬件:

  • RTL-SDR广播

  • 步话机

以及以下软件

要获得通信工具箱支持的SDR平台的完整列表,请参阅“用于SDR的MATLAB和Sim万博1manbetxulink硬件支持”一节万博1manbetx软件定义无线电(SDR)

介绍

有关FRS/GMRS技术和这些信号的解调的介绍,请参阅FRS / gmr步话机接收器的例子。

运行这个例子

要使用模拟信号运行示例,请选择FRS / gmr信号发生器块作为源文件信号源选择器块。双击FRS / gmr信号发生器块以选择CTCSS代码源类型为'Single tone', 'Chirp',或'Audio'。然后单击运行按钮。

要使用捕获的信号运行示例,请选择FRS / gmr捕获信号块作为源文件信号源选择器块。然后单击运行按钮。

要使用RTL-SDR无线电作为源运行示例,请选择RTL-SDR接收机块作为源文件信号源选择器块。然后单击运行按钮。打开对讲机,设置通道的14个频道(编号1 - 14)和私人代码是一个38岁的私人密码(编号1 - 38)或0,在这种情况下没有压制系统使用和所有接收到的消息,是接受。注意,38以上的私有代码是数字代码,在本例中没有实现。

双击通道数量阻塞并选择与对讲机相同的频道号码。双击CTCSS代码块,并将CTCSS代码设置为您在对讲机中设置的专用代码。运行这个模型,看看你是否能听到你的声音从电脑扬声器里出来。如果没有,试着调整检测阈值块值稍微向下。您可以在不停止和重新启动模型的情况下更改通道和专用代码。

如果您听到一些退出或延迟的声音,在加速模式下运行模型。从模型菜单中,选择仿真->加速器,然后点击运行按钮。如果您在加速模式下仍然遇到退出或延迟,请尝试在加速模式下运行模型。

“信号频谱”显示接收信号在输入端的频谱频道选择器块。当你对着对讲机说话时,你可以观察频谱的变化。

接收机结构

下面的框图概括了接收机的结构。信号处理包括四个主要部分:信号源、信道选择器、调频解调器和CTCSS处理。

信号源

这个例子可以使用三个信号源:

  1. “模拟信号”:模拟240e3采样/秒的FRS/GMRS信号

  2. “捕获信号”:使用基带文件读取器块以240e3采样/秒的速度将无线信号写入文件并进行源

  3. " RTL-SDR Radio ": RTL-SDR Radio at 240e3 samples/sec。用对讲机作为发射机。设置频道号为对讲机的频道号。

频道选择器

接收机去除直流分量,并对接收信号施加一个可变增益,以获得一个近似已知的振幅信号,减少干扰。然后,接收机应用低通信道分离滤波器来减少来自相邻信道的信号。相邻信道之间的间距为25khz,即基带带宽最多为12.5 kHz。因此,我们选择截止频率为10khz。

然后,信道选择器计算滤波信号的平均功率。如果它大于阈值(设置为默认值10%),通道选择器将确定接收的信号来自正确的通道,并允许信号通过。在带外信号的情况下,虽然信道分离滤波器降低了它的幅度,但它仍然被调频调制,调频解调后仍会出现调制信号。为了完全拒绝这样的信号,通道选择器输出全部零。

调频解调器

本示例使用调频解调器基带采样率和最大频率偏差分别设置为240khz和2.5 kHz。

CTCSS

首先,抽取滤波器将采样率从240khz转换为8khz。这个速率是主机输出音频设备的本地采样速率之一。然后,CTCSS解码器使用Goertzel算法计算每个CTCSS音频的功率,输出功率最大的代码。Goertzel算法提供了一种有效的方法来计算预定频率下的频率分量,即FRS/GMRS使用的音码频率。

该模型将估计收到的代码与预先选择的代码进行比较,如果两个代码匹配,则将信号发送给音频设备。当预先选择的代码为零时,它表明没有使用静音系统,无论使用哪种代码,决策块都将通道上的信号传递给音频设备。

最后,一个截止频率为260赫兹的高通滤波器滤除CTCSS音调,其最大频率为250赫兹。使用一个音频设备的作家块通过您的计算机扬声器播放接收到的信号。如果您没有听到任何声音,请使用音频设备的作家块。

音频输出

在音频设备之前,一个截止频率为260赫兹的高通滤波器被用来过滤掉CTCSS音调(最大频率为250赫兹),使它们听不到。

音频设备的作家块默认设置为输出到系统首选项中的当前音频设备。

探索的例子

CTCSS解码使用Goertzel算法计算输入信号的DTFT(离散时间傅里叶变换),并计算音调频率下的功率。由于音调频率非常接近(只有3-4 Hz的间隔),DTFT的块长度应该足够大,以提供足够的分辨率进行频率分析。但是,长块长度会导致解码延迟。例如,块长度为16384将导致2秒的延迟,因为CTCSS解码器的采样率为8khz。这就需要在检测性能和处理延迟之间进行权衡。最佳的块长度可能取决于发射机和接收机的质量,发射机和接收机之间的距离,以及其他因素。建议您通过导航到helperFRSReceiverConfig函数并更改CTCSSDecodeBlockLength字段的值来更改初始化函数中的块长度。这将使您能够观察折衷,并为您的发射机/接收机对找到最佳值。

FRS / gmr信号发生器被选择为源,您可以更改CTCSS语气振幅参数,并观察这如何影响信号频谱。

附录

本例中使用的脚本如下:

参考文献