问题标签 [software-defined-radio]
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 - 带有 2.4GHz 射频前端的 SDR 套件?
您知道带有 2.4GHz ISM 频段(2400MHz - 2483.5MHz)收发器的 SDR(软件定义无线电)套件吗?
我需要执行一些软件定义的无线电,包括定制调制。此外,一套套件的价格最高应为 1000 美元。我知道那里有一些非常昂贵的解决方案,但不幸的是,这不是一个选择。
从接收到传输的低延迟也是必要的,因此 GNU Radio + USRP 解决方案不可用。
更新: 我仔细研究了 USRP 解决方案。根据之前使用 USRP + GNU Radio 软件的经验,我最初完全不认为它是这种情况下的解决方案。我这样做是因为我需要实现分组无线电协议,因此我需要在输入和输出之间进行精确的位同步,并且我需要低延迟以允许我在接收到的符号之后以 1000 kBaud 的速率传输下一个符号。
根据经验,我知道 GNU Radio 框架默认使用块流链,TX 和 RX 之间几乎没有同步。因此我怀疑使用 USRP 我可能不得不直接使用 libusrp,并避免使用大多数 GNU Radio 软件。我错了吗?
radio - 软件定义无线电 AM 波段样本源
我对软件定义无线电感兴趣。我基本上没有涉及任何电气工程或数学主题的经验,但我正在阅读......
与其尝试处理天线和 ADC 的硬件方面,我认为玩一些预先录制的(甚至是现场的!)AM 波段的样本流会很有趣(而且更便宜)。
从我到目前为止所学到的知识来看,在我看来,AM 格式将是最容易破译的——在整个频谱上使用窄带通/加窗函数来获得任何目标频率,然后是短期平均变换(?)获取另一个样本/样本幅度以获取音频信号。
对于整个北美 AM 波段,在我看来,未压缩的流将是:
1606.5 KB x 2(样本频率的两倍)x 2(16 位样本)= 6.28 MB/秒
很明显,此时我会在硬件上浪费我的钱……那里有 AM 波段的来源吗?或者其他更好的动手学习方法?
redhawksdr - UHD USRP 设备容量不足
我在 CentOS 6.5 机器 64 位上使用 Redhawk 1.10.0 和带有 UHD 驱动程序 3.7.2 的 USRP b100。USRP b100 被系统正确识别。它是一个 USB 设备。我下载了最新版本的 UHD_USRP Device ver。REDHAWK 3.0 和我创建了一个包含 GPP 和 UHD_USRP 设备的节点。节点启动没有任何问题,但是当我运行一个简单的波形从 USRP 读取数据作为 RX_DIGITIZER 时,我收到以下错误:
设备管理器的日志报告:
节点控制台:
我使用了以下参数:
b100 配置如下:
我的错在哪里?提前感谢您的帮助。
fpga - 使用带有 FPGA 的 USRP 将信号从 RX 转发到 TX
这是一个 LabVIEW(软件)FPGA(硬件)问题,所以我不知道我应该在这里发布还是在电子堆栈交换上发布。
我有一个 USRP-2953R,我想实现一个非常简单的项目。我想从 RF0/RX1 读取信号并使用 FPGA 将其输出到 RF1/TX1(不向主机转发任何内容)。信号以 5.9GHz 为中心,带宽为 10MHz。这可行吗?我的方法应该是什么?
我尝试了对 LabVIEW 2013 附带的“Simple NI-USRP Streaming”项目的不同修改,但我没有成功输出任何东西。我正在使用 LabVIEW 2013 SP1,我能够在 USRP FPGA 上成功编译和执行代码。它根本没有做我想做的事。
任何帮助将不胜感激。
c++ - SDR 中的射频分频器功能
对于 SDR 专家,我有一个奇怪的问题。
宽带分频器的物理实现(在软件中)是什么?
例如,假设我想捕获 1 GHz 的信号,带宽为 10 MHz,然后将其除以 10。
我希望得到一个 100 MHz 的下采样信号,带宽为 1 MHz。
是的,我知道我会丢失信息,但假设这将呈现为频谱分析,而不是完整的音频、视频等。
从概念上讲,这是否可以通过以 2 倍以上最高频率分量(例如 2.5 GHz)对 RF 进行采样,然后丢弃 10 个样本中的 9 个 - 抽取输入流来实现?
谢谢,
戴夫
gnuradio - 使用 Python 中的简单 GNU Radio 流程图时来自 USRP 的电压脉冲
这是我之前的问题的后续:FFT in non-flowgraph centered application different from flowgraph centered apps like uhd_fft
为了更好地澄清这个问题,我将我的代码简化为大约 30 LOC,并从流程图中删除了尽可能多的处理。
我遇到的问题是,虽然 USRP 只调整到一个频率,但流程图的每次运行都有大约 70 毫秒的垃圾数据。我完全清楚,当我在重新调整后第一次流式传输样本时,会出现一定数量的“垃圾”样本,但这不是我们在这里看到的。对于现有的连接流程图的每次运行,我们都会看到大量垃圾样本(约 50,000 个)。
运行流程图然后在 Python 中处理数据有点不常见,但在教程中介绍为与 GNU Radio 交互的有效方式。
我想了解每次我在其上调用 run() 时,GNU Radio 流程图逻辑的哪一部分会产生这种电压“打嗝”,而让它不断流式传输(仅调用一次 run,例如uhd_fft
)不会显示相同的行为.
...使用以下代码生成:
matlab - 使用 FM 收音机传输 .dat 文件时接收正确的值
我是 GNU Radio 的新手,我正在尝试使用它和 USRP B210 板来传输一个值。
我使用 Matlab 将值转换为 wav 格式,然后使用GNU Radio 中的示例0.121
将 wav 文件转换为 .dat 文件。audio_to_file
当我.dat
使用 B210 和 GNU Radio 传输文件时,我收到了一个 wav 文件,但是当我使用 matlab 函数 ( audioread()
) 读取 wav 时,我得到了一个不同的值。
附言
转换后的 .dat 文件的采样率为 44100 Hz,每个采样 16 位。接收器和发射器的采样率为 400K Hz。我fm_tx4.py
将 GNU Radio 包中的示例用于我的发射器。我用于uhd_nbfm_receiver.grc
接收器。
time - How to set usrp transmitting time and receiving time in GNU radio
I'm currently using two USRP X310, one for transmitting and another one for receiving. Programming is done using GNU Radio. I want to transmit a chirp signal to find the distance between both USRPs.
However, before I can do it, I need to find out the receiving time of the signal. Anyone know how to do it using GNU radio?
matlab - QAM 调制的 BER 结果 Matlab
我试图通过 16-QAM 调制器、AWGN 通道、解调器输入二进制向量,并最终测量 BER。出于某种原因,即使我更改了向量的长度,它也会一直给我 BER=0。(我应该稍后用瑞利频道来做,但我什至还没有)。
当我做同样的事情但没有调制器时,我得到BER!=0
了很好的结果。
我在这里想念什么?
这是我的代码:
matlab - BER 测量和下采样 MATLAB
我正在尝试在下采样(无滤波)后测量 4-QAM 调制信号的 BER。问题是我不确定在我下采样后要测量什么,因为信号要短得多并且原始信号是相同的。这是我的代码:
我可能在这里遗漏了一些基本的东西。此代码的目标是降低采样频率并测量采样信号的 BER。