Getting started
Overview
Repose is a manipulation stack for robot arms, built as components for the Copper runtime. Today you can generate a small robot app, describe a program as a list of steps, and run it on a real igus ReBeL with cargo run.
What happens on cargo run
- Take control. The app takes control of the robot and enables the drives.
- Pre-flight check. Every step is solved and checked for joint limits and self-collision. If any step fails, nothing moves.
- Move. Each move is timed into a smooth trajectory and streamed to the robot at 50 Hz with position feedback.
- Release. When the program ends, or on Ctrl-C, the drives are disabled and control is released cleanly.
- Log. Copper records every run to
robot.copper, so it can be replayed.
How it differs
- Fixed sizes. The joint count and every capacity are compile-time constants, so a 6-axis arm is a
CuKinematicChain<6>. Nothing allocates on the hot path. - Deterministic. Sampling planners take their randomness from a seeded
CuRng, and Copper logs every message, so a run can be replayed exactly. - Configured, not coded. An application is a task graph in RON. Robot, models, speed and planner are configuration, not code.
Ready? Install and run the template.