DigiKey-eMag-EdgeAI-Vol 18

3 uses for tinyML at the Edge

run off a battery and can even have the camera module swapped out. A good getting-started example that you may find interesting is how to use the CIFAR-10 dataset with the Arm CMSIS-NN library for image recognition. The example can be found on YouTube. Use case #3: predictive maintenance The last use case that we will discuss for tinyML is predictive maintenance. Predictive maintenance uses tools such as statistical analysis and ML to predict equipment state based on: ■ Abnormality detection ■ Classification algorithms ■ Predictive models

For example, a factory might have a series of motors, fans, and robotic equipment that are used to produce a product. A company would want to minimize downtime to maximize the number of products that it can produce. If the equipment has sensors that can be interpreted using ML and the other techniques mentioned above, they can detect when the equipment is close to failure. Such a setup might look something like that shown in Figure 3. Connecting a smart sensor to a low-power microcontroller leveraging tinyML can result in a wide variety of useful applications. For example, HVAC units could be monitored, air filters checked, and irregular motor vibration could

be detected, among many others. Preventive maintenance can become more organized, hopefully saving a company from costly reactive measures, ensuring a more optimized maintenance schedule. Conclusion TinyML has so many potential applications and use cases at the Edge. We’ve explored what’s popular now, but the use cases are nearly unlimited. TinyML can be used for gesture detection, guidance and control, and so much more. As Edge devices start to leverage the capabilities of tinyML, the question really becomes, what are you using tinyML for at the Edge?

is typically done by using a microphone to capture an input speech signal. The speech signal is recorded as a voltage over time and then converted into a spectrograph using digital signal processing. The spectrograph is a time series that is plotted against the frequency of the input signal. The spectrograph can be fed into a neural network (NN) to train the tinyML algorithm to recognize specific words. The process is shown in Figure 1. A typical implementation would feed fixed windows of speech into the NN. The network would then evaluate the probability of one of the desired keywords having been spoken. For example, if someone

Figure 2: The OpenMV camera module can be used for image recognition, and development can be done with a simple IDE using Python. Image source: Beningo Embedded Group

or nothing at your door. There are certainly plenty of other applications that range from monitoring old analog meters, detecting lawn health, or even bird counting. Image recognition can seem like a complex field in which to get involved. However, there are several low-cost platforms available that can help developers get up and running. One of my favorites, and one that I use to get things done quickly, is the OpenMV. OpenMV is an open machine vision platform that includes an integrated development environment (IDE), a library framework written in Python, and a camera module from Seeed Technology that helps developers create their machine vision applications (Figure 2). The camera module is based on an STMicroelectronics STM32H7 Cortex-M7 processor. The hardware can be expanded through its onboard expansion headers. It can

said, ‘Yes’, the NN may report that it was 91% sure it was ‘Yes’, with a 2% chance it’s ‘No’, and a 1% chance it’s ‘On’.

The ability to use speech to

control machines is a use case that many device manufacturers are carefully reviewing and hoping to enhance their devices within the coming years.

Use case #2: image recognition

The second use case that tinyML is finding its way into is image recognition. There are quite a few use cases for Edge devices that can perform image

Figure 3: The third popular use case for tinyML is smart sensors that are used for predictive maintenance. Image source: STMicroelectronics

recognition. One use case that you might already be familiar with is the ability to detect whether there is a person, package,

we get technical

10

11

Powered by