瀏覽代碼

docs: 补充编辑器与运行校验说明

main
suyu 1 月之前
父節點
當前提交
27b32a3ded
共有 2 個檔案被更改,包括 5 行新增2 行删除
  1. +1
    -0
      AGENTS.md
  2. +4
    -2
      docs/architecture.md

+ 1
- 0
AGENTS.md 查看文件

@@ -35,6 +35,7 @@ mingw32-make -j2
- 文件读写、终端查看和源代码统一使用 UTF-8。
- 一键构建并运行 Debug 程序:`pwsh -NoLogo -NoProfile -File .\scripts\build_and_run_qt.ps1`。
- 一键构建并运行 Release 程序:`pwsh -NoLogo -NoProfile -File .\scripts\build_and_run_qt.ps1 -Configuration Release`。
- 打开 ui 文件:` & 'D:\Qt5.15.2\5.15.2\mingw81_64\bin\designer.exe' '.\app\src\ui\main_window.ui'`

## Git 提交约定



+ 4
- 2
docs/architecture.md 查看文件

@@ -75,7 +75,8 @@ main.cpp -> UI + Services + Infrastructure

`services/HmiEditorService` 负责 HMI 页面的控件添加、删除、移动和属性更新,不依赖 Qt 图元。
`ui/HmiEditorWidget` 使用 `QGraphicsScene` 将模型投影为画布项,画布项只保存控件标识,移动结束后
才通过编辑服务提交新位置。保存时由 `Project::validate()` 拒绝缺失必需绑定或绑定区域错误的控件。
才通过编辑服务提交新位置。草稿保存时 `Project::validate()` 只拒绝已填写但区域错误或非法的绑定;
进入离线运行前 `Project::validateForRunning()` 要求必需绑定完整。

`RegisterRepository` 是 HMI、逻辑执行器和运行服务唯一可见的寄存器边界。离线运行使用
`VirtualRegisterRepository`;真机运行后续注入由基础设施层实现的 PLC 缓存仓库。仓库读取的是
@@ -95,7 +96,8 @@ main.cpp -> UI + Services + Infrastructure
线圈表达。该结构是后续软件逻辑执行器的确定性求值契约,不需要通用图遍历或连接表。

`services/LogicEditorService` 负责新增和删除网络、追加串联条件、增加并联条件、设置输出线圈、
修改属性和删除节点。空网络可作为编辑占位;非空网络保存时必须同时具备条件和输出线圈。
修改属性和删除节点。空网络和未完成网络均可作为编辑草稿保存;进入离线运行前,非空网络必须同时
具备条件和输出线圈,且所有节点均已配置。
`ui/LogicEditorWidget` 自动排列左右母线、串联级、并联支路和右侧线圈,不允许自由拖动或手动画线,
也不保存像素坐标。编辑器通过服务提交修改,不访问 HMI、寄存器仓库或 PLC。



Loading…
取消
儲存