阅读来源:如何开发工业级 Qt 桌面应用 —— 水泵监控 HMI 系统

一、核心定位:AI 辅助的工业级监控应用开发

这套方案用 Vibe Coding 模式,帮你用 AI 辅助,完整走完工业级 HMI(人机界面)应用从 0 到 1 的开发闭环:从零开发一个水泵监控系统,支持 Modbus 通信、实时数据读取、压力趋势图、超阈值报警、故障日志,全程用免费模拟软件代替真实工控硬件,不用买任何设备就能体验工业开发的完整流程。
在这个模式下,开发者的角色从「代码撰写者」转变为「产品架构师」:

  • 你:负责描述需求、设计功能、验收效果

  • AI:负责把自然语言需求转化为 Qt 代码,处理 Modbus 通信、图表绘制这些底层细节

  • Qt:负责跨平台编译、提供工业协议和图表能力

二、工业开发核心概念

2.1 上位机与下位机

工业自动化的核心是上下位机的协作:

组件 角色 作用
下位机 现场的手和脚 PLC / 传感器,直接和物理设备交互,读取传感器数据、控制设备动作
上位机 控制室的眼睛和大脑 运行在 PC / 工控机上的 HMI 软件,也就是我们要开发的监控系统,负责数据展示、报警、日志、远程控制

它们通过工业通信协议通信,最常用的就是 Modbus 协议。

2.2 Modbus 协议

Modbus 是工业通信的「普通话」,定义了上下位机的通信规则:

  • 寄存器:下位机存储数据的「格子」,每个格子有地址,比如地址 0 存压力,地址 1 存温度

  • 读写操作:上位机可以读寄存器获取数据,或者写寄存器发送控制指令

  • 两种变体

变体 传输方式 适用场景
Modbus RTU 串口(RS-485/RS-232) 短距离、设备直连
Modbus TCP 以太网(TCP/IP) 远距离、网络通信

2.3 为什么选择 Qt?

Qt 是工业软件开发的首选框架,工厂、医院的监控界面大多用它开发:

优势 说明
跨平台 一套代码编译到 Windows/Linux/ 嵌入式设备
内置工业协议 Qt Serial Bus 原生支持 Modbus,不用第三方库
专业图表 Qt Charts 提供工业级实时图表,支持高频刷新
高性能 C++ 底层,适合实时数据处理,稳定可靠
成熟稳定 30 年历史,工业领域充分验证

三、开发环境与项目初始化

3.1 工具准备

  • Qt 6.5+ 环境:需要勾选 Qt Serial Bus、Qt Charts、Qt Sql 模块

  • Modbus Slave:免费的模拟软件,用来模拟下位机(虚拟水泵)

  • AI 编程助手:Cursor/Trae/Claude Code,通过自然语言指挥开发

3.2 模拟下位机配置

不用真实硬件,用软件模拟即可:

  1. 安装 Modbus Slave,配置 Modbus TCP 连接,监听本机 502 端口

  2. 设置寄存器数据:地址 0 存压力、地址 1 存温度、地址 2 存水泵状态

  3. 可以开启自动随机变化,模拟真实传感器的数据波动

3.3 项目初始化

让 AI 帮你快速搭建项目:

  1. 创建 Qt Widgets 项目,在项目配置中添加 serialbus、charts、sql 模块

  2. 让 AI 帮你生成头文件,声明 Modbus 客户端、定时器、图表、数据库这些核心成员

  3. 配置 Modbus TCP 连接,连接到本地的模拟下位机

四、AI 迭代开发流程

用自然语言和 AI 协作,逐个实现功能,不用自己处理底层细节:

4.1 实时数据读取

让 AI 帮你实现定时读取逻辑:

  • 定时器每秒触发一次,向 Modbus 下位机发送读取请求

  • 异步读取寄存器数据,解析后换算成实际的压力、温度值

  • 更新界面的数值显示,让操作员实时看到设备状态

4.2 实时趋势图

让 AI 帮你实现动态图表:

  • 初始化 Qt Charts 折线图,X 轴为时间轴,Y 轴为压力范围

  • 每次读取到新数据,追加到折线图,自动清理超过 60 秒的旧数据

  • 关闭图表动画,避免高频刷新导致界面卡顿,这是工业 HMI 的常见经验

4.3 报警与日志系统

让 AI 帮你实现监控能力:

  • 超阈值检测:压力超过设定值时,界面变红警示,弹出报警弹窗

  • 故障日志:把报警事件记录到 SQLite 数据库,同时在界面展示历史日志

  • 状态恢复:压力正常后自动重置界面状态

4.4 设备控制

让 AI 帮你实现远程控制:

  • 实现启停水泵的按钮,点击时通过 Modbus 写寄存器,向下位机发送控制指令

  • 同步更新界面状态,让操作员知道当前设备的运行状态

五、打包与部署

开发完成后,把应用打包成独立的安装包,部署到工控机:

  1. 单文件打包:用 windeployqt/macdeployqt 工具,把 Qt 依赖一起打包

  2. 安装包制作:用 Qt Installer Framework 制作标准的安装程序,方便现场部署

  3. 跨平台部署:一套代码可以编译到 Windows/Linux 等不同的工控平台

六、总结

Qt 是工业 HMI 开发的最优方案,它兼顾了性能、稳定性和跨平台能力,配合 AI 辅助开发,你不用死磕 Modbus 协议、Qt API 这些底层细节,只需要把你的需求用自然语言告诉 AI,就能快速把想法变成工业级的监控应用。
这个开发流程可以复用在任何工业监控项目中,不管是水泵监控、温度监控还是设备管理,你只需要把精力放在「做什么」上,剩下的技术细节交给 AI 就好,快速完成工业应用的开发。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐