Hello! Welcome to Embedic!
This website uses cookies. By using this site, you consent to the use of cookies. For more information, please take a look at our Privacy Policy.
Home > Solutions > Hi-Rel > STM32 artificial neural network solution

STM32 artificial neural network solution

Thanks to a new set of artificial intelligence (AI) solutions provided by ST, you can now map and run pre-trained artificial neural networks (ANN) on a broad portfolio of STM32 microcontrollers. The STM32Cube.AI is the widely used STM32CubeMX configuration and code generation tool that makes the expansion package of the STM32 Arm of AI® Cortex® based on -M-Microcontroller. To access it, download and install STM32CubeMX.

Simplified artificial neural network mapping using STM32Cube.AI

  • Interoperable with popular deep learning training tools
  • Compatible with many IDEs and compilers
  • Nothing to do with sensors and RTOS
  • Allows to run multiple artificial neural networks on a single STM32 MCU
  • Fully support ultra-low power STM32 MCU

Increase productivity

Use deep learning capabilities to enhance signal processing performance and increase the productivity of STM32 applications. Create an artificial neural network and map it to STM32 (automatically generated optimized code) instead of building manual code.

5 steps to deploy a neural network using STM32Cube.AI

1. Collect data

Capture sufficient representative data about the phenomenon being modeled.

This usually involves placing sensors on or near the object to be monitored to record its status and changes over time. Examples of physical parameters include acceleration, temperature, sound and visual effects, depending on your application.

ST provides tools that facilitate data capture and marking, such as our ST BLE sensor smartphone app, which can be used as a remote control for SensorTile form factors, battery-powered platforms. SensorTile is equipped with motion and environmental sensors, microcontroller, SD card connector and Bluetooth connection.

2. Clean, mark data and build ANN topology

Creating an artificial neural network requires labeled data obtained from sensors and preprocessing.

For so-called "supervised learning", the data set must be characterized so that different outputs can be correctly classified. This classification set is the "ground truth" that will be used to train the ANN and then verify it.

Developers must decide what type of topology the ANN should have in order to best learn from the data and provide useful output for the target application. Usually, developers will use popular off-the-shelf deep learning frameworks to construct and train artificial neural network topologies.

ST cooperates with many partners who provide artificial neural network engineering services and are supported by dedicated data scientists and artificial neural network architects.

3. Training the ANN model

Training an ANN involves passing the data set through the neural network in an iterative manner so that the output of the network can minimize the required error standard. The definition, training and testing of ANN are usually carried out using an existing deep learning framework. Usually, this is done on a powerful computing platform, which actually has unlimited memory and computing power, allowing multiple iterations in a short period of time. The result of the training is a pre-trained artificial neural network.

The STM32Cube.AI tool provides simplicity and efficient interoperability with popular deep learning training tools and is widely used by the artificial intelligence developer community. The output of these tools can be directly imported into STM32Cube.AI.

4. Convert ANN to optimized code for STM32 MCU

The next step is to embed the pre-trained ANN into the MCU (optimized code minimizes complexity and memory requirements).

With the help of STM32Cube.AI software tool, this part is very simple and intuitive. STM32Cube.AI, as an extension of the widely used STM32CubeMX tool, has been fully integrated into the STM32 software development ecosystem.

It allows the pre-trained artificial neural network to be quickly and automatically converted into optimized code that can be run on the MCU. The tool will guide the user to select the appropriate MCU and provide quick feedback on the performance of the neural network on the selected MCU, while running verification on both the PC and the target STM32 MCU. Watch our introductory video.

5. Use well-trained artificial neural networks to process and analyze new data

Finally, deploy the embedded ANN in the MCU of your application.

Due to the integrated software package-function package, ST also makes it easier for designers to quickly design prototypes of their innovative applications. These software packages are end-to-end examples that combine low-level drivers, middleware libraries, and sample applications into one software package. Developers can easily start with these examples and modify them to suit their specific application. Two examples of AI enabled are the "audio and motion capture and processing package".

 

 

Compare products

Compare Empty