Introduction
The combination of BME AI-Studio with the BME Board allows you to explore the great possibilities of the BME688 and the BSEC Software. It helps you validate gas sensor use cases for your product or application. Try and find out how well your gas sensing application can be fulfilled by the BME688.
What is it about? – An analogy
In a nutshell the BME AI-Studio can be explained within the following analogy:
Using the BME AI-Studio can be compared to creating a picture book for children. Within that analogy training an algorithm can be compared to teaching a child how different animals look like. This analogy should help you grasp the essence of classification algorithms within BME AI-Studio.
BME World | Child Analogy |
---|---|
Goal: Teaching the sensor to distinguish different gas compositions with labeled Specimen Data, recorded with the BME Board | Goal: Teaching a child to distinguish different animals with a picture book, that has photos captured with your photo camera |
Specimen Collection: Collection of recorded Measurement Sessions and labeled Specimens | Picture book: Collection of photos labeled with the name of the animals |
My Algorithms: Machine Learning process to teach the algorithm which gases are which (or which classes of gasses are which), so that they can later be distinguished by the sensor | Teaching a child: Process of showing the labeled photos to a child to teach him/her which animals are which, so that they can later be distinguished by the child |
Example Algorithms: A trained algorithm that can distinguish apples from oranges. This works because apples and oranges produce different gases, which produce different sensor signals. The algorithm was trained to detect these differences and is now able to classify the two. | Example: A child that can distinguish giraffes from elephants. This works because giraffes and elephants have different appearances, which look different on a photograph. The child learned to detect these differences and is now able to classify the two. |
Within that analogy the individual steps are:
BME AI-Studio BME Board | Photo software Camera | |
---|---|---|
I | Configure the BME Board with BME AI-Studio | Choose the settings in the camera |
II | Record data with the BME Board | Take photos with the camera |
III | Import data into the BME AI-Studio | Import photos into photo editing software |
IV | Label different Specimens within the data | Label different animals in the photos |
V | Train algorithm with labeled Specimens | Teach a child with labeled photos |
VI | Evaluate and test algorithm | Ask the child what he/she has learned |
Why the BME688?
With the BME688 gas sensor you experience the world's most advanced gas sensor with unique capabilities:
- High sensitivity and selectivity towards various gases (a variety of gases have already been studied in the lab of Bosch Sensortec. For detailed information please refer to the Bosch Sensortec Website or the Bosch Sensortec Community)
- Sensitivity and selectivity can be adjusted during operation
- Low power consumption
- Small footprint
- Additional sensing capabilities for temperature, relative humidity and barometric pressure
With this unique capabilities the BME688 gas sensor can be applied to numerous use cases. A gas sensor can be regarded as a digital nose, which has a lot of advantages if compared to the human nose. The following table may inspire you to find unique use cases:
Human Nose | Sensor Capability | Digital Nose |
---|---|---|
attached to the body | location independent | extended nose |
needs recovery time | always ready for use | hardworking nose |
blind for slow and steady changes | reproducible precision | absolute nose |
sensitive to special gases | sensitive for different gases | complementary nose |
individual sensitivity | calibrated sensitivity | objective nose |
highly emotional | sober and rational | not my own nose |
What is a use case for a gas sensor?
The magic lies within the question itself and it is up to your explorations to fully cover the possible space of use cases for the BME688. This is exactly where the BME AI-Studio is aiming for.
A use case is a potential application for the BME688. From a gas sensing perspective it is the ability to classify different gas compositions (with different combinations and concentrations of gases) that occur in different situations. The goal is to find a configuration in which the sensor is able to reliably distinguish the different gas compositions.
Interestingly, it is not necessarily important to know the exact composition of gases, as long as you have defined specific cases and you are able to reproduce these cases and their corresponding gas compositions.
A specific gas sensor use case may be a part of product premise you are aiming for. It can detect different situations and thus provide real value added to your product. Typically use cases are the detection of various pleasant or unpleasant smells or the detection of gases which are odorless.
What is special about the BME688 gas sensor?
The gas sensing element of the BME688 is mounted on a micro-hotplate, so its temperature can be changed individually. This happens during Scanning Cycles. Depending on the Heater Profile (HP) the sensor cycles through a list of 10 predefined temperatures. The exact time sequence of these temperatures defines the surface chemistry of the gas sensing element and thus the sensitivity and selectivity of the sensor.
Therefore the Heater Profile has a substantial influence on the performance of the gas sensor. Choosing the right Heater Profile for your use case can be the key to getting a good performance in classifying different situations.
These Heater Profiles are one of key advantages of the BME688. This allows the sensor to adopt to individual gases by adopting the measurement scheme to the gases' individual fingerprints.
How can I evaluate BME688 performance for a specific use case?
The BME AI-Studio is the perfect tool to support you in the quest of finding out whether a specific use case can be tackled with the BME688 gas sensor.
Adjustable Parameters
Basically these are the degrees of freedom that you can vary within the testing conditions:
- Heater Profile configuration
- Duty Cycle configuration
- Data recording and testing environment
- Algorithm training parameters
General Process: Three Phases
In general the process can be viewed as a careful exploration and an iterative approach. The following procedure has proven to be very efficient:
Phase I: Initial round – Doing the first measurements
The best thing is to just start recording whatever use case you have in mind. On your way of exploring the use case more and more, you will gain knowledge and sometimes you have to redo some of the measurements. That's very normal when exploring new use cases.
Please note
Factory-new BME Boards need to undergo an initial stabilization procedure. Please let the board run for at least 24 hours before recording any meaningful data.
It is recommended to use the Default configuration for your first round of data recording. As a more advanced user, you might want to configure the board with a selection of different Heater Profiles.
Before starting the measurement it is wise to spend some thoughts on the right testing environment. This also means choosing how controlled your setup should be. The two kinds of measurements are:
Lab recording where the gas atmosphere is fully controlled. These measurements make it easy for the algorithm to distinguish between different gas compositions and are therefore ideal to test first. If the algorithm has a hard time distinguishing data from lab recordings, it is most likely even more difficult to distinguish data later within the application. You may also want to think about certain nuisances to be added to the test to be more stable towards external influences later on.
Field recordings where changing backgrounds of the gas composition are not controlled but taken into account as a statistical fluctuation. These changing conditions help the algorithm to get more robust. Try to get a variance of the situations that is a little bit worse than it will be later within the application. If the algorithm was trained in difficult conditions, it will have an easier time later. However, do not go to extremes while changing the situations – otherwise you make the training process more complicated than necessary.
Once you finished recording, you can import the data. Build up a small collection of specimens and try an early training of an algorithm.
Evaluating the results of the first measurements the performance indicators should look very good. Small amounts of data should make it very easy for the algorithm to find features that allow for distinguishing the different gas compositions.
If you do not see good results, please go back and check whether previous steps are properly done. If so it may be the case that the sensitivity and selectivity of the BME688 does not match your use case. For example carbon dioxide is known to be hard to measure with the BME688.
If you see good results, please proceed with a Heater Profile Exploration.
Phase II: Heater Profile Exploration – the space of possible heater profiles
Within the Heater Profile Exploration the goal is to find the Heater Profile that best suits your use case. Therefore try and configure multiple Heater Profiles and record data to compare the results of different Heater Profiles.
You may want to record as much data as possible during Heater Profile Exploration by choosing the Duty Cycle RDC-1-0 Continuous
, where the sensors are continuously recording data without any Sleeping Cycles in between. You can record multiple sessions with multiple Specimens and import them all into your Specimen Collection.
When you train algorithms for data with multiple HP/RDC Combinations (Heater Profile / Duty Cycle Combinations) an independent neural net will be trained for each instance, giving you the opportunity to compare the performance of different HP/RDCs. By iterating that process in terms of configuring the BME Board with different Heater Profiles, recording data and then comparing the performances, you can determine the best suitable Heater Profile for your specific use case.
After you found the best Heater Profile, you may want to proceed with a Duty Cycle Exploration, if power consumption is an issue for your use case. If power consumption is irrelevant you can directly export your BSEC configuration
to be used the BSEC Software.
Phase III: Duty Cycle Exploration – balancing power consumption and performance
A Duty Cycle Exploration is important if you want to optimize power consumption of the BME688 for your application. Therefore the purpose of Duty Cycle Exploration is to find the best Duty Cycle for your use case – it is the one that uses a minimum amount of energy while still providing very good performance.
Try configuring multiple Duty Cycles, while keeping the Heater Profile that was performing best and that you determined within the Heater Profile Exploration. While comparing different Duty Cycles, keep in mind that the ratio of Scanning Cycles to Sleeping Cycles determines the average power consumption of the sensor. You find an estimated power consumption within the board configuration in your Specimen Collection.
Once you found your optimal Duty Cycle, you can export your BSEC configuration
to be used with the BSEC Software.
How can I use the results for my product development?
The BME AI-Studio with BME Board and the BSEC Software are build around the BME688 gas sensor. Together they form an ecosystem to explore, validate and prototype gas sensor use cases. With the BME Board you can record data to be used within the BME AI-Studio for training neural nets. The trained neural nets can be exported as a BSEC configuration file from BME AI-Studio to be used with the BSEC Software inside an embedded application.
For any trained algorithm you can export a BSEC configuration file that can be used with the BSEC Software.
Please refer to the website of Bosch Sensortec BME Software for further information.