主题
P08 · YBO Mate——App、云端与船舶管理(软件)
- 治理摘要: PRODUCT-PLAN.md §P8(Free/基础版为 T0 层级,Premium 与 Security 付费层级为 T1,按计划优先级表 Fleet 仪表板 GA 为 T2)
- 生命周期状态: 规格草案 (t)
- 数据模型与 API 附录(Level 2): P08-mate-data-model.md
- 最后更新: 2026-08-27
1. 定位与层级
- 角色:船的数字大副——一个统一数据平台,Core 通道遥测、Sense 传感器、Hub GNSS/N2K 仪表和 J1939 发动机数据都汇入单一船舶模型与时间线;监控与船舶管理是同一份数据的两个视图(PRODUCT-PLAN.md §P8)。客户:船东与船员(移动端 + 网页端)、包租客人(受限角色)、船厂/服务商(限定范围)、船队运营方(Fleet 版)。
- 层级:Free/基础版为 T0(T0 顺序中的最后一项);Premium 与 Security 为 T1(订阅引擎);Fleet 仪表板 GA 为 T2(M15+)。SW2 负责 App/云端,M6 增聘 1 名软件工程师。进度:App alpha M6–7(本地模式),云端 beta M10–11,Premium 上线 M13–14,Security/船队/按使用量驱动的维护 GA M15+(§P8,§4)。绝不允许成为:乐观状态的远程控制(控制面准则,§1)、有人值守的安防或值班服务(OPEN-QUESTIONS P8-1)、任何保护或报警逻辑的依赖项(失效安全准则,§1),或白标产品(OPEN-QUESTIONS P8-5)。
2. 范围与边界
| 范围内(§P8 模块) | 范围外/由其他产品负责 |
|---|---|
| 监控、报警(3 级严重度、确认、值守/静音)、地理围栏/锚泊报警、历史记录、派生洞察、能源子域(在 v1 范围冻结时枚举) | 配置 schema、通道分配、脱扣曲线、接线文档——Studio(P07);Mate 仅将 Studio 构建的配置部署到 Hub 并备份 |
| 自动化(云端编写、Hub 执行、白名单动作枚举、逐次执行审计);运行时访问控制(舵位锁、船东/船员/包租客人角色) | 保护、默认状态与本地报警逻辑——Core/Sense/Hub 固件;安装商/船东配置权限——Studio(OPEN-QUESTIONS P7-1、P8-9) |
| 设备登记册、维护、文档、数字交接包、船队版、Security 模块(Eye 片段 + AI 告警 + 捆绑连接)、转售档案;云端:EU 托管的 MQTT 接入、时序存储、OTA 编排、配置备份(§P8 Cloud 行) | 摄像头集成与 NPU 推理——Hub/Eye(P11);卫星硬件(§3);超出 Hub API 的 Remote Vessel Infrastructure 指令权限(§3,按项目门控) |
3. 系统位置
| 依赖 | 被依赖 |
|---|---|
| Hub(P03):MQTT 上行、连接管理器(Wi-Fi > WAN/Starlink > 4G)、存储转发缓冲、已同步任务的本地执行、用于地理围栏/MOB 的 GNSS | Studio(P07):云端备份、经 Mate 部署路径、虚拟船数据集复用为 Mate 演示模式 |
| 独立模式下的 Air Gateway(P05):直接云客户端,与 Hub 遵循同样的身份/OTA/无入站端口规则;Core/Sense/Key(P01/P02/P06):经 Hub 通过 YBO CAN FD 回读状态与审计记录;签名镜像流水线(§1 Firmware/OTA) | Eye(P11):片段上传、AI 告警投递、布防/撤防与地理围栏联动(Security 层级);Tag(P12):MOB 告警链终点(Hub GNSS 位置 → Mate 推送/船队告警)、船员名册;YBO AC(P04):切换日志与能源仪表板 |
| 云端拓扑 (t):设备 → mTLS MQTT broker(EU 区域)→ 接入 → 时序 + 事件/审计 + 对象存储(片段、文档、交接包)→ REST/WebSocket API | iOS/Android App、网页 App、船队仪表板;任何船上设备无入站端口,远程访问由云端代理(§3 Security) |
4. 功能需求
身份与入网
- FR-01 每台联云设备(Hub、独立 Air Gateway)携带工厂预置的逐设备 X.509 身份,并以双向 TLS 认证;无共享密钥 (t)。
- FR-02 入网通过认领码(设备上的二维码)加上在 ≤10 min 配对窗口内于设备上进行的物理确认,将设备绑定到船舶和船东账户 (t)。
- FR-03 独立 Air Gateway 以同样流程入网并作为船舶的上行链路;之后加入 Hub 时,网关重新注册为总线节点,Hub 接管上行链路与 UI,无需重新认领船舶(§P5 Gateway modes)。
- FR-04 所有权转移(转售)将船舶记录、登记册和历史迁移到新船东,并在前船东收到导出档案后撤销所有先前会话、角色和共享链接。
- FR-05 每个 UI 控件都标注其写入目标(设备与通道),且仅渲染设备确认的回读状态;约 5 s 内无回读的指令在视觉上回退并提示重试(§1 控制面准则)。
监控与报警
- FR-06 实时状态显示每个 Core 通道的状态、电流和脱扣原因、Sense 水箱/温度值、电池/能源子域、位置和发动机数据,每个值带有"最后可见"时间戳。
- FR-07 报警具有 3 级严重度(notice/warning/critical)、确认流程和值守/静音模式;静音绝不抑制 critical(§P8 Monitoring;OPEN-QUESTIONS P8-7)。
- FR-08 critical 报警推送到达所有船东/船员设备,目标为 4G 链路下从 Hub 事件到手机 ≤30 s p95 (t),且告警随链路降级:Wi-Fi/Starlink 下完整片段,4G 下快照,最小链路下仅文本(§3 Software rules)。
- FR-09 地理围栏和锚泊报警使用 Hub GNSS 并在 Hub 上执行;云端仅转发和记录。
- FR-10 历史记录是每艘船的单一时间线(遥测、报警、指令、自动化运行、日志、文档),可按时间范围和来源查询。
- FR-11 派生洞察(续航、消耗率,例如淡水可用天数)由时间线计算得出,并标注为估算值及其依据。
- FR-12 App 在船上 Wi-Fi/BLE 上以本地模式工作,无需互联网(alpha M6–7),遵循同样的回读规则。
自动化
- FR-13 任务在云端或 App 中编写,按白名单动作枚举校验,由云端签名并在 Hub 上执行;枚举仅随版本发布变更,绝不随配置变更(OPEN-QUESTIONS P8-8)。
- FR-14 已同步任务在云端不可达时继续运行;执行结果被缓冲并稍后同步(存储转发)。
- FR-15 每次执行写入一条审计记录(创建者、触发时间、动作、结果、重试次数);任何任务不得成为关键回路的唯一控制路径(Studio 规则)。
- FR-16 任务在 critical 报警激活期间的行为(抑制或继续)为逐任务属性,默认为"抑制" (t),待 OPEN-QUESTIONS P8-8 决定。
运行时访问控制与审计
- FR-17 角色:船东、船员、包租客人(只读加舒适性回路)、服务商(仅写入工作记录,限时)和船队运营方;角色与 Studio 配置权限相互独立。
- FR-18 舵位锁(操作锁)阻止对某艘船或某区域的远程切换,且只能在船上解除 (t)。
- FR-19 每个远程或自动化动作都在设备端和云端进行审计记录(谁/什么/何时/结果);审计记录为仅追加,保留 ≥5 年 (t),待 OPEN-QUESTIONS P8-8 决定。
- FR-20 远程指令携带过期时间(≤60 s (t))和幂等键;已过期的指令在链路恢复后绝不执行(§3 Remote Vessel 连接门槛适用于所有船舶)。
船舶管理
- FR-21 设备登记册列出每台设备的型号、序列号、安装日期、手册和保修,自动关联到其 Core 通道,使实时状态和运行时长显示在记录旁。
- FR-22 维护计划基于真实发动机小时/运行时长;快速记录动作(加油、排污、滤芯/保养)从实时视图直接盖章到时间线;工作日志接受照片和票据,并输入船厂/服务商交接报告。
- FR-23 文档(登记、保险、检验)带有到期日和提醒;提醒仅为建议性质,绝不声称适航(OPEN-QUESTIONS P8 船舶管理事项 2)。
- FR-24 数字交接包由 Studio 配置、登记册和实时状态生成,作为受控工件(文档编号、修订号、生效日期)与 Studio 接线文档处于同一版本链,并带有包租客人简报模式;目标熟悉时间 ≤1 小时。
- FR-25 船东可随时以机器可读和 PDF 形式导出完整船舶档案(历史、登记册、日志、文档)(数据可携带性;OPEN-QUESTIONS P8 船舶管理事项 5)。
船队、Security 模块与 OTA
- FR-26 Fleet 版显示多船状态(岸电、电池、舱底、位置、资产标签)、周转检查清单、船队级维护与合规跟踪,并按船设定角色范围。
- FR-27 Security 层级接收 Eye 事件片段和 AI 告警(上传而非流式传输),布防/撤防与地理围栏联动,片段保留按 §6 执行。
- FR-28 Tag MOB 告警以 critical 报警形式到达,附带 Hub 标记的 GNSS 位置和船员名册;Mate 不触发任何执行动作(§P12 Alert chain)。
- FR-29 OTA 编排按环(内部 → 试点 → 船队)调度签名镜像,设备在本地验证签名,失败率超过阈值时自动暂停推送 (t),配置备份保留每个 Studio 部署版本并可经 Hub 一键回滚(§1 Config model)。
- FR-30 演示模式无需任何设备即可运行 Studio 虚拟船数据集;夜间模式(红色/低亮度配色)和 v1 语言集(OPEN-QUESTIONS P8-10/11)为 v1 范围项。
5. 数据、配置与接口
| 项目 | 定义 (t) |
|---|---|
| 船舶模型 | 单一船舶文档:身份、设备、通道(来自 Studio 配置版本)、传感器、能源来源、船员名册、角色;每个实体具有与 Studio 共享的稳定 ID |
| 时间线 | 每艘船的仅追加事件流:遥测样本、状态回读、报警(+ 确认)、指令(+ 结果)、自动化运行、快速记录、工作日志、文档、交接修订;每条记录带有设备时间和云端接收时间 |
| 时序与存储 | 按 Hub 上报速率的逐通道电流/电压/状态;降采样分层(原始 30 d,1-min 1 yr,1-h ≥5 yr),使档案寿命长于船舶;EU 区域托管存储,技术栈选型按 PRODUCT-PLAN §6 事项 6(M3) |
| MQTT 主题(设备 ↔ 云端) | ybo/v1/<vessel>/<device>/telemetry、.../event、.../alarm、.../audit、.../cmd(云端 → 设备,已签名、带过期)、.../cmd/ack、.../config、.../ota;QoS 1;last-will 消息用于在线状态 |
| REST/WebSocket(App) | /v1/vessels、/v1/vessels/{id}/status(仅回读)、/timeline、/alarms(+ /ack)、/commands(pending → confirmed/reverted)、/tasks、/registry、/maintenance、/documents、/handover、/export;WebSocket 用于实时状态;船队:/v1/fleet/vessels、/checklists、/compliance(预订系统集成推迟,OPEN-QUESTIONS P8-4) |
| 离线行为 | 设备缓冲所有遥测/事件(Hub 按上报速率 ≥7 天),重连后按序同步;云端显示"离线自";已同步任务本地运行;指令过期(FR-20);App 缓存最后状态和档案供只读 |
| 报警严重度模型 | notice(记录 + 角标)、warning(推送,允许静音,自动清除)、critical(推送给所有人,重复直至确认,忽略静音模式);推送之外的升级(重复 → 第二联系人 → SMS)见 OPEN-QUESTIONS P8-6 |
6. 安全、隐私与合规
| 主题 | 规则 |
|---|---|
| 传输、身份、账户 | 双向 TLS MQTT、逐设备身份、签名 OTA、无入站端口(§3 Security);云端绝不在运行时签名固件——签名密钥离线/HSM (t);passkey 或密码 + TOTP,角色、转移和导出操作需重新认证 (t);设备端与云端审计记录仅追加且可导出,保留期按 FR-19 |
| GDPR | 位置历史、片段和船员名册属于个人数据;云端 beta 前完成数据地图、控制者/处理者角色和 DPIA 筛查(COMPLIANCE-MATRIX.md 行 "Studio / Mate / cloud");固定 EU 托管;导出(FR-25)同时也是可携带性义务(OPEN-QUESTIONS P8-2) |
| 保留期与包租隐私 (t) | 位置历史:Free 30 d,付费层级为船舶生命周期且船东可控清除;摄像头片段 30 d 滚动,报警片段固定保留至确认后 + 90 d;在已预订的包租期间,船东/运营方看不到比船队区域更精细的实时位置,且除非 critical 报警激活否则看不到内部片段;全部待 OPEN-QUESTIONS P8-2 与 P11-1/2 决定 |
| CRA / RED | 安全开发生命周期、SBOM 与依赖流程、漏洞接收、安全更新政策和支持期作为发布证据;法律顾问确认远程处理的 CRA 角色(COMPLIANCE-MATRIX.md;报告义务自 2026 年 9 月 11 日起) |
| 消费者条款 | 付费层级适用消费者合同规则;Security GA 前完成 T&C "非有人值守安防服务"及非值班告警措辞(OPEN-QUESTIONS P8-1) |
7. 成本/商业挂钩(引自计划)
| 层级 | 价格 | 门槛(COMMERCIAL-MODEL.md §4) | 需计量的可变成本项 |
|---|---|---|---|
| Free | 本地 + 基础远程 + 登记册 | 基础设施成本计入付费层级群组经济性或作为获客成本承担 | broker 连接、遥测保留、推送 |
| Premium | €8–12/mo | ≥70 % 贡献毛利;可变成本 ≤€2.40–3.60/mo | 时序存储、推送/SMS、应用商店/支付手续费、支持 |
| Security | €15–25/mo (t) | ≥50 % 贡献毛利;可变成本 ≤€7.50–12.50/mo | eSIM/漫游数据、片段存储与出口流量、AI 告警处理、支持 |
| Fleet | 按船签约 | 扣除运营方支持后 ≥60 %;随首个付费船队合同确定 | 运营方支持、集成 |
挂钩:从第一天起按船计量数据量、片段字节数、推送/SMS 次数和支持工单;各层级 4G 片段上传硬上限见 OPEN-QUESTIONS P8-3。eSIM、视频/存储、消息、应用商店/支付和支持的报价仍缺失(COMMERCIAL-MODEL.md §7 事项 6;ASSUMPTIONS.md F-02)。在 1,000 艘船规模下,100 % 付费采用率在 €12 时仅产生 €144k ARR,在 €20 时为 €240k——前三年由硬件/服务经济性主导(COMMERCIAL-MODEL.md §4)。
8. 参照基准
| 产品 | 引用事实 | 与 Mate 的相关性 |
|---|---|---|
| Siren Marine Siren 3 Pro / GOST NAV-Tracker | Siren:蜂窝套餐 $22/月,Global 5G LTE-M,所有系统均需订阅(Siren Marine);GOST:Inmarsat 卫星跟踪、地理围栏告警、90 天归档跟踪、报价制定价(GOST) | 安防监控订阅锚点与捆绑连接模式;卫星不在 Mate v1 范围(§3) |
| Garmin OnDeck Hub / OneHelm | Hub $849.99;3 个月促销后年付套餐 $12.99/月,月付套餐 $19.99;最多控制 5 路开关;经 ActiveCaptain 云存储最长 10 年(Garmin 新闻中心 2020 年新闻稿,garmin.com);OneHelm 页面取决于船厂档案和合作伙伴状态,并非即插即用(04b-garmin-empirbus-product-matrix.md) | Premium 价格区间;MFD 生态锁定——舵位 UI 保留在 MFD PGN 和 Hub UI 上,而非 Mate |
| Victron VRM | 配 GX 设备免费;用户可配置报警,支持邮件/推送/网页;Remote Console 和远程固件更新;数千套系统的安装总览;高级数据存储 ≥6 个月,kWh 数据 ≥5 年(VRM manual,VRM FAQ) | 能源数据的免费层级预期;VRM API/MQTT 互操作路径(04e-victron-marine-product-matrix.md) |
9. 验证计划
| 阶段 | 测试 | 方法 | 通过标准 (t) |
|---|---|---|---|
| Alpha(M6–7) | 本地模式回读与入网 | 在演示船上对 200 个通道下指令,丢弃 10 % 的 ACK;认领 Hub 和独立网关,然后向网关船加入 Hub | 每个丢弃的 ACK 在约 5 s 内回退,零乐观状态;上行链路交接无需重新认领;转移后旧会话失效 |
| Beta(M10–11) | 负载 | 1,000 艘模拟船按 Hub 上报速率运行 72 h | 无接入丢失;p95 API 延迟 ≤500 ms |
| Beta | 离线同步 | 切断演示船上行链路 72 h,然后恢复 | 时间线完整且有序;已同步任务按计划执行;过期指令绝不执行 |
| Beta | 告警投递与降级 | 经 Wi-Fi、4G 和强制最小链路发送 500 条 critical 报警,附带片段 | 4G 下 p95 Hub 事件 → 手机 ≤30 s;按链路提供片段/快照/仅文本,绝不阻塞 |
| Beta | 访问控制、安全、隐私 | 角色矩阵含包租客人、服务商、舵位锁;外部渗透测试;SBOM 与漏洞流程演练;DPIA 筛查、数据地图、保留期与导出测试 | 无未授权写入;舵位锁仅可在船上解除;无 critical/high 发现未关闭;CRA 证据包完整;法律顾问签字;导出完整且可重新导入 |
| Premium GA(M13–14) | 交接试验 | 5 名不熟悉演示船的船长使用交接包 | 在 ≤1 h 内操作并定位所有系统 |
| Security GA(M15+) | OTA 编排 | 使用故意失败的镜像做环式推送 | 自动暂停;设备启动至前一镜像 |
10. 待决事项与依赖
- 云端技术栈/托管选型、EU 区域——PRODUCT-PLAN §6 事项 6(M3);Hub 4G Cat-1 与 Cat-4 用于片段上传——§6 事项 7;本文引入的产品特定 (t) 值(指令过期、缓冲深度、保留分层、延迟目标)在云端 beta 进入时冻结(M10)。
- 报警责任措辞、投递 SLA 与 SMS 回退——OPEN-QUESTIONS P8-1;升级链——P8-6;严重度/确认模型——P8-7(均在 Security GA 前)。
- GDPR 保留期、数据驻留与包租隐私——OPEN-QUESTIONS P8-2;码头内摄像头隐私——P11-2。
- 数据经济性:各层级 4G 片段上限、eSIM 转售商与毛利——OPEN-QUESTIONS P8-3;缺失的可变成本报价——COMMERCIAL-MODEL §7 事项 6。
- 自动化治理(枚举归属、任务驻留、审计保留期、critical 报警期间行为)——OPEN-QUESTIONS P8-8;运行时访问控制与 Studio 权限——P8-9、P7-1;服务商访问——P8 船舶管理事项 4。
- 无 Hub 时独立网关的云端入网与身份——OPEN-QUESTIONS P5-9;Victron 配置船上的 Mate 优先软件路线——OPEN-QUESTIONS 跨产品事项 9。
- Fleet API 首个集成与船队合规检查清单——OPEN-QUESTIONS P8-4 与船舶管理事项 3;交接包内容标准——事项 6;历史数据导入——事项 1。
11. 变更记录
| 日期 | 变更 | 参考 |
|---|---|---|
| 2026-08-27 | 依据 PRODUCT-PLAN §P8、§1、§3、§P5、§P11、§P12 起草初始规格 | PLAN-028 |