跳至正文
Joey's Blog

574 字 3 分钟

火箭任务控制系统

项目概述

火箭发射任务包含倒计时、点火、起飞、级间分离和入轨等多个关键时刻。火箭任务控制系统将这些任务信息组织在一个可操作的网页控制台中,并提供适合管理端、观众端和直播画面的不同视图。

系统用于任务展示与控制台演示。遥测曲线可通过 CSV 导入或编辑配置,不应将其理解为接入真实运载火箭飞行硬件的控制系统。

任务计时与事件时间轴

任务时钟支持 T− 倒计时和 T+ 飞行计时,并可暂停、恢复、手动点火或配置自动点火。观察点跳转可以将时钟对齐到选定时刻,便于演示预定任务阶段。

弧形时间轴展示起飞、级间分离、整流罩分离和入轨等事件。时间轴可按关键时段缩放,并区分已经发生与即将发生的事件,帮助观众快速把握任务进度。

遥测与火箭配置

仪表盘以弧形仪表呈现速度、高度和加速度等数据;发动机布局图显示各发动机位置及开关状态。遥测曲线和不同任务阶段的仪表盘布局可以编辑,支持导入 CSV 数据。

型号配置涵盖事件、阶段、发动机和遥测等内容,并提供发动机布局预设。项目内置 Falcon 9、长征系列等示例配置,也支持管理回收选项和推进剂设置。

管理、观众与直播视图

系统提供管理控制台、公众观众页面、OBS 页面和视频叠加模式。管理端的状态变更通过 **SSE(Server-Sent Events)**推送给其他页面,使任务计时、主题与状态在多个客户端之间同步。

技术实现

  • 服务端:Node.js 与 Express。
  • 前端:原生 JavaScript、CSS 和 SVG。
  • 实时同步:SSE 推送任务状态变更。
  • 配置存储:JSON 配置文件和 CSV 遥测数据。

项目将任务时序、可视化遥测和多端直播页面整合为一套可配置的网页应用,适用于发射过程演示和直播画面编排。