文档澄清: --json 后是输出产物路径,非预置输入文件

phase1.json 只在 sim_fc.py 跑完后才生成,仓库内本就不该有。
统一改用绝对路径 ~/pod_logs/phase1.json,避免相对路径落在 utils/ 后找不到;
补充 §8.1.1 说明落盘结构(args/summary/samples)与 samples 为空的含义。
This commit is contained in:
keita
2026-10-08 10:26:51 +08:00
parent 257721e035
commit f17005a020
2 changed files with 33 additions and 6 deletions
@@ -123,11 +123,13 @@ rel_alt 50m,真实 UTC 递增时戳),同时观测下行。
```bash
cd utils
# 默认值已按 §7 设定,不必再写 lat/lon/rel-alt/rate
python -m pod_bridge.sim_fc /dev/ttyAMA0 --seconds 60 --json phase1.json
python -m pod_bridge.sim_fc /dev/ttyAMA0 --seconds 60 \
--json ~/pod_logs/phase1.json
# 台架上验证目标识别 + 自动锁定同时进行解算观测
python -m pod_bridge.sim_fc /dev/ttyAMA0 \
--detect person --auto-lock --seconds 60 --json phase1.json
--detect person --auto-lock --seconds 60 \
--json ~/pod_logs/phase1.json
```
> 全部参数表与退出码见 §8。
@@ -250,13 +252,33 @@ python -m pod_bridge.sim_fc <port> [options]
```bash
cd utils
mkdir -p ~/pod_logs
python -m pod_bridge.sim_fc /dev/ttyAMA0 \
--detect person --auto-lock --seconds 60 --json phase1.json
--detect person --auto-lock --seconds 60 \
--json ~/pod_logs/phase1.json
```
> ⚠ **`--json` 后面的路径是「输出产物」,不是预置输入文件**——仓库里没有、
> 也不该有 `phase1.json`,它只有在脚本跑完后才会被写出来。用相对路径会落在
> 当前工作目录(`utils/`),建议直接给绝对路径(如上 `~/pod_logs/`),
> 免得跑完找不到。
要在台架上跑阶段2 的高度扫描时,改 `--rel-alt` 重跑即可
(`30 / 50 / 80 / 120` 各一次,`--json` 分别落盘后做聚类对比)。
### 8.1.1 `--json` 落盘内容(跑完会得到什么)
顶层三个键:
| 键 | 内容 |
|---|---|
| `args` | 本次运行的全部命令行参数(复现用) |
| `summary` | 汇总:帧计数/频率、首次锁定与首次表4 时刻、经纬度均值与 σ、相对我方的 east/north 偏移与散布、表4 高度 vs 喂入高度 |
| `samples` | 逐帧表4 原始采样:`{t_s, lat, lon, abs_alt_m, rel_alt_m, east_m, north_m, locked}` |
实测拿到后,把这份 JSON 和终端汇总一起回传即可做阶段2 的聚类/散布分析。
**注意**:`samples` 为空即代表本次没收任何表4(对应退出码 1)。
### 8.2 行为约定(实现已满足)
1. **单进程收发一体**——独占串口,同进程发 表3、收 表2-2/表4;