During the pandemic, Aerialoop has also been delivering groceries to local restaurants and COVID-19 medical supplies from the local hospital, HospitalDLV, to rural patients.
Challenges with drone delivery servicesAlthough drone delivery is significantly faster than existing services, it does come with some novel challenges. One such challenge is to ensure the drones navigate the city autonomously without malfunctioning. Drones can fail for a wide range of reasons, such as adverse weather conditions, user errors and mechanical parts failing due to general wear and tear.
Path to the problems solvingAerialoop came to us with the inquiry of assisting with these prime business problems resolution. The support was given by Prototype.Lab( ), a technology hub that ThoughtWorks Ecuador created specifically to help entrepreneurs and artists develop a prototype of their product or idea. The hub contributes both to the advance of the technology community in Ecuador and also to partner and support a local entrepreneur or business leader.
With the strong back up of Prototype.Lab( ), we focused on the Aerialoop need - creation of a system that can be proactive in predicting malfunctioning components, which is crucial for safe deliveries, especially in urban environments. The proactive maintenance also needs to be automated as the fleet of drones grows over the time.
Aerialoop uses the Wingquad3 to deliver payloads. The Wingquad3 has roughly 800 measurements from sensors on board, each sampling multiple times per second. A 10 minute flight therefore produces on the order of 10,000 data points, each in 800-dimensional space. Using this data, we’d like to determine if any parts have failed, or are likely to in the future.
Improving the safety of drone deliveryIn essence, the question we’d like to answer is: given the sensor data from a drones most recent flight, is it safe to fly it again?
This problem can be framed as an anomaly detection problem. By collecting sensor data from healthy drones, it’s possible to learn the underlying distribution of healthy sensor data. Then, given a future flight, we can say if the sensor data departed sharply from the learnt “healthy” distribution, in which case one or more components are likely malfunctioning.
In order to learn the full distribution of healthy sensor data, we flew the drone in a wide range of scenarios, such as adverse weather conditions and with varying payload weights. With this ‘healthy’ baseline, our team then developed a system to detect malfunctioning batteries and actuator controllers onboard the drone.
We started by gathering, parsing and transforming the existing raw log data into a consumable state. In addition, new logs from recent flights had to be available in a timely manner. To support these requirements, we developed a data pipeline on Google Cloud Platform which transforms, enriches and stores flight logs data. This makes it available for quick user insights and to downstream machine learning models. Our anomaly detection models then used this data to detect if either the battery or actuator controller was malfunctioning during a given flight. The output of these models, as well as historical sensor data for each drone, were made available on a dashboard.
What's nextFuture improvements could include incorporating local weather information into the dashboard to inform the pilot of any weather conditions that may be dangerous for deliveries that day. On a higher level, historical delivery data could be used to suggest where future take-off/landing pads should be built.
AcknowledgementsThis work was accomplished in two months thanks to the joint effort of teams in Ecuador, England, Switzerland and Australia.
Thanks to the ThoughtWorks team, in particular Carlos Fuentes, Carlos Buñay, Michelle Peralbo, Eric Piñera, Andres Salazar, Andrea Santacruz and Rajat Jain; and the Aerialoop team: Andreas Antener, Pedro Meneses and José Barzallo.