Sniffing Out Industrial Chemicals Using tinyML

With the rapid industrialization, the volatilization of hazardous industrial gases has become a serious health problem and a concern for worker safety — especially volatile organic compounds (VOCs), which are widely used as solvents and raw material for organic synthesis. VOCs can volatize rapidly and are carcinogenic in nature when their concentration exceeds 450mg/m3 (173ppm). With the onset of the fourth Industrial Revolution, there is a growing need for intelligent high performance sensors and systems that can identify various kinds of VOCs and other industrial gases.

Several commercial solutions utilize gas sensor arrays for detecting and monitoring VOC concentration. However, these are bulky, limited to sensing only one or a few types of gases, and are not suitable for continuous or remote deployment due to the constant need for power from the mains. A compact and intelligent VOC detection system based on a trained tinyML model deployed to low-power embedded devices can be a desirable solution for monitoring industrial gases at scale. Leveraging high-performance nanostructured sensor arrays with artificial intelligence systems can be used to successfully detect various industrial gases under different operating/environmental conditions.

Data acquisition and feature extraction

Here, we implemented Seeed Studio’s Multichannel Gas Sensor v2 along with the Wio Terminal to collect sensor data from various industrial chemicals. The MEMs gas sensor is comprised of four fully independent sensing elements on a single package and can be used for qualitatively detecting variety of industrial gases. The Wio Terminal is an all-in-one embedded development platform equipped with a 2.4” color LCD screen, a Arm Cortex-M4F core microcontroller, and both wired and wireless connectivity all housed in a compact enclosure. For data acquisition, we employed Edge Impulse Studio to collect nearly three hours of data from the gas sensor and upload it to the platform. The screenshots below the raw data acquired from fumes of six industrial chemicals. Each data sample was of 15 seconds duration.

Raw data acquired from fumes of industrial chemicals. Each line in the figure represents the output from each of the four independent MEMS based sensing elements on the multichannel gas sensor. As control we also measured the sensor output for the ambient environment (air).

Model training

Learning features are then automatically generated by EI Studio to be used for model training. A neural network is then optimized to successfully distinguish between the different chemicals. This image shows the validation and test results of a trained tinyML model with accuracies of 99.8% and 100% respectively.

Model deployment

Before generating the relevant libraries for model deployment on the target embedded devices, the EON Compiler further optimizes the trained tinyML model to reduce its memory footprint without sacrificing model performance significantly.

The final model is then deployed on the Wio Terminal device for edge inference as seen below.

04_ACETONE.jpg
05_HEXENE.jpg
06_TOLUENE.jpg
07_XYLENE.jpg

Subscribe

Are you interested in bringing machine learning intelligence to your devices? We're happy to help.

Subscribe to our newsletter