关于OPCUA的配套规范

news2025/1/6 20:02:49

OPC UA中的信息建模能力足够强大,使OPC UA成为定义从简单的数据(如工程单位和传感器或设备生成的最大/最小范围)到大型复杂关系的理想选择,其中包括涉及数据结构,方法和状态机的复杂对象类型的实例化。也就是说,OPCUA 信息模型的颗粒度是非常细,为构建各种信息模型提供了灵活的方法。

OPCUA 提供的是基本的信息模型,包括了UAObject,UAVariable,UAMethod等等。要实际创建自定义 OPC UA 信息模型,您可以使用文本编辑器创建标准化的 XML 文件,或者使用一些图形工具来生成 XML 文件。

OPCUA 信息模型的目标是整个工业界。在各个专业领域,针对行业的特点能够构建各种复杂的信息模型。例如注塑/橡胶行业的信息模型,称重行业的信息模型等等。这些专业领域的信息模型的形式和语义可以由行业专家来自由构建。不过另一方面,灵活性也会带来兼容性的问题。为了促进专业领域的信息模型的信息交互,必需对行业信息模型做更进一步的标准化。

OPCUA 组织通过OPCUA 配套规范来实现行业信息模型的标准化的。

对于真正的互操作性,系统必须能够在建立连接之前预测它将遇到的信息结构,因为这样,您就可以构建机器和软件应用程序,这些机器和软件应用程序已经完全了解它们如何相互交互。这就是激励OPC基金会与各个垂直行业合作,为每个垂直行业指定标准化信息模型的原因。也称为配套规范。

例如,如果制药行业的设备和软件供应商就相同的信息模型规范达成一致,那么就可以在该行业内构建即插即用系统。

配套规范建立在OPC UA基础和内置信息模型之上。目前,它们的范围从工业通信协议建模(Profibus和BACnet等协议被映射到OPC UA)到垂直规范合作,例如石油和天然气,能源和工厂自动化。

OPC UA配套规范

OPC UA配套规范旨在通过描述设备应公开的接口,服务和数据来提供解决方案,以便更轻松地进行配置和解释。

20年前,如果你买了一台数码相机,它通常带有USB接口。但是,您仍然必须安装相机随附的CD中提供的驱动程序。如今,您只需插入相机即可开箱即用。从即插即用到即插即用的过渡对于家庭和企业中的台式机/笔记本电脑和外围设备的用户来说已经相当普遍。这种转变是由通过改善用户体验来获得市场份额的需求推动的,而在此之前,用户体验并不是很用户友好。

工业世界没有发生类似的转变。这是由于工业用例的碎片化性质以及这些安装中使用的设备的低容量性质。作为工业用户,我们能够理解和解释基于哪些设备运行和提供数据的配置和格式。但这需要付出巨大的努力才能跨不同供应商的设备完成,并且当同一设备以不同的配置运行时,也需要重复努力。

如果工业设备以减少重复配置和数据解释工作的方式生成数据,效率将大大提高。OPC UA配套规范旨在通过描述设备应公开的接口,服务和数据来提供解决方案,以便更轻松地进行配置和解释。

回到相机示例,所有相机都提供相同的接口来访问照片/图像数据。但是,作为消费者,您根据内部功能和特性决定购买哪一个,因为这些功能和特性可能因不同的型号而异。例如,一个型号可能提供蓝牙配件来远程触发拍照,而另一个型号可能不提供。

从工业角度考虑这一点,让我们考虑基于AutoID的应用程序的示例。这些应用程序在部署场景中使用工业 RFID 和条形码扫描仪等设备,例如仓储中的产品识别和跟踪。来自多个供应商的这些设备将OPC UA作为通用接口,并实施通用扫描方法来识别新的RFID应答器或条形码,但它们可以根据其规格(例如支持的读取范围和速度等)与内部不同。这些数据的解释因所使用的技术而异,但仍然可以使用相同的 API 以通用方式进行描述。这可以通过配套规范来实现,这也允许您编写自己的扩展。

让我们以两个场景来进一步了解配套规范

场景 1

考虑到每个供应商都在其产品或设备中集成了OPC UA。但是每次都需要工程工作才能连接到UA服务器,因为每个供应商在其实施中提供不同的服务。

场景 2

如果所有供应商都在其产品中实现 AutoID 配套规范,则连接到UA 服务器所需的唯一工作是决定实现哪些方法以及如何调用它们。这变成了一个即插即用的环境。

OPC UA指定了许多基本信息模型,用于定义常用对象,包括实时和历史数据变量和警报。可以基于OPC UA数据模型创建新的信息模型,并最终从OPC UA基础信息模型派生出来。此类信息模型的规范与OPC UA基础设施一起在语义级别实现互操作性,称为配套规范。

许多行业开始开发OPCUA配套规范:

  • 汽车

  • 食品和饮料

  • 厨房设备

  • 采矿

  • 包装

  • 机器人

让我们简要了解一下来自不同行业的一些配套规范以及它们的目标:

塑料和橡胶机械

该配套规范接口旨在提供交换机器信息的功能,例如其状态和配置,过程和作业参数以及用于配置的数据集的传输[ 3]。

数控机械

该配套规范旨在开发一个OPCUA信息模型,用于机床面向“外部”通信合作伙伴的通用通信接口,例如MES,ERP,云,自动化系统 [4]

海上石油和天然气

MDIS配套规范是通过OPC UA实施的石油和天然气标准MDIS,用于将海底生产控制系统(SPCS)与主控制站(MCS)或海底网关连接到分布式控制系统(DCS) [5]。

商用厨房行业

目前,不同商用厨房电器的连接最适合同一家公司生产的产品。连接来自不同制造商的设备是可能的,但这是一个挑战。创建OPC UA配套规范“商用厨房设备-商用厨房设备的通信接口”旨在改变这一点

已有的配套规范

Unified Architecture - Device Model

Asset Management Basics

Industrial Automation - Basics

Industrial Automation - RelativeSpatial Location

AnalyzerDevices

ISA-95 Common Object Model

ISA-95-4Job Control

PLC Model based on IEC 61131-3

PLC Client Function Blocks based on IEC 61131-3

AutoID Devices

Subsea Production - MDIS

BACnet

AutomationML

PackML - Packaging Control

TobaccoMachinery

MTConnectDevices

MTConnect Devices - Amendment 1: Conditions

FDI Host

FDI Communication Devices

FDI Specification - All Parts

Process Automation Devices - PADIM

FieldDevice Tool

Sercos Devices

Powerlink

IO-Link Devices and IO-Link Masters

CSP+ForMachine . CCLink

PROFINET

PROFIenergy

PROFI-RemoteIO

PROFI-Encoder

Commercial Kitchen Equipment

DEXPI P&ID

Open-SCS Product Serialization

Open-SCSJob Orders

Industry 4.0 Asset Administration Shell

Cloud Library - Overall Architectureand Use Cases

Cloud Library - API Definition

Machinery Basic Building Blocks

Machinery Process Values

Machinery Result Transfer

Robotics - Vertical Integration

Cranes&Hoists - MotionDevicesSystemBase

PlasticsRubber - Injection MouldingMachines to MES

PlasticsRubber - Injection MouldingMachines to Robot

PlasticsRubber - Peripheral Devices

PlasticsRubber - General Types

PlasticsRubber- Extrusion

Mining - ACandUC - DiscontinuousLoading

Mining - ACandUC - DiscontinuousUnloading

Mining - ACandUC - Dozing

Weihenstephan Standards

Process Air Extraction and Filtration Systems

更多信息可以参考下列网站

https://reference.opcfoundation.org/

使用

每个配套规范都提供了Nodeset2.xml 文档。可以在下列网站下载

https://github.com/OPCFoundation/UA-Nodeset

open62541 等工具提供了编译工具将UA-NodeSet 编译成为C语言的库,添加到open61541 源代码中,uaModelerModeler工具也可以导入UA-Nodeset。用户能够在这些配套规范定义的信息模型的基础上构建自己符合规范的信息模块。

当然要理解这些信息模型并非易事,需要有一定的行业背景,并且熟悉OPC UA 的规范。这对于行业用户而言是困难的事情。这也是专业软件开发商大展拳脚的地方。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/144089.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mysql数据库的基础操作(一)

一、导入/导出sql脚本 1.1 导入sql脚本 1.1.1 终端导入sql脚本 在mysql中,执行source命令 mysql> source /chenshuai/cs.sql 1.1.2 可视化工具导入sql脚本 在Navicat Premium中,右键这个数据库,然后Execute SQL File 1.2 导出sql脚本…

Redis主从、哨兵、集群模式

众所周知,redis是目前非常流行的缓存中间件之一。在redis官网有这么一段话: redis有着丰富的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合…

Please restart this script from an administrative PowerShell!

执行 npm install --global --vs2019 --production windows-build-tools报一下错误信息 Downloading python-2.7.15.amd64.msi Downloading Python failed. Error: Error: getaddrinfo ENOTFOUND cdn.npmmirror.com at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:…

养老院管理系统|基于JavaWeb开发实现养老院管理系统

作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助 收藏点赞不迷路 关注作者有好处 文末获取源…

ROS用pyqt实现GUI界面控制乌龟运动

#!/usr/bin/env python3 #codingutf-8 from PyQt5.QtWidgets import * import sys from window import MainWindow,TurtleWindow import rospy if __name__ __main__: rospy.init_node(turtle_ctrl_node) appQApplication(sys.argv) #窗口展示 windowTurtleWindow() …

问题排查 - DotNet 6 后台服务Docker部署后部分接口返回值乱码

问题描述 最近有一个DotNetWebApi服务需要使用Docker在服务器部署,部署后部分接口返回内容会出现部分乱码的情况。 一些关键点: 服务本机直接启动,此接口无异常;服务器直接启动,此接口无异常 服务器为Ubuntu20.04安…

rabbitmq加入linux开机自启动脚本

cd /etc/init.d编辑脚本 vi rabbitmq#! /bin/sh # chkconfig: 2345 20 60 # description: rabbitmq server export HOME/root export PATH/usr/local/rabbitmq/erlang/bin:$PATH case "$1" instart)/usr/local/rabbitmq/sbin/rabbitmq-server start;;stop)/usr/loc…

命令模式Command

1.意图:将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 2.结构 Command声明执行操作的接口。 ConcreteCommand将一个接收者对象绑定于一个动作&#xff1…

利用nginx 反向代理解决跨域问题

说到nginx,不得不说真的很强大,也带来很多便利用于解决一些头疼的难题。 一般来说可以用来做:静态页面的服务器、静态文件缓存服务器、网站反向代理、负载均衡服务器等等,而且实现这一切,基本只需要改改那万能的配置…

前端插件的应用

像这种页面四个页面下面的展示格式都一样&#xff0c;这个时候就把公共部分代码抽取出来作为组件使用 直接把中间部分代码赋值过来 <template> <div> <div v-for"(items, index) in ford" :key"index"> <div v-if"items.shopC…

P3- 傅里叶变换1-通讯原理

前言&#xff1a;傅里叶变换是Modulation, OFDM 技术的理论基础这里主要介绍连续性随机变量的傅里叶变换,以及对应的性质。https://zhuanlan.zhihu.com/p/339281545https://wenku.baidu.com/view/ab338e55a16925c52cc58bd63186bceb19e8ede4.html?_wkts_1672887094135https://w…

pdf如何防止被他人编辑

好多人一直在寻找研究如何编辑或者修改PDF文件&#xff0c;有需求就会有市场&#xff0c;现在市场上或者网络上有非常多的PDF编辑软件&#xff0c;可以编辑修改PDF文件中的内容。即使PDF文件加了密码保护&#xff0c;我们大部分人依然可以轻易的通过在浏览器中虚拟打印的方式&a…

2023.1.6 学习总结

1.set容器的相关函数 set&#xff0c;顾名思义是“集合”的意思&#xff0c;在set中元素都是唯一的&#xff0c;而且默认情况下会对元素自动进行升序排列。 set容器 包含头文件&#xff1a; #include<set> set中只能用insert函数实现数据的输入。 set<int> s…

32.深度学习模型优化加速方法-1

32.1 模型优化加速方法 模型优化加速能够提升网络的计算效率,具体包括: Op-level的快速算法:FFT Conv2d (7x7, 9x9), Winograd Conv2d (3x3, 5x5) 等;Layer-level的快速算法:Sparse-block net [1] 等;优化工具与库:TensorRT (Nvidia), Tensor Comprehension (Facebook) …

【代码题】栈的应用

目录 1.有效的括号 2.逆波兰表达式求值 1.有效的括号 点击进入该题 https://leetcode.cn/problems/valid-parentheses/description/ 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有…

【黑马】瑞吉外卖-Day01、02笔记

瑞吉外卖 数据库搭建 表结构 Maven项目 创建Maven项目 编写pom文件 编写配置文件application.yml 创建启动类ReggieApplication.java 前端静态资源的配置 将两个前端静态资源包导入到resource目录下方&#xff0c;由于Spring-MVC默认只能访问static和templete下面的文件…

04-GC的常见收集方法:标记清除、标记复制、标记整理算法、分代收集的原理与特点?

1.标记清除算法(Mark-Sweep) 最基础的垃圾回收算法&#xff0c;分为两个阶段&#xff0c;标记和清除。 1.标记阶段标记出所有需要回收的对象 2.清除阶段回收被标记的对象所占用的空间 缺点: 1.容易产生大量的内存碎片,后续可能发生大对象不能找到可利用空间的问题 2.标记和清…

【JavaGuide面试总结】Java基础篇·上

【JavaGuide面试总结】Java基础篇上1.JVM vs JDK vs JRE2.Java 和 C 的区别?3.Java 程序从源代码到运行的过程4.为什么说 Java 语言“编译与解释并存”&#xff1f;5.说说default关键字的几个用法6.静态变量有什么作用&#xff1f;7.字符型常量和字符串常量的区别?8.成员变量…

Verilog语法笔记(夏宇闻第三版)-运算符及表达式

目录 运算符按其功能可分为以下几类: 按其所带操作数的个数运算符可分为三种&#xff1a; 基本的算术运算符&#xff1a; 位运算符&#xff1a; 逻辑运算符&#xff1a; 关系运算符&#xff1a; 等式运算符&#xff1a; 移位运算符&#xff1a; 位拼接运算符(Concatati…

png如何转pdf?这几个方法快收藏起来

现如今&#xff0c;电脑上拥有的图片格式那么多&#xff0c;而每种格式分别都有自己的特点&#xff0c;就例如png格式。它是一种无损压缩算法的图片格式&#xff0c;能够保证在不失真的情况下&#xff0c;压缩图片文件大小。但在我们工作中&#xff0c;难免会需要将png图片转换…