Condition monitoring is the process of collecting and analyzing sensor data from equipment in order to evaluate its health state during operation. Accurately identifying the current health state of equipment is critical to the development of predictive maintenance programs.
Condition monitoring enables equipment manufacturers and operators to do the following:
Condition monitoring is not only about collecting data but also using that data to evaluate the condition of a machine. This evaluation could be anything from a control chart that ensures a single sensor value does not exceed a safety threshold to a machine learning algorithm trained on hundreds of sensors with months of historical data, such as the one developed by Mondi Gronau.
A predictive maintenance program may use both condition monitoring and prognostics algorithms. The main difference between condition monitoring and prognostics is the timeframe.
| Timeframe | Example | |
|---|---|---|
| Condition Monitoring | Current state | Detecting faults in bearings |
| Prognostics | Future state | Estimating the remaining useful life of an aircraft engine |
A typical workflow for developing condition monitoring algorithms in MATLAB® includes acquiring and preprocessing data, identifying condition indicators, training the model, and deploying and integrating the algorithm.
Condition monitoring algorithm development workflow.
To develop condition monitoring algorithms in MATLAB®, you need to start with data from your asset. Acquire data directly from sensors and test hardware using hardware support packages in MATLAB. Or, access streaming and archived data from services such as OPC UA, RESTful web services, databases, AWS S3, and Azure Blob.
If you don’t have enough data, you can also generate synthetic data by building a physical model of your asset.
Start by preprocessing and visualizing your data. Are you able to easily detect anomalies by eye? If so, you may be able to use a simple algorithm such as findchangepts or a controlchart.
Sometimes anomalies are easy to spot in sensor readings, as shown in this MATLAB plot. In this case, a simple algorithm would suffice. If your data contains many sensors, or anomalies are difficult to identify, you will need to explore more advanced techniques, such as machine learning and deep learning, to discover patterns in your data.
To develop condition monitoring algorithms, you first need to identify condition indicators: features that indicate the difference between normal and faulty operation. These may be easy to spot or may require extracting and combining many features. The Diagnostic Feature Designer app from Predictive Maintenance Toolbox™ lets you interactively extract, rank, and export a variety of features.
With the Diagnostic Feature Designer app, you can interactively extract features to train condition monitoring algorithms.
You can then use these features as inputs to machine learning or deep learning algorithms to train your condition monitoring algorithm. For example, you can interactively test a variety of fault classification algorithms using the Classification Learner app.

Once validated, condition monitoring algorithms need to be operationalized in an IT environment such as a server or cloud. Condition monitoring algorithms can also be deployed to an embedded system, enabling faster response times and significantly reducing the amount of data sent over the network.