Robot Behavior
本站已冻结。
robot_behavior已于 2026-10-26 改名为roplat_behavior并拆分为roplat_behavior、roplat_kinematics、roplat_control、roplat_trajectory。本站内容停留在 robot_behavior 0.8,不再更新。crates.io 上的robot_behavior0.8.1 是最终版本(API 与 0.8.0 相同)。新代码与迁移说明见 roplat_behavior;截至 2026-10-26,0.9 尚未发布到 crates.io。
robot_behavior 是 Roplat 驱动体系的行为契约 crate。它定义“机器人应该暴露什么能力”,而不是直接实现某一个硬件驱动。
当前实现已经从旧的运行时 MotionType / ControlType 枚举,切换为类型级空间模型:
Robot管生命周期和基础状态读取。Joints<N>/EndPoint管模型级限位。MotionSpace/MoveTo/MoveTraj管预规划运动。ControlSpace/ControlWith管闭包式实时控制。Pose、DhParam、ArmKineCache、IKMethod管几何和运动学。utils提供限位、插值、COPP 轨迹规划、PID/阻抗控制等辅助工具。
use robot_behavior::{JointSpace, Motion, RobotResult};
fn home<R>(robot: &mut R) -> RobotResult<()>
where
R: robot_behavior::MoveTo<JointSpace<6>>,
{
robot.move_to::<JointSpace<6>>([0.0; 6])
}
阅读路径
- 总览:了解 crate 的职责边界。
- 安装与特性:确认 nightly、feature 和 workspace 用法。
- 使用驱动:从用户角度调用统一运动/控制接口。
- 实现驱动:从驱动作者角度实现 trait。
- 能力模型:理解 trait 分层。
- 运动与控制:理解类型级空间。
- 几何与运动学:理解
Pose、DH、FK/IK 与轨迹规划。 - API 映射:按源码模块查找公共项。
- 生态与状态:了解相关驱动、仿真器和当前状态。
当前边界
核心 Rust API 是当前主线。ffi / to_py / to_cxx / to_c 是可选门控,部分适配层仍处于迁移期;写新驱动时优先实现 Rust trait,再按需要补外语绑定。
可选 roplat feature、创建层生命周期和协作退出见 Roplat 集成。本文档对应开发源码,不代表已完成真机或实时性能验收。