gnuradio - 如何使用 GNURadio 传输 AIS 消息

标签 gnuradio gnuradio-companion ais

我无法使其正常工作:https://github.com/trendmicro/ais

该软件包含一个 GNURadio Companion 流程图,用于将 AIS 消息发送到 USRP。我已经安装了附带的 gr-aistx 库,一切似乎都运行顺利。但是,无论我发送什么消息,AIS 接收器似乎都不会接收到。

我已经尝试过以下方法。请注意,我不是通过空中传输/接收。每个测试连接都是从发射器到接收器的硬接线:

  • 使用随附的 GRC 流程图传输 AIS。该流程图似乎在交替 channel 上重复发送消息。流程图看起来像这样:

    AIS Frame Builder(自定义 GRC block )-> GMSK Mod -> Multiply Const (0.9) -> UHD:USRP Sink

  • 使用存储库中包含的 phython 脚本(AIVDM_Encoder 和 AiS_TX)进行传输。

  • 使用 USRP (Ettus X300) 和 HackRF 进行传输。为了让 HackRF 使用 GRC 或脚本进行传输,我必须在安装 gr-osmosdr 后将 UHD: USRP 接收器更换为 osmocom 接收器。
  • 我可以访问 AIS 接收器,该接收器硬连线到发射 radio 。接收者似乎没有收到任何消息。我已经通过从 Shine Micro AIS 测试装置中泵送消息来验证 AIS 接收器是否正常工作。 https://www.shinemicro.com/product/st162-t1/
  • 我还尝试过使用 gr-ais 的 ais_rx 脚本进行接收。 (https://github.com/bistromath/gr-ais)。我安装了该软件并通过 HackRF 接收 AIS 消息。当针对 trendmicro 软件进行测试时,没有收到 AIS 消息。我还使用 Shine Micro 测试套件测试了 gr-ais,以确保其正常工作。

我不完全确定问题是什么。流程图看起来非常简单,但我绝不是数字信号处理方面的专家。

最佳答案

通过将采样率调整为 2M,我能够使 trendmicro/ais 项目正常运行。我正在浏览一些发布在 https://greatscottgadgets.com/sdr 的 HackRF 教程。在第 11 课中,他提到 2M samp_rate 是他建议与 HackRF 一起使用的最小值(不太清楚为什么,我对此有点陌生)。一旦我调整了 samp_rate,我就能够从 gr-ais 接收 AIS 消息。

关于gnuradio - 如何使用 GNURadio 传输 AIS 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54355086/

相关文章:

signal-processing - 使用 GNU Radio 进行 FSK 解调

python - 如何修复 AIS COG 值

python - 如何从 vesselfinder 重新创建坐标转换 (EPSG :4326 to EPSG:3857)?

python - 构建 AIS 消息解码器

python - GnuRadio:在子目录中组织 OOT 模块 python 代码

python - 使用 Python 在 GNU Radio 中计算 BER 置信度

signal-processing - 使用GNU Radio进行FSK解调

c++ - GNU radio io_signature

signal-processing - GNU radio DQPSK 误码率

gnuradio - 数据未写入 gnuradio 中的 filesink