Skip to main content

repose/
lib.rs

1//! **Repose**: deterministic, real-time robot arm manipulation for
2//! [`copper-rs`](https://github.com/copper-project/copper-rs).
3//!
4//! This umbrella crate re-exports every Repose component under one
5//! dependency, so an application needs a single line in `Cargo.toml`:
6//!
7//! ```toml
8//! repose = { git = "https://github.com/ReposeRobotics/repose", tag = "v0.7.0" }
9//! ```
10//!
11//! | Module | Crate | Provides |
12//! |---|---|---|
13//! | [`kinematics`] | `repose-kinematics` | Serial chains, FK, Jacobians, IK, servoing, joint-state payloads |
14//! | [`collision`] | `repose-collision` | Capsule/sphere robot models, planning scenes, collision checks |
15//! | [`robot_description`] | `repose-robot-description` | URDF/SRDF import into fixed-size models (`std`) |
16//! | [`robot_interface`] | `repose-robot-interface` | Vendor-neutral robot bridge contract: session commands, session state, `CuSessionTracker` |
17//! | [`trajectory`] | `repose-trajectory` | Trajectory timing, interpolation, following |
18//! | [`motion_planning`] | `repose-motion-planning` | Planner contract, anytime planner task, built-in planners |
19//! | [`rrt_star`] | `repose-joint-rrt-star` | Joint-space RRT* planner |
20//! | [`planners`] | (this crate) | The planner registry: [`planners::CuPlannerChoice`] (RON names) and [`planners::CuAnyPlanner`] |
21//! | [`controller`] | `repose-controller` | Joint controller with watchdog and rate limiting |
22//! | [`io`] | `repose-io` | Digital IO payloads and an IO-driven gripper |
23//! | `mujoco_sim` | `repose-mujoco-sim` | MuJoCo simulator bridge (feature `mujoco-sim`) |
24//!
25//! Copper RON configs keep naming the component crates directly
26//! (`type: "repose_trajectory::CuFollowTrajectoryTask<6, 1024>"`); depend on
27//! them individually if you only need part of the stack.
28
29#![cfg_attr(not(feature = "std"), no_std)]
30
31pub use repose_collision as collision;
32pub use repose_controller as controller;
33pub use repose_io as io;
34pub use repose_joint_rrt_star as rrt_star;
35pub use repose_kinematics as kinematics;
36pub use repose_motion_planning as motion_planning;
37#[cfg(feature = "mujoco-sim")]
38pub use repose_mujoco_sim as mujoco_sim;
39pub use repose_robot_description as robot_description;
40pub use repose_robot_interface as robot_interface;
41pub use repose_trajectory as trajectory;
42
43pub mod planners;