Dr. Mangesh Kale, Archana Benur and Harshada Sarnaik (eInfochips)
Predictive analytics and fault diagnostics of high-value engineering systems often involve processing of real-time sensor data to deduct impeding or hidden problems within the underlying system. To achieve this, it is necessary to condition the data from sensors and thereafter combine it with prior design knowledge of the system in order to create useful insights. The benefits of such analytics include abilities to prevent costly failures and cost-effective scheduling of maintenance cycles. To implement such a system it is necessary to create a setup that can effectively enable data capture, data conditioning, secure transmission, database storage and execute real-time data analytics algorithms. Most of the cloud-enabled IoT platforms are evolving in this direction while addressing different domains such as engineering systems, retail data processing, and surveillance applications. Google cloud platform efficiently provides components that can enable an effective and quick implementation of data-driven analytics systems.
This white paper presents an aircraft jet engine sensor fault diagnostics and prediction implementation using Google cloud platform. The use cases covered are effectively implemented to demonstrate the GCP capability to implement such a prognostic system.
1. Google IoT Cloud At-a-Glance:
Google IoT environment provides solutions for:
- Industrial and commercial domains
- Consumer devices
- Home appliances
- Device management, performance, and infrastructure
Google IoT system provides connectivity from a device to device, device to infrastructure or infrastructure to device over the internet for remote accessing.
2. Overview of Google IoT system:
Google IoT system has introduced IoT core Cloud services through which users can manage their own devices with security. It provides JWT (Java web token) based security with OAuth key protected API to handle communication between devices over the network.
Also, users can set IAM (Identity and Access Management) and admin access to have a secure access to devices as well as GCP (Google Cloud Platform) project configured for a device to cloud communication. The IoT core also provides communication over MQTT or HTTPS to configure the device and data management, which can be handled using dataflow services for further storage, analysis, and visualization using GCP services.
GCP includes infrastructure management for the use-cases configured by a user. Depending on the requirements, a user can configure storage types, which can be linked to Google Analytics by using Google Machine Learning platform APIs.
2.1- Android Things for GCP IoT System:
Android Things is an OS (Operating System) by Google for IoT devices, which can be integrated with IoT core to provide fully-managed IoT eco-system.
It provides an Android framework with Android Things library using which hardware integration with devices is possible. Google also provides Android Things console to have OTA (over the air) updates for devices through which users can update the OS and also applications, which can be integrated with OS and can be started at boot-up of the Android Things device.
Figure 1: Google IOT Enablement
2.2– Google Cloud Platform and IOT Components:
Figure 2: GCP solutions
Google Cloud Platform consists of different services, which provides a platform for network connectivity, infrastructure computing, device connectivity, data storage and management service with analytics.
2.3- Details of GCP services:
Figure 3: GCP Components
IOT Core Service:
It enables controlled access to device registries and APIs for device configuration, maintaining the metadata for the device connectivity and device status. It includes MQTT/HTTP Bridge for Stateful device connection and bridge to connect with other GCP services.
Users can configure subscribers who can subscribe data from the device configured using the IoT core service with an MQTT/HTTP bridge and a publisher topic.
Publisher applications or devices can publish data to a “topic” and other applications like data flow services on the Google Cloud Platform and can subscribe to that topic to receive the data.
Google Cloud Storage:
It provides Google BigQuery, Big Table, GCP Storage and GCP Warehouse as storage platforms.
Dataflow service transforms data in both streaming and batch modes.
It provides a Java SDK that can be used to build dataflow applications to be hosted on the Google Cloud Platform. These dataflow pipelines are implemented to receive data, process data, and store data to a storage platform as per use case requirements.
It is used to explore, transform, analyze and visualize data. It runs on Google Compute Engine and is able to connect with different Google services.
Cloud Data Studio:
Cloud Data studio service can be integrated with BigQuery datasets to visualize data in a table, chart, or bar format.
3- Google Cloud Platform as an end-to-end IoT and Analytics Solution
3.1- Secure provisioning, logging and over the air updates:
A. Secure provisioning
- Android Things device setup with basic device information
- Authentication for secure communications
- Device authorization using the Google IOT core service. Authorization is a specific permission of the device ID and credential with a specific resource it can use.
- Registering for the device. Applications need to know which devices are available. A device registry keeps track of devices in use, associates devices with specific resources and data, and manages the cloud side authentication and
B. Events Logging
Google Cloud Platform facilitates logging of various events and monitoring metrics through dashboards. With Stackdriver Logging users can store, analyze, alert, search, and monitor the log data as well as events from the Google Cloud Platform.
C. OTA Updates
With Android Things devices, OTA (over the air) updates are built-in and users can setup own packages using the Android Things console for OTA.
3.2- Easy Setup and Managed Infrastructure:
Easy setup and management of-Google IoT core service provides an easy configuration and management for IoT devices.
3.3- Powerful Analytics:
Google Cloud storage solutions are used to manage data throughout its entire lifecycle, from initial acquisition to final visualization. These facilities enable to quickly process and share large amounts of data and use configuration APIs to keep things flexible and fully programmable.
4- Case Study: Jet Engine Data Collection and Data Analytics using the Google Cloud Platform
In this project, eInfochips team designed and implemented algorithms for failure diagnostics using machine learning and deep neural networks. The setup consists of a complex nonlinear simulation of a turbofan jet engine along with a thrust control system. This setup allows insertion of system and sensor faults by making changes to parameters and additional signal injections at suitable points within the jet engine simulation. The diagnostics algorithms need to detect the faults in real-time so that the corrective actions can be initiated by the supervisory system managed over the cloud. Such algorithms operate using streaming (real-time) sensor data as well as prior design data. In case of high value and/or critical engineering systems such as jet engines, the failure diagnostics will run on streaming data in real-time to prevent catastrophic situations or costly repairs before a fault propagates within the system.
In this context, eInfochips has also created a solution for monitoring of systems in real-time, such as rotating machinery and complex electro-mechanical systems. The fault detection algorithms library includes fast Fourier transform (FFT) signature analysis, extended Kalman filters (EKFs), fault tree tables (FTTs) as well as machine learning algorithms such as Support Vector Machine (SVM) and Neural Networks (NN).
The following sections cover the use of Deep Neural Networks within Google Cloud Machine Learning APIs for detection of faults from streaming jet engine sensor measurements, such as Air Fuel Ratio, Throttle Position, Rotor Speed and Nozzle Area.
The integrated design setup facilitates algorithm development and testing for fault detection use cases. Fault scenarios are simulated by adding fault conditions either into system dynamics or the sensor model at particular time instances. The various faults added to the model as well as respective patterns can be changed to observe and fine tune the fault detection algorithms. The nominal operating point of a jet engine simulation model is 0.8 Mach and 3000 m Altitude. The generated thrust is 60 kN and rotor operates at 14000 RPM at this operating point.
Figure 4 shows the overall design and testing setup of the jet engine simulation.
Figure 4: Setup for Jet Engine Simulation and Fault Detection
4.1- Data representation using BigQuery and Data Studio:
Below are some representations of the jet engine data in BigQuery and visualization of that data using Google Data Studio services.
Users can create a BigQuery table to store the streaming data using Dataflow and IoT Core services. The dataset available in BigQuery is linked with Data Studio services to visualize and analyze the data. The representation of Data Studio for Air Fuel Ratio, Throttle Position and Nozzle Area under Throttle Fault conditions is shown in Figure 5. These samples arrive at 10 msec intervals.
Figure 5: Features Data for Throttle Fault Detection
4.2- Data Analysis:
Machine learning is an artificial intelligence technique that involves learning and adaptation through experience for predicting the outcomes without being explicitly programmed. The ML tasks are generally categorized into two types: 1. Supervised machine learning and 2. Unsupervised machine learning.
Supervised Learning: In supervised learning, the example inputs and their desired outputs are provided during the training process. The algorithms’ purpose in this method is to learn from example inputs and their desired outputs in order to predict the correct output with the new data.
Unsupervised Learning: In unsupervised learning, an algorithm learns from unlabeled data and finds patterns and relationships therein.
Google Cloud service Machine Learning engine provides the infrastructure to build, train models using Tensor Flow library and then generate predictions for the streaming data. By using Google Cloud Machine Learning APIs, users can train, deploy their own models using Data Lab service and GCloud SDK. Cloud Data Lab is built on IPython and connected with various services of GCP to get data and conduct analysis using TensorFlow models.
TensorFlow is an open-source software library that helps Machine Learning to build and train systems, particularly, Deep Neural networks. It is a set of APIs required for machine learning applications.
4.3- Predictive Analysis of Faults for Jet Engine Sensor Data:
The input data from jet engine consists of three feature columns named Nozzle Area, Air fuel ration and Throttle_position and one label column named Fault to train the model and to predict fault for streaming features. Trained model can predict whether the fault is detected or not based on the Input and time series values of features (Nozzle Area, Air fuel ration, and Throttle_position). For training, deep neural network classifier model is used. The code samples are shown below.
Figure 6 shows the graphical representation of details for Actual and Predicated throttle fault. The recurrent network consists of 22 hidden neurons and four-time delays for each of the inputs. The network is NARX (Nonlinear Autoregressive with External Inputs). The training algorithm utilized is Levenberg-Marquardt is minimizing the MSE. The NN false positives mostly happen at large throttle command changes, however, the overall prediction accuracy achieved is 96.4% over multiple simulation runs. The network is trained to identify the fault in damping of the throttle actuator. After the network is trained, the output is processed with a saturation and relay to achieve discrete outputs such that a logical indication is obtained indicating a fault.
Figure 6: Actual vs Predicted throttle fault Detection
- Haykin, Neural Networks
- Deep Learning and Application to Machine Health Monitoring, Gao et al.
Dr. Mangesh Kale is a Senior Solution Architect and Key Accounts Manager at eInfochips. He has an industry experience of more than 18 years in engineering, technology design, and solutions for safety-critical control systems hardware and software. Mangesh leads the aerospace practice group at eInfochips with a responsibility of new technology initiatives and research development initiatives. Mangesh has a Ph.D. in flight control systems from The University of Southampton, UK, Masters of Engineering from Indian Institute of Science, Bangalore, and Bachelors of Engineering from University of Pune, India.
Archana Benur is a Technical lead at eInfochips. She has an industry experience of more than 9 years in engineering, technology design and solutions for Android, Google infrastructure, multimedia and streaming solutions. Her areas of interest include IOT system, Android development and porting and multimedia solutions. She has a degree in electronics engineering from the University of Pune.
Harshada Sarnaik is an Engineer at eInfochips. She has industry experience of more than 3 years in technology design and software engineering for embedded systems and Google infrastructure solutions.
eInfochips, an Arrow company, is a leading global provider of product engineering and semiconductor design services. With over 500+ products developed and 40M deployments in 140 countries, eInfochips continues to fuel technological innovations in multiple verticals. The company’s service offerings include digital transformation and connected IoT solutions across various cloud platforms, including AWS and Azure.
Along with Arrow’s $27B in revenues, 19,000 employees, and 345 locations serving over 80 countries, eInfochips is primed to accelerate connected products innovation for 150,000+ global clients. eInfochips acts as a catalyst to Arrow’s Sensor-to-Sunset initiative and offers complete edge-to-cloud capabilities for its clients through Arrow Connect.