问题标签 [gnuradio-companion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
signal-processing - Find unknown frequency with hopping
I'm wondering about a method to find an unknown frequency. I want to intercept the data from my hydro meter, but I don't know the exact frequency. I'm pretty sure it's in the range 902-928 MHz, but my rtlsdr only has a bandwidth of about 2 or 3 MHz. I'm new to radio stuff and signal processing, so I'm wondering how I hone in on the data. I read the meter also uses frequency hopping.
Ideally I'd like to setup my rtlsdr dongle to rotate on bands like so:
listen on 902 for an hour listen on 904 for an hour listen on 906 for an hour ... listen on 928 for an hour
Then I want to only record something when there is a "blip" - this way I could take these recordings and analyze them.
Is there a better way?
gnuradio - 使用 USRP 在 GNU 无线电上实现 TDMA 方案
使用 USRP 在 GNU 无线电上实现 TDMA 方案的过程是什么?我想使用两个 USRP 作为发送器,第三个作为接收器来实现 TDMA 方案。要求是第一个发送器在前 10 秒内向接收器发送一些数据,然后在延迟 2 秒后,第二个发送器在另外 10 秒内向接收器发送一些数据,并且这个过程继续这样做。谁能帮助或提供一些有用的链接以便在 GNU 无线电软件中实现整个过程?
gnuradio - 为什么 GNU 无线电的 GUI 时间接收器中不显示受限制的文件源数据?
我有一个带有文件源(重复关闭)和 GUI 时间接收器的流程图。该图由一个节流块以 2 个样本/秒的速度进行节流。我希望每秒在我的 GUI Time Sink 中看到两个新样本。但是,GUI Time Sink 根本不显示任何内容,而不是 1 秒更新。如果我在文件源上打开重复,GUI Time Sink 会更新。为什么重复关闭时它不更新?
我的问题与此类似。就我而言,我还有一个文件源被限制为非常慢的采样率。但是,我的接收器是 GUI 时间接收器,而不是文件接收器——我在时间接收器上看不到“无缓冲”参数的选项。
重复关闭
重复
gnuradio - 有没有办法在 gnuradio 的块之间传输矩阵数据?
我一直在寻找将矩阵数据从一个块传输到另一个块的方法。我想知道是否可以这样做。到目前为止,我想到的是将 numpy 矩阵转换为列表,并在最后用行数和列数填充列表后发送列表。收到后,只需将列表重塑为 numpy 矩阵并根据需要进行处理。但据我了解,制作块时必须知道列表的长度。
我想知道是否有可能实现这一点,或者我是否必须以其他方式看待它。
gnuradio - 在gnuradio中,fpga做了多少工作?
其中一些 ettus 盒子里有一些严重(而且非常昂贵)的 FPGA。如果他们所做的只是将数据从 ADC 传递到以太网总线,这似乎是一种浪费。当我在 GRC 中构建东西时,FPGA 完成了多少信号处理,我的 PC 完成了多少?
floating-point - 在 gnuradio 中从 Float 转换为 Char 时出错
我正在尝试使用我的 USRP E100 捕获 GPS 信号并将它们保存到 .bin 文件中,并使用 GNU Radio Companion 实现以下流程图:
如您所见,我从 GPS 频率中接收到 50M 复杂样本,并获取其中的实部和虚部。然后,我进行浮点到字符的转换,并将其保存为 IQIQIQIQ(...) bin 文件。如果没有浮点到字符的转换,一切正常,但如果有,输出文件只填充 0(例如浮点输出“b502 323a b502 32b8 b502 b239 1d12 0b3a”被转换为字符输出“0000 0000 0000 0000 0000 0000 0000 0000”)。
我不知道这里发生了什么,因为如果使用 Float to Char 块,则会出现错误。我还尝试使用其他类型转换器,例如浮点到短,我得到相同的输出:0 的向量。
生成流程图时的结果代码如下所示:
错误在哪里?也许是 USRP/硬件问题?或者我无法将 Float 数据转换为 Char 数据?
zeromq - 将标签与流数据一起存储到 gnuradio 中的文件中
我正在尝试将标签与流数据一起存储到 gnuradio 中的文件中。虽然 zeroMQ 块可用于将流数据与标签一起传输到套接字,但我无法使用它将标签存储到文件中。
还有另一种方法可以将流与标签一起序列化吗?或者我可以用来实现这一目标的另一个块?
gnuradio - 将具有 gr_complex 输出的块连接到具有 numpy_complex 输入的块
我正在尝试将一个(用 cpp 编写)并输出 gr_complex 值的块连接到一个使用 numpy.complex 作为输入的块(用 python 编写)。
我收到以下错误,
文件“/usr/local/lib/python2.7/dist-packages/gnuradio/gr/runtime_swig.py”,第 4569 行,primitive_connect 返回 _runtime_swig.top_block_sptr_primitive_connect(self, *args) ValueError: itemsize mismatch: ofdm_sync_long0:0 using 8、gen_diff_fft_win0:0 使用16
sizeof(gr_complex) 是 8 个字节,sys.getsize(numpy.complex) 返回 32 个字节。这可能是错误的原因吗?
是否可以在 python 中使用 gr_complex 类型?与 CPP 块相比,我在 python 块中进行更改会更容易。
gnuradio - GNU-Radio Companion:启用/禁用带有变量的块
我有一个具有多种功能的 GRC 项目,但并非所有功能都必须同时调用。将它分成几个独立的项目将是一个解决方案,但我更喜欢一个更灵活的解决方案,它可以动态激活/停用顶级流程图中的一些块。
所以我的想法是根据变量的值启用/禁用块。这可能吗?或者有没有其他类似的解决方案?