IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了各种设备接入、数据组织管理、数据分享使用、消息流控制逻辑和人机交互多个方面的功能。当然,你也可以仅仅使用这个软件作为数据采集终端或边缘计算的软件。
这是IOT-Tree Server相关的系列文章,你可以参考其他文章更多了解IOT-Tree能给你带来的好处:
使用IOT-Tree Server通过PPI协议连接西门子PLC S7-200 Smart
使用IOT-Tree Server连接西门子PLC S7-300/1200/1500
使用IOT-Tree Server通过MC协议连接三菱Q系列PLC
使用IOT-Tree Server通过FINS协议连接欧姆龙CP2E-N系列PLC
系列文章还包含IOT-Tree完成一个具体项目的过程,非常详细,如下:
本文介绍的是使用IOT-Tree Server的OPC UA Client连接器连接外部的OPC UA Server(系统或设备),通过绑定方式获取需要的数据,形成标签数据组织。
事实上IOT-Tree Server内部也自带OPC UA Server服务,支持项目数据通过OPC UA方式对外提供数据输出。这个功能和Keyware软件类似——IOT Tree本质上也即是一个OPC UA软件,在工业现场运行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)描述复杂数据结构,支持自定义对象和变量。
扩展性:可集成实时数据、历史数据、报警和事件等功能。
2 OPC UA Server端准备

当前各种大品牌的中高端PLC都可以支持OPC UA Server(如西门子PLC S7-1500/1200等)。
对于软件来说,你也可以使用KEPServerEX这个有名的OPC软件,不过只能运行在windows pc机上。
如果你没有上述设备或软件,也可以直接使用IOT-Tree Server中自带的OPC UA Server服务。具体配置你可以参考另一篇文章:
使用IOT-Tree接入各种设备转OPC UA Server输出
本文使用的例子是嵌入式ARM Linux边缘计算小模块,内部运行IOT-Tree Server,设备IP地址192.168.1.58。参考上面的文章配置启动这个设备OPC UA Server服务,选定需要输出的项目数据,以及支持的通信安全模式,Client用户验证等信息。

然后使用“Matrikon OPC UA Explorer”访问确保成功:

我们的IOT-Tree测试实例运行在一台pc上,能够访问上面边缘计算模块。
3 IOT-Tree的OPC UA Client连接器
IOT-Tree Server直接提供一个OPC UA Client连接器,这个连接器支持使用绑定方式获取OPC UA Server的数据项到内部数据标签中。在IOT-Tree Server某个项目管理主界面中,点击左上角的“接入"菜单,选择“OPC UA Client”。你可以打开连接编辑对话框。如图:

3.1 发现OPC UA Server
OPC UA协议支持发现功能,只需要知道运行节点的IP地址和端口,就可以直接查找这个运行节点支持的OPC UA连接端点。点击端点URL的查询按钮,弹出"UA Server Browser"对话框,可以看到此时IOT-Tree会自动查找本地缺省端口4840的OPC Server实例,如果没有OPC UA Server运行,这提示搜索失败,如下:

我们修改Host/IP项为:192.168.1.58,并再次查找,可以看到查找成功,如下:

在结果列表中可以发现边缘计算设备运行有OPC UA Server,并且支持3个端点,分别为端点url 是否加密,是否加密及签名。
3.2 选定连接端点,完成接入
点击选择其中一项,确定之后相关参数就会自动填写到之前的编辑框中。如下:

如果OPC UA Server要求用户密码验证,你还得填写用户密码(这个用户密码你需要和OPC Server提供方沟通获取)。确定之后,我们就可以看到左边成功添加了这个接入。

3.2.1 签名证书方式特别注意
如果你选择的安全策略使用到证书,那么第一次连接你需要如下操作:
1,鼠标右键OPC UA分类,选择启动菜单项,等待一些时间之后,你会发现刚刚新配置的ua1接入无法连接成功,并且鼠标移到上方可以看到连接失败。如下图:

这是第一次连接,OPC Server端会收取Client端的证书,并且自动拒绝。你需要联系OPC Server端管理员,给新建的连接证书授权。
本文我们只需要访问边缘设备管理界面 http://192.168.1.58:9090/admin/。打开服务管理程序OPC UA Server服务,编辑界面可以看到新出现的拒绝证书,点击确认授信即可。

此时,你什么都不用操作,等待片刻,就可以看到我们Client端ua1自动连接成功了:

3.3 绑定节点到通道下面的标签中
IOT-Tree 对于OPC UA Client接入,使用的是绑定内部标签策略——也即是绑定某个关联通道下面的标签作为数据提取方式。
3.3.1 建立通道和数据标签
我们鼠标右键项目根节点,选择“新增通道”,填写通道名"ch1"。

并且点击ch1通道界面,在右边标签列表中新增如下数据标签Tag:

关于项目-通道,标签等内容,如果你不熟悉可以参考上面建议的参考文章或IOT-Tree自带的文档,本文不展开影响重点内容了。
下面,我们需要把ua1这个OPC UA Client接入的数据映射到我们定义的这些标签中。
3.3.2 绑定OPC UA节点到标签
1,建立ua1接入到通道ch1的关联
鼠标左键点击ua1右边的端子,不松手拖拽到ch1左边的端子,然后松开鼠标——这就完成了接入到通道的关联。如下:

2,绑定OPC节点到通道下面的标签
鼠标右键ua1,选择菜单项“绑定”,你可以在弹出对话框中看到左边的OPC节点树,右边的标签绑定列表:

注意:确保OPC UA接入进入运行状态,这样绑定对话框才能够浏览展示出OPC UA Server端的所有数据节点。
在左边选择的数据节点,然后在右边选择对应的通道下标签,点击中间右箭头绑定按钮,就可以完成一个OPC数据点到IOT-Tree通道下面特定标签Tag的绑定。多次操作可以绑定所有需要的内容,如下图:

确定之后就完成了绑定。
3.4 运行效果
1,先停止OPC UA接入。然后启动整个项目,你会发现我们配置的数据标签成功运行之后,与OPC Server中的数据有个同步变化操作了。如下图:

你也可以尝试对可写入标签进行数据写入,然后查看OPC Server端的数据或控制变化。
注意:先确保OPC UA Server端的数据运行正常,从而确保OPC数据节点数据正常,才能保证OPC UA Client的数据正常。
最终效果和IOT-Tree通过各种设备驱动获取标签数据结果一样,无论各种数据来源,IOT-Tree内部都使用统一的方式组织。
这些数据都可以被后续利用:
1,制作实时监控画面
2,通过MQTT发送到云端(使用消息流)
3,你可以模拟Modbus设备为其他PLC提供数据
4,你可以为其他系统提供RESTful接口提供组织标签数据的读写
5,你可以使用消息流节点同步数据到关系数据库中
6,你可以把项目数据发布到BACnet Device服务中,为楼宇智能顶层系统提供BACnet数据接口
7,你还可以把项目数据发布到OPC UA Server的服务中,为其他OPC Client提供数据
8,当然还有其他各种应用...

808

被折叠的 条评论
为什么被折叠?



