综合平台编程器项目的远程存储
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

3.0 KiB

项目长期约定

  • 项目作者:suyu

关键文件索引

  • C++ 代码规范:docs/C++代码规范.md
  • 需求参考文档:docs/0_综合平台编程器_修改.md
  • 推荐开发顺序:docs/开发顺序.md
  • Qt 应用源码根目录:app/
  • 本机构建输出目录:build/(不纳入 Git)。
  • Qt 一键构建运行脚本:scripts/build_and_run_qt.ps1
  • XDH-60T4-E 硬件与接线要点:docs/XDH-60T4-E硬件与接线要点.md
  • XDH-60T4-E 指令与 Modbus 要点:docs/XDH-60T4-E指令与Modbus要点.md
  • PLC 官方手册:docs/pdf/
  • 当前开发进度和未完成事项:docs/ai/handoff.md(创建后每次新会话优先阅读;不要把动态进度写入本文件)。
  • 架构、模块边界和数据流:docs/architecture.md(创建后优先阅读)。
  • 查阅资料时,先读取 UTF-8 编码的 Markdown 文档;只有 Markdown 中找不到所需信息时,才查阅 docs/pdf/ 内的 PDF 手册。

技术栈与构建

  • 使用 C++、Qt 5.15.2 和 Qt Widgets;UI 默认使用 Qt Designer 的 .ui 文件。
  • 使用 qmake,不使用 CMake。
  • Qt MinGW 套件根目录:D:\Qt5.15.2\5.15.2\mingw81_64
  • 构建前在 PowerShell 7 中设置 Qt 工具链路径;MinGW 工具目录为常见安装位置,如实际安装位置不同,以本机路径为准:
$env:QTDIR = 'D:\Qt5.15.2\5.15.2\mingw81_64'
$env:Path = "$env:QTDIR\bin;D:\Qt5.15.2\Tools\mingw810_64\bin;$env:Path"
qmake <项目文件>.pro
mingw32-make -j2
  • 优先在独立构建目录执行 qmake 和 mingw32-make,不要将生成物混入源代码目录。
  • 文件读写、终端查看和源代码统一使用 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 提交约定

  • 每次提交只包含一个逻辑完整的改动;提交前必须完成对应的构建或测试验证。
  • 提交信息使用 类型: 简短说明 格式,例如 feat: 建立 Qt 工程基线
  • 类型使用 featfixdocstestrefactorchore

架构与运行模式

  • 保持 UI、领域、服务和基础设施分层;业务逻辑不得堆入 MainWindow 或 Qt 槽函数。
  • HMI 只绑定 M/D 寄存器仓库,不得直接读写串口;串口通信必须异步,不能阻塞 UI。
  • M 区和 D 区的项目可用地址均为 0~4000;Modbus 代码使用从 0 开始的原始地址。
  • 离线模式使用虚拟 M/D,并运行软件逻辑执行器。
  • 真机模式使用 PLC 的真实 M/D,软件逻辑执行器必须停止;切换时先读取 PLC 数据,不自动写入离线虚拟值。
  • 真机联动设备时 PLC 必须处于 RUN;STOP 仅用于安全通信验证。

注意

  • 生成注释的文本结尾别加逗号