首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于GNU无线电和USRP的GFSK调制解调

基于GNU无线电和USRP的GFSK调制解调
EN

Stack Overflow用户
提问于 2016-02-17 00:13:40
回答 2查看 17.3K关注 0票数 3

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

然而,当我连接tx和rx输出到我的USRP B210 TX/RX(传输接收器)和RX2(接收源)如下所示,我没有收到任何数据,即使这两个源和汇已经通过射频电缆与衰减器仔细连接。

下面是我在做第二个流程图时考虑到的假设。如果我走对了路,请告诉我。

  1. 发送端:分组解码器和GFSK模块每个符号使用20个样本。波特率为9600,采样率为20*波特率=192 K。由于卫星的预期符号速率为baud_rate = 9600,所以我包括了一个有理重放器,并将UHD符号率设置为baud_rate。我的逻辑正确吗?
  2. GFSK模块和demod :对于这两个块,我计算出灵敏度为S= Pi *Modulation_index/Sample_Per_符号。默认BT值为0.5。我的计算听起来不错吗?是否有用于查找GFSK块文档的链接?我的派生是基于GFSK python源代码的,它是文档的一个糟糕的替代品。
  3. 分组编解码器:尽管GFSK码块提供了某种输出,但它的输出为零,这是毫无意义的。这是正常的吗?阈值变量的含义是什么,为什么它的值是-1?

我是GNU电台的新手,也是GFSK的新手。所以请给我留下进一步的推荐信。

提前谢谢。

摩西。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-01 09:35:51

我终于解决了这个问题。我所做的就是在GRC中重新执行GFSK的演示。如果进入gfsk.py的源代码,您会发现所使用的块是正交块-> M&M时钟恢复->二进制切片器,可以很容易地连接到GRC中。正如马库斯在我的另一个线程GFSK demodulation with Xlating filter in GNU Radio中所建议的,我将M&M时钟恢复块替换为PFB块。我的流程图如下所示。

票数 4
EN

Stack Overflow用户

发布于 2016-02-17 01:42:15

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

  1. 当使用硬件设备时,Throttle 必须从流程图中移除。硬件设备现在负责速率限制。混合硬件设备和Throttle块可能会破坏设备所要求的流程图的实时边界。在这种情况下,UHD驱动程序应该生成下流或溢出消息。
  2. 您确定USRP能够支持所请求的采样率吗?如果所请求的采样率不是时钟的整数抽取,则还可能需要更改设备的master_clock_rate。如果这是不可能的,考虑某种重新取样。

编辑: B200不能提供默认时钟的192e3采样率。您可以将master_clock_rate设置为19.2e6。硬件将适用于适当的抽取。master_clock_rate可以通过设备特定的参数或在最近的GNU无线电版本中显示的UHD Sink/Source块的Clock Rate字段来更改。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35445529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档