← 解码东方红一号 Chapter 9 / 10
Chapter 9 · The 2200 Hz Doppler "Ghost"

2050–2300 Hz 漂移信号:不是导频,是多普勒

ChinSat 173 s 录音里,2050–2300 Hz 区间藏着一条几乎线性下漂的窄带信号。 最初看像卫星上的导频音——但主数据带几乎不漂,而两天前 Sven Grahn 在斯德哥尔摩 用另一台接收机录的同一颗卫星里,这条线根本不存在。结论硬下来了:这是 DF7FU 接收机本地的 BFO 与 20.009 MHz 载波的拍频残留,把 RF 多普勒 1:1 搬到音频。 一台接收机的 bug 变成了我们的免费轨道验证通道

观测:一条整齐下漂的窄带

对 ChinSat 173 s 录音做高分辨率 STFT,2050–2300 Hz 之间出现一条几乎一条直线的窄带:

\[ \begin{aligned} t = 0\ \text{s} &\;:\; \sim\!2300\ \text{Hz} \\ t = 170\ \text{s} &\;:\; \sim\!2050\ \text{Hz} \\ \frac{df_{\text{audio}}}{dt} &= -1.34\ \text{Hz/s} \quad (\text{鲁棒线性拟合, 残差 RMS} \approx 9\ \text{Hz}) \end{aligned} \]
DFH-1 RF Doppler preserved as a residual BFO beat in a 1970s receiver, with broken telemetry-window segments on a slanted spectrogram line
插图:当前模型不是星上导频,而是接收机侧残留 BFO / 乘积检波拍频;RF 多普勒被 1:1 搬到 2.2 kHz 音频线,遥测窗口内又被幅度/跟踪门限切成短段。
2050-2300 Hz drifting narrowband signal
2050–2300 Hz 高分辨率谱图。一条窄带从右上向左下连续下漂, 最初看上去叠加了密集"开关键控"——但下面的幅度域分析已经把这条解读撤回, 所谓 484 个 ON 段是 ridge tracker 的伪迹。集中出现在三个遥测窗口 (45–55 s、103–113 s、163–173 s)的 dropout 是因为这些时段 SNR 略降, tracker 短暂失锁。

OOK 结构的统计特征:

误判:以为是卫星导频

最初的猜想是这是星上发射机的"导频音"——某些载荷会在主数据带旁边发一个稳定单频, 方便地面跟踪锁定。但有一个关键问题:

⚠ 漂移率对不上

主音频数据带(800–1500 Hz)的漂移率只有 -0.04 Hz/s——基本稳定。 而 2200 Hz "导频"的漂移率是 -1.34 Hz/s。 如果两者都是星上发出来的,理应被同一个 RF 多普勒同步拖动。 现在的差异是 34 ×。这不是测量误差,是物理机制不同。

正解:AM 包络主带 + 残留载波/BFO 拍频泄漏

"接收机对不同频率用不同检波器"在物理上不太干净——同一台单端 HF 接收机的检波 路径通常对整个音频带是统一的。更合理的解释是:DF7FU 当时用的是AM 模式录音, 但BFO 没有完全关掉(业余短波接收机常见状态),结果两件事被同一段录音同时捕获:

分量来源对 RF 多普勒的反应音频漂移
800–1500 Hz 主带 20.009 MHz 载波的 AM 包络(音乐 + 遥测) 包络检波丢相位,多普勒被剥离 -0.04 Hz/s
2050–2300 Hz 窄线 BFO(约 \(f_{\text{RF}} - 2.2\ \mathrm{kHz}\))与残余载波的拍频,泄漏进音频 差频 1:1 保留多普勒 -1.34 Hz/s

也就是说,2200 Hz 那条线不是另一条独立信号,是同一段录音里的载波拍频残留。 它跟 AM 主带共用同一台接收机,只是 BFO 路径让 RF 多普勒"漏"进了音频,而 AM 包络路径把它剥掉。

数学:BFO 拍频如何携带多普勒

设星上发射载波频率 \(f_{\text{RF}}(t) = 20.009\ \text{MHz} + \Delta f_d(t)\),其中 \(\Delta f_d\) 是 RF 多普勒。 SSB 接收机的 BFO 频率为 \(f_{\text{BFO}} = 20.009\ \text{MHz} - 2200\ \text{Hz}\)(约偏置 2.2 kHz)。 乘积检波器输出:

$$f_{\text{audio}}(t) \;=\; f_{\text{RF}}(t) - f_{\text{BFO}} \;=\; 2200\ \text{Hz} + \Delta f_d(t)$$

也就是说,音频里出现的 2200 Hz 信号就是 RF 多普勒(加一个常数偏置)。 观测到的 \(-1.34\ \text{Hz/s}\) 音频漂移率 = RF 多普勒变化率,对应的距离变化加速度(range-rate change):

\[ \begin{aligned} \frac{d\,\Delta f_d}{dt} &= -1.34\ \text{Hz/s} \quad (\text{在 } 20.009\ \text{MHz 上}) \\[0.4em] a_{\text{range}} &= \frac{d\,\Delta f_d / dt}{f_{\text{RF}}}\cdot c = \frac{1.34 \times 3{\times}10^{8}}{2.0009{\times}10^{7}} \;\approx\; 20\ \text{m/s}^2 \end{aligned} \]

对于一颗高度 ~1900 km、过顶时段的卫星,距离变化加速度量级在 10–30 m/s²,完全合理

"OOK 结构"被证伪:tracker 伪迹,不是星上调制

为了在博客里下定论,本节做了一次明确的幅度域分析:用合成本振 \(f_{\mathrm{LO}}(t) = 2264 - 1.34\,t\) 与音频做混频,再低通到 \(\pm 8\) Hz,得到 2200 Hz 漂移线本身的复包络。然后比较"遥测窗口内"与"窗口外"的包络分布。

Full 173 s envelope of the 2200 Hz line, with telemetry windows shaded
173 秒全程包络(混频到基带后取幅度)。三个黄色阴影是遥测窗口 (45–55 / 103–113 / 163–173 s)。在视觉上,遥测窗口内外的包络分布几乎相同—— 全程都有 \(\sim 20\) dB 量级的连续起伏,不存在"窗口里被关掉"的几十 ms 级 ON/OFF。
Envelope zoom on telemetry window 45-55 s
遥测窗口 45–55 s 的放大。如果是真 OOK,应当看到清晰的方波样 ON/OFF 切换; 实际看到的是连续起伏的衰落,过 0 的次数极少。
Amplitude histogram inside vs outside telemetry windows
包络幅度直方图:遥测窗口内(橙)vs 窗口外(蓝)。两条曲线近乎重合, 都是单峰对数正态形状(峰位约 \(-20\) dB)。真 OOK 应当出现双峰—— 一个 ON 峰靠近 0 dB,一个 OFF 峰靠近噪底。我们没有看到双峰。
指标窗口内 (45–55, 103–113, 163–173 s)窗口外
包络中位\(-22.1\) dB\(-21.3\) dB
10% 分位\(-33.6\) dB\(-34.5\) dB
低于 \(-15\) dB 的时间占比0.790.76
直方图峰个数11
结论:tracker 伪迹

2200 Hz 漂移线是连续 (但 AM 衰落很重) 的,不是 OOK 调制。 "484 个 ON 段"是 ridge tracker 在 SNR 跌落时误判 dropout 的伪迹,不构成物理事件。 多普勒漂移率 \(-1.34\) Hz/s 与 BFO×载波拍频的解释不受影响—— 只有"OOK 叠加"那条注解被本节明确撤回

顺便发现:本振中心 \(\approx 2264\) Hz,不是 \(2269\)

在做混频时发现:原 ridge 拟合的截距 \(f_0 = 2269\) Hz 在基带上留下 \(\sim 5\) Hz 残余偏移。 把 \(f_0\) 调到 2264 Hz 后基带几乎是零拍。本博客其它处仍引用 ridge 拟合的 2269 Hz, 因为这一 \(\sim 0.2\%\) 的差不影响 RF 多普勒变化率(\(-1.34\) Hz/s)这条主结论; 但下次拉数据时,建议重新拟合截距

关键的"狗没叫"证据:另一段录音里 2200 Hz 完全不存在

如果 2200 Hz 漂移线真的来自 DF7FU 接收机的 BFO 残留,那它应当只在 DF7FU 的录音里出现—— 另一台接收机录的同一颗卫星,BFO 路径不同、本振不同,就不会产生同样的拍频。这正好可以用 两天前 Sven Grahn (SM0CEK) 在斯德哥尔摩录的 33 秒 CHINA1 来检验: 不同人 + 不同接收机 + 不同地点 + 不同日期

CHINA1 0-4 kHz spectrogram showing no 2200 Hz line
CHINA1 录音 0-4 kHz 频谱图。可以清楚看到主带的音乐 chirp(1.8-3.0 kHz)和 遥测段的 4-FSK 离散音调(1100-1400 Hz),但 2050-2300 Hz 区间是空的, 完全没有 ChinSat 录音里那条整齐下漂的窄带。
Side-by-side: ChinSat ridge vs CHINA1 noise floor in the 2050-2300 Hz band
上:ChinSat 录音 173 s 全程的 2200 Hz 区域 ridge——一条整齐的直线
下:CHINA1 录音 33 s 全程的同一频段——纯噪声散点。 用同样的 ridge tracker 跑出来 1295 个"峰",但拟合 RMS 高达 74 Hz,与 250 Hz 的搜索带宽 几乎相当——也就是说 tracker 在追噪声,没有真实的窄带信号。
录音接收者地点日期2200 Hz 区域
ChinSat (173 s) Kurt DF7FU德国1970-04-27 清晰窄带,\(-1.34\) Hz/s 漂移
CHINA1 (33 s) Sven Grahn (SM0CEK)瑞典斯德哥尔摩1970-04-25 没有任何窄带,纯噪声
这条对比把 BFO/接收机假说从"合理推测"升级为"硬证据"

如果 2200 Hz 是星上发射的(导频音、二次谐波、调制副产物,任何形式),它在 Grahn 的录音里也应该出现——他录的是同一颗卫星的同一个 20.009 MHz 下行。 它没有出现。两天前、不同接收机、相同卫星,2050-2300 Hz 是空的。

所以这条 \(-1.34\) Hz/s 的漂移线明确属于 DF7FU 接收机本地的 BFO/IF 链路, 不是星上信号。Grahn 用的是纯 AM 模式(没开 BFO,或本振路径不一样), DF7FU 用的接收机让一部分 BFO 信号漏到了音频段——结果是同一颗卫星的同一次过顶被两台 接收机用不同的方式记录下来,给我们提供了一条意外的接收机旁信道。

CHINA1 的另一个意外:信号比 ChinSat 干净得多

第二段 subagent 跑数顺手发现:CHINA1 录音里的音乐 chirp 边沿和 4-FSK 离散音调 比 DF7FU 的录音清晰。Grahn 的接收链 + 磁带机看起来 SNR 更好。 这意味着未来如果重做谐波 / 帧结构分析,CHINA1 是更好的输入, 尽管它只有 33 秒——本博客大部分章节用的是 ChinSat 的 173 秒,因为它包含 3 个完整循环; 但单帧精度上 CHINA1 更胜一筹。

独立验证:多普勒率 vs 轨道预测

Chapter 4 用磁强计 + Ch 5 余弦拟合得到一组合成 TLE(RAAN ≈ 218°、MA ≈ 112°), 预测了 1970-04-27 09:39–09:42 UTC 在德国的过顶几何。 用这组 TLE 计算同一时刻的 RF 多普勒变化率:

来源多普勒漂移率方法
观测(2200 Hz 拍频) -1.34 Hz/s 音频谱图线性拟合
合成 TLE 预测 -1.13 Hz/s SGP4 + 范围二阶导数
比值 1.21 22% 偏差

观测值比预测大 22%,量级和符号都对。 偏差可以归因于 RAAN/MA 估计的 ±5–10° 误差——这与 Chapter 4 给出的角度不确定度一致。 两条独立证据链(磁强计身份 + 多普勒漂移)方向一致,相互加强。

Doppler drift fit on the 2200 Hz pilot band with residuals
上:从 STFT 直接抽取的 1211 个 ridge 点(深色为机器人剔除的离群值,亮蓝为入选 1125 个), 红线为 \(2.5\sigma\) 鲁棒线性拟合 \(f(t) \approx 2269 - 1.34\,t\) Hz。 黄色带为三个遥测窗,那里 OOK 调制把 ridge 拍碎,因此残差略大。 下:入选点的拟合残差,RMS \(\approx 9\) Hz——在 STFT bin 宽度 (~5 Hz) 数倍以内, 线性模型完全够用。

白送的轨道验证通道

回过头来看:

后者完全独立于任何关于自旋率、传感器身份、频道分配的假设—— 它直接来自电磁波传播的几何。 只要 1970 年代任何一台带 SSB 模式的业余级 HF 接收机, 都能"顺手"把这个信号录下来——只要操作员当时把 BFO 开着。

接收机"bug"变成"feature"

一开始看起来像坏掉的导频音,其实是卫星距离变化率的连续直接测量。 这种"白送"的多普勒通道,是 1970 年代地面接收机的天然产物, 今天再去翻磁带,依然能从 32 ms 的 OOK 缝隙里读出 m/s² 量级的轨道动力学。

小结