copper-project/copper-rs
Copper is an operating system for robots - build, run, and replay your entire robot deterministically.
What it solves
Copper 提供了一个高性能、确定性的机器人任务图运行时 (runtime)。它解决了构建需要在各种硬件上运行的机器人软件之挑战——从高层级 Linux 系统到裸机微控制器——同时保持实时性性能与能够完美重现执行过程以进行调试的能力。
How it works
Copper 使用静态设计,其中任务图在 RON (Rusty Object Notation) 中声明,并在编译时进行连接。这种方法允许在 "hot path" 上实现零分配 (zero-allocation) 执行路径,确保实时性性能。
系统会将所有消息、时序与状态记录到统一的 .copper 日志中,可用于确定性重放与离线检查。
Who it's for
它是为机器人工程师与开发者设计的,特别是在构建需要严格时序保证与跨平台兼容性的自主系统(如四旋翼无人机、自平衡机器人与人形机器人)的人员。
Highlights
- Cross-platform support: 运行于 Linux, macOS, SBCs, 与裸机微控制器。
- Deterministic replay: 能够记录一次运行并精确地重现它以进行离线分析。
- Real-time first: 零分配、面向数据 (data-oriented) 的执行方式,用于高性能路径。
- Interoperable: 通过 Zenoh 连接到 ROS 2,以实现渐进式迁移。
- Rust-first: 利用 Rust 的编译时保证与人体工学 API。
相关
- 项目
- 项目
- 项目
- 项目
- 项目