单片机学习小组
直播中

china

16年用户 985经验值
擅长:14230
私信 关注

open62541是什么?open62541库有何功能呢

open62541是什么?open62541库有何功能呢?

回帖(1)

杨明

2022-2-23 14:56:05
简介

open62541是一个用C99和C++98语言的通用子集编写的OPC UA(OPC统一架构)的开源和免费实现该库可用于所有主要的编译器,并提供必要的工具来实现专门的OPC UA客户端和服务器,或将基于OPC UA的通信集成到现有的应用程序。所有特定平台的功能都通过可交换的插件实现。插件的实现是为主要的操作系统提供的。

open62541是在Mozilla Public License v2.0(MPLv2)下授权的。这使得open62541库可以与任何专利软件结合并发布。只有对open62541库本身的改动在复制和分发时需要获得MPLv2的许可。插件以及服务器和客户端的例子都在公共领域(CC0许可)。它们可以在任何许可证下被重新使用,并且不需要发表修改。

使用open62541 v1.0构建的样本服务器(server_ctt)符合OPC基金会的 "微型嵌入式设备服务器 "配置文件,支持OPC UA客户端/服务器通信、订阅、方法调用和安全(加密)的安全策略 “Basic128Rsa15”、"Basic256 "和 "Basic256Sha256 "以及 "方法服务器 "和 “节点管理”。

目标


翻译和补充open62541v1.2的官方手册。

OPC统一架构


OPC UA是一个用于工业通信的协议,已经在IEC 62541系列中被标准化。在其核心,OPC UA定义了



  • 一个异步协议(建立在TCP、HTTP或SOAP的基础上),定义了通过会话、(在)安全通信通道、(在)原始连接的信息交换。
  • 一个用于协议消息的类型系统,具有二进制和基于XML的编码方案。
  • 一个用于信息建模的元模型,它结合了面向对象和语义三重关系,以及
  • 一套37个标准的服务,与服务器端的信息模型进行交互。每个服务的签名被定义为协议类型系统中的请求和响应信息。


该标准本身可以从IEC购买或在OPC基金会的网站上免费下载(你需要用有效的电子邮件注册)。

OPC基金会推动标准的持续改进和配套规范的发展。配套规范将既定的概念和可重复使用的组件从一个应用领域转化为OPC UA。它们是与一个既定的行业委员会或应用领域的标准化机构共同创建的。此外,OPC基金会还组织了传播标准的活动,并为合规性认证提供基础设施和工具。

open62541功能


open62541实现了OPC UA二进制协议栈,以及一个客户端和服务器SDK。它目前支持Micro Embedded Device Server Profile和一些额外的功能。服务器二进制文件的大小可以远低于100kb,这取决于包含的信息模型。



  • 通信栈


    • OPC UA二进制协议
    • 分块(大型信息的分割
    • 可交换的网络层(插件),用于使用自定义的网络API(例如,在嵌入式目标上)。
    • 加密的通信
    • 客户端中的异步服务请求


  • 信息模型


    • 支持所有OPC UA节点类型(包括方法节点
    • 也支持在运行时添加和删除节点和引用
    • 支持对象和变量类型的继承和实例化(自定义构造器/分解器,子节点的实例化)。
    • 对单个节点的访问控制


  • 订阅


    • 支持用于数据变化通知的订阅/月监测项
    • 每个监测值的资源消耗非常低(基于事件的服务器架构


  • 代码生成



    • 支持从标准的XML定义中生成数据类型
    • 支持从标准的XML定义生成服务器端信息模型(节点集)。



最初的发行版v0.3版本中缺少的功能包括:



  • 客户端中的加密通信
  • 事件(由对象发出的通知,实现了数据改变的通知
  • 客户端中的事件循环(后台任务)。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分