问题标签 [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.

0 投票
2 回答
6359 浏览

c++ - 提高/优化 C++ 中的文件写入速度

我在写入文件时遇到了一些问题——即写入速度不够快。

解释一下,我的目标是捕获通过千兆以太网传入的数据流并将其保存到文件中。

原始数据以 10MS/s 的速率输入,然后保存到缓冲区,随后写入文件。

以下是代码的相关部分:

我遇到的问题是将样本写入文件需要很长时间。大约一秒钟后,发送样本的设备报告其缓冲区已溢出。在对代码进行一些快速分析之后,几乎所有的执行时间都花在了std::copy(...)(准确地说是 99.96% 的时间)上。如果我删除这一行,我可以运行程序几个小时而不会遇到任何溢出。

也就是说,我对如何提高写入速度感到很困惑。我浏览了这个网站上的几篇文章,似乎最常见的建议(关于速度)是像我已经做过的那样实现文件写入 - 通过使用std::copy.

如果有帮助,我正在 Ubuntu x86_64 上运行这个程序。任何建议,将不胜感激。

0 投票
1 回答
539 浏览

gnuradio - GNU 无线电 - BFSK

我对 GNU Radio 中的 BFSK/M-FSK 调制有疑问,但可能是常见问题 :)

如果我有一个符号 1 或 0,它有 64 个样本(2 个 sin/cos 周期),我想用 2 个不同的频率对其进行调制,例如:

问题是 0 或 1 个二进制具有相同的宽度 - 64 个样本,但 cos/sin 周期的宽度不同,较长的周期将被切割为较短的符号。

我需要为 0 或 1 生成两个不同的符号宽度吗?更大的 M-FSK 怎么办?

0 投票
3 回答
2838 浏览

gnuradio - 使用 CCC 的 hackrf 兼容 rad1o 徽章在 FM Radio Capture 上运行 GNU Radio 音频

我无法成功完成http://greatscottgadgets.com/sdr/1/的第一课。该示例运行,但不能捕获调谐的广播电台,我只会得到噪音。GNU Radio 伴侣不断打印音频欠载错误。

我在具有 16Gb 的 Mac OS X i7 上的 Kali VM 上使用 GNURadio

0 投票
1 回答
2669 浏览

python - 使用 Python 进行幅度解调的载波信号提取

我从微波电路中得到一个中频信号,如下所示:

中频信号

正如我们所看到的,存在明显的不需要的幅度调制,这被认为是由于天线之间的耦合造成的。该信号还将具有 FM 调制。

我想去掉这个 AM 调制,只保留 FM 调制。我想要载波信号而不是 AM 调制。类似于自动增益控制 (AGC) 的工作方式。

0 投票
2 回答
2503 浏览

matlab - 如何找到不均匀波形的包络

我有一个波形,其中包含从射频收发器获得的相移信息。它不是规则的波形,而是如下图所示的不均匀波形。我已经使用油漆说明了信封,我该如何在 MATLAB 中做到这一点? 在此处输入图像描述

我还附上了waveform.csv。在我的 MATLAB 代码中,我已经使用了平均滤波器来平滑原始信号。

波形 csv 文件

信封.m

myfilter.m(简单平均滤波器)

0 投票
1 回答
78 浏览

matlab - OFDM信号中的相位分​​配

我有一个 OFDM 信号,它给了我一半的功率谱(一半的带宽)。有人告诉我相位分配是导致它的原因,但我一直在抽搐好几天......仍然没有正确的答案

0 投票
1 回答
763 浏览

python - dump1090 offline raspberry pi

I'm currently doing a project in which I'm making an ADS-B flightradar on a led matrix, which is controlled by a Raspberry Pi. I've found a program called dump1090 which receives and decodes the data from my SDR receiver. I can find lots of example on how to use to forward that data to a webserver or whatever, but I can't seem to find anything on how you can programmatically listen to the data dump1090 produces. Does anyone know how you can programmatically receive dump1090's data in order to use the data in a program? (any language would do, but perhaps python would be the most obvious choice)

0 投票
1 回答
386 浏览

installation - Osmo Trx 出错

我正在使用 Beaglebone Black 开展一个项目,但遇到了一个问题。作为我项目的一部分,我想使用 OpenBTS 通过 GSM 网络进行通信。但是,由于 Beaglebone 是基于 ARM 的,因此 OpenBTS 附带的 Transceiver52M 无法使用。因此,我需要安装一个 ARM 友好的收发器。我认为最好的收发器是 Osmo-Trx。

我按照他们网站上的说明进行操作:http: //openbsc.osmocom.org/trac/wiki/OsmoTRX

但是,在制作项目时,出现了错误并且真的卡住了。当我在“./configure --with-neon”之后执行命令“make”时,出现错误:

制作:***没有规则来制作目标“/Makefile.common”,“Makefile.in”需要。停止。

谁能帮我解决这个问题。我四处寻找,找不到任何适用的答案。我真的很感激。非常感谢您!

PS OsmoTRX 的所有源代码都可以在以下网址找到:https ://github.com/osmocom/osmo-trx

0 投票
1 回答
732 浏览

gnuradio - 如何在 gnuradio 中实现 4 象限 atan2 函数

我最近开始试验 SDR 并一直在使用 GNU Radio 平台。

更具体地说,“gnuradio-companion”图形界面。

我需要确定一个 4 象限 arcTangent 函数并且遇到了一些麻烦。在“GRC”文件中,我已经能够成功评估 ATAN 函数,但是,虽然 python 支持 ATAN2,但我无法弄清楚如何实现这个函数。

我读过 GNU Radio 中包含一个名为 fast_atan2f 的查找表函数,但我不知道这是否可以从标准 gnuradio-companion 设置中包含的块中访问。我能够从常量源块中访问 python 表达式'math.atan2(arg1,arg2)',但我不需要它作为常量值,我正在寻找一个具有两个浮点输入的块(或单个复杂输入)将适合流程图以正确评估 ATAN2 函数。

我已经包含了一个示例“GRC”文件,如果我的描述不清楚,它可能有助于说明问题。

指向 GNU Radio 配套示例文件的链接

流程图的屏幕截图

0 投票
2 回答
410 浏览

linux - 是否可以使用 RFID FX7500 提取天线的无线电信号(模拟)输入样本?

我需要使用 RFID 阅读器进行一些非标准信号处理操作,所以我想知道是否可以使用 Motorola FX7500 提取天线的单个模拟(实际上是 ADC 之后的数字样本)输入信号样本(如果你知道这在 FX7400 或 FX9500 上是如何工作的,请告诉我,可能会有所帮助)。样本将在基于 JAVA 的主机程序中处理。

我已经尝试过的:

  1. 调查摩托罗拉自己的 RFID3 API 的可能性,它并没有深入到实际接触输入模拟信号样本。

  2. 充分利用 LLRP,它也不允许模拟信号样本访问。RFsurvey 功能在一定程度上会有所帮助,但 FX7500 也不支持它。

  3. 访问 RFID 阅读器的 linux 终端,试图找到可以监听输入样本流的驱动程序函数。如果可以从输入流中提取当前输入样本,我可以(理论上)制作一个脚本,在标签库存轮次期间将其中一些样本值保存在主机的 txt 文件中。我的 linux 技能有点差,所以我问了这个问题。

唯一现实的解决方法似乎是通过 linux 终端,所以如果你们对此有任何想法(在哪里看和做什么),请指教!

读者内容: