Getting started

Install & run

Generate a new robot app from the template, choose the robot, and run it. The whole quickstart creates a fresh project directory; nothing else needs to be checked out.

Requirements

  • Rust 1.95 or newer with cargo. Install it with rustup, or run rustup update stable.
  • Network access. The first build downloads Repose and the robot bridges from GitHub.
  • A robot to talk to: an igus ReBeL on the network (CRI, default 192.168.3.11:3920), or a UR5e or URSim (RTDE, default 127.0.0.1:30004). We recommend starting with URSim.

1. Install cargo-generate

Once per machine:

shell
cargo install cargo-generate

2. Generate a project

shell
cargo generate gh:ReposeRobotics/repose-bridges templates/robot-app --name my_robot
cd my_robot

Generation asks for two addresses, one per robot. Press Enter to accept a default:

igus ReBeL controller address192.168.3.11:3920
UR / URSim RTDE address127.0.0.1:30004 (URSim on this machine)

3. Choose the robot

The robot is selected in robot.ron:

robot.ron
// Select igus_rebel or ur5e (URSim and UR5e use the same bridge).
// Connection, planner and model parameters live in robots/<robot>.ron.
(
    robot: igus_rebel,
)

Change it to robot: ur5e for a UR5e or URSim. There are no Cargo feature flags to switch, and src/program.rs stays the same.

4. Check the robot profile

Each robot has a profile with its address, kinematic and collision model, planner, speed and acceleration: robots/igus_rebel.ron and robots/ur5e.ron. The addresses you entered during generation are already filled in.

At build time, the profile selected in robot.ron is copied to copperconfig.ron, the graph Copper runs. That file is generated and ignored by Git: edit the profiles, not copperconfig.ron.

5. Run

shell
cargo run

The default program moves all six joints out by 5°, back again, and waits one second. The same runner drives the igus ReBeL, URSim and a real UR connection: session bring-up, pre-flight check, timed trajectory streaming and wind-down are included. Press Ctrl-C to stop; the app still winds down the session.

Next, write your own program.

Links