OPC UA协议:功能、信息模型与MQTT协同# 示例输入与输出**输入**人工智能(AI)是计算机科学的一个分支,旨在开发表现出人类智能的软件或机器。这包括从经验中学习、理解自然语言、解决问题以及识别模式。**输出**人工智能(AI)是计算机科学的一个分支,旨在开发表现出人类智能的软件或机器。这包括从经验中学习、理解自然语言、解决问题以及识别模式。

iotforall 20231216

  • OPC UA
  • MQTT
插图:© IoT For All OPC UA(OPC 统一架构)是一种跨平台、面向服务、开放且安全的通信架构。它使得来自不同厂商的工业自动化设备、系统和软件应用能够实现互操作性。OPC UA 的信息模型定义了使用各种传输协议交换数据所需的代码和格式。 同样的组织也开发了 OPC UA 及其前身开放平台通信(OPC),但它们之间存在显著差异。该组织继续改进 OPC UA,以创建比原始 OPC 通信更优的架构,并更符合工业自动化不断发展的需求。OPC 基金会于 2006 年发布了 OPC UA 规范的第一个版本,截至目前,OPC UA 的版本为 1.05。除了客户端-服务器(订阅)模型外,OPC UA 还包含了发布-订阅机制,允许通过 UDP 协议、MQTT 协议或 AMQP 协议推送 JSON 规范(也可以使用标准定义的二进制规范 – UADP)。 通过 MQTT 协议提供的快速、安全且可靠的传输通道,OPC UA 可以直接通过互联网进行数据传输,同时保留 OPC UA 端到端安全性和标准化数据建模的关键优势。 EMQ Technologies Inc. ### OPC UA 的特点 **功能等价性** – 所有 OPC 经典规范都映射到 UA,并且 OPC UA 包括了 OPC 经典中发现的 DA、A&E 和 HDA 功能: | 功能 | 描述 | |------|------| | 发现 | 在本地 PC 或网络中查找可用的 OPC 服务器 | | 地址空间 | 所有数据以分层结构表示(如文件和文件夹),允许 OPC 客户端发现和使用简单和复杂的数据结构 | | 按需读写 | 根据访问权限读取和写入数据/信息 | | 订阅 | 监视数据/信息并在值超出客户端设置时报告异常 | | 事件 | 客户端设置通知重要信息 | | 方法 | 客户端可以基于服务器定义的方法执行程序等 | **安全** – 消息加密、身份验证和审计是组织选择技术标准时最重要的考虑因素之一。OPC UA 通过在防火墙之间传递数据时提供一套控制机制来解决安全性问题: | 功能 | 描述 | |------|------| | 传输 | 定义了多种协议,提供诸如超快速的 OPC 二进制传输或更通用的 SOAP-HTTPS 等选项 | | 会话加密 | 使用 128 位或 256 位加密级别,安全传输信息 | | 消息签名 | 接收时的消息签名必须与发送时一致 | | 数据包排序 | 通过排序消除消息重放攻击 | | 身份验证 | 每个 UA 客户端和服务器通过 OpenSSL 证书进行识别,提供对应用程序和系统之间连接的控制 | | 用户控制 | 应用程序可以要求用户进行身份验证(登录凭据、证书等),并可进一步限制或增强用户访问权限和地址空间“视图” | | 审计 | 记录用户和/或系统活动,以提供访问审计跟踪 | **全面的信息建模**:OPC UA 信息建模框架用于定义复杂信息,将数据转换为信息。它允许通过完全面向对象的功能来建模和扩展甚至最复杂的多层结构,并具备在配置文件中定义数据类型和结构的能力。 EMQ Technologies Inc. ### OPC UA 的信息模型 OPC UA 信息模型(地址空间)是由节点和引用组成的网络结构图。标准形式的对象在地址空间中表示,模型元素称为节点。地址空间将对象及其组件表示为节点的集合,由属性描述并通过引用连接。OPC UA 的建模就是创建节点和节点之间的引用。 **对象模型** OPC UA 使用对象作为表示处理系统中数据和活动的基础。变量、事件和方法在对象内通过引用相互连接。 EMQ Technologies Inc. ### 节点模型 EMQ Technologies Inc. **属性** 描述节点,不同的节点类具有不同的属性集。节点类的定义包括定义其属性,因此地址空间不包括属性。 **引用** 表示节点之间的关系。地址空间中存在的引用类型节点实例定义了一个引用。 **节点模型的通用属性** EMQ Technologies Inc. ### 引用模型 源节点是包含引用的节点,目标节点是被引用的节点。被引用的目标节点可以与源节点在同一地址空间中,也可以在另一个 OPC 服务器的地址空间中,甚至目标节点可以不存在。 EMQ Technologies Inc. ### 节点类型 OPC UA 中最重要的节点类别包括对象、变量和方法。 **对象节点**:用户使用对象节点构建地址空间,这些节点不包含数据。它们使用变量公开对象的值。用户可以使用对象节点分组管理对象、变量或方法;变量和方法始终归属于某个对象。 **变量节点**:变量节点表示一个值。该值的数据类型取决于变量。客户端可以读取、写入并订阅该值。 **方法节点**:方法节点表示客户端调用的服务器中的方法,并接收结果。输入参数和输出结果以变量形式作为方法节点的一部分。客户端指定输入参数,并在调用后获取输出结果。 ### 为什么将 OPC UA 与 MQTT 进行桥接? MQTT 是一种适用于物联网的轻量级、高效、可靠的通信协议,使用发布-订阅模型支持实时通信。MQTT 非常适合资源受限的环境,特别是在需要高效使用电力和带宽的场景中。 基于 MQTT 3.1.1,SparkplugB 通过行业公认的规范确保了工业物联网中灵活高效的基本数据建模。由于 MQTT 优秀的设计,SparkPlugB 实现了高度的互操作性和网络状态感知。 OPC UA 和 MQTT 在某些功能上存在重叠,但它们的使用场景非常不同: - OPC UA 通过使用标准化语言,促进工业中多种设备和系统之间的无缝通信。 - MQTT 在互联网上高效处理实时传感器数据,应对物联网应用中的低带宽和不可靠网络条件。其读/发布机制在使用上具有显著的灵活性。 在工业场景中,MQTT 在分布式系统的消息传递方面表现出色,而 OPC UA 则专注于提供互操作性。OPC UA 抽象并聚合业务数据,而 MQTT 则利用其强大的连接能力实现无缝、分布式的数据交换。 ### OPC UA over MQTT OPC 基金会在最新版 OPC UA 规范中提出的发布-订阅模型允许通过 MQTT 代理将数据变更推送给订阅者。 EMQ Technologies Inc. 发布-订阅的安全性比客户端/服务器模型稍微复杂一些,规范也未那么详细。在 MQTT 网络中,安全性基于 SSL/TLS,且代理可以在启用 SSL/TLS 传输的同时定义应用级别的身份验证。原则上,这些安全模型对每一个可以加入网络的订阅者和发布者而言都是“全有或全无”。OPC UA 的持续标准化仍在进行中,如何将丰富的 OPC UA 信息模型最佳地映射到 MQTT 上尚不明确。

声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请与我们联系,我们将及时更正、删除,谢谢。

查看全文

点赞

iotforall

作者最近更新

  • 如何实现Sigfox与LoRaWAN的设备融合
    iotforall
    2023-12-22
  • 2024年边缘计算与物联网预测
    iotforall
    2023-12-22
  • 物联网设备安全挑战:呼吁消费者提高警惕
    iotforall
    2023-12-20

期刊订阅

相关推荐

  • ODVA与OPC基金为通用工业协议制定OPC UA配套规范

    2020-04-03

  • 西门子推出PSU8600单相主电源模块

    2020-06-03

  • 贯穿自动化金字塔,工业控制为何需要OPC UA?

    2022-05-10

  • 将OPC DA升级到OPC UA,老旧设备不用淘汰了!

    2022-05-11

评论0条评论

×
私信给iotforall

点击打开传感搜小程序 - 速览海量产品,精准对接供需

  • 收藏

  • 评论

  • 点赞

  • 分享

收藏文章×

已选择0个收藏夹

新建收藏夹
完成
创建收藏夹 ×
取消 保存

1.点击右上角

2.分享到“朋友圈”或“发送给好友”

×

微信扫一扫,分享到朋友圈

推荐使用浏览器内置分享功能

×

关注微信订阅号

关注微信订阅号,了解更多传感器动态

  • #{faceHtml}

    #{user_name}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 查看评论 回复

    共#{comment_count}条评论

    加载更多

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} #{reback} 回复

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 回复

  • 关闭
      广告