-
Notifications
You must be signed in to change notification settings - Fork 0
Setup and Installation
Mohsin Mirza edited this page Mar 31, 2026
·
1 revision
| Requirement | Version |
|---|---|
| Ubuntu | 24.04 |
| Python | 3.12 |
| ROS 2 | Jazzy |
| Camera | Intel RealSense or Kinova Vision |
git clone git@github.com:Robots4Sustainability/perception.git
cd perception
git checkout feat/vision-pipelineCreate a virtual environment in the root folder:
python3 -m venv venv
source venv/bin/activateInstall dependencies:
pip install -r requirements.txtFollow the Robots4Sustainability documentation to set up:
eddie_roskinova_vision- ROS 2 workspace
Then install the required ROS 2 image pipeline package:
sudo apt update
sudo apt install ros-jazzy-image-pipelinecd r4s
colcon build --symlink-install
source install/setup.bashThe Kinova arm requires the Zenoh RMW implementation. Set this up once:
sudo apt install ros-jazzy-rmw-zenoh-cpp
# Kill any existing ROS daemon
pkill -9 -f ros && ros2 daemon stopInstall the Zenoh router, then source ROS:
source /opt/ros/jazzy/setup.bash
⚠️ Important: ExportRMW_IMPLEMENTATION=rmw_zenoh_cppin every terminal when using the Kinova arm.
To bridge topics between the workstation and a local laptop:
# Workstation Terminal
ros2 run rmw_zenoh_cpp rmw_zenohd
# Local PC Terminal (replace IP with workstation IP)
export ZENOH_CONFIG_OVERRIDE='connect/endpoints=["tcp/192.168.1.11:7447"]'
ros2 run rmw_zenoh_cpp rmw_zenohd# Check the state of all lifecycle nodes at once
for node in $(ros2 lifecycle nodes); do echo -n "$node: "; ros2 lifecycle get $node; done
# Manually control a single node
ros2 lifecycle set /subdoor_node activate
ros2 lifecycle get /subdoor_nodeValid transitions: configure · activate · deactivate · cleanup