在工业自动化项目中,我们常常需要将PLC的数据上传至更高级别的系统,例如MES(制造执行系统)或SCADA(数据采集与监控系统)。如果仅仅依靠传统的Modbus TCP通讯,在应对复杂数据结构建模、跨平台兼容性以及安全性等需求时,往往会感到力不从心。
这时,OPC UA的价值就凸显出来了。它并非仅仅是“另一种协议”,与Modbus TCP的简单类比无法概括其全部。OPC UA本质上是一个带有丰富语义信息的安全数据框架。在西门子等品牌的生态中,OPC技术已被广泛应用。为了更好地理解OPC UA的优势,我们先将其与大家更熟悉的Modbus TCP进行一番对比。

从上表可以直观看出,OPC UA在数据模型、安全性、平台兼容性等方面提供了更为现代和强大的支持,这使得它在复杂的工业自动化系统集成中扮演着越来越重要的角色。
那么,在汇川的H5U或Easy系列PLC中,其对OPC UA的支持能力具体如何呢?
- 服务器角色:PLC可以作为OPC UA服务器运行,主动对外提供数据访问服务。
- 安全策略:支持
Basic128Rsa15、Basic256、Basic256Sha256 等多种安全策略。
- 用户认证:提供匿名访问、用户名密码认证以及证书认证等多种方式。
- 数据订阅:支持监视项(MonitoredItem)和订阅(Subscription),便于客户端高效获取数据变更。
- 方法调用:支持远程方法调用(RMC),客户端可以远程执行PLC中定义的功能块。
聊聊OPC UA中的“安全策略”
这里提到的“安全策略”,核心作用是对传输的数据进行加密。通讯的收发双方必须采用同一种加密方式,发送方加密传输,接收方再用相同方式解密,从而得到原始数据。
这个过程是不是有点像谍战片里的情节?双方约定用同一本书作为“密码母本”(即加密算法)。发送方将信息转化为书本中特定页、行、字的坐标代码发出;接收方收到后,用同样的书按规则解码,就能还原信息。当然,在PLC通讯里我们不是搞谍战,但原理有相通之处,比如这里会用到对称加密算法。
举个简单的例子帮你理解:假设我们要发送的原始数据是 01100101。在发送前,我们用一个双方共享的密钥 11001100 与原始数据进行“异或”运算。
源数据: 01100101
秘钥: 11001100
异或运算: ---------
密文: 10101001
运算后得到的密文 10101001 被发送出去。对方收到密文后,使用相同的密钥 11001100 再次与密文进行“异或”运算。
密文: 10101001
秘钥: 11001100
异或运算: ---------
结果: 01100101
你看,得到的结果 01100101 正是我们最初的源数据。这种加、解密使用同一把密钥的方式,就称为对称加密。它是保障数据在TCP/IP网络上传输安全的基础手段之一。工业中实际采用的加密算法(如AES)远比这个例子复杂,但核心思想类似。如果你对DES、3DES、AES等具体算法感兴趣,可以自行深入查阅相关资料。
必须掌握的OPC UA服务器启停逻辑
配置和使用OPC UA时,理解其服务器的启停逻辑至关重要,这能避免很多不必要的困惑。汇川官方提供了清晰的状态说明,我们可以通过下面的状态图来直观理解:

结合图表,我们可以将核心逻辑梳理为以下六条规则:
- PLC切换至Stop状态后,OPC UA服务器将保持运行状态。只要PLC工程不变,无论你执行Stop/Run PLC操作,还是给PLC重新上电,都不会改变OPC UA服务器的运行状态。
- 当OPC UA服务器正在运行时,如果你修改了PLC工程,并在工程中禁用了OPC UA服务器功能,然后将工程下载到PLC中。此时,无论是Stop/Run PLC还是重新上电,OPC UA服务器都会关闭。
- 当OPC UA服务器正在运行时,如果你在PLC程序中执行了专门的
OPCUA_Server_Shutdown 指令,服务器会立即关闭。
- 当OPC UA服务器处于关闭状态,但PLC内部的工程配置中OPC UA服务器是“激活”的,此时Stop/Run PLC或重新上电后,OPC UA服务器会开启。
- 当OPC UA服务器处于关闭状态,你通过修改工程,激活了OPC UA服务器配置并下载到PLC后,同样地,Stop/Run PLC或重新上电后,服务器会开启。
- 当OPC UA服务器处于关闭状态,且PLC内部工程配置中OPC UA服务器就是“禁用”的,那么Stop/Run PLC或重新上电不会改变服务器的关闭状态。
重要提示:
- 当OPC UA服务器在运行时,如果你通过后台工具或系统变量修改了PLC的IP地址,需要重新RUN/STOP CPU一次或者断电重启,新的IP地址才能在OPC UA服务器上生效。
- 当PLC首次运行OPC UA服务器,或者PLC修改IP地址后首次运行OPC UA服务器时,系统需要重新生成服务器证书文件,这个过程大约需要等待1到2秒。
理解这些底层逻辑,能帮助我们在实际配置和故障排查时更加得心应手。关于如何在汇川PLC编程软件(AutoShop)中一步步进行OPC UA服务器的具体参数配置,我们将在后续的演示中继续展开。
|