Microcontrollers such as Cortex-M processors are increasingly important in traditional machine learning algorithms such as linear SVM and k-means clustering, as well as shallow neural networks of five or fewer layers.
This video describes a general approach for a battery transducer algorithm that predicts current based on duty cycle using different voltages and temperatures. However, the application must fit within 3KB of RAM on the microcontroller. The approach uses MATLAB® to extract features to develop a trained classification model using the Classification Learner app. Deployment to microcontrollers and FPGAs is shown using automatic code generation.
However quantization using Fixed-Point Designer™ is critical to develop the fixed-point data types to satisfy the resource constraints on target hardware. We'll show how this approach reduces memory by 67% compared to the single-precision design.