在Gnu-Radio流程图中管理多个信号速度

问题描述 投票:2回答:1

我目前正在研究Z-Wave协议。使用我的HackRF One和scapy-radio,我试着嗅探两个设备之间的通信。

但是,设备可以以不同的速度传输:

  • 9,6 kbps
  • 40 kbps
  • 100 kbps

由于我只能解码40 kbps的通信,我想我的图表无法管理其他速度。

关于Z-Wave通信的一些信息:

  • 频率(EU):868.4 MHz
  • 调制:GFSK

我的GRC图:

GRC flow graph

所以我的问题是:如何修改图形来解码和嗅探9,6和100 kbps信号呢?

scapy sniffer gnuradio z-wave gnuradio-companion
1个回答
2
投票

作为一个简单的解决方法,我建议从HackRF获取输入流并将其连接到3个不同的解码器,每个解码器都有所需的参数。然后每个Packet sink块将在相同的Socket PDU块发布消息。

我不熟悉Z-Wave,但是如果3种不同的数据速率共享相同的频谱带宽,那么就没有更多的工作可以帮助你了。但如果他们这样做,我认为这对你的情况是正确的,你需要一些额外的步骤。

首先,您必须使用Z-Wave所需的最大采样率对时域信号进行采样。例如,如果对于3种不同的数据速率,频谱带宽为4,2和1 MHz,则必须采样4e6采样/秒。然后,为每个不同的流执行SRC(源速率转换),也称为重新采样。因此,对于第二速率,您可能需要将4e6样本/ s的输入流重新采样为2e6样本/秒。然后在相应的解码过程中连接重新采样的流

                                              +---------------+
                                              |Rest blocks 0  |
              +--------------------------------->             |
              |                               |               |
              |                               +---------------+
              |                                                
 +------------+        +--------------+           +---------------+
 |            |        |              |           |Rest blocks 1  |
 | Source     +----------> Resampler 1+------------->             |
 |            |        |              |           |               |
 +------------+        +--------------+           +---------------+
              |                                                
              |    +--------------+           +---------------+
              |    |              |           |Rest blocks 2  |
              +-----> Resampler 2+-------------->             |
                   |              |           |               |
                   +--------------+           +---------------+

GNU Radio已附带一些重新采样器,您可以开始使用Rational Resampler块。

© www.soinside.com 2019 - 2024. All rights reserved.