ypc
|
323dc1ced0
|
docs(plc): 更新PLC XML配置文件解析与生成说明文档
- Gate 类型从 3 种扩展至 9 种(OR/AND/NOT/T62P/T62D/RISING/FALLING/SR/RS)
- 新增 delayMs、R/S 属性说明
- Comb 新增 id 属性(必填,后序遍历分配)
- 组合链支持链级 Inputs (SR/RS 直接 Input 连接)
- 数据结构扩展: PlcGate 新增 delayMs/rsSSrc/rsRSrc/combId, PlcLink 新增 dstPin
- 解析/生成伪代码同步更新
- 新增 6.3 时序门示例 + 6.4 RS/SR 触发器示例
- 注意事项从 6 条扩展至 12 条
|
2026-07-08 13:38:05 +08:00 |
ypc
|
780b8cc311
|
docs: PLC XML配置文件解析与生成说明文档(QT上位机开发用)
面向QT上位机开发人员,包含:
- XML整体结构及元素详解(PLCConfig/Chain/Inputs/Outputs/Gate/Comb)
- 递归Comb解析算法(C++/Qt + QDomDocument)
- XML生成算法及checksum计算
- 简单链与组合链对照示例及逻辑等效表达式
- 信号编号获取接口(WebSocket)
- 9条开发注意事项
|
2026-07-07 10:22:06 +08:00 |
ypc
|
6bdd467998
|
feat(plc): PLC配置文件格式从JSON/TXT迁移到XML
- 将 Reclose_logic 配置文件格式从 JSON/TXT 统一改为 XML
- 适配 plc.cpp 中的 XML 配置解析逻辑
- 更新 plc_config.js 前端 JS 以支持 XML 格式配置
- 更新 packed_fs.c Web 资源打包
- 更新问题处理文档
|
2026-07-07 09:34:16 +08:00 |
ypc
|
12dcec0f31
|
feat: PLC逻辑配置页面 + 配置文件去重修复 + 前端WebSocket修复
【PLC逻辑配置页面】(new: plc_config.js, 1947行)
- 三Tab页: 信号列表 / 逻辑图查看器 / 新建配置编辑器
- Canvas渲染: 节点渐变+阴影+左侧色条+引脚圈+贝塞尔连线+发光效果
- 查看器: 使用文件中保存的x/y坐标(与编辑器布局一致),首次命中链路匹配
- 编辑器: 左击选中连线高亮(橙色)+右键/Delete删除,双击节点修改,拖拽布局
- 支持11种逻辑元件: 输入/输出/与门/或门/非门/62p延时/62d延时/上升/下降沿/SR/RS触发器
【配置文件去重修复】
- Reclose_logic.txt: 消除两个AND#0重复ID,修复为AND#0 + AND#3
- generateAndSaveConfig: 保存前自动检测并修正重复 type+id
- initEditor: 加载时消除已有重复ID + 更新editNextGateIdx防止后续冲突
- 保存格式扩展: node支持inPins(第5字段),link支持dstPin(第4字段)
【前端WebSocket修复】
- plc_config.js语法错误(缺少闭合})导致PlcConfigPage未定义
- App.init()在WsClient.connect()之前崩溃显示已断开
【后端】
- ws_method.cpp: curd:add 后立即推送信号列表
- dc_cfg_check.cpp: 数据中心配置检查
- plc.cpp: PLC模块配置路径更新
- myDatacenter.h: 新增接口声明
【文档+样式】
- PLC配置文件解析与生成.md: 模块分析文档
- style.css: PLC配置页面样式(Canvas/表格/图例/Modal)
- datacenter_out.xml: Out信号注册数据
|
2026-07-06 14:56:04 +08:00 |
ypc
|
fd34c6815f
|
feat: PLC调试页面 + WebSocket测试套件 + curd:add立即推送修复
新增:
- web_root/js/plc_debug.js: PLC 调试页面(LED/按键绑定out信号、增量刷新)
- requirements.toml: Codex 项目权限预批准配置
- mimo/webserver测试工程师/: WebSocket 前后端测试套件(8脚本+README)
· test_ws_raw.py — 最简 WebSocket 连通性测试
· test_debug_dc.py — datacenter 命令调试
· test_verify_push.py — 推送验证
· test_verify_immediate_push.py — 验证 curd:add 立即推送修复
· test_ws_dc_out/v2/v3.py — 数据中心→信号页端到端测试
· test_regression_final.py — 全面回归测试
修改:
- ws_method.cpp: curd:add 后立即推送信号列表(+30行)
- packed_fs.c: 打包新版 web 资源(PLC调试页+样式更新)
- pages.js: 重构信号管理页渲染逻辑、新增PLC调试页路由
- app.js: 注册PLC调试页路由
- style.css: 新增PLC调试页样式(+106行)
- index.html: 加载 plc_debug.js
- plc.cpp: 微调修复
|
2026-07-02 15:13:06 +08:00 |
ypc
|
cb60d687e3
|
feat: channel_config 统一重构 + lib60870 CBB 库集成 + libiec 文件拆分
## channel_config 通道配置统一重构
- 合并 channel_config.xml / channel_config_rk.xml 为单文件
- Channel 新增 bind 字段显式绑定私有规约(channel_cfg_find_by_bind)
- 转发隧道改为 from_saddr→to_saddr 单向,支持 ICP67维护+IEC101/104
- com_channel_recv_cb 重构为三级路由: 转发→bind→IEC
- 去除 ICP66→ICP67 帧转换逻辑(decode_frame_codec 清空)
- com_recv_data 去除硬编码 uart0, 简化为纯 IEC 头检测
- com_scan_send_data_to_app 增加 p_event 空指针防护
- self_ptl_init 改用 bind 字段绑定 UART+通过转发规则反查 TCP
- self_ptl 内部转发加 TCP 连接状态守卫, p_event 未就绪时仅入队
- 新增参数缺省值重构相关文件
## lib60870 CBB 库集成
- 替换原 lib60870 为科大智能 CBB 库
- 新增 cbb_compat.h 兼容层, 通过 gcc -include 注入类型定义
- 新增 CBB 库完整文档(lib60870_mkdocs)
## libiec 文件拆分
- iec_method.cpp 拆分为 iec_common/iec_dd/iec_fault/iec_file/
iec_param/iec_soe/iec_time/iec_yc/iec_yk/iec_yx 等独立文件
## 工程文档
- 新增 15+ 模块分析/plan/中间文档
|
2026-07-01 14:52:22 +08:00 |
ypc
|
2cc8f1d643
|
feat: C接口化改造 — P0~P2 完成 (icp67/cmd/comm 三个模块)
P0 libicp67: 添加 extern "C" 包裹,bool test → uint8_t test
P1 libcmd: CMD_REGISTER 拆分为 CMD_REGISTER/CMD_REGISTER_C,
移除默认参数,添加 extern "C"
P2 libcomm: enum class → C enum,std::string → char[],
添加 COMM_IP_LEN/COMM_DEV_LEN 宏,添加 extern "C"
同步更新 5 处 CMD_REGISTER 调用点及 comm 内部实现
|
2026-06-27 13:47:53 +08:00 |
ypc
|
392fadcdb0
|
<修改> 1、webserver增加在数据中心选择信号直接add,在out界面省去一个个添加;2、增加配置直接远程调试rk3568
|
2026-06-26 17:47:46 +08:00 |
ypc
|
19a2f2a3c0
|
<修改> 1、消除cmd中的编译告警;2、消除log中的编译告警;3、增加modbus客户端程序;4、webserver增加导入导出信号表功能,可以导出已增加的信号,也可以一键导入想要观察的信号
|
2026-06-24 15:43:41 +08:00 |
ypc
|
c6501da92f
|
<修改>1、将datacenter调整到public下;2、解耦应用模块,调整消息队列
|
2026-06-18 17:53:22 +08:00 |
ypc
|
8de2441a79
|
<修改> 1、将应用线程模块调用方式改为动态的,通过头文件中进行绑定,通过配置文件进行选择是否运行;2、消息队列初始化也同样修改
|
2026-06-18 17:15:43 +08:00 |
ypc
|
3c19148b97
|
<修改> 1、在前端页面中增加命令终端页面,在此页面中可以调用自定义命令,并将自定义命令的响应信息展示到前端页面中
|
2026-06-18 15:42:09 +08:00 |
ypc
|
0e629185be
|
<修改> 1、调整参数定值的缺省值方案,认为缺省值仅在配置文件中,在程序中不应该有
|
2026-06-17 09:53:00 +08:00 |
ypc
|
2c10cbbe7c
|
<修改> 1、优化icp67模块;2、优化self_ptl应用库
|
2026-06-16 14:57:45 +08:00 |
ypc
|
ec424d7f0f
|
<修改> 1、合并应用模块中的com_sacn与com_channel
|
2026-06-15 15:14:43 +08:00 |
ypc
|
08039e4f2d
|
<修改> 1、优化libcomm公共库
|
2026-06-15 14:04:41 +08:00 |
ypc
|
0a7a3c49b3
|
<修改> 1、使用mimo优化程序,增加问题处理文档;2、调整优化libtask模块
|
2026-06-15 10:29:59 +08:00 |
ypc
|
f4b84506a6
|
<修改> 1、创建mimo分支,后续此分支使用小米mimo code开发
|
2026-06-12 16:48:42 +08:00 |