|
|
|
@@ -1,6 +1,6 @@ |
|
|
|
# 当前开发交接 |
|
|
|
|
|
|
|
> 更新日期:2026-08-25。本文件只保留当前工作区状态、最近验证和下一步,不记录历史开发流水账;稳定架构和业务细节分别以 `docs/architecture.md` 及对应专题文档为准。 |
|
|
|
> 更新日期:2026-08-26。本文件只保留当前工作区状态、最近验证和下一步,不记录历史开发流水账;稳定架构和业务细节分别以 `docs/architecture.md` 及对应专题文档为准。 |
|
|
|
|
|
|
|
## 当前状态 |
|
|
|
|
|
|
|
@@ -13,7 +13,7 @@ |
|
|
|
- 应用外部配置业务已经完成,固定读取可执行文件目录下的 `config/application.ini` |
|
|
|
- 配置支持 6 个体验型数量上限、2 个新建 HMI 页面默认尺寸和 6 个 PLC 串口默认参数 |
|
|
|
- 配置启动时只读取一次,不热更新,不覆盖已有文件,不回写 PLC 配置窗口中的临时修改 |
|
|
|
- 当前没有代码阻塞,命令语输入功能已接入,Release 功能测试和 Release 主程序构建均已通过 |
|
|
|
- 当前没有代码阻塞,命令语输入和用户运行程序导出功能已接入,Release 功能测试和 Release 主程序构建均已通过 |
|
|
|
|
|
|
|
## 工作区状态 |
|
|
|
|
|
|
|
@@ -34,8 +34,14 @@ |
|
|
|
- 双击已有节点时命令输入框会回填当前指令和 M/D 地址;补全弹窗改为左对齐的“指令 / 操作数 / 说明”三列表格,并扩大宽高,输入框在视口边缘自动避让 |
|
|
|
- 命令补全增加 `LD=`、`LD<>`、`LD<`、`LD<=`、`LD>`、`LD>=` D 值比较指令,格式为比较指令 + D 地址 + 有符号常量 |
|
|
|
- `MOV/ADD/SUB` 命令输入保留指令对话框允许的常量操作数;补全过滤只按第一段指令名匹配,输入空格后的 M/D 操作数时仍保留指令提示 |
|
|
|
- 双击命令输入只打开空输入框,不再自动弹出补全列表;用户开始输入指令名后才显示补全,并移除未实现的 `TON/CTU` 提示项 |
|
|
|
- 梯形图删除支持框选网络批量删除;混合选中时忽略断路占位,不再弹出“已经是断路”的误导提示 |
|
|
|
- 梯形图画布统一支持从网络内部或外部开始鼠标拖拽框选,Ctrl 继续追加选择 |
|
|
|
- 新增“文件 -> 导出用户运行程序”:导出前执行运行校验,将当前工程写入临时 JSON,调用 Qt 资源打包流程生成带内嵌工程的专用 exe,并复制 Qt DLL 与平台插件到用户选择的目标目录 |
|
|
|
- 修复运行版资源参数被 qmake 工程路径覆盖的问题;每次导出使用独立构建目录,打包脚本校验 `runtime-project.json` 资源已生成,主窗口通过异步 `QProcess` 和阶段进度显示导出过程 |
|
|
|
- 导出入口改为选择目标父目录并输入文件夹名称,最终生成“文件夹/同名 exe + 运行库”的完整目录,覆盖已有目录前需要确认 |
|
|
|
- 用户运行版启动后隐藏编程器编辑器,直接进入离线仿真;运行监控顶部提供离线/真机切换、PLC 配置、断开和退出程序操作 |
|
|
|
- 修复用户运行版未完成 PLC 首次读取时切换真机导致运行监控窗口隐藏、应用无可见窗口而退出的问题;现在保持离线运行并在运行监控窗口提示先配置 PLC 并完成首次读取 |
|
|
|
|
|
|
|
## 本轮变更结论 |
|
|
|
|
|
|
|
@@ -64,8 +70,12 @@ |
|
|
|
- 2026-08-25 执行 `run_qt_tests.ps1 -Configuration Release -Suite All`,12 个 Release 功能测试目标和性能测试全部通过 |
|
|
|
- 2026-08-25 执行 `run_qt_tests.ps1 -Configuration Release -Suite Functional`,包含命令输入测试的 12 个功能测试目标全部通过 |
|
|
|
- 2026-08-25 重新执行 qmake 和 `mingw32-make -j2`,Release 主程序 `build/release/release/integrated_platform.exe` 链接通过 |
|
|
|
- 2026-08-26 修复用户运行版未配置 PLC 切换真机的窗口生命周期问题,Release 主程序 qmake 和 `mingw32-make -j2` 编译通过,`git diff --check` 通过 |
|
|
|
- 2026-08-26 使用 `json/motor_forward_reverse.json` 重新生成 `build/package/motor_forward_reverse_fixed`,运行版启动后进程保持运行,确认补丁已编入用户运行版入口 |
|
|
|
- 2026-08-25 修复用户运行程序导出资源错配:使用合法 `1.0` 工程夹具验证 qrc 指向 JSON、运行版 exe 启动不再出现 `illegal value`;Release 主程序构建、All 测试及普通/运行版打包均通过 |
|
|
|
- 2026-08-25 新增数据监控停靠面板和离线初始值生命周期;Release Functional 测试、主程序 qmake/`mingw32-make -j2` 和新增快照回归通过 |
|
|
|
- 2026-08-25 修复命令输入失焦、零长度连线黑点、删除后 Gap 复用和连续横线插入;Release Functional 测试及主程序构建通过 |
|
|
|
- 2026-08-25 修复双击空网格时补全列表提前弹出;现在仅在用户开始输入后显示补全,并移除未实现的 TON/CTU 提示;Release Functional 测试和主程序构建通过 |
|
|
|
- 2026-08-25 修复已有节点双击无法进入命令输入;新增条件/输出节点替换回归测试,Release Functional 测试、主程序构建和 `git diff --check` 通过 |
|
|
|
- 2026-08-25 修复梯形图整网删除误报断路、网络内部无法启动框选;新增批量网络删除原子性测试,Release Functional 测试、主程序构建和 `git diff --check` 通过 |
|
|
|
- 2026-08-25 新增 Float32 编解码、HMI 双字读写、D3999/D4000 边界、HMI 重叠、自由监控步长/重叠/读写和 Float32 轮询元数据测试;All 套件全部通过 |
|
|
|
@@ -81,7 +91,7 @@ |
|
|
|
|
|
|
|
## 待完成 |
|
|
|
|
|
|
|
1. 代码功能无待完成项;提交前按逻辑完整改动提交当前配置、真机本地推算、Float32 和命令输入功能、测试及文档 |
|
|
|
1. 代码功能无待完成项;提交前按逻辑完整改动提交当前配置、真机本地推算、Float32、命令输入和用户运行程序导出功能、测试及文档 |
|
|
|
2. 现场使用真实 PLC 做一次 Float32 真机验收:读取 D10/D11 原值,写入一个有限 Float32,确认一次双寄存器请求,轮询读回显示正确,恢复原值并再次读回确认 |
|
|
|
3. 现场同时确认 HMI 写入仍正常、本地轨迹随每轮 PLC 缓存刷新、PLC 源 M/D 不被本地梯形图输出改变 |
|
|
|
|
|
|
|
|