2. 工业HMI基础

工业HMI(Human Machine Interface,人机界面)是操作人员与机器设备、产线控制系统之间进行信息交互的窗口。它把PLC内部的变量、状态、报警、配方和趋势,以图形、数值、按钮、指示灯等形式呈现出来,同时把操作员的指令安全地写回控制器。理解HMI,不能只把它当作“画界面的工具”,而应把它看作控制系统信息链路上的一个关键节点:向下连接实时控制层,向上承载操作决策层。

一、核心原理:HMI在控制系统中的位置

在典型工业自动化架构中,HMI通常位于现场设备层与监控管理层之间。PLC负责逻辑运算与实时控制,HMI负责可视化与操作输入,SCADA负责更大范围的监控与数据采集,MES/ERP则负责生产管理。HMI的核心任务可以概括为四件事:显示(把过程值、设备状态可视化)、操作(按钮、开关、设定值下发)、报警(异常状态提示与确认)、记录(趋势、配方、审计追踪)。

从数据流角度看,HMI与控制器之间通过通信协议交换变量。以TwinCAT HMI为例,它通过ADS、OPC UA等通道与TwinCAT PLC或第三方控制器通信,界面上的每个控件都绑定到具体变量。变量更新后,界面按刷新周期重绘;操作员点击按钮后,写入请求经通信层到达PLC,再由PLC逻辑决定是否执行。这个“读—显示—写—反馈”的闭环,是HMI可靠性的基础。

工业HMI信息链路:从现场设备到操作决策 现场设备层 传感器 / 执行器 / 电机 阀岛 / 变频器 / 机器人 控制层 TwinCAT PLC / 运动控制 逻辑运算 / 实时任务 HMI层 TwinCAT HMI / 触摸屏 显示 / 操作 / 报警 / 趋势 管理层 SCADA / MES 数据采集 / 报表 HMI 核心交互闭环 读取变量 ADS / OPC UA 界面显示 数值 / 状态 / 报警 操作输入 按钮 / 设定值 写回PLC 执行 / 反馈 反馈回路:PLC状态更新后再次刷新界面

二、工业现场典型应用场景

HMI的应用场景非常广泛,不同场景对界面的实时性、安全性和信息密度要求差异很大。常见场景包括:

  • 单机设备操作面板:如包装机、注塑机、数控机床的本地触摸屏,强调按钮响应快、报警醒目、参数设置简单。
  • 产线集中监控:多条设备通过总线联网,HMI以总览图、设备状态灯、产量计数呈现整线运行情况。
  • 过程工业控制:化工、水处理、制药等行业,HMI需要展示流程图、趋势曲线、PID参数和批次配方。
  • 远程运维与移动访问:通过Web技术实现跨地域访问,工程师可在办公室或移动终端查看设备状态。
  • 安全与报警管理:急停、安全门、超温超压等信号必须优先显示,并记录确认时间和操作人。
在工业现场,HMI的第一原则是“安全优先、信息清晰”。任何花哨的动画如果影响操作员判断,都应被舍弃。报警颜色、按钮尺寸、确认步骤都要符合现场操作习惯。

三、常见HMI技术对比

工业HMI技术经历了从专用硬件触摸屏到PC组态软件,再到基于Web的现代HMI平台的发展。下表对几种常见方案进行对比:

技术方案 典型代表 优点 局限 适用场景
专用触摸屏 西门子KTP、威纶通 稳定、抗干扰、成本低 画面能力有限、扩展性差 单机设备、小型产线
PC组态软件 WinCC、InTouch 功能强大、脚本灵活 授权费用高、部署较重 中大型SCADA系统
Web HMI TwinCAT HMI、Ignition 跨平台、易远程、现代UI 依赖网络质量、需浏览器兼容 远程监控、多终端访问
开源/自研方案 Node-RED + 自定义前端 灵活、可深度定制 稳定性与维护成本需自担 研发验证、特殊需求

四、TwinCAT HMI的优势与实操要点

TwinCAT HMI是倍福基于Web技术推出的HMI开发框架,它采用HTML5、JavaScript和CSS构建界面,通过TwinCAT HMI Server与PLC通信。其核心优势体现在:

  1. 与TwinCAT生态无缝集成:可直接绑定PLC变量,支持ADS、OPC UA,减少通信配置工作量。
  2. 基于Web标准:界面在浏览器中运行,天然支持远程访问、多终端适配和响应式布局。
  3. 可扩展的控件体系:内置按钮、趋势、报警、配方等控件,也支持自定义HTML/JS控件。
  4. 工程化与版本管理:项目以文件形式组织,便于Git等工具进行版本控制和团队协作。
  5. 灵活部署:可运行在Windows、Linux或嵌入式设备上,适应不同硬件平台。

在TwinCAT HMI中,一个典型的变量绑定配置如下所示:

<!-- TwinCAT HMI 变量绑定示例 -->
<TcHmiControl Name="txtTemperature">
  <TcHmiBinding Symbol="PLC1.MAIN.fTemperature" />
</TcHmiControl>

<!-- 按钮写入示例 -->
<TcHmiButton Text="启动">
  <TcHmiEvent Name="onPressed">
    <TcHmiAction Symbol="PLC1.MAIN.bStart" Value="true" />
  </TcHmiEvent>
</TcHmiButton>
常见误区:把HMI当成“动画展示页”,忽略变量刷新周期与PLC扫描周期的匹配。如果HMI刷新过快,会造成通信负载升高;刷新过慢,则操作员看到的状态滞后。建议根据工艺要求设置合理的刷新周期,例如状态量200ms、模拟量500ms、趋势1s。

五、案例与复盘:从触摸屏迁移到TwinCAT HMI

某包装产线原使用专用触摸屏,画面固定、无法远程查看。迁移到TwinCAT HMI后,工程师将原有按钮、指示灯、报警列表重新设计为Web页面,并通过OPC UA与PLC通信。迁移过程中遇到两个问题:一是浏览器缓存导致旧画面未更新,通过版本号参数解决;二是移动端触摸按钮过小,通过响应式CSS调整尺寸。复盘经验是:先梳理变量清单,再设计画面结构,最后配置通信与权限。变量命名要统一规范,报警分级要明确,操作权限要按角色分配。

总之,工业HMI是连接人与机器的桥梁。理解其基本原理、现场场景和技术差异,才能在实际项目中选对方案、做好设计。TwinCAT HMI凭借Web化、生态集成和工程化优势,为现代工业界面开发提供了高效路径。