IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> OPC UA Over TSN 的实时能力 -> 正文阅读

[系统运维]OPC UA Over TSN 的实时能力

????????在时间敏感网络上实现OPC UA 协议是一个热门话题,OPC UA 很热,TSN 也很热。从网络上的许多文章描述,OPC UA over TSN 代表了现场总线的未来。它们既能完成数字化建模,又能实现实时通信。看起来非常的完美。但是评估任何一项技术,离开了实际的测试数据,都是不够充分的。就拿这两项技术而言,实时性能力到底能达到什么水平?有的文章说能够达到100us 的周期(cycle),也有的讲400us 到1 ms。这种数据其实也是似是而非的。因为还要看每个节点的使用什么处理器(Intel 的i7与cortex-A 的处理器有很大的区别),每个周期传输多少数据,网络上有多少个节点。网络能够看到的测试还比较少。

一个测试

????????在网络上找到这一篇文章,他们做了一些测试,

Real-time capable OPC-UA Programs over TSN for distributed industrial control

实验结果

????????我在此摘要上述文章中一些实验结果:

1 采用Intel Core i7-3615QE 四核 CPU(2.3G主频)的工业电脑

2 Intel i210网卡互联

3 具有实时能力的Preempt-RT Linux Kernel 5.0.14.

4 使用开源OPC UA open62541 PubSub 模式

测试结果

测试的方法是不同长度的数据,发送一小时,测试的结果如下:

当传输8 到 160个字节(周期=200us) 测量事件1小时 数据消息大约180 million。

????????文章中没有提及CPU 占用的时间,他们使用的工业PC的性能还是比较高的。如果换作低性能ARM 处理器 的话,OPC UA 的协议栈处理时间也是要从分考虑的因素。阅读过open62541 协议栈源代码的读者可以发现,OPC UA 协议栈涉及了许多的小函数,实现数据帧的拼接和分拆。这些操作无法使用DMA 等方式来加速。当传输的数据种类多,数据量大的话。协议栈的执行时间也是比较多的

? 由此看来,UPC UA 在1ms 量级周期中传输小量数据能够满足实时性要求。例如在机器人控制中,1ms 内至少传输6 个浮点数。

????????笔者认为,OPC UA /TSN 更适合分布式系统中设备之间的数据交换。设备之间的数据交换的数据量相对少,周期超过1ms。它们可能不适合EtherCAT 高速现场数据传输的应用场合。

? 目前有一些自动控制厂商在产品中增加了OPC UA 的协议。对于小型设备而言,增加OPC UA 协议不能够影响原有控制功能的实时性要求。一种简单的方式是开发以太OPC UA 网关设备。或者在PLC 中增加一个独立的OPCUA模块。

OPC UA 的应用场景

  • 设备与SCADA 系统之间的接口
  • 设备与IT 系统(ERP,MES)的接口
  • 设备与云端的接口
  • 构建以OPC UA 协议为基础的控制系统

大概只有最后一种更需要实时性保证。

OPC UA/TSN 构建控制系统

使用opc ua/tsn 构建控制大致有两种

Client/server

?

????????客户端/服务器模型已在典型的 SCADA 场景中成功使用,不同应用程序之间的连接数量不是很高时它会蓬勃发展。如果您有数十或数百台设备(即服务器)需要不断连接 - 或类似数量的客户端需要连接到任何服务器,您最终可能会遇到资源问题,因为每个连接和订阅都需要内务管理和它们导致网络中的单独流量。

pub/sub 模式

????????在 PubSub 模型中,我们有一个Publisher组件,它可以定义包含变量或 EventNotifier 的DataSet 然后,发布者将发布DataSetMessages,其中分别包含 DataChanges 或 Events。

OPC UA 为 PubSub 定义了两种不同的网络类型。

消息队列代理 - 实际上可以是 MQTT 或 AMQP 代理。在这种情况下,消息通常是 JSON 消息,尽管 UADP 可用于提高性能。OPC 基金会为消息定义了标准的内容结构,但基本上任何 JSON 订阅者都可以解释它们。

? ? ? ?pub/sub模型的最大好处是能够实现一个设备发布,多个设备订阅。非常灵活。不过类似于MQTT 那样,使用broker 实现消息转发的话,实时性会大打折扣。适合OT/IT 之间的消息交换。

本地网络 -

????????在本地Ethernet 上构建实时网络有许多种方式,例如EtherCAT ,PowerLink 都是一种实时网络,与工业现场大多数时间触发实时网络不同,tsn采取了预留带宽,优先可以使用 UDP 广播(或在某些情况下为单播)或以太网 APL。消息是优化的二进制 UADP,在 OPC UA 规范中定义。因此,只有 OPC UA 订阅者可以解释消息。

????????为了提高实时通信,底层网络可以使用TSN。不过值得注意的是TSN 是一种预留带宽和优先级分配带宽的通信策略。与EtherCAT,Powerlink 这种时间触发实实时网络相比,实时性与网络中信息量有关。

????????????????如果底层的pub/sub 协议不是一个开放性协议的话,设备的互联互通也将成为一个问题,因此,采用本地网络上实现OPC UA 同样存在兼容性问题。

? ? ? 实现实时网络的协议有许多种类,要根据具体的应用而定。没有放之四海而皆准的方法。

OPC UA 落地的关键

????????笔者在多个场合都说过,OPC UA 落地的关键是使用它为具体的设备建模,只有大多数设备构建了OPC UA 模型。但是在发展的初期,为自己的设备建立OPC UA 模型并不能够为企业带来直接的利益,大多数企业采取的策略是除非客户指定,才会增加opc ua 模型。没有主动去做这项工作的动力。有许多场合技术的推进决定于商业模式,而不是技术本身。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-06-06 17:33:28  更:2022-06-06 17:34:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 21:39:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码