第5周 (2026-08-10 ~ 2026-08-14)
SG2002 项目背景
基于算能 SG2002(LicheeRV Nano)+ StarryOS 搭建网球抓取机器人,目标实现「摄像头视觉识别网球 → 电机追球 → 舵机夹取」的自动抓球闭环。前几周已完成 StarryOS 移植、TPU 四语言推理、yolov8n_tennis 检测管线(5.2 fps)、CrabUsb 摄像头等时传输。本周任务是打通电机、舵机、摄像头三条底层链路。
本周工作目标
- 打通 UART1 电机链路(追球移动)
- 打通 UART2 舵机链路(夹爪夹取)
- 修复 USB 摄像头 /dev/video0 缺失,恢复视觉管线
- 调研板载 WiFi 联网方案
本周工作内容
1. UART1 电机通信打通
定位 SG2002 ↔ ESP32「零数据」的 4 个根因并修复:内核缺 CLKGEN 时钟使能、RSTC 复位释放、IOBLK 上拉,加 pinmux 0x68=6 遗漏(UART1_RX 寄存器从未配置)。结果 motor_debug.py 15/15 通过、轮子实际转动,08-13 复测通过。
2. UART2 舵机通信打通
纠正 pinmux 误判(舵机接 A28/A29=IIC0 → 0x70/0x74=2);真正卡点是波特率(StarryOS 默认 38400 vs 舵机 115200)。08-14 复测通过、舵机转动;定位偶发不转为释力态(需 #000PULR!),角度映射待校准。
3. UVC 摄像头修复 + 管线联调
/dev/video0 缺失三重根因:错用源码树、缺 sg2002-v4l2 feature、缺 sg2002-dwc2 主机驱动(真正元凶)。修复后 /dev/video0 注册成功,real_pipeline.py 端到端 5.0 fps,检测触发 GRAB/SEARCH 切换。
4. WiFi 方案调研
板载模组为 AIC8800D(SDIO),StarryOS 无法驱动;定 ESP32-C3 中继方案(复用 UART1)。
本周工作产出
| 模块 | 产出 | 状态 |
|---|---|---|
| 电机(UART1) | 15/15 通过,轮子转 | ✅ |
| 舵机(UART2) | 舵机转动(角度待校准) | ✅ |
| 摄像头 + 管线 | 5.0 fps,检测触发状态机切换 | ✅ |
| WiFi 方案 | ESP32-C3 中继确定 | ✅ |
三条链路各自打通,端到端自主抓球闭环尚未串起。
下周计划
- 端到端自主抓球闭环(识别 → 追球 → 夹取)
- 舵机夹爪角度校准 + 管线加 #000PULR! 防御释力态
- ESP32-C3 遥控架构确定
- 修复重复运行内存泄漏 panic