This directory contains the core components for robotic cable routing, including planning algorithms, environment setup, perception, and learned models.
algo/: Planning algorithms (e.g. A* search, Levenshtein distance).configs/: Configuration files for boards, cameras, and environment setup.env/: Interfaces for cameras, robots, and the environment, with ROS integration.handloom/: Autoregressive cable tracing.scripts/: End-to-end pipeline scripts, calibration, data collection, and demos.
To set up the environment, install dependencies, and build required components, please refer to the INSTALL.md guide.
- Turn on the YuMi robot and power supply.
- Open Terminal 1: Launch the camera node
mamba activate cable yumi # source the ROS workspace roslaunch zed_wrapper zedm.launch - Open Terminal 2: Open visualization
mamba activate cable yumi # source the ROS workspace rviz
- Launch the board setup GUI:
cd ~/cable_routing/cable_routing/env/board/ python board_setup_gui.py
- Follow the on-screen instructions (start with point 'A').
- Press 'q' to save the board layout and validate the generated image.
- Open the routing script:
~/cable_routing/cable_routing/scripts/cable_routing_pipeline.py - Inside the script, define the desired routing sequence:
routing = ["A", "B", "C", "E", "F"]
- Execute the pipeline:
python ~/cable_routing/cable_routing/scripts/cable_routing_pipeline.py