Edge Impulse logo
Blog Post

An Ounce of Prevention

TinyML, Machine Learning, Embedded DevicesThis system uses a Nordic Thingy:53 with an Edge Impulse ML model to monitor vibrations and perform predictive maintenance on an industrial compressor.

Nick Bild

January 25, 2023

    With the present economic conditions being what they are, industry has been increasingly turning to predictive maintenance as a way to save on costs and increase efficiency. Predictive maintenance uses machine learning algorithms to analyze data from equipment, such as vibration and temperature readings, to predict when maintenance will be needed. This allows companies to schedule maintenance at the most opportune time, rather than waiting for equipment to fail.

    One of the key benefits of predictive maintenance is cost savings. According to a study by the Society of Manufacturing Engineers, implementing predictive maintenance procedures can reduce maintenance costs by as much as 30%. A large factor in these cost savings is reductions in downtime, which can be exceedingly costly for companies that rely heavily on their equipment.

    Another benefit of predictive maintenance is labor savings. By using machine learning algorithms to analyze data, companies can reduce the need for manual inspections, which can be time-consuming and costly. This enables maintenance teams to focus on more important tasks and makes their jobs more efficient.

    Nordic Thingy:53 IoT prototyping platform

    Implementing a predictive maintenance plan also has the potential to increase worker safety in the workplace. By identifying potential issues before they occur, companies can reduce the risk of equipment failure, and the accidents that often accompany these situations.

    A common misconception is that deploying machine learning-based solutions is technically challenging and requires large infrastructure investments. The engineering team at Zalmotek smashed these false assumptions with their latest project that tackles the problem of predictive maintenance in industrial equipment with the user-friendly Edge Impulse machine learning development platform and inexpensive, off-the-shelf hardware.

    Zalmotek demonstrated their methods on an industrial air compressor, which is used, for example, to provide air to power air tools, paint sprayers, and abrasive blast equipment. Since the air compressor uses moving parts to perform its function, it will vibrate while in operation. And if something becomes imbalanced because of a problem or lack of regular maintenance, the pattern of those vibrations will change.

    Taking a look at data for a failure state

    Armed with this knowledge, a plan was devised to measure the air compressor’s vibrations, then feed that data into a pair of machine learning algorithms — one to look for specific, known problems, and another to detect anything that appears to be abnormal. The Nordic Thingy:53 IoT prototyping platform was chosen as the hardware platform for this job.  This small, inexpensive device comes packed with a 128 MHz Arm Cortex-M33 CPU with 1 MB of flash memory and 512 KB RAM to power through machine learning algorithms that have been optimized by Edge Impulse Studio for edge computing platforms. The Nordic Thingy:53 also has a built-in accelerometer, making it an all-in-one hardware solution.

    Before the machine learning models could be created, Zalmotek needed to collect some data to train them. Specifically, air compressor vibration data, as measured by an accelerometer, would need to be collected during normal operation, and also during any known failure states that are to be recognized. Perhaps the simplest way to collect data from the Nordic Thingy:53 is to install the nRF Programmer app on your smartphone. This app makes it possible to link the device to a project in Edge Impulse Studio, after which data can be collected and automatically uploaded to that project. Using this method, four minutes of accelerometer measurements were recorded to represent “normal operation” and “unbalanced” classes.

    Designing a complex ML analysis pipeline with a few button clicks

    At this point, everything was in place to create the machine learning analysis pipeline, which is the part that many people assume will be too difficult for them to do. But as Zalmotek demonstrated, it is actually very simple using the web-based interface of Edge Impulse Studio to select and configure each processing step. The initial steps split the data into two second segments, then perform a spectral analysis to extract the frequency and power characteristics of the signal — this is especially important when decoding recurrent patterns, such as those found in the vibrations of industrial equipment. The features are finally forwarded into both a neural network classifier and a K-means anomaly detector. The classifier will detect known operational states, and the anomaly detector is tuned to recognize any sort of abnormal state of the machine.

    The number of training cycles and the learning rate was adjusted, then the neural network training process was kicked off. A short while later, the results were displayed, which revealed that the model had achieved a 100% classification accuracy rate. That may sound too good to be true, but glancing at the Feature Explorer tool gives some insight into why. There is a very clear separation between the classes in terms of their features, so this is not an unexpected result. But just to be safe, the model testing tool, which validates performance using a set of data excluded from the training process, was also utilized. This validation confirmed the 100% average classification accuracy rate.

    Model testing

    Next, the K-means anomaly detector was trained using the suggested set of features, which provided the most meaningful information. Once training was complete, the Anomaly Explorer was displayed, which made it possible to confirm that the classes were nicely separated, and that the range for a normal measurement looked to make sense, so at this point, the pipeline was all ready for real-world use.

    To eliminate the need for any wireless connectivity or cloud computing resources, the full predictive maintenance pipeline would need to be deployed to the Nordic Thingy:53. Since this board is fully supported by Edge Impulse, that was as easy as clicking on the “Deployment” tab, then selecting “Nordic Thingy:53.” From there, the nRF Programmer smartphone app can be used to wirelessly deploy the pipeline to the hardware.  As an added bonus, that same app can also be used to view inference results produced as the model runs.

    Deploying the pipeline using the nRF Programmer smartphone app

    After installing the finished device on the air compressor, Zalmotek was able to confirm that it was working exactly as expected. Their excellent write-up contains a wealth of information for anyone interested in getting their own predictive maintenance project off the ground quickly. You can even cheat a bit and clone their public Edge Impulse Studio project, go ahead — we won’t tell anyone.

    Want to see Edge Impulse in action? Schedule a demo today. 


    Are you interested in bringing machine learning intelligence to your devices? We're happy to help.

    Subscribe to our newsletter