Deploying Predictive Maintenance Algorithms to the Cloud and Edge

For organizations that manufacture or operate industrial machinery, a predictive maintenance program is key to increasing operational efficiency and reducing maintenance costs.

At the same time, however, developing and deploying predictive maintenance algorithms to any asset, whether an aircraft, an MRI machine, a wind turbine, or an assembly line, can be challenging. Algorithm development requires not only extensive experience in machine learning techniques but also deep understanding of the system’s behavior. Engineers possessing both these skills can be hard to come by. Deployment, meanwhile, involves a complex series of steps and interconnections. The algorithm must be implemented on multiple assets. Those assets will be connected to multiple edge devices which, in turn, connect to an IT/OT system that may be cloud based, on premise, or both. Portions of a single algorithm may live on different elements of this infrastructure, adding to the complexity (Figure 1).

Figure 1. Components of a deployed predictive maintenance system.


Using a packaging machine as an example, this article shows how to handle these complexities by developing a predictive maintenance algorithm and deploying it in a production system with MATLAB®. Packaging Machine Maintenance System

The packaging machine has several robotic arms (Figure 2, left). The arms move back and forth at high speed, moving objects onto the assembly line for packaging. They are connected to programmable logic controllers (PLCs) that communicate with a Microsoft® Azure®-based IT/OT system. This IT/OT system collects streaming data from the edge devices connected to the robotics arms, runs predictive maintenance algorithms based on this data to detect anomalies and predict when the arms might fail, and returns the results to dashboard tools used by engineers and operators.

Figure 2. Packaging machine predictive maintenance system.


The Predictive Maintenance Algorithm

The predictive maintenance algorithm for this system has two components. The first is implemented on the edge and performs data reduction using feature extraction techniques. The second is implemented in the cloud and uses these feature values and a machine learning model to predict when a failure will occur and to estimate the machine’s remaining useful life (RUL). The results of this predictive algorithm are streamed into our dashboard in near real time.

Developing the Data Reduction Algorithm

The first part of our predictive maintenance algorithm acts on the raw sensor data generated by the robotic arms. We are tracking the speed and the current drawn by the motor driving each arm.

The sensors used for machines like these can sample data at a very high rate. Storing such vast amounts of sensor data can be expensive, and analyzing this data is time-consuming, as the sheer volume makes it hard to identify regions of interest. We can solve this problem with feature extraction.

Feature extraction techniques accept streams of raw sensor data and return a smaller set of features that capture key dynamics, significantly reducing storage and transmission needs. The sensors in the robotic arm capture data at 1 KHz—that is, at 1000 samples per second. Condensing one second’s worth of this data to a set of five features will reduce our data storage and transmission needs by a factor of 200.

Using the Diagnostic Feature Designer app in