Edge-AI sensor
Embedded systems design (STM32, C)
+ embedded machine learning (Tensorflow/Keras/Python)
+ mixed-signal PCB design
This device was developed to investigate the feasibility of embedding neural networks into a Cortex-M4 processor for a predictive machine learning application. The mixed-signal PCB fits a compact USB 'dongle' form factor, combining a digital STM32L4 series microcontroller circuit with an analog high-sensitivity thermopile signal conditioning circuit.
The analog circuitry performs amplification and filtering of a combined thermopile/thermocouple sensor, providing a voltage corresponding to a cold-junction-compensated contactless temperature measurement of objects in the sensor's field of view. The microcontroller logs the object's cooling curves, and the ambient air temperature + relative humidity to an external flash memory (micro SD card) and/or UART serial port.
The collected datasets were cleaned and split on a host desktop computer, to train and test a 'random forest' machine learning model with Keras/Tensorflow. The desktop ML model was then converted to an embedded C model, using the X-CUBE-AI software suite. The result is a real-time embedded neural network running locally on the STM32L4. The embedded model accurately forecasts the cooling curves of the sensed object as a function of ambient conditions.