TurtleBot3
Mobile exploration platform for autonomous navigation, hazard detection, and resource delivery. Equipped with a 2D LiDAR sensor for SLAM-based mapping and a RealSense camera for visual perception.
Autonomous multi-robot emergency response
Emergency response operations often demand rapid, precise logistics in dangerous and unstructured environments — scenarios where autonomous robots could dramatically reduce risk to human life. RoboResponse develops a coordinated multi-robot system that demonstrates how a mobile robot and a robotic arm can work in concert to identify hazards, pack resources, and deliver them without human intervention.
A TurtleBot3 uses its camera and LiDAR to detect color-coded hazard markers and map the incident site. Upon detection, it signals a UR7e robotic arm, which uses Inverse Kinematics and vision-based picking to pack the specific resources required for that hazard. Once prepared, the TurtleBot autonomously docks for loading, then navigates back to the hazard zone for delivery — a complete, closed-loop emergency logistics pipeline.
First responders frequently operate under high cognitive load in environments with limited situational awareness. A robotic system capable of classifying an emergency and autonomously delivering the correct supplies could free human responders to focus on higher-level decisions. This project demonstrates such a concept as a fully integrated pipeline combining the three pillars of EECS C106A: control, dynamics, and perception.
TurtleBot3 uses its RealSense camera and OpenCV to detect color-coded hazard markers, classify the emergency type, and estimate its location.
A ROS2 coordination node maps hazard type to required resources and triggers the UR7e packing routine via CycloneDDS messaging.
The UR7e uses its RealSense camera for pose estimation, then executes a pick-and-place routine with MoveIt2 to pack resources into a delivery box.
The TurtleBot navigates to a predefined docking position and the UR7e places the prepared resource box onto the TurtleBot's platform.
TurtleBot navigates back to the hazard zone using NAV2, completing the autonomous emergency response loop.
Hardware & software architecture
Mobile exploration platform for autonomous navigation, hazard detection, and resource delivery. Equipped with a 2D LiDAR sensor for SLAM-based mapping and a RealSense camera for visual perception.
Stationary manipulation platform with parallel gripper. Receives hazard type from TurtleBot, identifies resource objects via camera, and packs them into the delivery box using IK-based motion planning.
TurtleBot's 2D LiDAR enables localization and SLAM via SLAM Toolbox. Both robots use RealSense cameras — for hazard detection and object pose estimation respectively.
TurtleBot path planning uses NAV2 with MPPI/PID. UR7e trajectory planning uses MoveIt2. A state machine coordinates asynchronous task sequencing across both robots.
The TurtleBot's DYNAMixel motors execute navigation trajectories. The UR7e's joints and parallel gripper execute pick-and-place motions via Inverse Kinematics.
Inter-robot messaging uses ROS2 over CycloneDDS middleware. The TurtleBot publishes hazard detections; the UR7e subscribes and triggers packing accordingly.
Nodes, stack, and development timeline
| Node | Platform | Responsibility |
|---|---|---|
hazard_detection_node |
TurtleBot | Detects color-coded hazard markers via OpenCV and publishes type + position |
navigation_node |
TurtleBot | Autonomous movement using NAV2 with SLAM-built map |
coordination_node |
Central | State machine — maps hazard types to resources, orchestrates task sequencing |
object_detection_node |
UR7e | Detects and estimates poses of resource objects via UR7e camera |
pick_and_place_node |
UR7e | MoveIt2-based pick-and-place to pack resources into delivery box |
docking_node |
TurtleBot | Autonomous docking to reach loading position near UR7e |
Identify one hazard type, pick one object, load onto TurtleBot, and navigate to the hazard zone.
Multiple hazard types with corresponding resource boxes containing multiple objects — full end-to-end pipeline.
Dynamic robot-to-robot handoff while TurtleBot is in motion using visual servoing.
Findings, lessons, and future directions
RoboResponse demonstrates that autonomous multi-robot coordination for emergency logistics is achievable at small scale using off-the-shelf hardware and open-source software. By integrating a mobile platform with a robotic manipulator through a shared ROS2 communication layer, we validate how sensing, planning, and actuation can compose into a cohesive, end-to-end autonomous pipeline.
The project validated the feasibility of combining SLAM-based navigation, vision-based hazard classification, and IK-driven manipulation in a single coordinated system. The state machine architecture proved essential for managing asynchronous handoffs between the TurtleBot's detection events and the UR7e's packing routine.
Color-based hazard detection is sensitive to lighting. Consistent marker design and camera exposure control were critical for reliable classification.
Autonomous docking requires accurate relative localization. Small pose estimation errors compound into misalignment during resource loading.
Clear handoff conditions between robots prevented deadlocks. State machine design is crucial at the system level.
Early and frequent integration testing revealed interface mismatches before they became blocking issues in the full pipeline.
Natural extensions include dynamic handoff via visual servoing (our reach goal), scaling to more hazard types, 3D obstacle avoidance, and multi-TurtleBot fleet coordination. The modular ROS2 architecture is designed to accommodate these extensions with minimal changes to the core coordination logic.
UC Berkeley undergraduates, Spring 2026
Hardware, software, and documents
| Item | Qty | Source |
|---|---|---|
| UR7e (with parallel gripper) | 1 | Lab resource |
| TurtleBot3 (with LiDAR sensor) | 1 | Lab resource |
| Intel RealSense Cameras | 2 | Lab resource |
| Small delivery box / container | 1 | ESG budget ($55) |
| Resource objects (blocks) | 5 | ESG budget |
| Color-coded hazard markers | 4 | ESG budget |