docs: 更新ARCHITECTURE.md参数表与行为文档
- 模型: Mild v12->v13, 阈值更新为{0.80,0.70,0.80,0.85}
- 新增 foresee_lost_scale / sharp_turn_scale 参数
- 移除已删除的 zebra_detect.cpp 引用
- 新增 zebra 冷却期控制策略表(foresee/bang-bang/降速)
- 新增 pedestrian_stop.png LCD 图片显示说明
- 新增模型转换工具 tools/ 引用
This commit is contained in:
+21
-8
@@ -247,9 +247,20 @@ ZNORMAL 期间:
|
||||
└──────────┘
|
||||
|
||||
NORMAL: 允许通行,检测斑马线
|
||||
STOP: 刹停 4 秒,g_zstate==Z_STOP 传给 motor_update → 编码器刹车
|
||||
STOP: 刹停 3 秒,g_zstate==Z_STOP 传给 motor_update → 编码器刹车
|
||||
LCD 显示 pedestrian_stop.png(不受 showImg 控制),进入/退出时清屏
|
||||
COOLDOWN: 恢复行驶但斑马线状态机停止检测 5 秒(防止重复触发)
|
||||
仅跳过检测,不影响其他功能(舵机/巡线正常)
|
||||
|
||||
### 斑马线冷却期控制策略 (Z_COOLDOWN)
|
||||
|
||||
| 时间窗口 | 控制 | 说明 |
|
||||
|----------|------|------|
|
||||
| 0~2s | 全速起步 | boost 1.5x 速度持续 0.7s |
|
||||
| 2~5s | foresee=24 | 缩短前瞻走稳 |
|
||||
| 3.3~5s | 降速上限 13 + bang-bang 打满 | 一次机会:偏差出现→方向锁定打满→方向翻转/回正即退出 |
|
||||
|
||||
**bang-bang 逻辑**(`steering_update()`):Z_COOLDOWN 3.3~5s 内,偏差超出死区后锁定方向一次性打满(左满 1.2ms / 右满 1.8ms),直到偏差方向翻转或回到死区退出,后续走正常线性转向。
|
||||
```
|
||||
|
||||
**关键变量:**
|
||||
@@ -356,12 +367,14 @@ lcd_render():
|
||||
| `./start` | int(0/1) | 0 | 0 | 使能开关,1=电机运行 |
|
||||
| `./debug` | int(0/1) | 0 | (不写入) | 每30帧重载配置+允许存图 |
|
||||
| `./showImg` | int(0/1) | 0 | (不写入) | LCD 显示(每10帧轮询→g_lcd_on) |
|
||||
| `./foresee` | double | 80 | 40 | 舵机前瞻行 (显示空间像素) |
|
||||
| `./foresee` | double | 80 | 40 | 舵机前瞻行 (显示空间像素, Z_COOLDOWN 2~5s 内缩短为 24) |
|
||||
| `./foresee_lost_scale` | double | 0.7 | 0.7 | 丢线时前瞻缩放 (<1=看更远) |
|
||||
| `./sharp_turn_scale` | double | 0.5 | 0.5 | 急弯时前瞻缩放 (<1=看更远) |
|
||||
| `./deadband` | double | 5 | 8 | 舵机死区 (显示空间像素) |
|
||||
| `./steer_gain` | double | 1.0 | 1.5 | 舵机增益 |
|
||||
| `./center_bias` | double | 0 | (不写入) | 中线偏置修正 |
|
||||
| `./zebrasee` | double | 60 | (不写入) | 斑马线近界阈值 (模型空间cy) |
|
||||
| `./destfps` | double | 30* | (不写入) | 目标帧率 (*代码兜底值) |
|
||||
| `./destfps` | double | - | (不写入) | 目标帧率 |
|
||||
| `./saveImg` | int(0/1) | - | (不写入) | 保存帧图像 (需 debug=1) |
|
||||
| `./cone_avoid_gain` | double | 0.3 | 0.3 | 锥桶中线变形推离量 (归一化) |
|
||||
| `./cone_avoid_range` | int | 30 | 30 | 变形斜坡陡峭度 |
|
||||
@@ -402,7 +415,6 @@ lcd_render():
|
||||
|
||||
| 文件 | 功能 | 排除原因 |
|
||||
|---|---|---|
|
||||
| `zebra_detect.cpp` | 经典斑马线检测 | 已被 Mild 模型替代 |
|
||||
| `PIDController.cpp` | 位置式/增量式 PID | 电机开环直驱,无调用点 |
|
||||
| `serial.cpp` | VOFA 串口可视化 | 未使用 |
|
||||
|
||||
@@ -412,15 +424,16 @@ lcd_render():
|
||||
|
||||
---
|
||||
|
||||
## 模型:Mild v12
|
||||
## 模型:Mild v13
|
||||
|
||||
- **推理引擎**:`src/model_v10.{hpp,cpp}`(名称为兼容保留,内部为 Mild v3)
|
||||
- **推理引擎**:`src/model_v10.{hpp,cpp}`(名称为兼容保留,内部为 Mild Mega r2 v3)
|
||||
- **输入**:160×120 BGR
|
||||
- **输出**:4 类 + 背景 → 9 通道:0=锥桶, 1=红灯, 2=绿灯, 3=斑马线
|
||||
- **架构**:3→9→9→13→13→19→19→19→44→44→64→64 → head(64→64,dw) → out(64→9)
|
||||
- **阈值**:`{0.65, 0.75, 0.80, 0.82}`(锥桶/红灯/绿灯/斑马线)
|
||||
- **权重文件**:`mild_v12.bin`(105KB 自定义二进制格式)
|
||||
- **阈值**:`{0.80, 0.70, 0.80, 0.85}`(锥桶/红灯/绿灯/斑马线)
|
||||
- **权重文件**:`mild_v12.bin`(103KB 自定义二进制格式,实际模型为 Mild v13,沿用旧名)
|
||||
- **推理频率**:每 2 帧一次(跳帧节省 CPU)
|
||||
- **转换工具**:`tools/export_mild_v13.py`(PyTorch .pth → .bin)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user