Files
DCU_DesktopController/.gitignore
T
cbb 209a869f96 feat(motor): 反馈刷新率 Hz 适配(0x0400/0x0401 扩展格式)+ ECAT 密排槽与判活自适应
反馈刷新率(配套电机固件 v0.4.1:0x0400 DLC4/0x0401 DLC2 扩展格式,
选择器 0x0100=STATUS · 0x0101=CONFIG 帧,协议值为周期 ms):
- 「节点 ID」页签新增 STATUS/CONFIG 刷新率读取/写入;界面单位一律 Hz
  (写入按 周期ms=round(1000/Hz) 换算下发,读取反算 Hz 并附原始周期,
  取整有损如实展示),0=停发,写入掉电保存;配置值以「读取」回读电机为准
- WiFi 应答回执走 0xC1 per-ID 快照(/can/feedback 全量 entries):
  GD32 0xC0 ACK 仅 1 字节状态、不携带电机回帧;同 ID 回帧快照只存最新
  一条,故一次快照只配一次请求(STATUS/CONFIG 分开读写)
- ECAT 回执走批量接收区 takeNodeIdReport,按长度分派 2B 旧格式/4B GET/5B SET ACK
- GET_NODE_ID 迁移到扩展选择器 0x0000,兼容旧固件 2B 节点 ID 应答
  (SET DLC2 旧格式行为不变)
- transport-wifi 新增 fetchFeedbackFull(全量 CAN 反馈快照)

EtherCAT/基础设施(密排槽固件 1.6.21 配套):
- 快照槽位 5→9 一拍整轮(扫描周期数 6→1);判活阈值随实测 seq 间隔
  自适应 clamp(3×EWMA, 2s, 30s),秒级回报档不再被固定 2s 误判离线;
  STATUS 面板 Hz 明确为网页到达口径(按槽 seq 实测电机回报率的方案已否掉)
- esp32_server.py:ecat_native 单实例收紧(后起独占 + taskkill 残留实例,
  双实例并存会抢 Npcap 致后起者抓不到从站)+ native stdout 落盘
- flash_gd32.py:刷写后校验「GD32 真的在跑新代码」(版本变化或 uptime 归零),
  防"写入≠在跑"假台账
- lab:新增 LAN9252 电源诊断台、PDO 布局页;SPI 测速并入 EtherCAT 接收看板
  并更名「SPI/ECAT 通信测速」;移除 continuity_test.html;新增 ECAT 单拍耗时
  优化报告;/_local/ 排除入库;测试同步更新(62+58 项全过)
2026-09-12 20:10:47 +08:00

39 lines
810 B
Plaintext

# Python
__pycache__/
*.py[cod]
*.egg-info/
.pytest_cache/
# 虚拟环境(本地生成,勿入库)
venv/
.venv/
env/
# 固件 / 日志产物(本目录只做前端与本地服务,固件由 ESP32_COMM 构建)
*.bin
*.elf
*.map
*.log
# 采样 / 自测产物(现场跑出来的原始数据,动辄几十 MB,勿入库)
*.csv
*.jsonl
scripts/_*_out.txt
# 一次性排障探针(跟着某次现场问题写的,问题闭环后即失效)
scripts/probe_*.py
scripts/selftest_*.py
# 本地一次性排障产物(页面测试驱动 / 诊断脚本 / 截图 / 测试报告),不入库
/_local/
# 例外:这两个已入库,是可复用的通用采样器
!scripts/probe_ecat_slot_atomicity.py
!scripts/probe_ecat_vs_wifi.py
# 编辑器 / 系统
.vscode/
.idea/
*.swp
Thumbs.db
desktop.ini