Method for Rapid Development of Arduino-based Applications Enclosing ANN

Gabriel Oltean, Victor Oltean, Horea Alin Balea · 2019

The implementation of stand-alone applications enclosing artificial neural networks (ANNs) running on low-cost platforms tends to be prohibitive, primarily due to the demand for (very) large computational resources. This paper proposes a very effective method to solve this kind of problem. We rely on the existing approach of first configuring and training the ANN on a platform offering the necessary computing power, memory, and appropriate software tools, and then implementing the ANN model on the host platform. In our method, the code for the ANN model is automatically generated and integrated into the final application. The MATLAB environment, running on a PC, plays the roles of both a training platform and a code generator. The Arduino IDE is used for automatic code integration, while Arduino development boards provide the host for the stand-alone application. Some experimental tests confirm the proper operation of our approach. Quite a large ANN can be simulated on low-cost Arduino boards: Uno can accommodate an architecture with 315 parameters (83% utilization of 2KB SRAM) while Mega can accommodate an architecture with 1805 parameters (94% utilization of 8KB SRAM).

Read the paper · More papers on PaperTik