3个版本 (破坏性)
0.12.0 | 2024年1月1日 |
---|---|
0.11.0 | 2022年8月24日 |
0.10.0 | 2022年4月12日 |
#362 in 网络编程
每月下载量 1,306次
9.5MB
224K SLoC
简介
这是Rust的一个OPC UA服务器/客户端API实现。
OPC UA是数据监控的行业标准,广泛应用于嵌入式设备、工业控制、物联网等领域——几乎任何有数据需要监控、控制或可视化的东西。
Rust是一种系统编程语言,因此是实现OPC UA的自然选择。这个实现支持嵌入式、微和纳米配置文件,但可能会随着时间的推移增加对其他功能的支持。
阅读兼容性页面,了解实现如何符合OPC UA规范。
阅读变更日志,了解每个版本的更改以及即将到来的工作。
许可证
代码根据MPL-2.0授权。像所有开源代码一样,您使用此代码风险自担。
设置
阅读设置,了解如何为Rust构建OPCUA的说明。
阅读交叉编译,获取将OPC UA交叉编译为Rust到其他平台的提示。
迁移说明
如果您正在使用Rust的较早版本的OPC UA,请阅读迁移说明。
设计
阅读设计,了解更多关于实现的详细信息。
教程
教程/用户指南仍在进行中。
更多文档
API文档是从最新发布的crate生成的。这可能比当前开发落后一些。
示例
如果您想开始,在samples/文件夹中有一些示例。 simple-client
和 simple-server
项目分别是最小客户端和服务器程序。
# In one bash
cd opcua/samples/simple-server
cargo run
# In another bash
cd opcua/samples/simple-client
cargo run
示例的完整列表
simple-server
- 一个OPC UA服务器,添加4个变量v1、v2、v3和v4,并通过推送和拉取机制通过定时器更新它们。simple-client
- 一个OPC UA客户端,连接到服务器并订阅v1、v2、v3和v4的值。discovery-client
- 一个OPC UA客户端,连接到发现服务器并列出其上注册的服务器。chess-server
- 一个OPC UA服务器,连接到棋盘作为后端,并更新表示游戏状态的变量。demo-server
- 一个比简单服务器更复杂的OPC UA服务器,可用于合规性测试。mqtt-client
- 一个OPC UA客户端,订阅一些值并将它们发布到MQTT代理。web-client
- 一个OPC UA客户端,订阅一些值并通过websocket流式传输它们。modbus-server
- 一个将MODBUS变量转换的OPC UA服务器。
依赖项
~12-26MB
~413K SLoC