《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

相关文章

Vue 2 项目中配置 Tailwind CSS 和 Font Awesome 的最佳实践举例

《Vue2项目中配置TailwindCSS和FontAwesome的最佳实践举例》:本文主要介绍Vue2项目中配置TailwindCSS和FontAwesome的最... 目录vue 2 项目中配置 Tailwind css 和 Font Awesome 的最佳实践一、Tailwind CSS 配置1. 安

MyBatis分页插件PageHelper深度解析与实践指南

《MyBatis分页插件PageHelper深度解析与实践指南》在数据库操作中,分页查询是最常见的需求之一,传统的分页方式通常有两种内存分页和SQL分页,MyBatis作为优秀的ORM框架,本身并未提... 目录1. 为什么需要分页插件?2. PageHelper简介3. PageHelper集成与配置3.

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot 常用注解详解与使用最佳实践建议

《SpringBoot常用注解详解与使用最佳实践建议》:本文主要介绍SpringBoot常用注解详解与使用最佳实践建议,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、核心启动注解1. @SpringBootApplication2. @EnableAutoConfi

springboot实现配置文件关键信息加解密

《springboot实现配置文件关键信息加解密》在项目配置文件中常常会配置如数据库连接信息,redis连接信息等,连接密码明文配置在配置文件中会很不安全,所以本文就来聊聊如何使用springboot... 目录前言方案实践1、第一种方案2、第二种方案前言在项目配置文件中常常会配置如数据库连接信息、Red

Redis实现分布式锁全解析之从原理到实践过程

《Redis实现分布式锁全解析之从原理到实践过程》:本文主要介绍Redis实现分布式锁全解析之从原理到实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、背景介绍二、解决方案(一)使用 SETNX 命令(二)设置锁的过期时间(三)解决锁的误删问题(四)Re

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Spring Boot 整合 SSE的高级实践(Server-Sent Events)

《SpringBoot整合SSE的高级实践(Server-SentEvents)》SSE(Server-SentEvents)是一种基于HTTP协议的单向通信机制,允许服务器向浏览器持续发送实... 目录1、简述2、Spring Boot 中的SSE实现2.1 添加依赖2.2 实现后端接口2.3 配置超时时

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http