1. PLCnext技术概览与集成工程定位
PLCnext 是菲尼克斯电气推出的开放式自动化控制平台。它并不是某一款单独的 PLC,而是一套由硬件控制器、实时 Runtime、工程组态软件和开放接口共同构成的体系。理解这套体系的关键,在于分清“硬件”“运行时”“工程工具”和“上层应用”四个层次,以及 HMI 在其中扮演的角色。本章先建立整体地图,为后续的硬件选型、变量通信、HMI 组态和联调打下基础。
一、PLCnext 控制器家族与典型硬件
PLCnext 控制器按性能和形态大致可分为三类。入门级以 AXC F 2152 为代表,采用 DIN 导轨安装,双网口设计,适合中小型设备控制与教学实验;中端型号如 AXC F 3152、AXC F 2152 的扩展版本,提供更强的处理能力和更多本地 I/O 扩展;高性能型号如 AXC F 4x52 系列,面向复杂运动控制与大数据量场景。此外还有基于 PLCnext 技术的模块化控制器和边缘计算网关,用于把控制与数据上云结合。
以 AXC F 2152 为例,它的典型配置是:双核 ARM 处理器、约 512 MB 内存、两个以太网口(可分别用于工程下载与设备网络)、一个 USB 接口、支持 SD 卡扩展存储,并通过 Axioline F 总线连接本地 I/O 模块。两个网口的意义在于可以把“编程/调试网络”和“现场设备网络”在物理上分开,减少广播风暴和误操作对控制网络的影响。这一点在集成工程中非常重要,因为 HMI 通常接在现场网络一侧,而工程师笔记本接在调试网络一侧。
二、PLCnext Engineer 与 Runtime 架构
PLCnext Engineer 是官方工程组态软件,用于硬件配置、IEC 61131-3 程序编写、变量管理、HMI 画面组态和下载调试。它把控制逻辑与可视化放在同一个工程中管理,变量只需定义一次,PLC 程序与 HMI 画面即可共享,这大幅减少了传统方案中“PLC 变量表”和“HMI 变量表”两套维护的工作量。
Runtime 是运行在控制器上的实时执行环境。它同时支持 IEC 61131-3 标准程序(LD、FBD、ST、SFC 等)和高级语言应用(C++、C#、Python 等通过 SDK 或 App 方式运行)。标准程序运行在实时核上,保证确定性周期;高级语言应用运行在 Linux 用户空间,适合数据处理、协议转换和边缘计算。两者通过 GDS(Global Data Space)和共享内存交换数据。理解“实时任务”与“非实时应用”的边界,是后续做数据采集和上云时避免影响控制周期的前提。
三、HMI 在自动化系统中的角色
HMI(人机界面)是操作员与设备之间的交互窗口。它承担三类任务:一是状态显示,把 PLC 内部的运行状态、测量值、报警信息以图形和数字呈现;二是操作输入,把按钮、设定值、模式切换等指令写回 PLC;三是报警与记录,对异常事件进行提示、确认和归档。在 PLCnext 集成工程中,HMI 不是孤立设备,而是通过变量与 Runtime 建立实时数据通道。常见方式包括:同一工程内的 HMI 目标直接共享变量、通过 OPC UA 服务器交换数据、或通过 Modbus TCP 等标准协议对接第三方触摸屏。
需要特别注意的是,HMI 的刷新周期通常远慢于 PLC 扫描周期。PLC 可能每 10 ms 扫描一次,而 HMI 画面每 200~500 ms 刷新一次。因此,涉及安全联锁和高速逻辑的判断必须放在 PLC 程序中完成,HMI 只做显示和人工干预,不能把关键逻辑放在画面脚本里。
四、集成工程的整体工作流
一个典型的 PLCnext 集成工程按以下顺序推进:
- 需求与 I/O 清单:明确控制对象、输入输出点数、通信对象和 HMI 画面数量。例如一台小型包装机,数字输入 16 点、数字输出 12 点、模拟输入 4 路、HMI 画面 6 页。
- 硬件选型与网络规划:根据 I/O 点数和性能要求选择 AXC F 2152 及 Axioline F 模块,规划两个网口的用途,确定 HMI 的 IP 地址段。
- 新建工程与硬件组态:在 PLCnext Engineer 中新建项目,添加控制器和 I/O 模块,设置 IP 参数和总线配置。
- 变量定义与程序编写:建立全局变量表,编写 IEC 61131-3 程序,完成逻辑控制、模拟量处理和报警判断。
- HMI 画面组态:创建画面,绑定变量,设计状态指示、参数输入和报警视图。
- 下载与联调:分别下载 PLC 和 HMI 工程,使用在线监视、变量强制和画面操作验证功能。
- 归档与交付:保存完整工程、变量表和接线图,形成可维护的交付资料。
五、一个最小集成示例的变量规划
以 AXC F 2152 控制一台小型输送机为例,假设需要 HMI 显示运行状态并允许启停。可以规划如下变量(示例参数,非实测结果):
| 变量名 | 数据类型 | 方向 | 用途 |
|---|---|---|---|
| StartCmd | BOOL | HMI → PLC | 启动按钮 |
| StopCmd | BOOL | HMI → PLC | 停止按钮 |
| RunStatus | BOOL | PLC → HMI | 运行指示 |
| MotorSpeed | INT | HMI ↔ PLC | 速度设定与显示 |
| AlarmActive | BOOL | PLC → HMI | 报警指示 |
这五个变量足以构成一个可运行的最小闭环:HMI 写 StartCmd,PLC 程序置位 RunStatus 并驱动输出,HMI 读取 RunStatus 点亮指示灯;同时 HMI 可修改 MotorSpeed,PLC 将其转换为模拟量输出。后续章节会在此基础上逐步加入模拟量处理、报警归档和 OPC UA 通信。