30 个版本 (12 个重大变更)
0.14.0 | 2024 年 7 月 21 日 |
---|---|
0.12.0 |
|
0.9.0 | 2023 年 7 月 27 日 |
0.7.1 | 2023 年 2 月 28 日 |
0.0.0 | 2017 年 8 月 21 日 |
#28 in 网络编程
每月 51,690 次下载
在 26 个 Crates 中使用 (23 个直接使用)
180KB
4K SLoC
tokio-modbus
一个基于 Rust 的纯 Modbus 库,基于 tokio。
Modbus 基于一个 主/从 通信模式。为了避免与 Tokio 术语混淆,此库中的 主 被称为 客户端,而 从 被称为 服务器。
功能
- 纯 Rust 库
- Modbus TCP 或 RTU,任选其一
- 既支持
async
(非阻塞,默认)也支持sync
(阻塞,可选) - 客户端 API
- 服务器实现
- 用于 直接使用 或
- 作为自定义实现的起点
- 开源(MIT/Apache-2.0)
安装
将以下内容添加到您的 Cargo.toml
[dependencies]
tokio-modbus = "*"
Cargo 功能
"rtu"
:异步 RTU 客户端(默认)"tcp"
:异步 TCP 客户端(默认)"rtu-sync"
:同步 RTU 客户端"tcp-sync"
:同步 TCP 客户端"rtu-server"
:(异步) RTU 服务器"tcp-server"
:(异步) TCP 服务器"rtu-over-tcp-server"
:(异步) RTU over TCP 服务器
示例
如果您只需要异步 TCP 客户端,请将以下行添加到您的 Cargo.toml 文件中
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["tcp"] }
对于异步 RTU 客户端
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["rtu"] }
对于 RTU 服务器
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["rtu-server"] }
对于 TCP 服务器
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["tcp-server"] }
示例
在示例文件夹中可以找到使用异步或同步API的Modbus RTU和TCP的多种示例。
测试
工作空间包含所有可用功能的文档、测试和示例。
cargo test --workspace
cargo test --workspace --all-features
协议规范
许可
版权(c)2017-2024 slowtec GmbH
依赖项
~3–13MB
~122K SLoC