什么是 OPC?
OPC (OLE for Process Control)是嵌入式过程控制标准,规范以OLE/DCOM为技术基础,是用于服务器/客户机连接的统一而开放的接口标准和技术规范。OLE是微软为 Windows系统、应用程序间的数据交换而开发的技术,是 Object Linking and Embedding的缩写。 OPC 通讯中有服务器与客户机的概念
什么是 OPC UA?
标准 OPC 仅支持 Windows 操作系统。为了应对这一限制条件,OPC Foundation 研发出了 OPC UA(OPC 统一架构)标准。
OPC UA 标准并不特定于某个平台,并且针对高性能应用使用优化的基于 TCP 的二进制协议。OPC UA 支持诸如 Window、Linux、Apple OS X、实时操作系统或移动操作系统(Android 或 iOS)。
OPC UA 目前支持以下传输机制和协议:
通过 TCP/IP,将消息作为二进制流直接传输 (S7-1200 支持)
通过 TCP/IP 和 HTTP 采用 XML 形式传送消息。由于这种传输机制仅支持慢速传输,因此极少使用
image-20240527142509636
二
S7-1200 支持的 OPC UA 功能
服务器:
S7-1200 CPU 固件版本 V4.4 及以上版本均配备 OPC UA 服务器,除了标准的 S7-1200 CPU 外,还包括 S7-1200F 系列 CPU。
浏览
读/写
订阅
方法(仅 V4.5 支持)
伴随规范
固件版本 V4.5 开始支持结构化数据类型(结构和数组)、诊断功能。 客户端:
S7-1200 CPU 目前不支持作为客户端使用。 S7-1200 OPC UA 各版本兼容性
进入“设备视图”,选中CPU,CPU属性 →OPC UA →服务器,勾选“激活OPC UA服务器”
image-20240527144521841
设置服务器相关参数,可以设置端口号、最大会话超时时间,最大OPC UA会话数量等参数
image-20240527144618830端口:设置服务器的端口号,默认4840,允许范围:1024-49151之间 最大会话超时时间:指定在不进行数据交换的情况下 OPC UA 服务器关闭会话之前的最大时长。默认30s,允许范围:1-600000s之间 最大OPC UA会话数量:OPC UA 服务器启动并同时操作的最大会话数。最大会话数取决于 CPU 的性能。截至到V4.5版本,S7-1200最大会话数是10个(V4.4版本为5个)。 最短采样间隔:设置 OPC UA 服务器记录 CPU 变量值并与以前值相比较检查是否发生变更的时间间隔。 最短发布间隔:变量值发生改变时服务器通过新值向客户端发送消息的时间间隔。 已监视项的最大数量:指定该 CPU 的 OPC UA 服务器可同时监视值更改的最大元素数量。监视会占用资源。可监视元素的最大数量取决于所用的 CPU。
设置安全策略和服务器证书,可根据需求设置如下安全策略
image-20240527145141879注:调试初期可以考虑使用默认的“无安全设置”,一旦调试结束,建议只选择与您的设备或工厂的安全概念兼容的安全策略,如果可能,请使用"Basic256Sha256"设置,并禁用所有其它安全策略。
image-20240527145309344激活 OPC UA 服务器并确认安全提示后,STEP 7 会自动为服务器生成自签署证书,用户也可以生成由证书颁发机构签名的CA证书;
设置OPC UA客户端访问身份验证,可选择访客认证及用户名和密码认证
image-20240527145502419启用访客认证:用户无需证明其身份(匿名访问)。OPC UA 服务器不会检查客户端用户的授权。启用用户名和密码认证:用户必须证明其身份(非匿名访问)。OPC UA 服务器将检查客户端用户是否具备访问服务器的权限。并通过用户名和正确的密码进行身份验证,最多可添加 21 个用户。
设置OPC UA运行许可证,S7-1200所有CPU所使用的许可证类型都是一种:SIMATIC OPC UA S7-1200 Basic
image-20240527145840963注:无需购买