从下载到第一张卫星图,SatDump实操全流程
【免费下载链接】SatDumpA generic satellite data processing software.项目地址: https://gitcode.com/GitHub_Trending/sa/SatDump
手上有 RTL-SDR,频谱上却只看得见瀑布图的色块?缺的就是一个把基带信号还原成卫星图像的解码器。这篇文章以接收 NOAA APT 气象图为例,带你把 SatDump 装好、连上 SDR、跑通一次完整的过顶解码,并处理掉几个新手最常被卡住的参数问题。
SatDump 能做什么
SatDump 是一款通用的卫星数据处理软件,输入可以是 SDR 实时采样的基带,也可以是录好的 baseband 文件,输出是卫星图像、气象数据和通信信号的解调结果。
- 插件形式内置了 49 个卫星支持模块,NOAA、Meteor-M、MetOp、风云三号、GOES、SpaceX 都在列
plugins/sdr_sources/下提供 24 个 SDR 设备插件,覆盖 RTL-SDR、Airspy、HackRF、BladeRF、SDRplay 以及网络源- 同一套 pipeline 既能在 GUI 里跑,也能用 CLI 批量跑
- 解码完的图像可以直接做地理投影(投影到地图坐标系)和调色后处理
硬件准备与软件获取
这一节解决"要买什么、怎么装"的问题,硬件和软件放一起看更清楚。
硬件这边,入门 NOAA 气象只需要三样东西:一根 VHF 天线、一个 RTL-SDR(几十元的电视棒即可),以及一台普通的双核 x86_64 电脑。如果以后想玩 X 频段(MetOp 的 dump 链路),再考虑 HackRF 加降频器或 Airspy。
软件这边,Windows 和 macOS 直接到项目的 Releases 页下载预编译包,Windows 需要系统里有 Visual C++ Runtime。Linux 上我们建议源码编译,依赖装好后大致是这几步:
sudo apt install git build-essential cmake g++ pkgconf libfftw3-dev \ libvolk-dev libglfw3-dev librtlsdr-dev git clone https://gitcode.com/GitHub_Trending/sa/SatDump cd SatDump && mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -j$(nproc)编译产物在build/里,satdump-ui是图形界面,satdump是 CLI。
从启动到第一张图:一次 NOAA APT 过顶的完整流程
下面按一次真实过顶的顺序走,每个步骤都说明预期看到什么。
1. 添加 Recorder。菜单选Add → Recorder,在设备列表选择 RTL-SDR,把频率调到目标卫星的下行频率(NOAA-15 是 137.62 MHz),采样率设 1 MHz 对 APT 链路足够。
2. 等过顶、看瀑布图。卫星进入视距后,瀑布图上会出现一条清晰的信号带,说明频率对准了。
3. 配置 pipeline。在 Recorder 的 Processing 面板里选择noaa_apt,参数有两处必须填对:satellite_number(15、18、19 三选一)和start_timestamp,即过顶开始时刻的 UTC Unix 时间戳,它决定投影和叠加的基准。
4. 启动解码。点开始后图像逐行生成,过程中还可以同时开启 Recording 把基带存下来留作离线重跑。
5. 保存与投影。解码完成后产品会自动出现在左侧 Root 的 Products 树里。点Current → Save Image保存当前图;想要整幅地图视图,就点仪器上的Add to Proj,投影类型选Equirectangular并勾上 Auto Mode,再点Project。
增益、采样率与IQ交换:参数怎么调
这一步是离线重跑和历史数据最常见的出错点,三个参数最值得记:
- gain:各设备增益范围不同(比如 Airspy 是 0–21 dB)。调的时候看 Recorder 的 Debug 面板,"magic eye" 星座图比肉眼看瀑布图准得多,X 频段尤其需要。
- baseband_format:离线解码的文件格式必须和录制软件一致,cs16(SDR#)、cf32(GQRX)、cu8(HDSDR)是常见值。默认配置项都写在 satdump_cfg.json 里,注释解释了每一项的用途。
- dc_block 与 iq_swap:HackRF 经常出现直流尖峰,开
dc_block;经过降频器后信号左右镜像、解码失败时,多半是 I/Q 交换,开iq_swap。
各设备完整的增益与校正参数清单在 docs/pages/SDR_Options.md。
从 pipeline 到 CLI:把范围扩到更多卫星
GUI 里能选的所有 pipeline,CLI 都能跑,参数一一对应。比如离线处理一段 MetOp AHRPT:
satdump pipeline metop_ahrpt baseband metop.cs16 out/ \ --samplerate 6e6 --baseband_format cs16全部 pipeline 及其参数列在 docs/pages/Pipelines.md。除了气象链路,这些卫星模块里还能做不少事:SpaceX 下行解调、Inmarsat Aero 语音(支持自动播放音频)、GOES 的 DVB-S2 基带解调等。历史数据多时,用 CLI 加--timeout挂后台批量跑,比 GUI 省事得多。
常见卡点与解法
瀑布图有信号但解不出图→ 采样率或start_timestamp和实际不匹配。 → 核对--samplerate与录制时一致,时间戳误差别超过 15 秒(align_timestamps会自动用 APT 时序标记对齐)。
图像大面积黑条、噪声→ 信号弱或增益过高削顶。 → 降 3–5 dB 增益重录;打开save_unsynced保留同步前的原始图便于排查。
解到一半信号漂移消失→ RTL-SDR 晶振温漂。 → 给设备加ppm_correction,常见 -10 到 -30 之间试。
编译成功但找不到 SDR 设备→ 对应的 SDR 库没装。 → 装librtlsdr-dev等库后重编译,或用satdump sdr_probe列出当前能识别的设备及 ID。
装好跑通 NOAA 只是起点——下一步建议把 Tracking 面板接上,设好目标卫星,让 SatDump 在过顶前自动调频、定时录制,整条链路就不用守着看了。
【免费下载链接】SatDumpA generic satellite data processing software.项目地址: https://gitcode.com/GitHub_Trending/sa/SatDump
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考