ros2-rust/ros2_rust
Rust bindings for ROS 2
What it solves
该项目提供了一种让开发者使用 Rust 编程语言编写 ROS 2 (Robot Operating System 2) 应用的方法,为传统的 C++ 或 Python 实现提供了更安全、更现代化的替代方案。
How it works
它实现了一个名为 rclrs 的客户端库和一个代码生成器,允许 Rust 代码与 ROS 2 生态系统进行接口交互。它支持核心 ROS 2 概念,如发布者 (publishers)、订阅者 (subscriptions)、服务 (services)、动作 (actions) 和参数 (parameters),同时集成了 Rust 的 async 能力以处理并发任务。
Who it's for
希望在保持与 ROS 2 框架兼容性的同时,利用 Rust 的内存安全和性能特性的机器人开发者。
Highlights
- Comprehensive ROS 2 Support: 支持所有 ROS 消息类型、发布者、订阅者、服务和动作。
- Async Integration: 提供发布者、订阅者、客户端和服务的 async 变体。
- Zero-Copy Messaging: Supports 支持通过 loaned messages 进行高性能数据传输。
- System Integration: 包含用于消息生成的代码生成器以及通过 worker 和 executor 模式管理共享状态的工具。
- ROS Compatibility: 完全支持符合 ROS-compliant 要求的日志记录 (logging)、图查询 (graph queries) 和可调式的 QoS 设置。
相关
- 项目
- 项目
- 项目
- 项目
- 项目