本文概述了OPC-UA作为一种潜在的机械测量数据采集方法。它涵盖了可用于探索OPC-UA服务器上的关键空间的工具和技术,OPC-UA中数据的结构,以及如何引用这些数据点并将其转换为使用MachineMetrics监控的所有设备一致的模型。
什么是OPC-UA?
OPC-UA(“开放平台通信统一架构”)是用于工业自动化领域和其他行业中安全可靠的数据交换的通用互操作性标准。它是平台独立的,确保来自多个供应商的设备之间的信息无缝流动。就其本身而言,它并没有以一致的方式描述其提供的数据。可以从OPC-UA服务器(在这里是机器)检索的每个数据点都有特定于实现的含义。一台机器的每个品牌、家庭、型号甚至单个配置都可以有不同的数据点集,这些数据点意味着不同的东西。虽然OPC-UA正在为数控机床标准化,并通过UMATI和MTConnect/OPC-UA制造设备配套规范等各种垂直设备的规范进行统一,但这些标准的采用才刚刚开始,在一段时间内不会广泛使用。
OPC基金会负责该标准的开发和维护。
浏览OPC-UA服务器
有许多客户端工具可用来浏览OPC-UA服务器。我们将建议从其中选择一些,我们将使用它们来确定我们想要监视的节点id。
命令行/终端客户端
对于能够打印出OPC-UA数据树部分的命令行客户机,我们建议使用名为奥古斯
,来自python OPC UA工具库(可以找到源代码和安装文档)在这里). 使用奥古斯
工具,可以将opc-ua服务器的树状数据以明文形式打印出来。下面的命令模板将从OPC-UA服务器打印给定的名称空间和深度(没有用户名或密码)。
ual - u opc。tcp://<地址>:<端口> -i
如果您不确定需要浏览的名称空间,可以省略该参数,以包括服务器上的所有名称空间。这没有坏处。响应可能只是包含额外的、不必要的数据。
对于更复杂的交互式命令行客户机,可以手动查看和浏览数据树,建议使用opcua-commander
,可以找到其源代码和文档在这里. (这需要在系统上安装node.js)。
GUI客户端
OPC基金会推荐了一些GUI客户端,可以找到在这里和在这里.
对于大多数非技术用户来说,GUI客户端的设置通常比终端客户端更直观、更直接。这些客户机应该有足够的文档,允许您连接并查找MachineMetrics通过我们的系统获取数据报告所需的数据项。
请注意:这两个GUI客户端仅在windows7或更高版本(而不是linux或macOS)上受支持。如果您没有访问Windows计算机的权限,那么唯一的选择就是使用上面列出的一个终端客户机来发现正确的节点ID
OPC-UA数据结构
OPC-UA数据包括简单和复杂类型。
简单类型
- 一串
- LocalizedString
- 布尔值
- Guid
- 日期时间
- 双
- 浮动
- Int32(可能也有其他Int大小,但是没有测试过)
复杂类型
- 对象类型
- 枚举类型
- 数组类型(当前不支持)
对象类型实际上是属性的结构或哈希表,枚举类型定义一组特定的值,数组类型是项的有序集合。对象类型和数组类型可以具有复杂类型或简单类型的属性和项。目前,只支持具有简单类型属性的对象类型。
在MachineMetrics的OPC-UA实现的上下文中,上面列出的复杂类型的顺序很重要,我们将在后面讨论。
机械测量中OPC-UA数据的引用与转换
MachineMetrics使用YAML文档引用OPC-UA标记,描述复杂类型的结构,并将该数据转换为跨所有类型设备一致的模型。以下是OPC-UA设备的完整配置。
版本:2
设备:opc ua
端点:
标签:
零件数量:
路径:ns=2;s=激光电流平面图
属性:partQuantity
激光功率:
路径:ns=2;s=激光电流激光功率
切割状态:
路径:ns=2;s=激光器电流切断状态
数据项:
part_count:
价值:part-quantity
切割:
值:切割状态
执行:
价值:
激活:激光功率>0
准备:真
标签
这个标签
OPC-UA配置部分定义了对OPC-UA浏览空间中特定节点的引用。标签的格式如下:;标记的名称将指定一个MachineMetrics配置标签,该标签可以在配置的其他地方引用。标签由路径
属性,该属性应指向OPC-UA树中变量的节点ID(有关确定节点ID的更多信息,请参阅浏览OPC-UA服务器节)。一个单个标签监控一个值的示例,该值具有表示激光器功率的简单整数类型,如下所示:
激光功率:
路径:ns=2;s=激光电流激光功率
在标记中引用复杂类型
假设在节点上找到了一个复杂类型ns = 2; s =激光。当前计划
.我们可以引用当前计划
在我们的标签中像这样的节点:
零件数量:
路径:ns=2;s=激光电流平面图
属性:partQuantity
这就给了我们partQuantity
财产的当前计划
节点。这假设节点具有partQuantity
财产。此属性的值可以稍后在“数据项”部分中通过零件数量
标签。
数据项
machine emetrics YAML配置的最后一部分是数据项
部分。这个部分是监视值的地方标签
能够以一种与《MachineMetrics》中所有设备部件一致的方式进行建模。如下所示,基本转换是可能的数据项
部分。
下面是一个定义将被发送到MachineMetrics的数据项的示例。值可以直接传递,用布尔条件和数学方程进行转换,并应用于用于指定枚举的类似开关的语法。part_count
正在传递从零件数量
标签。切割
是从PartCutState公司
在中找到枚举值切割状态
标签。
执行
正在输出活跃的
如果为整型值激光功率
标记大于0。如果小于或等于0,则输出的直通状态为准备好的
.
part_count:
价值:part-quantity
切割:
值:切割状态
执行:
价值:
激活:激光功率>0
准备:真
如果您有任何其他问题,请联系我们support@machinemetrics.com或者打电话到+1.413.341.5747x120。
评论
0条评论
请登录留下评论。