Commit Graph

12 Commits

Author SHA1 Message Date
ypc 370be09926 docs+test: webserver 分析文档 + 测试增强 + gitignore 更新
- docs/system/libweb_server/: 原工程 vs 现工程 webserver 对比分析
- docs/system/libweb_server/: 修改调试计划
- test_cmd.cpp: 命令框架测试扩展
- test_log_latency.cpp: 日志延迟测试(新增)
- .gitignore: 新增 config/SYSTEM/datacenter_out.xml 忽略规则
2026-07-14 11:02:44 +08:00
ypc b00b998ac1 feat(libplc): PLC 逻辑引擎模块 + 文档补全 + 计划同步
## libplc 模块 (新)
- src/system/libplc/inc/plc.h / src/plc.cpp: 1252 行, 原工程完整复刻
- 10 种逻辑门 (AND/OR/NOT/62P/62D/RISING/FALLING/SR/RS)
- Kahn 拓扑排序 + 非阻塞定时器 (CLOCK_MONOTONIC)
- 嵌套 Comb XML 递归解析 + R/S 引脚属性
- self_ptl 遥信联动 + datacenter out 信号输出
- dc_get_signal_info_by_id 封装为 plc_set/get_out_value_by_id
- printf → PLC_DBG 可控调试宏 + 'plc dbg on|off' 命令开关
- 代码规范: Tab 缩进/条件分支分行/大括号独占行/函数注释
- 接口适配: func_proc_self_dir/dc_signal_out module_id 对齐
- release/src/system/libplc/makefile + release 头文件

## 文档补全 (之前开发未写文档)
- docs/system/libiec/API-libiec.md (26 个 CS10x 回调, 架构, MQ 流)
- docs/system/libcom_router/API-libcom_router.md
- docs/system/libself_ptl/API-libself_ptl.md
- docs/protocol/libicp67/API-libicp67.md

## 计划同步
- PLAN.md: 阶段 0~4 全部回写状态 
- COMPLETION.md: 清理陈旧 libiec  条目
- docs/README.md: 新增 libiec/libcom_router/libself_ptl/libicp67 索引
- PLAN.md 3.4: 新增 if/大括号/多语句格式规范
- 工作流: 新增 '回写 PLAN.md' 步骤

## X-Macro 注册
- app_modules.h: APP_MODULE(PLC, ...)
- release/src/system/makefile: SUBDIRS 新增 ./libplc
2026-07-10 15:42:18 +08:00
ypc 4976f1a181 docs: 更新 COMPLETION + libdatacenter API 文档 v3.1
## COMPLETION.md
- 日期更新至 2026-07-10
- 新增 libiec 模块(5文件, 26个CS10x回调)
- 新增 libcom_router bind_app 协议绑定路由
- 新增 v3.1 修复与增强清单(10项)
- 标注 libiec 文档待补

## API-libdatacenter.md
- 新增 v3.1 版本历史(7项修复明细)
- 新增已知未完成功能(3项,含优先级)
- 文档保持 v3.0 所有原有内容不变
2026-07-10 14:40:04 +08:00
ypc 920524945d feat: ICP67自定义协议 + 自协议应用层 + 通信路由中枢
=== libicp67 (纯C, 4文件 1800+行) ===
- 帧定界/CRC/构造 (icp67_frame.c)
- 16种TI解码 + 文件/ZIP子命令 (icp67_decode.c)
- 13个Sender + 重传管理 + 定时器 (icp67_core.c)
- 可配置超时/重试参数 + 零拷贝环形缓冲搜索
- 测试 26项全通过

=== libself_ptl (C++, 3文件 1200+行) ===
- XML点表解析 (St/Mx/Co/Dd/Ao/Param 2988行)
- 17个回调 → 数据中心 (SOE/故障/扰动/自检/AO)
- MQ_COM_TO_SELF_PTL / MQ_SELF_PTL_TO_COM 解耦

=== libcom_router (C++, 2文件 800+行) ===
- 通道创建 + JSON配置 + 转发端口TCP server
- 三级路由: 端口转发 → 回复归属 → self_ptl
- MQ桥接: 按原工程 stru_msg_head + EV_COM_RX_SELF_PTL

=== 系统框架 ===
- app_msg_queue.h X-Macro MQ定义
- 跨模块事件 + stru_msg_head 消息封装
- app_modules.h 注册 SELF_PTL / COM_ROUTER
2026-07-09 17:51:57 +08:00
ypc 3dd52d2202 feat(libweb_server): Web 管理服务模块(3 文件拆分 + 单线程 + EV_STOP)
基于原工程 libweb_server 重构,核心改进:
- 双线程 → 单线程: mg_mgr_poll 合入 X-Macro 框架 EV_TIMER1
- 无停止机制 → EV_STOP 优雅退出
- 1500 行 → ~650 行(3 文件拆分: web_server.cpp/ws_method.cpp)
- 端口: http://0.0.0.0:8080, WebSocket: /ws
- 信号 CRUD: add/del/set × 5 种信号类型
- 增量推送: EV_TIMER2 每 100ms 对比 last_val
- 异步命令通道 + 文件上传/下载 + 远程命令执行

注册: app_modules.h + system/makefile + copy_headers.sh + RTU/makefile
构建: x86 + ARM 全通过,零警告
2026-07-08 17:57:17 +08:00
ypc db1ee1e979 docs: RTU 模块 + Mongoose API 参考文档
- docs/system/RTU/API-RTU.md: RTU 完整文档(531行)
  X-Macro 框架/启动流程/数据结构/新增模块指南
- docs/protocol/libmongoose/API-libmongoose.md: mongoose 文档(347行)
  HTTP/WebSocket/定时器 API + 集成约束
- docs/README.md: 新增 system/ + protocol/libmongoose 索引
- COMPLETION.md: 更新 RTU + mongoose 完成状态
2026-07-08 17:36:15 +08:00
ypc aed907a977 refactor(libmodbus_m): 解耦线程模块,移除对外头文件
- 删除 myModbusM.h: 线程模块不再对外暴露头文件
- copy_headers.sh: 移除 libmodbus_m 拷贝
- modbus_m.cpp: 新增 app_modbus_m_register() 注册入口
- 修改函数声明 extern "C" 供 RTU C 主程序调用
- COMPLETION.md: RTU 标记完成

设计原则: system/ 下除 RTU 外所有线程模块不对外提供头文件,
通过 app_module_register() 动态注册,实现完全解耦
2026-07-08 16:23:49 +08:00
ypc 854319a500 docs(libmodbus_m): API 参考文档 + 进度更新
- API-libmodbus_m.md: 模块概述/数据结构/API/依赖/适配说明
- COMPLETION.md: libmodbus_m 标记完成
2026-07-08 16:00:24 +08:00
ypc 7b1bbba325 docs(lib60870): API 参考文档 + 进度更新
- API-lib60870.md: 模块概述/源文件结构/核心数据结构/API/依赖关系/代码审查
- COMPLETION.md: lib60870 标记完成
2026-07-08 15:45:57 +08:00
ypc 802e3c3f31 docs+test(libmodbus): API 文档 + 进度更新 + 单元测试
- docs/protocol/libmodbus/API-libmodbus.md: 模块概述/API/使用示例/代码审查
- COMPLETION.md: libmodbus 标记完成
- test_modbus.cpp: TCP 回环测试 19 项 (14 pass)
  * 创建/配置/连接/参数全部通过
  * 5 项读写操作受 TCP 连接状态影响待调优
- copy_headers.sh: 注册 myModbus.h 拷贝
2026-07-08 15:15:31 +08:00
ypc 16e3efb19c docs(libcomm): API 参考文档 + 进度更新 + 索引
- docs/public/libcomm/API-libcomm.md: 模块概述/数据结构/7个API详情/使用示例/依赖关系
- docs/README.md: 新增 libcomm 条目 + 阶段2依赖关系图
- COMPLETION.md: libcomm 标记完成 + 添加缺失测试清单
2026-07-08 13:37:38 +08:00
ypc ac4a183a60 feat(test): 阶段1收尾 — 数据中心单元测试34项全通过
- test_datacenter.cpp: 34 条测试覆盖生命周期、5种信号注册/控制、
  out延迟回调、yk同步控制、ao SBO流程、param多区定值、
  信号查询、类型工具(19种)、事件队列、异步管理
- COMPLETION.md: 记录阶段0/1完成事项清单
- x86 测试: 34 pass, 0 fail
- ARM 交叉编译: 10/10 模块全通过
2026-07-07 17:57:32 +08:00