This is part two of a two part series where we expand on our Master's projects at UC Berkeley. Sponsored by 3D Robotics Research & Development, and working with the Cyber Physical Cloud Computing research group, we looked into possible commercial applications of drone technology and worked on a few sub-projects that we felt would help or enable companies developing products around drones. Part one, about "Real-time Image Processing" is here.
You just assembled your new multi-rotor and went flying. Out of nowhere, one of the propellor blades snaps in the air. Your UAS comes crashing down and hits somebody’s parked car.
The scenario presented is an example of how UAS crashes can become very expensive. You will have to purchase new parts to replace the broken components. Worse still, you may end with an open-ended amount of liability for causing personal or property damage. It is therefore important to detect structural problems on a unmanned vehicle before they cause a crash. In our project, we looked at the feasibility of implementing a vibration monitoring on a UAS to detect structural problems pre-flight.
A low cost warning system can be implemented by attaching accelerometers onto a multi-rotor frame. Before each take off, these accelerometers measure the vibration at various points on the vehicle and send it to an onboard computer. This computer then looks at the data and tries to predict impending failure.
In our project, we attached a single accelerometer (or Inertial Measurement Unit, IMU) to a UAS and measured the vibrations prior to taking off. We then introduced artificial structural problems. For example, we loosened the screws on certain joints and characterized the vibration recorded by the accelerometer at various motor speeds. We then compared the various cases. An accelerometer, the LIS344ALH from STMicroelectronics was used to measure the vibrations, and a MSP430F2618 microcontroller was used to process the data and carry out the Fourier Transform.
The set up is shown in the picture below for the normal case and for two induced structural problems.
After spinning the motors and taking measurements, we applied a Fourier Transform to investigate how the vibrational energy was distributed in the frequency spectrum.
For example, the following figures show the same motor spinning at the same speed, with the motor slightly loosened for the plots on the right.
From the plots, we demonstrated that it is possible to do spot structural problems just by watching the magnitude of vibrations. If the vibration magnitude is 10x of a pre-determined baseline, we could trigger a warning to the aircraft operator and warn of impending failure. More work is needed to exhaustively find out what kind of vibrational frequencies and energies correspond to what kind of failure mode, to speed up the repair process.
In a class project, we were able to use machine learning techniques to gain up to 98% classification accuracy for whether the aircraft is in a failure state or not, using the data gathered above over 350 one second samples.
If implemented industry-wide, this system could serve as an extra layer of protection for society and civilian UAS operators. It would also definitely help in promoting UASs as a safer and more reliable platform for leisure, transport and surveillance.
The full project report is here, while our report on classifying this data using machine learning techniques is here. Our machine learning code is available here. Credit goes to Chris Echanique for his contribution to the machine learning work.
FInally - thank you to Professor Raja Sengupta for the advice and Dr. Brandon Basso from 3D Robotics for advising us and keeping us well stocked with hardware!