【问题标题】:GFSK modulation/demodulation with GNU Radio and USRP使用 GNU Radio 和 USRP 进行 GFSK 调制/解调
【发布时间】:2016-05-28 11:56:46
【问题描述】:

我目前正在创建一个卫星地面站,它将在未来几个月内用于控制我们的立方体卫星。使用的调制方案是 GFSK,波特率为 9600。我尝试使用 USRP 板进行一些测试,然后才能尝试通过直接连接流程图中的 tx 和 rx 块与卫星通信。我能够使用此流程图发送和接收 png 文件。

但是,当我将 tx 和 rx 输出连接到我的 USRP B210 TX/RX(传输接收器)和 RX2(接收源)时,如下所示,即使源和接收器已连接到这两个,我也没有收到数据通过带衰减器的射频电缆小心地相互连接。

以下是我在制作第二个流程图时考虑的假设。请告诉我我是否走在正确的道路上。

  1. 发送端:数据包解码器和 GFSK mod 模块每个符号使用 20 个样本。波特率为 9600,采样率为 20*波特率 = 192K。由于卫星的预期符号率是 baud_rate = 9600,我包括了一个有理重采样器并将 UHD 符号率设置为 baud_rate。我的逻辑对吗?

  2. GFSK 调制和解调:对于这两个模块,我将灵敏度计算为 S = Pi * Modulation_index/Samples_Per_Symbol。使用默认的 BT 值 0.5。我的计算合理吗?是否有用于查找 GFSK 块文档的链接?我的推导基于 GFSK python 源代码,它不能很好地替代文档。

  3. 数据包编码器/解码器:数据包解码器的输出为空,即使 GFSK 解调块给出了某种毫无意义的输出。这是正常的吗?阈值变量是什么意思,为什么它的值为-1?

我是 GNU Radio 和 GFSK 的新手。所以请给我任何进一步的参考。

提前致谢。

摩西。

【问题讨论】:

    标签: gnuradio


    【解决方案1】:

    我终于能够解决这个问题。我所做的只是在 GRC 中重新实现 GFSK 演示。如果你进入 gfsk.py 的源代码,你会发现使用的模块是 Quadrature Demod --> M&M Clock recovery --> Binary slicer,可以很容易地直接连接到 GRC 中。正如 Marcus 在我的另一个线程 GFSK demodulation with Xlating filter in GNU Radio 中建议的那样,我用 PFB 块替换了 M&M 时钟恢复块。我的流程图如下所示。

    【讨论】:

    • 我遇到了这个,它非常适合我的应用程序。但是,有没有办法实现 FSK 和载波之间的偏移?
    • @lceans 您是否尝试实现 FSK 接收器?我没有很好地回答这个问题。
    • 我正在尝试同时做收发器和接收器。这非常适合接收端。在您的文件源上,您可以将其更改为包含游览吗?或者您知道我可以做到这一点的方法吗?
    • 我不是你所说的远足。但是可以将 gfsk 发射器 (gfsk.py) 修改为 FSK 发射器。这可以通过消除高斯滤波器来完成。
    • 偏移是指载波和 fsk 信号之间的频率偏差
    【解决方案2】:

    即使我不能回答你所有的问题,我也提供以下一些想法:

    1. 使用硬件设备时,Throttle 必须从流程图中删除。硬件设备现在负责速率限制。混合硬件设备和Throttle 块可能会破坏设备所需的流程图的实时边界。在这种情况下,UHD 驱动程序应生成下溢或溢出消息。

    2. 您确定USRP 可以支持请求的采样率吗?如果请求的采样率不是时钟的整数抽取,您可能还需要更改设备的master_clock_rate。如果这不可能,请考虑重新采样。

    编辑: B200 无法在默认时钟下提供192e3 采样率。您可以将master_clock_rate 设置为19.2e6。然后硬件将应用适当的抽取。 master_clock_rate 可以通过设备特定参数或最新 GNU Radio 版本中出现的 UHD Sink/Source 块的 Clock Rate 字段进行更改。

    【讨论】:

    • 你好。感谢您的建议。我修改了电路,一切正常。我能够发送一个 png 文件并接收一些数据。该文件似乎已损坏,但缺少几个字节。不幸的是,流程图无法与我们的立方体卫星通信。我可以清楚地看到 GFSK 信号。数据包解码器似乎阻止了一切。我在网上查了一下,发现很多人都在为同样的问题苦苦挣扎。您是否碰巧知道数据包编码器和解码器块中到底发生了什么?提前致谢。
    • 顺便说一下,这是我在我的 usrp 中收到的文件。波特率为 9600,采样率为 20 * 波特率 = 192000 波特。使用的调制指数为 2/3。你也可以看看吗? dropbox.com/s/qfxnhn7cupflqpl/data_9600_gain_40.txt?dl=0
    • 我还参与了一个使用 FSK 的 GNU Radio 卫星项目。老实说,我什至没有尝试过 GNU Radio FSK 编码器,我目前正在实现我自己的。我会看看你的文件,如果有什么值得注意的地方我会回复。
    • 我遇到了这个,它非常适合我的应用程序。但是,有没有办法实现 FSK 和载波之间的偏移?
    猜你喜欢
    • 2021-06-12
    • 2018-12-19
    • 2021-09-06
    • 2015-10-07
    • 2016-07-15
    • 2020-12-15
    • 2016-08-22
    • 2021-05-31
    • 2021-07-29
    相关资源
    最近更新 更多