Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common...

22
1 © 2018 The MathWorks, Inc. Predictive Maintenance with MATLAB and Simulink Alec Stothert Development Manager Design Optimization and Identification

Transcript of Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common...

Page 1: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

1© 2018 The MathWorks, Inc.

Predictive Maintenance with

MATLAB and Simulink

Alec Stothert

Development Manager

Design Optimization and Identification

Page 2: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

2

Why Predictive Maintenance?

▪ Improved operating efficiency ▪ New revenue streams ▪ Competitive differentiator

Page 3: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

3

Condition

Monitoring

Predictive

Maintenance

What does a Predictive Maintenance algorithm

do?Helps make maintenance decisions based on large volumes of

complex data

Data Decision

What is the

condition of my

machine?

When will my

machine fail?

Condition Monitoring

Process of monitoring sensor data from machines (vibration, temperature etc.) in order to identify significant

changes which can indicate developing faults

Predictive Maintenance

Technique that determines time-to-failure/remaining useful life (RUL) from sensor data & historical

data in order to predict when maintenance should be performed

Page 4: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

4

▪ Develop and validate condition monitoring and

predictive maintenance algorithms

▪ Apply signal processing and dynamic

modeling techniques to extract features from

your data to monitor machine health

▪ Train machine learning and time-series

models to detect, classify, and predict

machine failure

Predictive Maintenance Toolbox

Page 5: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

5

Reciprocating Pump Example

▪ Monitor pump condition and predict

future condition

▪ Measure

– Flow rate

– Pressure

– Engine current

▪ Faults

– Leaks

– Worn bearings

– Blockages

Page 6: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

6

Frequency Domain Indicators

▪ Use spectral peaks and

harmonics to understand

condition of pump

Page 7: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

7

Classify Faults Based on Condition Indicators

▪ Train and test a support vector machine

Page 8: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

8

Other Condition IndicatorsExtract features using signal-based and model-based methods to determine machine health

Condition

Indicator

Signal-based

Methods

Model-based

Methods

Page 9: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

9

Advanced Condition Indicators

▪ Capture time-varying dynamics (e.g. vibration

data) by computing time-frequency moments

▪ Detect sudden changes in nonlinear systems

using phase-space reconstruction methods

(correlation dimension, approximate entropy,

Lyapunov exponent)

Page 10: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

10

Tools for Managing and Analyzing Data

▪ Generate data using Simulink

▪ Analyze data using datastores

Page 11: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

11

Modeling Faults In Simulink

▪ Parameterize Blocks

FEMA analysis to choose

parameters and failure modes

Page 12: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

12

Datastore to Manage Data

▪ Ensemble (whole table)

▪ Member (one row)

▪ Independent variables

▪ Data variables

– Source variables

– Derived variables

▪ Condition variables

Page 13: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

13

Sensor And Data Access in MATLAB

▪ Data sources accessible through

MATLAB

– Files (.xls, .cvs, .txt, .mat, etc,)

– Distributed file systems Azure Blob Storage

– Amazon S3

– Industrial Internet of Things

.txt

Page 14: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

14

Predict Pump Failures

▪ Use condition indicators to predict future behavior –

remaining useful life (RUL)

Page 15: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

15

Using Fleet Data to Predict Remaining Useful

Life

Page 16: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

16

RUL Methods and when to use themRequirement: Need to know what constitutes failure data

Weibull

Distribution

Page 17: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

17

MATLAB

Runtime

MATLAB

Compiler SDK

MATLAB

Compiler

MATLAB

MATLAB Coder

MATLAB Coder and Compiler

▪ Run predictive model on embedded devices

Page 18: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

18

MATLAB Production Server and Enterprise

Integration

▪ Integrate predictive model with your enterprise system and

cloud platform

Page 19: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

19

Predictive Maintenance Development - Common pains

▪ How do I get started with developing algorithms?

– Reference examples

– Documentation based on the workflow

▪ How do I manage data and what if I don’t have any data?

– Command line functions to manage and label data

– Examples showing Simulink models generating failure

data

▪ How do I chose condition indicators and estimate the

RUL?

– Functions provided for estimating RUL

– Functions for computing condition indicators

Page 20: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

20

▪ Develop and validate condition monitoring and

predictive maintenance algorithms

▪ Apply signal processing and dynamic

modeling techniques to extract features from

your data to monitor machine health

▪ Train machine learning and time-series

models to detect, classify, and predict

machine failure

▪ Use functionality from Signal Processing,

Statistics and Machine Learning and System

identification

Predictive Maintenance Toolbox

Page 21: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

21

Thank you!

Page 22: Predictive Maintenance with MATLAB and Simulink · 19 Predictive Maintenance Development - Common pains How do I get started with developing algorithms? –Reference examples –Documentation

22

▪ Develop and validate condition monitoring and

predictive maintenance algorithms

▪ Apply signal processing and dynamic

modeling techniques to extract features from

your data to monitor machine health

▪ Train machine learning and time-series

models to detect, classify, and predict

machine failure

▪ Use functionality from Signal Processing,

Statistics and Machine Learning and System

identification

Predictive Maintenance Toolbox