OPC UA

工业以太网协议

定义

OPC UA(Open Platform Communications Unified Architecture)是 OPC 基金会制定的工业以太网协议,用于数控机床、机器人、AGV、SCADA 等工业设备与上位机、云平台的数据交换。相比 OPC DA,OPC UA 支持跨平台、安全加密、信息模型,是工业物联网(IIoT)的主流协议。

核心特性

OPC UA 基于 TCP 或 HTTPS,支持 Windows、Linux、嵌入式。信息模型采用节点(Node)、引用(Reference)、对象(Object)、变量(Variable)等,可描述设备结构、类型、关系。支持安全通道(加密、签名)、用户认证。支持客户端/服务器与 PubSub 两种模式。工业设备(PLC、机器人、数控)可直接提供 OPC UA 服务器,或通过网关将 Modbus、EtherNet/IP 等转换为 OPC UA。

应用场景

SCADA、DCS、MES 数据采集;云平台、数字孪生设备接入;工业 4.0、IIoT 互联标准。OPC UA 与 MQTT 的融合(PubSub over MQTT)可简化云边数据交换。选型时需确认设备或网关的 OPC UA 支持情况、信息模型规范(如 Companion Specs)。

安全通道与地址空间

节点图比扁平点表多一层语义

统一架构里,设备数据放在地址空间中。每个节点有标识、类型和访问权限,节点之间用引用说明“这是某台机床的一个轴”或“这个报警属于某次作业”。客户端可以沿着引用浏览,也可以直接按已知标识读取变量。和只给寄存器号的协议相比,多出来的是类型和结构:同一个数值能标明单位、范围和它在设备里的位置。结构若没有人维护,浏览出来的仍是一堆无名变量,语义优势并不自动出现。

传输可以走二进制的长连接,也可以走更易穿过代理的安全超文本。会话建立之后才有订阅。订阅按发布间隔把变化过的数据打成通知,间隔和采样间隔是两层:采样决定服务器多久看一次底层值,发布决定多久送给客户端。只把发布放慢、采样仍很快,服务器内存里会堆变化;两个都放得很慢,短脉冲报警会丢失。

加密和用户令牌要成对配置

安全策略决定报文是否签名、是否加密,用户令牌决定是匿名、用户名还是证书。两端必须同时接受同一对组合。只在服务器上勾选最高安全等级,客户端证书却没导入信任列表,会话会在打开前失败,现象常常被误认为网络不通。证书还有有效期和撤销列表,工控机长期不联网时,过期证书不会自动更新,某一次重启后全部读数中断。

它适合控制器、机床或机器人已经提供服务器,且采集侧需要在不同操作系统上长期读取的场合。老设备没有服务器时,由网关把其他现场协议转成节点,网关上的命名要稳定,不能随重启改变标识。需要穿过仅开放网页端口的网络时,再考虑基于安全超文本的端点,并单独评估代理是否缓冲了本该实时的通知。

浏览风暴与订阅间隔

联调时最容易从根节点无限制浏览。地址空间很大时,一次浏览会占满控制器的通信任务,控制周期受影响。客户端应缓存已经确认的节点标识,正常运行期间只订阅这些变量。第二是安全策略留着“无”,调试完成后没有关掉,任何能到达端口的主机都能读甚至写设定值。第三是把订阅间隔当成控制周期,用它去做闭环,间隔抖动会让执行机构来回晃。

从 OPC DA 迁移时,质量码和旧系统的质量枚举不会逐字对应,画面逻辑要重做。网关若同时把 EtherNet/IP 对象折叠成变量,折叠规则要写进点表,避免同一信号出现两个节点。写操作应限制在单独的用户令牌上,并把会话超时设短,防止一台离线的维护笔记本一直占着写权限。

相关术语

返回硬件类知识库