《OPC UA实践》 - 阅读笔记 2 OPC UA信息模型及建模

2024-08-24 19:48

本文主要是介绍《OPC UA实践》 - 阅读笔记 2 OPC UA信息模型及建模,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系列目录

- 阅读笔记 1 工业4.0基础与OPC UA的实践


目录

    • 系列目录
  • 第二章 OPC UA理论基础
    • 2.5 OPC UA信息模型及建模
    • 信息模型实例
    • 信息模型创建步骤:
    • 2.6 在生产线中的引入

第二章 OPC UA理论基础

2.5 OPC UA信息模型及建模

关于信息模型的基础二手知识可以看我之前的一篇博文:OPC UA 学习笔记(总览介绍与信息模型相关)

OPC UA服务器的地址空间是一个完全互联的、以图状拓扑呈现的信息模型。

  • 信息模型:包括节点、节点本身特性以及之间的相互连接。
  • 节点集合:一组符合相应行业、公司名、项目的节点,通常放在一个命名空间下。但所有的节点都属于<http://opcfoundation.org/UA/>这个命名空间。
  • NodeId:由命名空间索引(URL)+ 节点集合内唯一标识符组成
  • 节点标识符:数字(i)、字符串(s)、全局ID(g)、Opac。例如:《ns=3;s=Deckel_geoeffnet;i=84》
  • 浏览名称:BrowseName,人类可读的节点名称。

节点类型:对象(Object)、对象类型(ObjetcType)、变量(Variable)、变量类型(VariableType)、数据类型(DataType)、引用类型(ReferenceType)、方法(Method)、视图(View)。

其他节点之前都提过了,除了视图。视图时地址空间的一个子集,用于特定场合简化客户端对地址空间的访问。

绘图对应图形语言如下:

类型定义(实例声明)
三个建模规则:

  1. 可选:服务器根据实际应用自由决定该子类型在节点实例中是否存在
  2. 强制:该子类型实例声明存在于每个节点实例
  3. 受限:该实例声明的BrowseName属性无实际意义,也无法设置或者确认。
    • ExposeItsArray
    • OptionalPlaceholder
    • MandatoryPlaceholder

引用类型

  1. HasComponent, 描述从属关系
  2. HasProperty,用于标识节点属性
  3. HasTypeDefinition,用于连接对象或者变量与其所归属的类型定义
  4. HasSubType,用于展示类型层次结构中的继承关系

信息模型实例

烟雾报警器对象的信息模型,整个地址空间中,上面的图代表类型定义,下面是层次结构。
在这里插入图片描述

信息模型创建步骤:

应用评估
正式部署
真实场景完整性检验
修正重新验证
具体实现
存储格式和文档
知识结正式展现
重力的数据模型
模型设计
收集或组织概念,属性和相互关系
各模块之间的低相关性
自上而下设计
自下而上设计
一致命名规则,定义共同概念,排除不一致
对概念进行系统化整理
在概念之间建立联系
分析
伴随标准
需求分析
应用场景

2.6 在生产线中的引入

在这里插入图片描述

  1. 信息系统
  2. 信息交互
  3. 数据采集

这篇关于《OPC UA实践》 - 阅读笔记 2 OPC UA信息模型及建模的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1103437

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

C++实现封装的顺序表的操作与实践

《C++实现封装的顺序表的操作与实践》在程序设计中,顺序表是一种常见的线性数据结构,通常用于存储具有固定顺序的元素,与链表不同,顺序表中的元素是连续存储的,因此访问速度较快,但插入和删除操作的效率可能... 目录一、顺序表的基本概念二、顺序表类的设计1. 顺序表类的成员变量2. 构造函数和析构函数三、顺序表

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

使用C++实现单链表的操作与实践

《使用C++实现单链表的操作与实践》在程序设计中,链表是一种常见的数据结构,特别是在动态数据管理、频繁插入和删除元素的场景中,链表相比于数组,具有更高的灵活性和高效性,尤其是在需要频繁修改数据结构的应... 目录一、单链表的基本概念二、单链表类的设计1. 节点的定义2. 链表的类定义三、单链表的操作实现四、

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee