使用IOT-Tree接入各种设备转OPC UA Server输出
IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了各种设备接入、数据组织管理、数据分享使用、消息流控制逻辑和人机交互多个方面的功能。当然,你也可以仅仅使用这个软件作为数据采集终端或边缘计算的软件。
这是IOT-Tree Server相关的系列文章,你可以参考其他文章更多了解IOT-Tree能给你带来的好处:
使用IOT-Tree Server通过MC协议连接三菱Q系列PLC
使用IOT-Tree Server通过FINS协议连接欧姆龙CP2E-N系列PLC
系列文章还包含IOT-Tree完成一个具体项目的过程,非常详细,如下:
机房自动化监控手把手分享给你 - 10 项目完成总结
本文介绍的是使用IOT-Tree Server内部OPC UA Server服务,支持项目数据通过OPC UA方式对外提供数据输出。这个功能和Keyware软件类似——IOT Tree本质上也即是一个OPC UA软件。
1 OPC UA介绍
OPC UA(Open Platform Communications Unified Architecture)是一种跨平台的工业通信标准,用于实现设备、系统和服务之间的安全可靠数据交换。它由OPC基金会制定,旨在解决传统OPC(如OPC DA)的局限性,支持现代工业物联网(IIoT)需求。
核心特点
跨平台性:支持Windows、Linux、嵌入式系统等,不依赖特定操作系统。
安全性:内置加密(TLS/SSL)、身份认证(X.509证书)和权限管理。
信息建模:通过地址空间(AddressSpace)描述复杂数据结构,支持自定义对象和变量。
扩展性:可集成实时数据、历史数据、报警和事件等功能。
技术架构
通信协议:支持TCP、HTTP/S及WebSocket,适应不同网络环境。
信息模型:基于节点(Node)和引用(Reference)构建层次化数据模型,兼容OPC Classic和行业标准(如PLCopen、ISA-95)。
服务集:提供发现、读写、订阅等基础服务,以及方法调用等高级功能。
应用场景
工业自动化:连接PLC、传感器与SCADA/MES系统。
智能制造:实现设备互操作和数字孪生。
能源管理:监控电力设备状态和能耗数据。
与传统OPC对比
OPC DA:仅限Windows,依赖COM/DCOM,无内置安全机制。
OPC UA:平台无关,支持复杂模型,安全性高,适合云端部署。
2 IOT-Tree对OPC UA输出支持
IOT-Tree Server直接提供对外OPC UA Server支持,此Server通过内置Service方式提供。在IOT-Tree Server管理主界面中,点击"服务程序"的"设置”按钮,就可以在弹出对话框列中看到“OPC UA Server”这个服务程序。你可以设置这个服务程序的参数或控制启动停止。如图:
此服务可以对IOT-Tree Server中的一个或多个项目中的组织和数据进行OPC UA方式的输出
3 设置OPC UA Server
点击编辑按钮,弹出详细的参数设置界面:
缺省情况下,OPC UA Server没有被使能,并且使用端口4840。你可以修改端口,起用OPC UA Server。
你可以设置OPC UA Client访问时需要的用户验证,每一行代表一个用户和密码,格式如下:
user1=password11
user2=xxxxxxx
在项目列表中,你可以看到这个IOT-Tree实例包含的所有项目。你可以勾选需要对外提供OPC访问的项目。
下方的信任证书和拒绝证书,则是OPC UA Client访问本OPC UA Server需要的证书管理,详细内容请看后续内容。
以上参数设置成功之后,在Service列表中,点击启动服务按钮成功之后,本IOT-Tree Server运行实例就支持OPC UA Server了
4 使用OPC UA Client访问
你可以在你的电脑上安装一个“Matrikon OPC UA Explorer”软件,本文使用此软件作为OPC UA Client。打开软件,点击“Add New Server”。你可以看到右边“Connect Server”区域直接显示了Local Discovery列表,因为上面配置的OPC UA Server端口是缺省端口,并且这个Client软件和IOT-Tree运行在同一台电脑上。因此,此Client能够直接发现我们配置好的Server。如果不是缺省端口或在不同电脑,你可以手工输入主机和端口,点击"Search"就可以查找出对应的Server。如下图:
其中,展开对应的一个IOT-Tree OPC Server节点,可以看到此节点对应的访问方式。里面有匿名访问、签名(证书)访问、签名(证书)且加密访问。
在下方,你还可以填写连接Server需要的用户名和密码,这个需要和上面配置的用户密码匹配。
根据上图,我们选择了签名(证书)且加密访问方式,并且填写了用户和密码。点击"Connect"按钮。可以看到失败了,如下图:
这是因为证书验证连接方式下,Client会自动创建证书并提交给OPC UA Server,但Server对于第一次访问会自动记录下证书,并且直接拒绝。你需要在IOT-Tree OPC UA Server管理端,对新的Client证书进行授信
回到OPC UA Server服务管理中,点击编辑按钮,你可以看到弹出的界面有了变化:在拒绝证书列表中,出现了一个连接证书。你只需要点击向上箭头按钮,设置信任,使得此证书转移到信任列表中,就完成了访问Client的授信操作。如下图:
回到“Matrikon OPC UA Explorer”软件(注意输入用户密码),再次点击"Connect"按钮,可以发现连接成功。在这个连接成功的话会中,你可以在右上角树形目录中找到对应的项目,展开设置需要监听的节点。如下图:
注意:请启动IOT-Tree内部项目并且进入正常运行状态,你就可以在这个Client端查看监视节点的数据变化。由此,可以认为此OPC UA Server运行正常,可以为其他系统如(ERP、MES、设备管理等软件)提供标准的OPC UA接口了。