Inspiration

In emergency Search and Rescue (SAR) operations, time is the most critical factor. We were inspired by the growing potential of autonomous robotics to assist first responders in hazardous or inaccessible environments. Aerial drones offer an unparalleled vantage point for scanning large geographic areas, while quadruped robots can traverse rugged ground terrain to deliver immediate physical support, such as medical supplies or communication devices. We wanted to bridge the gap between aerial reconnaissance and ground intervention by creating a seamless, collaborative multi-agent system.

How we built it

The system is built upon a collaborative architecture linking a DJI Mini 3 and a Unitree Go2. We broke the project down into three main phases:

  • Aerial Search & Detection: The DJI drone acts as the scout. It flies over the search area, utilizing the YOLO (You Only Look Once) object detection model to process the real-time camera feed and accurately identify the specific object simulating a stranded person.
  • Approach & Landing: Once the target is successfully locked by the YOLO algorithm, the drone executes an autonomous approach guided by PID (Proportional-Integral-Derivative) controllers. The system calculates the horizontal and vertical position errors, e(t), by comparing the center of the YOLO bounding box with the camera frame's optical center. The control signal u(t) dynamically adjusts the drone's velocity commands to minimize this error: $$u(t) = K_p e(t) + K_i \int_0^t e(\tau) d\tau + K_d \frac{de(t)}{dt}$$ This continuous feedback loop ensures a smooth, stable tracking approach leading up to a precise landing in the immediate vicinity of the target.
  • Coordinate Relay & Ground Navigation: Upon landing, the drone locks its GPS coordinates and transmits them to the Unitree Go2. To ensure the robot dog navigates accurately, the system translates the global GPS coordinates (Latitude, Longitude) into a localized cartesian plane. The robot calculates its required path trajectory by minimizing the distance to the target using a localized Euclidean distance formula: $$d = \sqrt{(x_{target} - x_{robot})^2 + (y_{target} - y_{robot})^2}$$
  • Core Communication & Control: The entire ecosystem is powered by the cyberwave library. This library serves as our core communication broker and control framework, managing the real-time data pipeline, state synchronization, and command execution between the aerial and ground agents.
  • Ground Rescue: Receiving the telemetry and target data via the cyberwave library, the Unitree Go2 engages its onboard sensors to avoid local obstacles, traversing the terrain until it successfully reaches the person.

Challenges we ran into

  • Ecosystem Integration with cyberwave: Bridging the distinct, closed-ecosystem APIs of DJI and Unitree was our primary hurdle. We had to build custom middleware leveraging the cyberwave library to establish a reliable, low-latency communication bridge that allowed the two distinct machines to "talk" and sync controls seamlessly.
  • Coordinate Translation: Translating absolute GPS coordinates from the drone into the localized odometry frame of the robot dog proved challenging, especially when trying to account for standard GPS drift and ensuring pinpoint accuracy.
  • Autonomy Handoff: Ensuring the timing of the signal transmission—specifically making sure the drone only sent the rescue signal after a successful and safe landing—required strict state-machine logic.

What we learned

Building "Rescue Drone" was an incredible crash course in Multi-Agent Systems (MAS). We gained practical, hands-on experience in API bridging, telemetry data extraction, computer vision with YOLO, robot kinematics, and advanced communication frameworks using cyberwave. Most importantly, we learned how to engineer fallback protocols; handling what happens when real-world variables, like wind or uneven terrain, disrupt ideal testing conditions.

Built With

Share this project:

Updates