- Python 84.1%
- C++ 9.2%
- HTML 5.2%
- Shell 1.3%
| dmimu_service_source_w1w | ||
| docs | ||
| dogkit | ||
| elrs_service | ||
| plan | ||
| robots | ||
| rootfs | ||
| ros2_ws/src/dg1_msgs | ||
| scripts | ||
| systemd | ||
| tests | ||
| check_all_service.sh | ||
| main_controller.sh | ||
| motor_service.sh | ||
| README.md | ||
| SECURITY_SCAN_REPORT.md | ||
DogKit 控制运行时代码冻结说明
本目录对应合同第二阶段第 8 项“控制代码”。它是来源控制工作树在 2026-08-25 的外发审阅快照,用于代码审阅、接口核对和后续第三阶段适配,不是已经完成 TPIN3 实机标定的部署包。
1. 快照身份
- Git HEAD:
2a8da3917ca2f40f526df12f82a9967330400467 - HEAD 提交时间:
2026-08-02T01:57:49+08:00 - HEAD 提交说明:
initial commit - 快照状态:
dirty working tree snapshot - 冻结方式:复制当前工作树实际字节;未对来源目录执行 checkout、reset、clean 或格式化。交付副本仅对与 TPIN3 无关的参考配置执行了下述来源标识脱敏。
为遵守合同中的安全交付要求,交付副本已清理个人路径、平台账号标识和真实内网地址;该清理不涉及 TPIN3 模型字节或控制算法逻辑。
本快照保留了以下 12 个未提交修改:
dogkit/config/robot.py
dogkit/config/sections.py
dogkit/runtime/actions.py
dogkit/runtime/controller.py
dogkit/runtime/io_health.py
dogkit/runtime/motor_service.py
dogkit/runtime/ros2_ipc.py
dogkit/runtime/timing.py
robots/y179/robot.yaml
scripts/quick_deploy_policy.py
tests/verify_controller_safety.py
tests/verify_ros2_compat.py
同时保留了新增源码测试 tests/verify_thermal_recovery.py。未提交的备份、补丁和旧模型不属于控制源码,未收入本目录。
2. 模块范围
dogkit/config:机器人、硬件、动作、观测和安全配置的解析与校验。dogkit/protocol、dogkit/drivers:IPC、SocketCAN、量化和电机通信适配。dogkit/runtime:观测构造、策略调用、动作变换、状态机、控制循环、通信健康与安全联锁。dogkit/deploy:部署布局、配置渲染、服务单元和安装工具。dogkit/native:本地推理后端的源代码接口。ros2_ws/src、systemd、scripts:ROS 2 消息、服务模板和辅助工具。tests:配置、协议、运行时、动作映射、控制安全、热恢复和部署检查。robots/_template及其他robots/*/*.yaml:来源仓库保留的结构参考配置。
本目录不包含训练源码、训练环境、PT checkpoint、ONNX/RKNN 模型或历史运行数据;这些内容由第二阶段的策略资料和训练资料目录分别交付。
3. 重要配置边界
robots/w1w/policy.yaml、robots/y179/* 和 robots/e1w/* 是来源控制仓库中的参考配置,不是 TPIN3 配置,也不与本次交付的 TPIN3 ONNX 建立部署绑定。尤其不得把 robots/w1w/policy.yaml 当作 TPIN3 的策略清单。
以下 TPIN3 实机参数属于第三阶段部署、联调和现场标定范围,本阶段没有冻结:
- 电机型号、CAN 总线拓扑、CAN ID 与物理接线;
- IMU 型号、安装姿态、坐标轴方向、符号、比例和时间同步;
- 每个关节的机械零位、电机零位、减速比、方向和软硬限位;
- 板端系统、驱动库、固件版本、实时调度和通信周期;
- 急停、上电授权、失联保护、温度/电压/电流阈值;
- TPIN3 专用
robot.yaml、hardware.yaml、policy.yaml、offsets.yaml及其现场验收记录。
因此,本目录不能直接复制到 TPIN3 后上电或使能电机。第三阶段必须先生成 TPIN3 专用配置,完成逐关节悬空核向、低功率限幅、急停、失联保护和整机安全验收,才能进入实机策略测试。
4. 有意排除的内容
为避免交付历史垃圾、无关模型和凭证,本快照排除了:
.git、backups、traces;__pycache__、.pytest_cache及其他构建/编辑器缓存;- 历史压缩包、补丁、日志和临时文件;
*.onnx、*.pt、*.pth、*.ckpt、*.rknn;robots/*/models、robots/*/bin和已编译测试程序;- 私钥、证书私钥、
.env、凭证文件等敏感文件名。
凭证扫描结论见 SECURITY_SCAN_REPORT.md。
5. 建议验证
在具备 Python 3 和项目依赖的 Linux 环境中,从本目录运行:
python3 -m compileall -q dogkit scripts tests
python3 tests/run_all.py
需要核对某个机器人配置时,只允许先执行不触碰硬件的计划检查:
python3 -m dogkit.deploy.cli --config robots/_template plan
模板中的 TODO 和占位值必须替换后才能用于实际部署。任何 install、服务启动、CAN 配置、电机使能和零位写入操作,都必须在第三阶段 TPIN3 专用配置和现场安全条件完备后进行。
6. 本次冻结验证状态
- 工作树内容复制完整性:已按文件逐字节 SHA-256 核对。
- 排除项检查:未发现模型、压缩包、补丁、缓存、跟踪数据或私钥文件混入。
- 敏感凭证检查:未发现私钥、云 API Token、访问密钥、明文密码或带口令 URL。
- Python 测试:制作工作站没有可用 Python/WSL 运行时,未在该工作站执行;交付接收方应在目标 Linux/Python 环境运行第 5 节命令。