自动化的自动化(1)--OPCUA2HTML5

        

          现在的自动化工程师是令人沮丧的,他们努力地实现各个行业的自动化系统,自己却停留在敲键盘的手工劳作的阶段,该解放自己了。这就是“自动化实现自动化”的话题。

OPC 统一架构(简称 OPC UA)是现代工厂自动化中用于机器通信的标准化安全解决方案。跨平台标准基于OPC基金会的规范,现在得到了所有知名机器和系统制造商以及所有常见PLC制造商的支持,如西门子、博世力士乐、艾伦布拉德利、倍福等。

        HTML5 是 Web 技术的当前标准,所有主要浏览器都支持它。HTML5 的一个重点是实现丰富的 Web 应用程序。这是浏览器中交互式 Web 应用程序的演示,这些应用程序在设计和交互方面与已建立的桌面应用程序一样强大。

        还有什么比将这两个广泛使用的标准结合起来更自然的呢,例如构建一个平台,实现 OPC UA 到 HTML5 自动映射?成为一个类似web SCADA 系统人机界面的OPCUA 客户端。实现“自动化(系统)的自动化(构建)” 的目标。这是一个令人兴奋的话题,同时面临不小的挑战。

      2023年是AI 大语言模型的元年,AIGC必将在工业领域得到广泛的应用,甚至改变工业自动化的某些传统。其中一个重要的应用将是信息模型的生成,转换。研究OPCUA 2 HTML5 技术有助于实现OPCUA 2 HMI 的自动化。

基本思路

     在OPCUA 信息模型中增加少量的HMI 信息,实现OPCUA 信息模型自动转换成基于HTML5的web 应用。是Web SCADA 类似的系统完全依赖OPCUA 模型生成。节省了大量系统组态的工程设计工作。

OPCUA 信息模型

OPC UA 模型的主要元素

  1. 对象(Object)
  2. 变量(Variable)
  3. 方法(Method)
  4. 告警(Event&Alarm)
  5. 视图(views)

        上面的元素已经在许多文章中介绍过了,这里不在重复,唯有视图介绍的比较少。

        在OPCUA 模型中,它的作用是在一个大的地址空间中,限制可见节点和引用。在一个大的OPCUA 服务器中,信息模型是相当复杂的,有大量的节点和引用。 并不是所有的节点都是观察者感兴趣。不同的观察者对不同的一组节点感兴趣。

        views 是一个节点类型,它的内部设置了文件夹对象,并通过Organizes 引用指向信息模型中的对象,变量或者方法。

        另一方面,views 对OPCUA 信息模型进一步组织。客户端能够利用views 来构建HMI架构。

 

 物理设备的信息模型

简单的自动化控制系统有下列几种:

单一设备系统

一台设备构成的系统。

多设备系统

 由多台设备构成的系统

分层系统

        由多台设备构成,系统被分为多个子系统。形成分层结构。比如一个传送机构中包含了多个电机和传感器。

单一设备系统的信息模型

单一设备系统模型包括:

  • 特征
  • 操作
  • 告警、事件
  • HMI 信息
特征

为了能够在HMI 中明显地显示设备重要的特征,我们将设备的特征分为两类:

外部特征

        外部特征是在HMI 页面的突出位置显示的特征。显示的方式可以是仪表盘,数显面板。外部特征被称为状态。

内部特征

更多设备的内部内部属性。包括数据的历史趋势图。

操作

操控面板,对应OPCUA 的方法(Method)。操作页面分为:

  • 按键面板
  • packML面板
告警

对应OPCUA 的Alarm ,condition 和event 模型.

历史趋势

显示某些数据的历史演变趋势图。

HMI 信息

与HMI相关的某些信息。

 多设备系统

     多设备系统除了单一设备系统具有的信息模型之外,有一个系统视图(system views)。它是系统中设备和部件的布局图,使用图形符号表示部件,并且包含了表示工艺流程,逻辑关系的连线。

        系统视图可以使用图形工具制作的2D 图形,可以使用SVG,DXF 等格式。比如类似的P&ID 图形。点击系统视图中的图标:

  • 如果图标是一个多设备子系统,跳转到该子系统的系统视图页面
  • 如果是单一设备系统,跳转到该设备的外部特征显示页面

 分层系统

分层系统中的每一个子系统有一个系统视图,分层显示。

HML5 页面结构

HTML5的主要页面

 系统视图

    可以是现场设备布置图,工艺流程图等图形,它们使用CAD 或者图形编辑工具绘制,格式可以为DXF,SVG 等结构化描述的图形。每个图符号能够实现点击选择。并且包含了一些元数据,可以实现元数据的显示。比如设备名称,外部特征,设备状态,告警等。

状态监督

使用HTML5 仪表 UI ,例如JQwidgets

操作控制

按键面板。对应对象中包含的Method。

系统告警

使用HTML5 表格(jqxGrid )

数据分析

显示系统/子系统的详细特征。并且可以显示数据的趋势信息。例如使用jqxChart

总结

        在设想的系统中,工程设计中只要绘制系统、子系统的系统视图。其它都通过标准的HTML5 UI元素实现。

        实现“自动化的自动化”,自动化人将自己从手劳作中解放出来!这是值得探索的课题。

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

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

相关文章

漏洞复现-Yearning front 任意文件读取漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

身体互联网 (IoB)

现在,我们的互联网网关就是我们手中的一个小设备。 普渡大学副教授施里亚斯森表示。 我们不断地看着这个盒子,我们低着头走路,我们把大部分时间都花在它上面。如果我们不想让这种未来继续下去,我们就需要开发新技术。相反&#x…

#RAG##AIGC#检索增强生成 (RAG) 基本介绍和入门实操示例

本文包括RAG基本介绍和入门实操示例 RAG 基本介绍 通用语言模型可以进行微调以实现一些常见任务,例如情感分析和命名实体识别。这些任务通常不需要额外的背景知识。 对于更复杂和知识密集型的任务,可以构建基于语言模型的系统来访问外部知识源来完成任…

系统架构11 - 数据库基础(上)

数据库基础 数据库基本概念概述三级模式、两级映像概念模式外模式内模式二级映像逻辑独立性物理独立性 数据库设计需求分析概念结构设计逻辑结构设计物理设计数据库实施阶段据库运行和维护阶段 数据模型E-R模型关系模型模型转换E-R图的联系 关系代数 数据库基本概念 概述 数据…

openpyxl绘制图表

嘿,你是不是在处理Excel文件时感到束手无策?是不是想要一个简单而又强大的工具来处理数据分析和图表制作?别担心,我们有解决方案!让我向你介绍openpyxl,这是一个Python库,专门用于处理Excel文件…

使用MDT将系统升级为Win10

创建升级到Win10任务序列 右键选择Task Sequence ,然后选择NEW Task Sequence 填写ID name 默认配置 选择企业版 默认配置 填写组织 输入Administrator密码 点击下一步 等待完成 我们提前安装一台WIN7,并激活 选择打开 选择是 选择我们要创建好的升级win…

2.3 数据链路层03

2.3 数据链路层03 2.3.7 以太网交换机 1、以太网交换机的基本功能 以太网交换机是基于以太网传输数据的交换机,以太网交换机通常都有多个接口,每个接口都可以直接与一台主机或另一个以太网交换机相连,一般都工作在全双工方式。 以太网交换…

C程序技能:彩色输出

在终端上输出的字体总是单色,但在一些场景彩色输出更能满足需求,在Linux环境中,可以使用终端控制字符来设置输出字符的颜色,在部分版本的Windows系统中也可以使用。本文参考一些文献简要介绍一下在Windows下彩色输出的方法。 1. …

Rust-借用和生命周期

生命周期 一个变量的生命周期就是它从创建到销毁的整个过程。其实我们在前面已经注意到了这样的现象: 然而,如果一个变量永远只能有唯一一个入口可以访问的话,那就太难使用了。因此,所有权还可以借用。 借用 变量对其管理的内存…

从零开始:生产环境如何部署 Bytebase

Bytebase 是面向研发和 DBA 的数据库 DevOps 和 CI/CD 协同平台。目前 Bytebase 在全球类似开源项目中 GitHub Star 数排名第一且增长最快。 Bytebase 的架构 Bytebase 是一个单体架构 (monolith),前端是 Vue3 TypeScript,后端是 Go。前端利用 Go 1.6 …

MySQL面试题 | 09.精选MySQL面试题

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

linux下485通信调试记录

1、使用linux下使用串口调试助手 linux下可以安装并使用下述串口调试工具进行串口测试: 1.1、cutecom cutecom是linux下常用的图形化串口调试软件,通过以下命令安装并打开: sudo apt-get install cutecom sudo cutecom显示如下&#xff1…

【IPC通信--共享内存】

进程间通信目的 数据传输:一个进程需要将它的数据发送给另一个进程 资源共享:多个进程之间共享同样的资源。 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如…

【CSS】解决height = line-height 文字不垂直居中(偏上、偏下)的问题

解决办法1: 查看 font-family 属性,确认是否是因为字体而导致的不垂直居中问题。 其他小知识: 基线就是小写x字母的下边缘(线) 就是我们常说的 基线。line-height 属性设置的行高也就是定义的两行文字基线之间的距离! 参考文章:…

网络共享服务

存储类型:直连式(DAS):距离最近,存储设备且直接连接到服务器上 存储区域网络(SAN):适用于大型应用或数据库系统,可以使用文件的空间, 以及管理空间…

canvas绘制图片的三种方法(图文示例)

查看专栏目录 canvas示例教程100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…

Apache StringUtils:Java字符串处理工具类

简介 在我们的代码中经常需要对字符串判空,截取字符串、转换大小写、分隔字符串、比较字符串、去掉多余空格、拼接字符串、使用正则表达式等等。如果只用 String 类提供的那些方法,我们需要手写大量的额外代码,不然容易出现各种异常。现在有…

任务13:使用MapReduce对天气数据进行ETL(获取各基站ID)

任务描述 知识点: 天气数据进行ETL 重 点: 掌握MapReduce程序的运行流程熟练编写MapReduce程序使用MapReduce进行ETL 内 容: 编写MapReduce程序编写Shell脚本,获取MapReduce程序的inputPath将生成的inputPath文件传入到Wi…

AWS边缘媒体安全交付方案

企业如何在AWS上的边缘站点,安全的将优质视频内容交付给用户,并且禁止哪些未经过授权的访问?九河云将基于AWS平台提供边缘媒体安全交付解决方案 解决方案详情 在通过 Amazon CloudFront 交付时,免受未经授权的访问。基于添加到交…

单页面vite打包学习

前端工程化本人真的很发怵,一直也没有专心去突破一下,都是能用就用,所以今天小小学习一下打包,先从单页面应用的vite打包开始。本文主要是一些我的大白话和有限的经验,如有问题望指正。 一、问题 网页要从服务器请求…