概览
轨道监视图层实时追踪约 80–120 颗与情报相关的卫星。卫星按其实际轨道高度渲染在地球仪上,带有国家编码颜色、轨道轨迹和地面覆盖投影。 仅限地球仪 — 轨道力学无法有意义地转换为平面地图投影。显示内容
架构
数据流
成本模型
关键洞察:TLE 数据变化缓慢(每 2h),但卫星位置每秒变化。通过将 TLE 送达浏览器并在客户端进行 SGP4 传播,我们以零持续服务器成本获得了实时移动。
卫星选择
抓取两组 CelesTrak 数据:military(约 21 颗卫星)和 resource(约 164 颗卫星)。经过去重和名称模式筛选后,保留约 80–120 颗与情报相关的卫星。
筛选模式
国家分类
卫星按运营国分类:CN、RU、US、EU、IN、KR、JP、IL 或 OTHER。分类基于名称(例如,YAOGAN → CN,COSMOS → RU,WORLDVIEW → US)。注意:美国 KH-11 间谍卫星(USA-224/245/290/314/338)属于机密 — 不存在公开 TLE。所追踪的卫星是那些具有公开可用轨道根数的卫星。
技术细节
SGP4 传播
浏览器使用satellite.js(v6)进行 SGP4/SDP4 轨道传播:
initSatRecs()— 将 TLE 解析为SatRec对象(开销大,缓存至 TLE 刷新)propagatePositions()— 对每颗卫星:propagate()→eciToGeodetic()→ lat/lng/alt。同时计算 15 点轨迹(每分钟 1 点,回溯 15 分钟)startPropagationLoop()— 通过setInterval每 3 秒运行一次。LEO 卫星在 3 秒内移动约 23km,在地球仪上产生可见运动
地球仪渲染
生命周期
断路器
客户端抓取使用断路器:连续 3 次失败触发 10 分钟冷却。冷却期间继续使用缓存数据。Redis 键
健康监控
api/health.js将intelligence:satellites:tle:v1作为独立键检查- 播种元数据以
maxStaleMin: 180检查(3h — 可承受 1 次错过的周期)
后端端点
文件
分层可用性
路线图(第 2 阶段)
过顶预测
计算用户所选位置(热点、冲突区、基地)的下次过顶时间。示例:“GAOFEN-12 将在 14 分钟后过顶塔尔图斯。“重访时间分析
计算某位置被敌方或友方卫星观测的频率。适用于作战安全和情报缺口分析。成像窗口告警
当 SAR 或光学卫星过顶用户关注区域时推送通知。与 Pro 投递渠道(Slack、Telegram、WhatsApp、Email)集成。传感器幅宽可视化
基于卫星传感器规格和轨道高度,用实际视场锥替换星下点覆盖。跨图层关联
通过将卫星位置与其他图层结合,检测与情报相关的模式:- 卫星 + GPS 干扰区 → 电子战背景
- 卫星 + 冲突区 → 战场 ISR 探测
- 卫星 + AIS 缺口 → 海上侦察指示
