PMQ Architecture
Contents
- 1 Introduction
- 2 Advantech PMQ
- 3 Advantech PMQ Model
- 4 How To
Introduction
This page introduces Advantech Predictive Maintenance and Quality ( PMQ ) solution.
Predictive Maintenance and Quality
PMQ solution aquire multiple data sources in real time to predict asset failure or quality issues so your organization can avoid costly downtime and reduce maintenance costs. Driven by predictive analytics, these solutions detect even minor anomalies and failure patterns to determine the assets and operational processes that are at the greatest risk of problems or failure. This early identification of potential concerns helps you deploy limited resources more cost effectively, maximize equipment uptime and enhance quality and supply chain processes, ultimately improving customer satisfaction.
Advantech PMQ solution includes the deployment of the trained model to make predictions and visualization UI and recommendations for corresponding strategies. The objective is to provide software developers basic concepts and better understating of PMQ deployment and to be more effective to bring your predictive model to production with Advantech PMQ architecture.
Edge Intelligence
Advantech EIS adopts edge computing architecture for its IoT solution. Edge computing is a distributed information technology (IT) architecture in which client data is processed at the periphery of the network, as close to the originating source as possible.
Time-sensitive data in edge computing may be processed at the point of origin by an intelligent device or sent to an intermediary server located in close geographical proximity to the client.
Data that is less time sensitive is sent to the cloud for historical analysis, big data analytics, and long-term storage.
Advantech PMQ
Advantech PMQ Solution means for Customer:
* IPC / IoT / Vertical Sensor Data Acquire & Storage
Advantech’s focus is on edge device development, to ensure that the EIS software suite includes the southbound sensing device connectivity that handles diverse sensing protocols such as Modbus, OPC, BACnet, Wireless IP/NonIP, and so on. Those protocols are plugin modules that take care of sensor data, data normalization, and communication The EIS mainly handles the northbound cloud connectivity and intelligence facilities; these are based on the micro service container to modularize the different cloud connections and device management.
* Big Data Storage and Analytics
Edge Intelligence Server collects data and sends to WISE-PaaS then storages in NoSQL DB. WISE-PaaS provides rich REST APIs to aquire data for data pre-process and analysis.
* Visualization & Maintenance
* Deploy / Upgrade by OTA
* Event / Action
* Acceleration – for PoC, PoV and Production
PMQ Lifecycle and Architecture
EIS PMQ Framework
Advantech EIS adopts edge computing architecture for its IoT solution as below picture. EIS enables local IoT networks to perform edge intelligence to maximize energy efficiency, reduce privacy threats, promote easy implementation and modularization, and minimize latencies.
The EIS intelligence facilities also adopt the micro service container to deal with the data ingestion workload such as data pre-processing and cleaning. The most valuable faculty in the EIS software suite is streaming analytics. Advantech provides the IPC device PMQ (Predictive Maintenance and Quality) to prove the concept of prediction in the edge field for real-time analytics and upgrade the analytic module that is also based on the micro service container technology from the cloud service for updating more accuracy analytic purpose. The customer can leverage such a framework to develop their own analytic module or PMQ module with EIS open standard architecture. The entire open standard follows the MQTT protocol and the Docker container technology as its foundation framework.
Advantech PMQ Model
Advantech provides IPC key components (e.g. HDD Disk, ... ) failure predictive model. Here is the step of training HDD Disk Failure predictive model for your reference.
HDD Failure Prediction Model
1. Get the HDD raw data
2. Get useful HDD information
3. Flow of training mathematics module
Using Logistic Regression Algorithm to classify the false samples in red and the true samples in blue.
4. Benchmark for PMQ accuracy
5. Alert and Suggestion of HDD PMQ
|
Event Message | Suggestion ( Action ) Message | Condition |
1 | Over temperature |
Lower system temperature (<40°C) |
smart5 >= 10 || smart197 >= 2 |
2 | Disk aging. | Backup data to new disk. | smart9 >= 26280 |
3 | Disk read/writes error frequently. |
Backup data to new disk. |
smart187 >= 1 |
4 | Power failure | Check power source | smart192 >= 190 |
How To
<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black">
This page contains the following errors:
Below is a rendering of the page up to the first error.
</parsererror>
Visualization and Maintenance with WISE-PaaS/RMM
If Advantech PMQ service running on edge device. There will have a PMQ icon ( RED frame ) as below picture on WISE-PaaS/RMM device manager. To click this icon then pop up PMQ Dialog as "Predictive Goo/Failure".
Make a PMQ Service
Customer can implement its own PMQ service as developing a plug-in handler. The PMQ plug-in handler includes collecting raw data and built-in have been trained model to predictive failure rate.
We also provide the PMQ plug-in Sample help customer develop its PMQ service with Advantech PMQ System.
You can refer the WISE-Agent Sample Handler for detail about "How to develop a plug-in."
You can download PMQ plug-in sample at Github Sample/PMQ-SamplePlugin
git clone --branch v3.3 https://github.com/ADVANTECH-Corp/WISEAgent.git
Package PMQ Installation Package
PMQ Service Installer
Customer need modify the "agent_config.xml" follow below rule
<DeviceName> : Plugin-Name ( ex: HDD_PMQ ) <DevID> : 000+<DeviceName> => 16 char ( ex: 000000000HDD_PMQ ) DevType : Service ( Fixed )
OTA Installation Package
Customer needs use this OTA Packager Tool to package your PMQ Service OTA Installation Package.
Nameing Rule: Please follow the name rule for PMQ OTA Installation Package.
Agent-<ServiceName>-<Version>-<md5-hash>.zip ( Example: Agent-HDD_PMQ-v1.0.1-8977e5eb7862605fcfb0b45b1773158d.zip )
Install / Upgrade
Install HDD_PMQ Agent in Windows System
Execute "Agent_HDD_PMQ.exe" to install the HDD_PMQ Agent, and follow the steps to finish the installation.
Install HDD_PMQ Agent in RMM 3.3 Agent Plus version in Windows System
The RMM 3.3 Agent Plus installer provide three different type installations: Typical, Custom and Complete.
The RMM 3.3 Agent Plus include three program features:
1. MQTT Broker for internal MQTT bus.
2. RMM 3.3 Agent to communicate between WISE-PaaS/RMM Server and MQTT bus.
3. HDD_PMQ Agent for HDD smart retrieve and PMQ caculate then report to MQTT bus.
In rest to steps, the installer will trigger the MQTT Broker, RMM 3.3 Agent and HDD_PMQ Agent installer sequentially.
The detail of RMM 3.3 Agent Installation is skipped to focused on RMM 3.3 Agent Plus Installation.
Update HDD_PMQ Agent
Upload Agent_HDD_PMQ-V1.0.xxx...zip OTA upgrade package to OTA Server.
Select HDD_PQM Update Package to upgrade target devices.
Data Format / Event / Action
Advantech defines 6 data categories for PMQ service. Use general JSON format suit for any PMQ solution. Customer can design his PMQ data format follow our rule in JSON. It is easy to integrate with Advantech EIS and WISE-PaaS/RMM.
Syntax for PMQ Data & Predictive Result
info:
type : PMQ ( Fixed: must )
name : Name of this service ( must )
description : Description of this service ( must )
version : version of this service ( must )
confidence level : confidence level of predictive algorithm ( must )
update : receive update cmd ( option )
*User-Defined : user can define its own tag : value
data: raw data of the PMQ service
- *User-Defined ( in JSON Object )
predict: predict result
- Failure rate: failure rate of the prediction result in ( 0 ~ 100 % ) ( must )
Please remapping your predict failure rate as below normalize range.
Level: Good ( Green ): 0 ~ 54%, Warning ( Yellow ): 55 ~ 66%, Bad ( Red ): 67 ~ 100%1
event: evnet of the PMQ Service
- {"n":"e1","sv":"Hard disk long-term operation in more than 40°C or vibration environment.","actionlist":"a1", "asm":"r"}
action: action of the PMQ service
- {"n":"a1", "sv":"Please reduce the ambient temperature to 40 °C or less or operation at stable environment.", "asm":"r"}
"ActionLog" "sv":"reboot + backup" :
param: parameters of the PMQ service
- {"n":"predict period", "v":60, "asm":"r", "u":"sec", "min":10, "max":86400}
Example of HDD PMQ Data Format
{ "HDD_PMQ": { "info":{ "e":[{"n":"type", "sv":"PMQ", "asm":"r"}, {"n":"name", "sv":"HDD_PMQ", "asm":"r"}, {"n":"description", "sv":"This service is HDD PMQ Service", "asm":"r"}, {"n":"version", "sv":"1.0.2", "asm":"r"}, {"n":"confidence level", "v":83.12, "asm":"r", "u":"%"}, {"n":"update", "sv":"", "asm":"rw"}, {"n":"eventNotify", "bv":true, "asm":"r"}], "bn":"info" }, "data":{ "list":[{"bn":"WDC WD3200BUCT-63TWBY0","e":[{"n":"Smart 5","v":0,"min":0, "max":20, "threshold":10, "u":"count", "msg":"Reallocated Sector Count", "asm":"r"}, {"n":"Smart 9", "v":128, "min":0, "max":35000, "threshold":26280, "u":"hr", "msg":"Power-On Hours", "asm":"r"}, {"n":"Smart 187", "v":0, "min":0, "max":5, "threshold":1, "u":"count", "msg":"Reported Uncorrectable Errors", "asm":"r"}, {"n":"Smart 192", "v":10, "min":0, "max":400, "threshold":190, "u":"number", "msg":"Power-off Retract Count", "asm":"r"}, {"n":"Smart 197", "v":0, "min":0, "max":10, "threshold":2, "u":"count", "msg":"Current Pending Sector Count", "asm":"r"}, {"n":"Smart 198", "v":2, "min":0, "max":40, "threshold":10, "u":"count", "msg":"Uncorrectable Sector Count", "asm":"r"}]}, {"bn":"ST3500320AS0","e":[{"n":"Smart 5","v":1,"min":0, "max":20, "threshold":10, "u":"count", "msg":"Reallocated Sector Count", "asm":"r"}, {"n":"Smart 9", "v":8832, "min":0, "max":35000, "threshold":26280, "u":"hr", "msg":"Power-On Hours", "asm":"r"}, {"n":"Smart 187", "v":0, "min":0, "max":5, "threshold":1, "u":"count", "msg":"Reported Uncorrectable Errors", "asm":"r"}, {"n":"Smart 192", "v":100, "min":0, "max":400, "threshold":190, "u":"number", "msg":"Power-off Retract Count", "asm":"r"}, {"n":"Smart 197", "v":0, "min":0, "max":10, "threshold":2, "u":"count", "msg":"Current Pending Sector Count", "asm":"r"}, {"n":"Smart 198", "v":5, "min":0, "max":40, "threshold":10, "u":"count", "msg":"Uncorrectable Sector Count", "asm":"r"}]}], "bn":"data" }, "predict":{ "list":[{"bn":"WDC WD3200BUCT-63TWBY0","e":[{"n":"Failure rate","v":20,"min":0, "max":100,"asm":"r"}, {"n":"hddpredict", "v":0.15, "min":0, "max":1, "threshold":0.385, "asm":"r"}]}, {"bn":"ST3500320AS0","e":[{"n":"Failure rate","v":40,"min":0, "max":100,"asm":"r"}, {"n":"hddpredict", "v":0.25, "min":0, "max":1, "threshold":0.385, "asm":"r"}]}], "bn":"predict" }, "event":{ "e":[{"n":"e1","sv":"HDD back to Normal", "actionlist":"", "asm":"r"}, {"n":"e2","sv":"Over temperature.","actionlist":"a1", "asm":"r"}, {"n":"e3","sv":"Disk aging.","actionlist":"a2", "asm":"r"}, {"n":"e4","sv":"Disk read/writes error frequently.","actionlist":"a2", "asm":"r"}, {"n":"e5","sv":"Power failure.","actionlist":"a3", "asm":"r"}], "bn":"event" }, "action": { "e":[{"n":"a1", "bv":false, "msg":"Lower system temperature ( < 40 Celsius ).", "asm":"r"}, {"n":"a2", "bv":false, "msg":"Backup data to new disk", "asm":"r"}, {"n":"a3", "bv":false, "msg":"Check power sourc.", "asm":"r"}, {"n":"ActionLog", "sv":"", "asm":"r"}], "bn":"action" }, "param": { "e":[{"n":"report interval", "v":10, "min":10, "max":3600, "asm":"rw", "u":"sec"}, {"n":"enable report", "bv":true, "asm":"rw"}], "bn":"param" }, "opTS":{"$date":1494554251000} }, "bn":"HDD_PMQ" }
Syntax for EventNotify
PMQ severity : 4 Warning
severity: Severity_Emergency = 0, Severity_Alert = 1, Severity_Critical = 2, Severity_Error = 3, Severity_Warning = 4, Severity_Informational = 5, Severity_Debug = 6, subtype: predict
Example : Predict Fail event
{ "susiCommData": { "commCmd": 2059, "requestID": 2001, "agentID": "AAAAA", "handlerName": "general", "sendTS": 1453356274, "eventnotify": { "subtype": "predict", "msg": "Over temperature.", "severity": 4, "handler": "HDD_PMQ", "extMsg": { "n": "WDC WD3200BUCT-63TWBY0", "eventID":"e2" } } } }
Example: Predict back to Good event
{ "susiCommData": { "commCmd": 2059, "requestID": 2001, "agentID": "AAAAA", "handlerName": "general", "sendTS": 1453356274, "eventnotify": { "subtype": "predict", "msg": "HDD back to Normal", "severity": 5, "handler": "HDD_PMQ", "extMsg": { "n": "WDC WD3200BUCT-63TWBY0", "eventID":"e1" } } } }