一、HMI项目全景:从自动化金字塔到项目交付

大家好,我是老张。在工业自动化这行摸爬滚打了十几年,经手的HMI项目少说也有上百个。今天咱们聊聊HMI项目的全景图——说白了,就是搞清楚三件事:HMI到底是什么?它在自动化系统里站哪个位置?一个项目从想法到量产,到底要走哪些路?

嗯,我刚开始带团队时,发现很多新人上来就画界面、写脚本,结果做到一半才发现需求没对齐、硬件不匹配。所以,先看全景,再动手,这个习惯我一直保留着。

1.1 什么是工业HMI?

HMI,全称Human-Machine Interface,人机界面。别被这个高大上的名字唬住,它其实就是人和机器之间的“翻译官”。

你想想看,机器内部跑的是PLC的梯形图、寄存器地址、Modbus报文——这些东西人看不懂。而人想下达指令、看数据、调参数——机器又听不懂。HMI就是中间那个桥梁。

核心定义:工业HMI是一种用于操作员与自动化设备(PLC、变频器、传感器等)进行交互的软硬件系统。它把机器状态可视化,把人的操作指令翻译给机器。

我个人习惯把HMI分成三类:

  • 本地HMI:挂在设备上的触摸屏,比如西门子KTP系列、威纶通MT系列。我最早做项目时,用的还是单色屏,现在都高清触控了。
  • 上位机HMI:基于PC的组态软件,比如WinCC、Intouch。适合大型产线,数据量大。
  • Web HMI:用浏览器访问,跨平台。这几年越来越火,我在一个远程运维项目里就用过,确实方便。

我的经验:选型时别只看分辨率。我曾经在一个振动大的设备上用了电容屏,结果误触频繁。后来换成电阻屏,问题解决。环境适配比参数好看更重要。

1.2 HMI在自动化金字塔中的位置

搞工业自动化的都知道那个经典的“自动化金字塔”——ISA-95模型。HMI正好卡在中间层,不上不下,但缺了它整个系统就断了。

层级 名称 典型设备 HMI角色
L4 企业层 ERP、MES 数据展示、报表
L3 车间层 SCADA、历史库 集中监控
L2 控制层 HMI、操作员站 人机交互核心
L1 设备层 PLC、变频器 指令下发、状态读取
L0 现场层 传感器、执行器 物理信号

你看,HMI在L2控制层。它向下连接PLC,读取寄存器数据;向上对接SCADA或MES,提供操作界面。说白了,它是操作员和自动化系统之间的“窗口”。

我记得有个项目,客户非要让HMI直接连ERP系统。我劝了半天——不是技术上做不到,而是安全性和实时性都不对。HMI就该干HMI的活,越级操作容易出问题。

避坑指南:我曾经见过一个项目,HMI和PLC之间用了无线通信,结果现场有大型电机启动时,通信频繁中断。后来全部换成屏蔽双绞线,问题才解决。物理层可靠性永远是第一位的。

1.3 项目交付全流程概览

一个完整的HMI项目,从需求到量产,我习惯分成五个阶段。每个阶段都有坑,咱们一个一个说。

阶段一:原型设计

这个阶段的核心是“画草图、对需求”。别急着写代码,先和工艺工程师、操作员聊透。

  • 确定画面数量:主画面、参数设置、报警、历史趋势
  • 确定变量清单:哪些数据要显示?哪些要控制?
  • 确定通信协议:Modbus TCP?Profinet?还是OPC UA?

我一般会用Axure或手绘板先画低保真原型。有一次客户看了原型才说“这个按钮位置不对,操作员够不着”——嗯,改原型比改代码快多了。

阶段二:UI设计

这里讲究的是“工业美学”——不是好看,是好用。

  • 配色:别用花里胡哨的颜色。我习惯用深色背景+高亮警示色
  • 字体:至少16px,操作员可能戴着护目镜、隔着两米看屏幕
  • 布局:常用按钮在右下角,紧急停止在左上角(符合人体工程学)

我的习惯:UI设计时,我会把操作员可能戴手套这个因素考虑进去。按钮至少40x40像素,间距不小于10像素。别问我怎么知道的——现场改过三次。

阶段三:开发实现

这个阶段就是写脚本、配变量、连通信。我用过威纶通的EBPro、西门子的TIA Portal、还有基于C#的自主开发。

举个例子,一个简单的启动按钮脚本:

// 伪代码示例
if (启动按钮按下) {
    PLC写入地址: M0.0 = 1
    延时500ms
    读取反馈: M0.1 == 1 ? "启动成功" : "启动失败"
}

注意:一定要加超时和异常处理。我曾经有个项目没做超时判断,结果PLC死机,HMI一直卡在“启动中”……操作员差点把屏幕砸了。

阶段四:测试验证

测试不是走过场。我要求团队至少做三轮:

  1. 功能测试:每个按钮、每个画面、每个报警都点一遍
  2. 通信测试:断网重连、数据刷新频率、多设备并发
  3. 环境测试:高温、高湿、电磁干扰(有条件就做)

我记得有一次在客户现场,HMI在常温下一切正常,但车间温度到45度时,屏幕开始闪烁。后来发现是液晶屏的耐温范围不够——嗯,从此我选型时必看工业级温度范围。

阶段五:量产交付

到了这一步,要交付的东西可不止一个程序文件:

  • HMI工程源文件(.emtp、.ap12等)
  • 变量地址表(Excel格式,带注释)
  • 操作手册(图文并茂,最好有故障排查指南)
  • 备份文件(SD卡或U盘,贴标签)

重要提醒:量产前一定要做“恢复出厂设置”测试。我曾经交付了50台设备,结果客户误操作恢复出厂,所有配置都没了……后来我在程序里加了密码保护和配置导出功能。

1.4 小结:全景思维很重要

好了,这一章咱们把HMI的全景捋了一遍。你想想看,从自动化金字塔的定位,到项目交付的五步流程,其实核心就一句话:HMI不是画界面,而是解决人和机器之间的沟通问题。

下一章,我会详细讲原型设计阶段——怎么和客户对需求、怎么画低保真原型、怎么避免“需求一天三变”的坑。咱们下章见。

本章核心要点:

  • HMI是人与机器的翻译官,不是单纯的显示屏
  • HMI位于ISA-95模型的L2控制层,向下连PLC,向上接SCADA
  • 项目交付五阶段:原型→UI→开发→测试→量产,缺一不可
  • 每个阶段都有坑,提前规避比事后补救强十倍

公众号:蓝海资料掘金营,微信deep3321