四川狗
  • Python 84.1%
  • C++ 9.2%
  • HTML 5.2%
  • Shell 1.3%
Find a file
2026-10-26 10:51:04 +08:00
dmimu_service_source_w1w 解决协议中CRC错误的问题 2026-10-21 18:46:40 +08:00
docs 增加了通讯协议文档 2026-10-26 10:51:04 +08:00
dogkit 单腿动时返回参数信息 2026-10-24 15:28:00 +08:00
elrs_service add rootfs 2026-10-21 13:08:07 +00:00
plan 增加布署相关的服务文件 2026-10-21 12:46:22 +08:00
robots 修改了轮毂电机W150的故障字节定义 2026-10-23 14:57:48 +08:00
rootfs 修改了服务中源代码的位置 2026-10-22 14:58:47 +00:00
ros2_ws/src/dg1_msgs init version 2026-10-21 11:29:47 +08:00
scripts add build_elrs.sh 2026-10-21 15:52:11 +08:00
systemd init version 2026-10-21 11:29:47 +08:00
tests 增加了脚本控制测试 2026-10-25 22:34:46 +08:00
check_all_service.sh 修改了检查所有服务的脚本 2026-10-22 10:17:03 +00:00
main_controller.sh use sicdog in main_controller.sh 2026-10-22 21:21:20 +08:00
motor_service.sh 增加查看服务的脚本 2026-10-22 10:07:37 +00:00
README.md 增加了测试文件 2026-10-21 11:58:28 +08:00
SECURITY_SCAN_REPORT.md init version 2026-10-21 11:29:47 +08:00

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 节命令。