Before the detailed documentation, I have attached my project: Industry 4.0 : Predictive Maintenancefull tutorial in below YouTube link, Kindly watch it.
Edge Impulse Public Profile
Industry 4.0 - PredictiveMaintenance - Fan:
https://studio.edgeimpulse.com/public/88093/latest
Industry 4.0 - Predictive Maintenance - Pump:
https://studio.edgeimpulse.com/public/88799/latest
Industry 4.0 - Predictive Maintenance - valve:
https://studio.edgeimpulse.com/public/88839/latest
When computers were introduced in Industry 3.0, it was disruptive thanks to the addition of an entirely new technology. Now, and into the future as Industry 4.0 unfolds, computers are connected and communicate with one another to ultimately make decisions without human involvement. A combination of cyber-physical systems, the Internet of Things and the Internet of Systems make Industry 4.0 possible and the smart factory a reality. As a result of the support of smart machines that keep getting smarter as they get access to more data, our factories will become more efficient and productive and less wasteful. Ultimately, it's the network of these machines that are digitally connected with one another and create and share information that results in the true power of Industry 4.0.
Predictive MaintenancePredictive maintenance uses an analytical approach; utilizing real-time and historical data to highlight where a machine is not performing as it should so that it can be repaired ahead of time.
TinyML in Industry 4.0
I have created a Prototype using Arduino Portenta H7 and Edge Impulse for predictive maintenance application.
For Industrial machineries audio datasets, I have used open source datasets from the below link,
Papers:
https://www.arxiv-vanity.com/papers/1909.09347/
https://dcase.community/documents/workshop2019/proceedings/DCASE2019Workshop_Purohit_21.pdf
This dataset is a sound dataset for malfunctioning industrial machine investigation and inspection (MIMII dataset). It contains the sounds generated from four types of industrial machines, i.e. valves, pumps, fans, and slide rails. Each type of machine includes seven individual product models*1, and the data for each model contains normal sounds (from 5000 seconds to 10000 seconds) and anomalous sounds (about 1000 seconds).
This dataset is made available by Hitachi, Ltd. under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.
Data Acquisition:
The dataset was collected using a TAMAGO-03 microphone manufactured by System In Frontier Inc. It is a circular microphone array that consists of eight distinct microphones.
The microphone array was kept at a distance of 50 cm from the machine (10 cm in the case of valves), and 10-second sound segments were recorded.
In Each machineries, there will 7 different models datasets are recorded. In the below table, Valve 00 denotes model 1 and valve 06 denotes model 7. Each model will vary in dimensions, speed and mechanical configurations. Same approach applicable for fan and pump.
I have created Three Edge Impulse model. Independent model for Fan, Pump and Valve.
In upcoming steps, I have mentioned the steps for One Edge Impulse model - Fan in this project. The same approach applicable for Another two models.I also shared the link of other two models.
In Edge Impulse, Once datasets are downloaded. You can go to the uploader option in Edge Impulse and upload the audio samples with label "abnormal" and "normal".
Then go to Create Impulse section, and select Windows size 2000ms and windows increase as 1000ms. I have selected spectrogram.
In neural network configuration, I have 1D convolution and followed Dense neural network. The training cycle is 100 with learning rate as 0.005.
Once the model is trained, the achieved accuracy is 98.1 %.
The data is split up into 80% training / validation and 20% into model testing.
In testing data, Model achieved 96.33 % accuracy. It indicates, the model performs with good accuracy in datasets.
Once the testing is done, then go to "Deployment" option and select "build firmware" -> Arduino Portenta H7 for build. I have chosen Quantized (int8). In edge Impulse, they have used EON compiler for achieving this resource reduction with higher accuracy and less latency.
Once the build process is completed. Then open the downloaded zip file.
Press the reset button in Portenta H7 twice to set it to "flash mode" and then open.bat (windows) or. command (mac users) for flashing the firmware.
Once the flash is completed. Then open the new "terminal window" and run the below command to start the inference.
edge-impulse-run-impulse
For more TinyML projects, watch it out in my YouTube Channel and Hackster page.
Edge Impulse Public Profile
Industry 4.0 - PredictiveMaintenance - Fan:
https://studio.edgeimpulse.com/public/88093/latest
Industry 4.0 - Predictive Maintenance - Pump:
https://studio.edgeimpulse.com/public/88799/latest
Industry 4.0 - Predictive Maintenance - valve:
Comments